Scriptnyelvek összehasonlítása

Posted by KeRTi on nov 27, 2009 in IT |

Megint nem írtam ide hosszú-hosszú ideje, ennek okait az iskolában kell keresni: elég komoly elfoglaltságot jelent most nekem, arról nem is beszélve, hogy az elkövetkező 7 napban 4 zht írok és leadok 3 beadandó házit is.

A 3 háziból egy, a címben említett scriptnyelvek összehasonlítása. Nem mondom hogy igazi remek, de érdekesnek elmegy, tovább után olvasható (latex elbuherálta a latin2 karakterkódolást, utfben meg ilyet köpött ki, bocsánat az ékezetekért!).

1. Bevezetés

Ez a dokumentum a scriptnyelvekkel, és azok összehasonlításával hivatott foglalkozni. Id˝o  rendi sorrendben megjelenésük szerint fogom bemutatni az egyes nyelveket, tulajdonságaikat, a kódok kinézetét, felépítését.
Mindenek el˝o  tt úgy gondolom, fontos, hogy tisztázzuk mit˝o  l scriptnyelv a scriptnyelv.

1.1. Mi a scriptnyelv?

A script szó angolul írást jelent, ez a programozási nyelv pedig azért vette fel ezt a nevet, mert könnyen írható és olvasható kódot eredményez.
A legnagyobb különbség más programozási nyelvekt˝o  l, hogy a scriptkódok más programok által kerülnek értelmezésre, soha nem fordulnak le gépi kódra. Nem így történik például a C/C++/C# nyelveknél, ahol végeredményként születik egy futtatható állomány; itt a scripteket egy értelmez˝o  program kezeli.

2. Perl

2.1. Története

A Perl nyelvet Larry Wall, egy amerikai kutató fejlesztette ki 1987-ben. Wall az alapdiplomája megszerzése után nyelvészettel kezdett foglalkozni, azonban ezirányú kutatása családi okok miatt megszakadt. A Berkeley egyetemen lediplomázott, utána a NASA-nál helyezkedett el. Nyelvész múltja a Perl nyelvr˝o  l írt dokumentációiban is megfigyelhet˝o  , a változókat f˝o  neveknek, a funkciókat igéknek nevezi.
Nevét a pearl (gyöngy) szóból kapta, az ”a” bet˝u  t azért kellett elhagynia Wall-nak, mert egy PEARL nev˝u  programozási nyelv már 1977 óra létezett (Process and Experiment Automation Realtime Language).

2.2. Felépítése

Két szlogen él a Perl nyelvvel kapcsolatban: ”There’s more than one way to do it”, avagy ”több mint egy mód van rá hogy hogyan csináld”, és a ”Easy things should be easy and hard things should be possible”, azaz ”a könny˝u  dolgoknak könny˝u  nek kell lenniük, a nehéz dolgoknak pedig lehetségesnek”.
Struktúrálisan a C gyermekének tekinthet˝o  , nagyon hasonlít rá.
A különlegessége többek között az adattípusaiban rejlik: minden adattípusa elé el˝ojelet kell írni, eszerint különböztethet˝o  ek meg: vannak $skalárok, @tömbök, &függvények, %hashek (listák).

2.3. Helló világ!

Az alap régi Perl program print utasítással írta ki a szöveget:
print ”Hello világ!”
Az új verziói a Perlnek már a say (mondd) utasítást használják:
say ’Hello világ!’

2.4. A Perl jelene

Egy ma is használt és igen kedvelt nyelvr˝o  l van szó, a fejlesztése mégis szétszakadt.
1987-es megjelenése utána egy évvel már megjelent a Perl 2-es verziója, majd lényegében évente-kétévente új verziók jöttek ki, így 1994-ben már a Perl 5-ös verziójáról volt szó. A számozás meglehet˝o  sen rendhagyó volt ezután, nyilván nem történtek olyan óriási változások a nyelvben:
Perl 5.000 – 1994 október
Perl 5.001 – 1995 március
Perl 5.004 – 1997 május
Perl 5.005 – 1998 július
Perl 5.6 – 2000 március
2000-ben, a Perl mögött álló közösség úgy döntött, elkezdik a Perl 6 fejlesztését: a Perl 6 csak mint egy dokumentumköteg létezik, követelmények sora, így magában nem implementáció.
Ez a nyelv az el˝o  z˝o  verziótól egy teljesen különböz˝o  nyelv kell hogy legyen, így a fejlesztés szétvált: külön fejlesztik tovább a Perl 5öt és a Perl 6ot. A fejlesztés ma is zajlik, továbbra is a Perl 5-ös a legnépszer˝u  bb irány, jelenleg az 5.11.2-es verziónál tartanak (2009 november).
A Perl 6-nak létezik egy teljes implementációja, ez a Rakudo Perl, ami a Parrot nev˝u, open-source virtuális gép projektben van megvalósítva.

3. Python

3.1. Története

Guido Van Rossum fejlesztette ki. Saját nyilatkozata szerint 1989 decemberében, karácsony el˝o  tti héten annyira unatkozott, hogy egy hobby programozási projektbe kezdett.
A név eredete a Monty Python repül˝o  cirkuszából származik, ami egy brit komikus társulat.
Van Rossum Hollandiában diplomázott számítógép-tudományokból és matematikából, utána több kutatóintézetben dolgozott: el˝o  ször hazájában, majd amerikában. 2005-ben Van Rossum a Google cég alkalmazottja lett, ahol – a cég különleges filozófiáját követve – idejének 50%-át a Python nyelv fejlesztésével tölti.
A szerz˝o  t inspirálta az ugyanabban a holland intézetben kifejlesztett ABC programozási nyelv, melyet a BASIC és Pascal leváltására írtak a szerz˝o  k a ’80as évek elején, valamint a SETL, amely egy nagyon magas szint˝u  matematikai programozási nyelv (megvizsgálva a Python listakezelését, komoly hasonlóságok láthatóak a SETL-ben is).
2000 októberében megjelent a Python 2.0, majd 2008 decemberében a Python 3.0. Ez utóbbi nem lett túl divatos, hiszen teljesen új nyelvr˝o  l van szó: hátrafelé nem kompatibilis – így a f˝o  újdonságainak jó részét visszavezették a 2.6-os verzióhoz, egyel˝o  re ez a támogatott.

3.2. Felépítése

Szerkezete ennek is er˝o  sen hasonlít a C vagy Pascal nyelvekére.
Adattípusai között szerepel a lista, amely abban (is) különbözik a tömbt˝o  l, hogy több típusú elemet tartalmazhat, akár másik listát is. További rendhagyó a nyelvben, hogy alapban támogatja a komplex számok kezelését.

3.3. Helló világ!

Kiíratás print utasítással, semmi különleges nincs benne:
print ’Helló világ’

3.4. A Python jelene

Akárcsak a Perl mögött (vagy akárcsak a Google összes többi fejlesztése mögött), itt is komoly közösség áll a háttérben.
Az egyik legkomolyabb fejlesztés, a CPython futtatható kódot készít a scriptb˝o  l; hasonló elven m˝u  ködik a Jython, amely Java-s bytecode-ot készít a Pythonban írt kódból.

4. Ruby

4.1. Története

A ’90-es évek közepén egy japán programozó, Yukihiro Matsumoto fejlesztette ki a Rubyt. Sok nyelv inspirálta a szerz˝o  t, többek között a fentebb már említett Perl, de a szerz˝o  megjelöli a Smalltalkot és a LISPet is mint szül˝o  ket.
A szerz˝o  elárulta, hogy olyan script nyelvet szerett volna alkotni, amely er˝o  sebb mint a Perl, és objektum-orientáltabb mint a Python, ezért elkészítette a sajátját.

4.2. Felépítése

Matsumoto azt mondta, olyan nyelvet akart kifejleszteni, amelyben a programozó dolga a minimálisra csökken.
Minden adattípus objektum, ez vonatkozik a legalapabb típusokra is. Léteznek tömbök, asszociatív tömbök; ugyanúgy, mint a többi adattípushoz ezekhez is nagyon sok funkció, függvény kapcsolódik. A nyelv alkalmas kivételek kezelésére is.

4.3. Helló világ!

Print helyett a puts utasítás a használatos:
puts ”Helló világ!”

4.4. A Ruby jelene

Az els˝o  hivatalos verzió a 0.95ös 1995 decemberében került fel az internetre. Egy évvel kés˝o  bb, 1996 decemberében vált elérhet˝o  vé a Ruby 1.0. Jelenleg az 1.9.1-es verziónál tart a fejlesztés, ezt 2009 januárjában adták ki.
Rubyhoz létezik a Matsumoto által fejlesztett Matz’s Ruby Interpreter (MRI), valamint a JRuby, a Java-s implementáció: ez utóbbi bytekódot készít a scriptb˝o  l.
Gyakran használt megvalósítása még a nyelvnek a Ruby on Rails, ez egy nyílt forráskódú webalkalmazás-keretrendszer.

5. Egyéb nyelvek

Egyéb ismert scriptnyelvek közé tartozik a TCL is, ennek a Tk grafikai toolkittel való b˝o  vítménye gyakran használt linuxos rendszereken.
Ismert webszerver oldali script nyelv a PHP is, amelyet 1995-ben mutattak be. Kliens oldali scriptnyelv a JavaScript, melyet a Netscape fejleszt˝o  i mutattak be szintén 1995-ben.
A Microsoft mutatta be a VBScriptet, amely a Windows saját scriptnyelveinek egyike, a legtöbb Windows-alkalmazás támogatja.

Címke:, , , , , , ,

Reply

Copyright © 2010 KeRTi blogja All rights reserved.
Desk Mess Mirrored v1.2 theme from BuyNowShop.com.