Course Hero Logo

231 the java yardstick the java language environment

This preview shows page 26 - 28 out of 574 pages.

2.3.1 The Java YardstickTheJava Language Environment White Paper[Gosling96]lists a number of desirable features of a program-ming language:• Simple and Familiar• Object-Oriented• Secure• Interpreted• Dynamic• Architecture Neutral• Portable• Robust• Multithreaded• Garbage Collection• Exceptions16Chapter 2.Background and History
We have textbook solutions for you!
/Fundamentals-of-Logic-Design-7th-Edition-9781133628477-754/
The document you are viewing contains questions related to this textbook.
Chapter 9 / Exercise 9.47
Fundamentals of Logic Design
Kinney/Roth
Expert Verified
Building Skills in Python, Release 2.6.5• High PerformancePython meets and exceeds most of these expectations. We’ll look closely at each of these twelve desireableattributes.Simple and Familiar. By simple, we mean that there is no GOTO statement, we don’t need to explicitlymanage memory and pointers, there is no confusing preprocessor, we don’t have the aliasing problemsassociated with unions. We note that this list summarizes the most confusing and bug-inducing features ofthe C programming language.Python is simple. It relies on a few core data structures and statements. The rich set of features is introducedby explicit import of extension modules. Python lacks the problem-plagued GOTO statement, and includesthe more reliablebreak,continueand exceptionraisestatements. Python conceals the mechanics of objectreferences from the programmer, making it impossible to corrupt a pointer. There is no language preprocessorto obscure the syntax of the language. There is no C-style union (or COBOL-style REDEFINES) to createproblematic aliases for data in memory.Python uses an English-like syntax, making it reasonably familiar to people who read and write Englishor related languages.There are few syntax rules, and ordinary, obvious indentation is used to make thestructure of the software very clear.Object-Oriented. Python is object oriented. Almost all language features are first class objects, and can beused in a variety of contexts. This is distinct from Java and C++ which create confusion by having objectsas well as primitive data types that are not objects. The built-intype()function can interrogate the types ofall objects. The language permits creation of new object classes. It supports single and multiple inheritance.Polymorphism is supported via run-time interpretation, leading to some additional implementation freedomsnot permitted in Java or C++.Secure.The Python language environment is reasonably secure from tampering.Pre-compiled pythonmodules can be distributed to prevent altering the source code. Additional security checks can be added bysupplementing the built-in__import__()function.Many security flaws are problems with operating systems or framework software (for example, databaseservers or web servers).There is, however, one prominent language-related security problem: the “bufferoverflow” problem, where an input buffer, of finite size, is overwritten by input data which is larger than theavailable buffer. Python doesn’t suffer from this problem.

Upload your study docs or become a

Course Hero member to access this document

Upload your study docs or become a

Course Hero member to access this document

End of preview. Want to read all 574 pages?

Upload your study docs or become a

Course Hero member to access this document

Term
Fall
Professor
habib vector
Tags
We have textbook solutions for you!
The document you are viewing contains questions related to this textbook.
Fundamentals of Logic Design
The document you are viewing contains questions related to this textbook.
Chapter 9 / Exercise 9.47
Fundamentals of Logic Design
Kinney/Roth
Expert Verified

Newly uploaded documents

Show More

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture