Limbaje de Programare
-
Upload
gabrielvad -
Category
Documents
-
view
10 -
download
4
description
Transcript of Limbaje de Programare
Categorii
Dup paradigma programrii
limbaje ezoterice, ex. Brainfuck limbaje procedurale; ex. C, Java, Perl limbaje funcionale: ex. ML, Haskell limbaje pentru programarea logic ex.Prolog, DATALOG limbaje mixte: ex.LISP ofer un amestec heteroclit i netipizat de programare imperativ i programare funcional
Dup nivelul de abstractizare (care printre altele corespunde cu uurina cu care programele pot fi citite i nelese de ctre programatori):
limbaje de generaia ntia: limbajele cod-main (limbaje main)
limbaje de generaia a doua: limbajele de asamblare
limbaje de generaia a treia: limbaje de nivel nalt, cum ar fi C-ul (i toate derivatele sale: C++, Java, ...), Pascal, Fortran .a.
limbaje de generaia a patra: limbajele neprocedurale, orientate pe rezolvarea unei anumite clase de probleme: SQL .a.
limbaje de generaia a cincea: limbaje utilizate n domenii precum logica fuzzy, inteligena artificial sau i reelele neuronale: Prolog, LISP .a.
Dup vechime
Limbaje din secolul trecut; ex. LISP i FORTRAN din anii '50
Limbaje din ultimul deceniu; ex. Haskell, Ruby, Brainfuck, limbajul D[1]Execuie
Pentru executarea unui program scris ntr-un limbaj oarecare, exist, n principiu, dou abordri: compilare sau interpretare. La compilare, compilatorul transform programul-surs n totalitatea sa ntr-un program echivalent scris n limbaj main, care apoi este executat. La interpretare, interpretorul ia prima instruciune din programul-surs, o transform n limbaj main i o execut; apoi trece la instruciunea doua i repet aceleai aciuni .a.m.d.
Unele limbaje se preteaz bine la compilare; de exemplu limbajele clasice: Pascal, Fortran, C. Altele sunt cu predilecie interpretate, de ex. BASIC, PHP, SQL. Multe limbaje moderne combin compilarea cu interpretarea: codul surs este compilat ntr-un limbaj binar numit bytecode, care la rulare este interpretat de ctre o main virtual. De remarcat faptul c unele interpretoare de limbaje pot folosi compilatoare aa-numite just-in-time, care transform codul n limbaj main chiar naintea executrii.