Chapter 2
For Mr. TriDjoko Wahjono
Review Questions :
- Plankalkul was designed by Konrad Zuse between 1942 & 1945. He first published a paper on it in 1948. More information on the language was published in 1972.
- Its mixed one-dimensional and two-dimensional layout, which has puzzled many readers of the original document.
- Plankalkul means "plan kalkulus" which means "formal system for planning".
- Non-connotative names, and absolute addressing.
- 72 bits, grouped as 12 six-bit bytes.
- Its capabilities prompted the development of Fortran because it was able to support floating-point operations hardware.
- The speedcoding system developed by John Backus for the IBM 701.
- The shortcode was developed by John Mauchly in 1949. Shortcode called automatic programming because it was implemented with a pure interpreter, not translated to machine code.
- The environment in which Fortran was developed was as follows : Computers had small memories and were slow and relatively unreliable, the primary use of computers was for scientific computations, there were no existing efficient and effective ways to program computers, and because of the high cost of computers compared to the cost of programmers. The first version of Fortran is Fortran 0.
- Independent-compilation capability.
- Logical loop statements and IF with an optional ELSE.
- Fortran 90.
- Fortran 77.
- Linguists were concerned with natural language processing.
- Atoms and Lists.
- Common LISP allows for static scoping and dynamic scoping, Scheme only uses static scooping. Scheme is relatively small while Common LISP is large and complex.
- Scheme dialect.
- ACM and GAMM.
- The C programming language was devised in the early 1970s as a system implementation language for the nascent Unix operating system. It evolved a type structure, created on a tiny machine as a tool to improve a meager programming environment.
- Algol 58 introduced code blocks and the begin and end pairs for delimiting them, Algol 60 was the first language that implementing nested functions definitions with lexical scope.
- BNF Language.
- Flow-matic Language.
- COBOL design process began in 1959.
- Hierarchichal data structures (records).
- Department of Defense (DoD).
- Integer variables data type.
- Its smaller dialects could be implemented on computers with very small memories.
- PL/I was designed to replace Fortran and COBOL.
- The IBM system / 360 line of computers.
- The important feature is Data abstraction.
- User-defined data types.
- Orthogonality is the design criterion used extensively in ALGOL 68.
- ALGOL-W language introduced the case statement.
- For and switch statements, in its assigning operators, and in its treatment of pointers.
- Lack of complete type checking and flexibility.
- Because Prolog is concerned with the WHAT not the HOW. We have to specify what conditions the answer should satisfy, but not how to obtain it.
- The statements that populate Prolog database are Facts and Rules.
- The primary application area is Embedded systems.
- Tasks (using the rendezvous mechanism).
- C++ has both functions and methods.
- C++ is similiar to Ada. Anything C++ can do, Ada can do as well.
- Classes, Objects, and Methods.
- A goal of Ada was that it could be used for which Ada could be used, so virtually none of the features of Ada would be removed, not even those considered to be unsafe.
- From Smalltalk language.
- Doesn't support traditional object-oriented programming, as it has no form of inheritance.
- MacOS/iOS - iPhone.
- Ken Thompson.
- Both were popularized by the Department of Defense.
- A programming language for embedded consumer electronic devices.
- Similiar syntax.
- The dynamic nature of its strings and arrays, and its use of dynamic typing.
- Rectangular arrays is an array structure that is included in C# but not in C, C++, or Java.
- Two languages that was the original version of Perl meant to replace are Ksh and Awk.
- The application area is Web.
- They both complement each other. PHP or any server-side language is mandatory for client-server interaction while JavaScript is optional and not required.
- PHP's arrays are a combination of JavaScript's arrays and Perl's hashes.
- Primitive data types and Reference/Object Data Types.
- Both support multi-language programming.
- All operations are called via method calls.
- Java uses implicit storage deallocation for its objects, often called garbage collection.
- Lua is purely interpreted.
- Encapsulation, Inheritance, Polymorphism, Class (static) methods, Object initialization, Object finalization, Overloading, Abstract methods, Interfaces, Properties, Events, Collections, Runtime Type information, Exceptions, Single rooted classes, Extendable class library.
- -
- .NET framework.
- An XML data document and and XSLT document.
- XML document.
Problem Set :
- Logical data type and logical boolean expression, with this, we can create simple version of the complex compile, and link processes of earlier compilers.
- -
- -
- -
- -
- Undefined escape sequences in literal strings. The backslash character can be used in literal strings and characters:
- To escape various characters that have special significance in a literal string or character (",',\, and ?), and
- To introduce an escape sequence representing a character that it is impossible or impractical to include in the program literally (new-line, delete, etc.)
- Because that language continue to evolve from time to time.
- First, it is an interpreter type of language and focused on ease of use at the expense of system resources. Second, the running-time of a program that was written with the help of Speedcoding was usually ten to twenty times that of machine code.
- It is to shorten the initialization of a variable.
- -
- -
- Procedural programming is a classic programming where the program language is used to tell the computer exactly what to do, step by step. Non-procedural programming is where you tell the computer what you want, then the computer figures out how to get it. The incorporation of procedural and non-procedural features is used to overcome the lack of computer's knowledge to figure out some procedures by itself efficiently.
- The reasons why C is more popular than Fortran :
- Efficient compilers are universally available for all the main architechtures in use, and a good public compiler also exists (gcc). C compilers often come free with machines, while Fortran 90 compilers must be purchased, and often expensive.
- C is very broad in scope, and is more powerful of Fortran 90 in some areas, such as pointers, and manipulations of strings of characters.
- Acquired coding experience can be directly used outside the scientific world : C is very common in commercial world.
- Loosely typed languages, and Strongly typed languages
- For : Flexibility, Brevity of syntax. It places stricter controls on what objects can receive and send, so making it easier to enforce design strategies throughout the application. When there are errors in types, there can be picked up during precompilation or in the IDE.
- Against : Without type checking, there is no means to verify the integrity of the data without executing the application. The syntax of typed languages can be viewed as overly long or verbose. Typed languages aren't as flexible as untyped languages, as data structures need to be cast to the correct type before another object can receive them. It is also said that by using typed languages, the compiler spends less time dynamically typing objects and so executes faster.
- Yes, they are Fortran, C++, COBOL, Algol.
- It is good to make the program easier to be read, as long as it's stay out of ambiguous statements.
No comments:
Post a Comment