Ez a szócikk nem tünteti fel a független forrásokat, amelyeket felhasználtak a készítése során. Emiatt nem tudjuk közvetlenül ellenőrizni, hogy a szócikkben szereplő állítások helytállóak-e. Segíts megbízható forrásokat találni az állításokhoz! Lásd még: A Wikipédia nem az első közlés helye. |
Ez a szócikk vagy szakasz lektorálásra, tartalmi javításokra szorul. A felmerült kifogásokat a szócikk vitalapja részletezi (vagy extrém esetben a szócikk szövegében elhelyezett, kikommentelt szövegrészek). Ha nincs indoklás a vitalapon (vagy szerkesztési módban a szövegközben), bátran távolítsd el a sablont! Csak akkor tedd a lap tetejére ezt a sablont, ha az egész cikk megszövegezése hibás. Ha nem, az adott szakaszba tedd, így segítve a lektorok munkáját! |
Pascal | |
Paradigma | imperatív, strukturált |
Jellemző kiterjesztés |
|
Megjelent | 1970 |
Tervező | Niklaus Wirth |
Fejlesztő | Niklaus Wirth |
Típusosság | statikus, erősen típusos, típusbiztos |
Dialektusok | Borland, Turbo Pascal, UCSD Pascal |
Megvalósítások | CDC 6000, ICL 1900, Pascal-P, PDP-11, PDP-10, IBM System/370, HP, GNU |
Hatással volt rá | ALGOL W |
Befolyásolt nyelvek | Ada, Component Pascal, Java, Modula, Modula-2, Oberon, Oberon-2, Object Pascal, Oxygene |
A Pascal az általános célú programozási nyelvek közé tartozik. Sok helyen még mindig ezen tanítják a programozást, hiszen a szintaxisa egyszerű, könnyen érthető, ennek ellenére hatékony eszközt ad használója kezébe. Legelterjedtebb megvalósítása a Borland cég által készített Turbo Pascal, melynek segítségével DOS-os alkalmazásokat készíthetünk, amelyek bármely verziószámú Windowson is képesek futni.
Az eredeti specifikáció szerint minden program egyetlen forrásfájlból áll, melynek kiterjesztése .pas. A konkrét implementációk egyedi bővítésekkel tették lehetővé a moduláris felépítést, például a Turbo Pascal és az Object Pascal unitoknak nevezi azokat a külön fájlokban található modulokat, amik nem önálló programok. Ezek a fejezetek tartalmazzák a programozó által felhasználható kiegészítő eljárásokat és függvényeket, de a programozó is készíthet ilyet.
Később megszületett a Borland Delphi, amely az objektumorientált Pascalt párosította a natív Windows programok készítésének lehetőségével. Ennek egy linuxos változata a mára elhanyagolt Kylix.
Az aktívan fejlesztett Free Pascal számos géptípuson (Intel x86, Amd64/x86-64, PowerPC, PowerPC64, SPARC, ARM) és operációs rendszeren (Linux, FreeBSD, Mac OS X/Darwin, DOS, Win32, Win64, WinCE, OS/2, Netware és MorphOS) érhető el. Az erre épülő Lazarus integrált fejlesztői környezettel a mai igényeknek is megfelelő, grafikus interfésszel rendelkező szoftverek készíthetők.
A nyelvet 1970-ben Niklaus Wirth professzor fejlesztette ki, aki emellett a Modula-2 és az Oberon atyja is. A Pascal maga az ALGOL programozási nyelven alapul, és a francia matematikus-filozófus Blaise Pascal tiszteletére nevezték el. Ez a nyelv az egyik alapja az Ada programozási nyelvnek, ami még ma is az egyik legbiztonságosabb nyelv a világon. Az objektumorientált Object Pascal nyelvet használja a Delphi fejlesztőrendszer.
A nyelv azonosítókból és kulcsszavakból, valamint operátorokból és egyéb szimbólumokból épül fel. A kulcsszavakat a fordító fenntartja magának, ezért ezeket nem használhatjuk fel saját célra, tehát ezek használata változónévként nem megengedett. Az azonosítók állhatnak betűkből, számokból és aláhúzásjelből (_), de nem kezdődhetnek számmal, illetve nem tartalmazhatnak speciális karaktereket(Ł, ß, & stb.), és a fordító típustól függően bizonyos hossz fölött az azonosítókat nem különbözteti meg. A program kulcsszó opcionális, csak arra szolgál, hogy jobban dokumentálhassuk a kódot. A megjegyzéseket a programban bárhol elhelyezhetjük, kezdetük jelölésére a { és a (*, zárásukra pedig a } illetve a *) jelek szolgálnak. Ezek mellett használhatjuk a // jelet is, mely csak az adott sorban jelöl megjegyzést. A nyelv sokféle operátort tartalmaz: +, –, *, /, div, mod, and, or, not, xor, in stb. Használhatunk eljárásokat, függvényeket, az újabb fordítók pedig már az objektumorientált programozási megközelítést is támogatják. A forráskódot modulokba, ún. unitokba szervezhetjük, amelyekben az adatrejtést is megvalósíthatjuk, az interface és az implementation kulcsszavak segítségével.
Egy egyszerű Pascal program felépítése:
{programfej} program Hello_World; {használt unitok megadása} uses crt,dos; {deklarációs rész: típusok, konstansok, változók} const Konstans = 42; type szabadnap = (szombat,vasarnap); var Valtozo: integer; nap: szabadnap; {eljárások és függvények} procedure Eljaras(Parameter: boolean); begin end; function Fuggveny(Parameter: real): integer; begin Fuggveny := round(Parameter) end; {programtörzs} begin Eljaras(true); Valtozo := Fuggveny(3.14); writeln(Valtozo); end.A Hello World! program:
Program HelloWorld; uses crt; Begin Clrscr; {képernyő törlése} Write('Hello Világ!'); {szöveg kiíratása} Readln; {várakozás enter ütésére, hogy ne záruljon be azonnal a program} End.A fenti forráskódban jól elkülöníthetők a parancsok. Egy parancs argumentumait zárójelek közé írjuk. A parancsot pontosvessző zárja le, így tudja a fordító elkülöníteni egymástól azokat.
A forráskód a program kulcsszóval kezdődik, mely röviden (1-2 szó) leírhatja, hogy maga a program miről szól. Ez az azonosító opcionális, mivel csak a programozónak információ, nem kötelező minden forráskódot ezzel kezdeni.
A uses kulcsszó után következik azoknak a unitoknak (fejezeteknek) a felsorolása, melyből a programozó a parancsokat válogatja programjához. A Pascalban lehetőség nyílik saját fejezetek készítésére. Az alapértelmezett unitok Turbo Pascalban:
A deklarációs részben állandókat, változókat és saját típusokat készíthetünk. Saját típusokat a type, állandókat a const, változókat var kulcsszó után lehet deklarálni. Egy konstansnak a nevét és az értékét egyenlőség jellel választjuk el. A változó nevét és típusát kettősponttal különítjük el. A változók típusai lehetnek:
Egész szám típusok:
Valós típusok:
Egyéb típusok:
Később eljárásokat és függvényeket hozhatunk létre, melyeket a főprogramban használhatunk. A főprogram kezdetét és végét a begin és end. kulcsszó jelöli. Hasonló módon történik az eljárások és függvények behatárolása, azzal a különbséggel, hogy ott a programrész végét end; zárja.
Főbb programozási nyelvek | |
---|---|
Listák: betűrendes Kategória |
Nemzetközi katalógusok |
---|