A Pike programozási nyelv

Bevezetés

Történet

Lars Pensjö a Svédországbeli gothenburgi Chalmers Egyetemen és még néhány ember több játékost kezelő kaland-játékot szerettek volna írni, és ehhez szükségük volt egy egyszerű, memóriahatékony programozási nyelvre, így megszületett az LPC (Lars Pensjö C). Körülbelül egy év múlva Fredrik Hübinette (Hubbe) játszani kezdett egy ilyen játékkal, és úgy találta, hogy ez a legkönnyebben használható nyelv, amit valaha látott. Úgy gondolta, hogy másra is alkalmas, de szerzői jogok miatt nem lehetett üzleti célokra használni, így Hubbe megírta a saját interpreterét a µLPC-t, mely nagyon hasonlított az LPC-re.

Később Hubbe anyagi támogatást kapott a Signum Support AB-tól, amely cégnek a célja minél több GNU és GPL szoftver kifejlesztése volt.

Amikor a µLPC már használható lett, akkor a InformationsVävarna AB felhasználta a saját webszerveréhez.

Ekkor lett a µLPC neve Pike. A Pike-ot szinte teljesen Hubbe fejlesztette, amíg ki nem szállt az InformationsVävarna-ból, aminek az új neve Roxen Internet Software lett.

Összehasonlítás más nyelvekkel

Python: Valószínűleg ez a nyelv hasonlít leginkább a Pike-hoz, mely azonban gyorsabb és objektum-orientáltabb. Ezen kívül a Pike szintaxisa hasonlít a C-hez és a Javához, így az ezekben jártas programozók könnyebben eligazodnak benne. Viszont a Pythonhoz sokkal több könyvtár elérhető.

C++: A Pike szintaxisa majdnem teljesen megegyezik a C++-éval, a jelentős különbség abban rejlik, hogy a Pike interpretált nyelv. Ezáltal igaz, hogy a kód futása lassabb, ám fordítási idő gyakorlatilag nincs. Azon néhány alkalmazásnál, ahol szükség van a C/C++ sebességére, általában egyszerűbb kiterjesztést írni a Pike programhoz, mint megírni az egészet C/C++-ban.

C#: A Pike nagyon hasonlít a C# -hoz. Az ember azt hihetné, hogy e nyelv kiötlői között néhány Pike-programozó is akadt. A legkönnyebben észrevehető különbség az, hogy a Pike-nak a C#-énál jobb alaptípusai vannak, továbbá nem szükséges külső könyvtárak használata a típuskonverzióhoz. Aki már programozott C#-ban, annak a Pike sem fog nehézséget okozni.

Java: Kívülről nézve a Java és a Pike szintén mutat némi hasonlóságot (hiszen mindkettő szintaxisa a C++-éval rokon). Ráadásul a Javához hasonlóan a Pike fordítása is egy közbülső formátumra történik, és ezt hajtja végre az interpreter. A Java programokat általában ebben a formában terjesztik, míg a Pike programokat forráskódban. Ez azért előnyös, mivel a fordítási idő, azaz amíg ez a közbülső kód elkészül, a Pike-nál elhanyagolható.

Lisp és Scheme: Legbelül a Pike sok hasonlóságot mutat az egyszerű Lisp- és Scheme-implementációkkal. Ezek mindegyike verem alapú, byte kódú, interpretált nyelv. A Pike a Scheme-hez hasonlóan "egycellás" nyelv.

Pascal: A Pike-ban és a Pascalban semmi közös nincs.

Tcl: A Pike hasonlít a Tcl-hez szándékában és fejlett stringkezelésében, azonban jobb adattípusai vannak és sokkal gyorsabb.