Explain High-level languages
in computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In comparison to low-level programming languages, it may use natural language elements, be easier to use, or may automate (or even hide entirely) significant areas of computing systems (e.g. memory management), making the process of developing a program simpler and more understandable relative to a lower-level language
"High-level language" refers to the higher level of abstraction from machine language. Rather than dealing with registers, memory addresses and call stacks, high-level languages deal with variables, arrays, objects, complex arithmetic or boolean expressions, subroutines and functions, loops, threads, locks, and other abstract computer science concepts, with a focus on usability over optimal program efficiency. here are three general modes of execution for modern high-level languages: Interpreted / Compiled/ Machine code generation
22. explain Algorithmic languages
ALGOL (ALGOrithmic Language) is one of several high level languages designed specifically for programming scientific computations. It started out in the late 1950's, first formalized in a report titled ALGOL 58, and then progressed through reports ALGOL 60, and ALGOL 68. It was designed by an international committee to be a universal language. Their original conference, which took place in Zurich, was one of the first formal attempts to address the issue of software portability. ALGOL's machine independence permitted the designers to be more creative, but it made implementation much more difficult. Although ALGOL never reached the level of commercial popularity of FORTRAN and COBOL, it is considered the most important language of its era in terms of its influence on later language development. ALGOL’s lexical and syntactic structures became so popular that virtually all languages designed since have been referred to as "ALGOL - like"; that is they have been hierarchical in structure with nesting of both environments and control structures.
ALGOL was the first second-generation programming language and its characteristics are typical of the entire generation. First consider the data structures, which are very close to first generation structures. In.
One of the greatest impacts ALGOL 60 had was a result of its description as found in Naur (1963). A major contribution of this report was the introduction of BNF notation for defining the syntax of the language. Overall, ALGOL is considered to be perhaps the most orthogonal programming language, meaning it has a relatively small number of basic constructs and a set of rules for combining those constructs. Every construct has a type associated with it and there are no restrictions on those types. In addition, most constructs produce values. Several of ALGOL’s other characteristics are listed below:
Dynamic Arrays - one for which the subscript range s specified by variables so that the size of the array is set at the time storage is allocated.
Reserved Words - the symbols used for keywords are not allowed to be used as identifiers by the programmer.
User defined data types - allow the user to design data abstractions that fit particular problems very closely.
23. explain functional language
A functional language is a programming language built over and around logical functions or procedures within its programming structure. It is based on and is similar to mathematical functions in its program flow.
Functional languages derive their basic structure from the mathematical framework of Lambda calculus and combinatory logic. Erlang, LISP, Haskell and Scala are the most well-known functional languages.
Comprised primarily of functions, functional language emphasizes the semantics, rather than compilation, of a program. Functional language does not have the side effects of traditional imperative styles of programming in that functional language does not change the state of a program and will return the same results until functions are passed with the same arguments.
However, the lack of side effects is also a drawback to functional language, as not all programs can be developed without these effects in place, especially those requiring changing states and the creation of input/output (I/O) procedures.
§ Scheme и Common Lisp
§ РЕФАЛ§ ML с диалектами и расширениями(F#, Caml, OCaml, и т. д.)/ ErlangAgda
§ Pure (term rewriting, кавай)