Programozási nyelvek kategóriák szerint

A programozási nyelvek kategóriái

Léteznek általános célú és szakterület-specifikus programozási nyelvek.

Szerkesztő (authoring) programozási nyelvek
Tutor
Coursewriter
PILOT
Batch nyelvek
sh (a (Stephen) Bourne shell az AT&T-től)
Bash (a b(ourne)a(gain)sh(ell) a Gnu Project része)
Zsh
CLIST (MVS Command List)
csh (C-szerű shell a UC Berkeley-i Bill Joy-tól)
EXEC
EXEC2
ksh (a David K(orn)sh(ell) az AT&T-től)
REXX
Fordítós (compiler) nyelvek
BASIC (számos változattal)
C++ (számos változattal)
Delphi (Borland Object Pascal fejlesztői rendszer)
Java (a Sun Microsystemstől)
Perl (Larry Wall-tól; általában értelmező)
Visual Basic (a Microsofttól)
RPG programozási nyelv (még számítógép ugyan nem volt, de már használták)
FORTRAN (az első magas szintű fordítós nyelv John Backustól, IBM)
Scheme (számos változattal, például Bigloo)
Lisp (számos változattal)
COBOL („lényeg az egyszerűség”)
Algol (a második magas szintű fordítós nyelv)
A Kapcsos zárójeles nyelvek szintaxisában a kifejezés-blokkokat a kapcsos zárójelek ({ és }) határolják. Túlnyomórészt C stílusú nyelvekről van szó, mint például
Asymptote (grafikus mértani ábrákat előállító nyelv)
C (1970-től D. Ritchie és K. Thompson fejlesztésében a Bell Labs-től – közeli kapcsolatban van a Unix operációs rendszerrel)
C++
C# (C++ ill. java szerű nyelv a .NET projekthez)
ECMAScript (avagy JavaScript)
Java
Perl
Coyote (C változat programozási hibák elkerülésére kiélezve)
D (egy lépéssel a C után Walter Brighttól)
Pike (egy másik lépés a C után…)
PHP
R
Az Adatfolyam programozási nyelvek virtuálisan leképezik a valós adatfolyamokat, amelyeket specifikálni szeretnénk programunkban. Általában különálló események kezelésére vagy adatfolyamok feldolgozására használjuk.
Report Program Generator
LabView
Max
Pure Data
Az Adatorientált programozási nyelvek hatékony eszközök relációs adatok keresésére vagy módosítására, melyek általában táblákba rendezve, és különböző relációkkal összekapcsolva találhatók. Ilyenek:
dBase egy relációs adatbázis-kezelő nyelv
SQL
M (egy adatbáziskezelésre specializált ANSI standard általános felhasználású nyelv)
Az Adatstruktúrált programozási nyelvek azok, melyek logikája hasonló struktúrában található, mint az adataik.
Lisp és származékai, mint Scheme és Tcl, valamint a TRAC. Mind listákat használ alapelveinek rendszerezésére.
FORTH, Poplog és Postscript (a műveleteket mind verem adatstruktúra alapján végzi)
APL (az adatokat és a kódot is tömbként kezeli – Kenneth Iversontól)
Sokak szerint az assembly programozási nyelvek is ide tartoznak
Kiterjesztő (extension) programozási nyelvek egy másik rendszerbe beágyazott, azt kiegészítő nyelvek, és a bővítőszkriptek funkcióinak kihasználására használják. Gyakran valamilyen speciális célú hardver vagy segéd-processzor(ok) kihasználására készülnek
 Guile
 AutoLisp (a CAD rendszerek klasszikus script-nyelve már hosszú ideje)
 Emacs Lisp (az Emacs szövegszerkesztőn belül működő, a rendszer bővítésén (bővítő-szkriptelésén) kívül akár általános célokra is használható nyelv
 SQL
 OpenCL egy C és C++ bővítés, amely a sokmagos grafikus-kártyák extrém sebességét nem csupán grafikai, hanem rengeteg számítást igénylő matematikai, statisztika vagy elemzési feladatokhoz használja, leginkább az illető feladat algoritmusában látható vagy megbújó párhuzamosságok hatékony kihasználásával 
 OptimJ
 Tcl/Tk
A Funkcionális programozási nyelvek a programokat és szubrutinokat mint matematikai függvényeket definiálják. Általában ezek a nyelvek más, nem-funkcionális elemeket is tartalmaznak, ezen elemek működését, maradandó hatását mellékhatásnak hívják
APL
F#
Lisp
ML
Ocaml
OPS5 programozási nyelv
Q
Scheme
Haskell (Haskell Curry matematikus nevéből)
Joy
Értelmező programozási nyelvek
BASIC (és változatai)
C++ (főként korai változatai, újabban csak a tesztelési fázishoz használnak értelmezőt)
Perl (legtöbb változata)
VBScript
Lisp (főleg a korai változatok voltak interpreterek, később gépi kódra fordító rendszerek készültek, újabban (kb.15-20 éve) bájtkódra történik a fordítás, amit gyors értelmezőprogramok hajtanak végre)
R
Scratch (a programozással ismerkedő gyerekek számára készült vizuális környezet)
A legtöbb szkriptkezelő programozási nyelvek (lásd lejjebb)
Szóelemző programozási nyelvek
Gnu Bison (az FSF Yacc verziója)
Lex (szóelemzés a Bell Labs-től)
Gnu FLEX (az FSF Lex verziója)
M4
Yacc (yet another compiler compiler a Bell Labs-től)
A Logikai programozási nyelvekben attribútumok halmazát határozzuk meg, melyekből lépések halmazának alkalmazásával kapjuk meg az eredményt.
Prolog Horn logika és logikai döntés alapján értékeli ki az adatokat
Mercury a Prolog alapján készült
Gépi kódú programozási nyelveket közvetlenül hajtja végre a központi egység (CPU). Tipikusan oktális vagy hexadecimális bitmintákkal dolgozik. Minden mintacsoport (egy vagy több bájt) végrehajt egy hardveres alapműveletet. Általában processzorfüggő nyelv, nem vihető át más rendszerbe. Hivatalosan a processzor gyártója szállítja. "Gépi-kódban programozni" elsősorban assembly-nyelven programozást jelent. Az Assembly a közvetlen gépi kódú programozás megkönnyítésére készült szimbolikus jelöléseket használó kódrendszer. Ezek a szimbolikus jelölések alkalmasabbak emberi megértésre a gépi kódnál. Lehetőségünk van szimbolikus címek használatára, amit az assembler abszolút címekre cserél. A legtöbb assembler alkalmas makrók, valamint szimbolikus konstansok kezelésére is. Általában egy családba tartozó processzorokhoz ugyanaz a nyelv használható. A következők számítanak egy-egy család alapjának:
Intel 80x86
Motorola 680x
Motorola 680x0
PowerPC
Intel 8080/8505
ARM
StrongARM
MOS Technology 6502
National 32032
Sun SPARC és UltraSPARC
MIPS R2000/R3000
Az Eljáráselvű programozási nyelvek (másképp "Procedurális nyelvek")alapja a modularitás és a hatókör. Egy eljáráselvű program egy vagy több egységből (unit) vagy modulból (module) áll, minden egyes felhasználó egy kódkönyvtárból dolgozik. Minden modul egy vagy több eljárásból - függvényből, rutinból, szubrutinból, metódusból (az elnevezés az adott programozási nyelvtől függ) áll.
Ada
BASIC
C
C++ (C objektumokkal és más egyebekkel)
C# (a Microsofttól, továbbfejlesztett C a .NET-hez)
CFM
COBOL
Component Pascal (Oberon-2 variáns)
Object Pascal
ECMAScript (JavaScript)
FORTRAN
Java
Modula-2
Oberon-2 (továbbfejlesztett Modula-2, kisebb gyorsabb, biztonságosabb)
M
Pascal
Perl
PL/C
PL/1 (eredetileg IBM mainframes használatra készült)
Rapira
VBScript
Visual Basic
Objektumorientált programozási nyelvekben az adatok objektumosztályokban vannak definiálva, melyek végrehajtható kódot is tartalmaznak (metódusok). Az örökléssel az egyes objektumosztályok kibővíthetők.
Ada 95
Asymptote (grafikus mértani ábrákat előállító nyelv)
C++
C#
Common Lisp
Object Pascal
ECMAScript (JavaScript a Netscape-től)
Eiffel
Java (közeli rokona a C++-nak, szemétgyűjtéssel, nem biztonságos alkotórészek eltávolításával, platformfüggetlen „bájtkód”, homokozó a biztonságért – a Sun Microsystemstől)
Modula-2 (adat absztrakció, információ elrejtés, erős tipizálás, teljes modularitás – N. Wirth-től)
Modula-3 (objektum orientált Modula-2)
NewtonScript
Oberon (objektum orientált Modula-2 alapváltozat)
Objective C
Perl 5
PHP
PowerBuilder
Python (értelmező)
R
Ruby
Sather
Self
Simula (az első objektum orientált nyelv Norvégiából)
Smalltalk (Xerox PARC)
VBScript (Microsoft Office makrónyelve)
Visual Basic
Prototipizáló programozási nyelvek speciális objektumorientált programozási nyelvek melyekből az osztályok és hivatkozások megkülönböztetése megszűnt.
ECMAScript (JavaScript)
NewtonScript
Self
Szabályalapú programozási nyelvek melyek szabályokat használnak egyes adathalmazok feltételeinek aktiválásához. A kiválasztott adathalmaz aktiválásakor a megfelelő szabály végrehajtódik.
OPS-5
Prolog
Clips
Jess
A Szkriptkezelő programozási nyelvek (másképpen "Szkriptnyelvek") gyakran ismétlődő folyamatok automatizálása érhető el akár külső programok végrehajtása által. Számos összetett alkalmazásprogram (pl. grafikai-, műszaki tervező- vagy akár táblázatkezelő-, szövegszerkesztő-program) olyan beépített szkriptnyelvet biztosít, amelyek lehetővé teszik az alkalmazás fő feladatainak automatizált megoldását (más megközelítésből ezeket hívjuk alkalmazásprogramozási felületeknek, azaz API-nak).
Awk
AppleScript
EXEC
EXEC2
CLIST
FBSL
Perl
PHP
Python
REXX
Ruby
Tcl
VBScript
Számos shell mint például a UNIX shell vagy DCL VMS-en.
Makrónyelv: beágyazott rövid futtatható kód szabadon formázott szövegben.
M4
C Preprocessor
PHP
Stage 2
olyan Makrónyelvek, mint amilyen a Tcl és az ECMAScript (Javascript) beépülve az alkalmazásokba, úgy viselkednek, mintha makrónyelvvé váltak volna.
Turing tarpits (Nyelvek, melyek Turing-teljesek, ám a közönséges felhasználónak meglehetősen nehéz, vagy szinte lehetetlen értelmezni őket.)
Befunge
Brainfuck
INTERCAL
Unlambda
Az XML-alapú nyelvek olyanok, amelyek az XML-en alapulnak, vagy azzal műveleteket tudnak végezni.
XSLT
XPath
A Konkurens programozási nyelvek azok, amelyek fő célja processzek és szálak párhuzamos végrehajtása. Korábban erre ún. monitorokat használtak (ld.még szemaforok), ma már főleg szálspecifikus tárolók segítségével üzenetként adják a parancsokat a folyamatoknak. A folyamatok a végrehajtandó üzenetek gyűjteményei.
Concurrent Pascal (Brinch-Hansen-től)
Occam2
Pict
Negyedik generációs programozási nyelvek ún. magas szintű nyelvek egy adatbázis-rendszer köré építve.
BuildProfessional
Today
GEMBASE
LINC
Nem angol alapú programozási nyelvek
Var'aq – Klingon
HPL – Héber
Brainfuck

Szabványos programozási nyelvek

Jegyzetek

Külső hivatkozások 
Programozási nyelvek kategóriái
Módszeres programozás (Fábián Zoltán) (Pdf)
 
ISO Standards: Programming languages, their environments and system software interfaces

Számítógép-programozás