imagazin arrow2-left arrow2-right arrow2-top arrow-up arrow-down arrow-left arrow-right cart close dossiers education fb instagram menu notification oander rss rss-footer search service shuffle speech-bubble star store stores tests twitter youtube

A jövő megérkezett!

Rendeld elő már most az iPhone X-et!

Ez a cikk több mint egy éve nem frissült. Kérjük, vedd figyelembe, hogy ennek tükrében a tartalom mára már idejétmúlt lehet.

Így került “magyar kód” az Apple szoftverébe


Andy Hertzfeld az Apple hőskorában Macintosh-fejlesztőként dolgozott, és számos anekdotájában a cég akkori mindennapjairól mesél. Tőle tudhatjuk azt is, hogy mit neveztek az Apple-nél “magyar kódnak”.

A legelső Macintosh számítógép fejlesztésekor Andy Hertzfeld és a Macintosh csapat többi tagja azon dolgozott, hogy a korábban bemutatott Apple Lisára készített lehető legtöbb programot felhasználhassák az új Macintosh rendszerhez. Ugyan a Lisa és a Macintosh ugyanazt a processzort használták, utóbbinak sokkal kevesebb memóriája volt, így még az akkori sztenderdekhez mérten is nagy figyelmet fordítottak a programkód optimalizálására, és szinte mindent a processzor natív assembly nyelvén írtak meg.

Amikor a QuickDraw rajzprogramhoz értek, arra számítottak, hogy könnyű dolguk lesz, hiszen az eredeti fejlesztő, Bill Atkinson eleve assembly-ben írta meg. Viszont a futtáshoz szükséges egyéb modulok a kevésbé hatékony Pascal nyelven íródtak, ezeket tehát mindenképpen át kellett írniuk a processzor natív nyelvére.

A QuickDraw sokáig a Macintosh operációs rendszer részét képezte, még a Mac OS X Mountain Lion verziója is támogatta a QuickDraw könyvtárak használatát.
A QuickDraw sokáig a Macintosh operációs rendszer részét képezte, még a Mac OS X Mountain Lion verziója is támogatta a QuickDraw könyvtárak használatát.

Ekkor találkoztak először “magyar nyelvű” kóddal, ami a Tom Malloy által készített memóriakezelő modul forráskódjának olvashatatlanságára utalt. Tom Malloy nem volt ugyan magyar, viszont mint kiderült, a kifogásolt módszert egy valóban magyar üzletembertől, Charles Simonyitól tanulta.

Malloy ugyanis korábban a Xerox-nál dolgozott és Charles Simonyi vezetésével egy szövegszerkesztő programot fejlesztettek. Itt szokott rá Simonyi miatt, hogy a változók elnevezésekor helytakarékosságból kihagyja a magánhangzókat. Emiatt a Macintosh-fejlesztők alig bírták értelmezni a kódot, amihez mondjuk az is hozzájárult, hogy semmilyen kommentet nem tartalmazott.

Így a programkód még a hozzáértőknek is inkább hasonlított egy távoli országban beszélt érthetetlen nyelvre, mint egy strukturált parancssorozatra. Azt is tudták, hogy Charles Simonyi Magyarországon nőtt fel, így ezt az értelmezhetetlen rendszert onnantól fogva csak magyar stílusnak nevezték.

Tom Malloy memóriakezelője egy kiemelkedő példánya a magyar Pascal kódnak, amiben olyan azonosítók szerepeltek, mintha Superman ötödik dimenzió-beli ellenségére, Mr. Mxyzptlk-re utalnának.

charles_simonyi_xerox
Charles Simonyi a Xeroxnál töltött éveiben

Andy Hertzfeld blogján egyébként tapintatosan csak annyit ír Simonyiról, hogy kifejezetten különc programozó volt, aki sok alapvető technikáról másként gondolkodott, mint a szakma nagy része. Így például a magánhangzókat sem hiányolta a változók nevéből.

Végül persze nem kis munkával átírták a kódot egy szépen rendezett, kommentekkel ellátott assembly parancssorozattá. Így már egyértelmű volt, hogy melyik sor miért felelt, és nem kapott fejfájást akárki, aki nekiállt kivesézni a kódot, de ez már közel sem olyan emlékezetes, mint a Charles Simonyi által “kifejlesztett” magyar módszer.

Forrás: Folklore.org

Ajándékötletek
Apple Inc. (AAPL)

Ezt már olvastad?

A Sirinek ez is az egyik baja, hogy mindenki a célközönség. Valószínűleg hatékonyabb lenne, ha először jól működő modulokat hoznának létre egy-egy funkcióra szabva.

Miért nem ismeri anyanyelvünket az Apple virtuális asszisztense? ... - Klikk ide!