Define the key terms from the given list below. The length of each term definiti
ID: 2247263 • Letter: D
Question
Define the key terms from the given list below. The length of each term definition should be between 50-80 words. Define the terms in the context of programming languages and use examples if necessary.1. reliability 2. feature multiplicity 3. operator overloading 4. orthogonality 5. expressivity 6. exception Handling 7. abstraction 8. compilation 9. pure interpretation 10. hybrid Implementation Systems Define the key terms from the given list below. The length of each term definition should be between 50-80 words. Define the terms in the context of programming languages and use examples if necessary.
1. reliability 2. feature multiplicity 3. operator overloading 4. orthogonality 5. expressivity 6. exception Handling 7. abstraction 8. compilation 9. pure interpretation 10. hybrid Implementation Systems Define the key terms from the given list below. The length of each term definition should be between 50-80 words. Define the terms in the context of programming languages and use examples if necessary.
1. reliability 2. feature multiplicity 3. operator overloading 4. orthogonality 5. expressivity 6. exception Handling 7. abstraction 8. compilation 9. pure interpretation 10. hybrid Implementation Systems
Explanation / Answer
1)reliability :
Reliability of a programming language means how crash-proof is the code written in that language.Reliability is largely dependent on the code written and very little on the language itself. Howeverreliability does depend on how easy it is to program in that language although it is largely application-specific.
(or)
Reliability is an attribute of any computer-related component (software, or hardware, or a network, for example) that consistently performs according to its specifications. It has long been considered one of three related attributes that must be considered when making, buying, or using a computer product or component.
Examples:
A program is said to be reliable if it performs to its specifications under all conditions. • Type checking: is simply testing for type errors in a given program, either by the compiler or during program execution. – The earlier errors are detected, the less expensive it is to make the required repairs. Java requires type checking of nearly all variables and expressions at compile time. • Exception handling: the ability to intercept run-time errors, take corrective measures, and then continue is a great aid to reliability. • Aliasing: it is having two or more distinct referencing methods, or names, for the same memory cell. In C, union members and pointers set to point to the same variable. – It is now widely accepted that aliasing is a dangerous feature in a language. • Readability and writability: Both readability and writability influence reliability.
2) feature multiplicity:
Feature multiplicity means more than one ways to accomplish the same task while using the same language constructs.
Example:
Four ways to increment a variable in C++:
3)operator overloading:
Operator overloading is a technique by which operators used in a programming language are implemented in user-defined types with customized logic that is based on the types of arguments passed.
Operator overloading facilitates the specification of user-defined implementation for operations wherein one or both operands are of user-defined class or structure type. This helps user-defined types to behave much like the fundamental primitive data types. Operator overloading is helpful in cases where the operators used for certain types provide semantics related to the domain context and syntactic support as found in the programming language. It is used for syntactical convenience, readability and maintainability.
For example, operators in C# are categorized based on the type of operation they perform. Some of them are overloaded in user-defined types by defining them in static member functions and using the operator keyword. The parameters of the operator function represent the operands, while the return type of an operator function represents the result of the operation. Overloading is implemented in pairs for operators, such as comparison operators like "==" and "!=". The Equals() method for these operators should be overridden to avoid a compiler warning. Overloading is not to be used for operators such as conditional, logical ( and !!), assignment (+=, -=, etc.), casting and array indexing ([]).
It is highly recommended that operator overloading be implemented such that the results produced are what are intuitively expected out of the default implementation of the operator. Certain mathematical rules such as commutative law, applicable to expressions with two operands, cannot be applicable when used in overloading for types as they are only defined for numerical operands.
4)Orthogonality:
In computer programming, "orthogonality in a programming language means that a relatively small set of primitive constructs can be combined in a relatively small number of ways to build the control and data structures of the language" (Sebesta, Robert. Concepts of Programming Languages.). The term is most-frequently used regarding assembly instruction sets, as orthogonal instruction set.
Orthogonality is an important concept, addressing how a relatively small number of components can be combined in a relatively small number of ways to get the desired results. It is associated with simplicity; the moreorthogonal the design, the fewer exceptions.
5)expressivity:
expressivity the quality of a mimical, oral, written, musical, or plastic manifestation that shows with full of feeling or meaning the ideas or emotions of the author or player.
Expressivity of a programming language:
Capability of a programming language to express the solution of a problem in:
6)Exception handling:
Exception handling is the process of responding to the occurrence, during computation, of exceptions – anomalous or exceptional conditions requiring special processing – often changing the normal flow of program execution.
exapmles:
7) abstraction:
Abstraction is the process of taking away or removing characteristics from something in order to reduce it to a set of essential characteristics. In object-oriented programming, abstraction is one of three central principles (along with encapsulation and inheritance). Through the process of abstraction, a programmer hides all but the relevant data about an object in order to reduce complexity and increase efficiency. In the same way that abstraction sometimes works in art, the object that remains is a representation of the original, with unwanted detail omitted. The resulting object itself can be referred to as an abstraction, meaning a named entitymade up of selected attributes and behavior specific to a particular usage of the originating entity. Abstraction is related to both encapsulation and data hiding.
Examples:
This section provides you an example of the abstract class. To create an abstract class, just use the abstract keyword before the class keyword, in the class declaration.
You can observe that except abstract methods the Employee class is same as normal class in Java. The class is now abstract, but it still has three fields, seven methods, and one constructor.
8)Compilation:
Compilation is the process the computer takes to convert a high-level programming language into a machine language that the computer can understand. The software which performs this conversion is called a compiler.
9)pure interpretation:
. pure interpretation Programs are interpreted by another program called an interpreter, with no translation. • Advantage: easy implementation of many source-level debugging operations, because all run-time error messages can refer to source-level units. • Disadvantage: slower execution (10 to 100 times slower than compiled programs) • Bottleneck: Statement decoding, rather than the connection between the processor and memory, is the bottleneck of a pure interpreter. • Significant comeback with some Web scripting languages (e.g., JavaScript and PHP)
A pure interpreter reads the source text of a program, analyzes it, and executes it as it goes. This is usually very slow--the interpreter spends a lot of time analyzing strings of characters to figure out what they mean. A pure interpreter must recognize and analyze each expression in the source text each time it is encountered, so that it knows what to do next. This is pretty much how most command shell languages work, including UNIX shells and Tcl.
10)hybrid Implementation Systems:
Hybrid implementation systems are a compromise between compilers and pure interpreters. They translate high-level language programs to an intermediate language designed to allow easy interpretation. This method is faster than pure interpretation because the source language statements are decode only once.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.