Så er der Forth til Java

Sådan da. Implementeringen følger vist ikke standarden hårfint, men alligevel skulle det nu være muligt at eksperimentere med verdens mest underlige sprog på JVM'en.

Det temmeligt obskure programmeringssprog Forth er nu at finde på Java-platformen i en mere eller mindre standardiseret version.

Craig Lindley, der har en baggrund i hardware, men som i mange år har programmeret Java på den store skala, har skrevet sin egen Forth-fortolker i Java, og gjort den tilgængelig for alverden.

Forth er ligesom C et maskinnært sprog, der kan bruges som en slags assembler på højt niveau, men hvor C-kode til forveksling ligner struktureret programmering er Forth et ganske andet bæst.

Craig Lindley bedyrer, at han tidligere har været med til at anvende sproget hos NASA's JPL-laboratorium, hvor Forth blev benyttet til interplanetarisk rumskibsfart i forbindelse med command-control-systemer.

Forth er et stak-baseret, produceralt sprog, som blev opfundet i 1968. Bare to år senere var sproget blevet forfremmet til noget så fornemt som at styre de berømte astronomiske teleskoper på det amerikanske Kitt Peak Observatorium i Arizona-ørkenen.

På det tidspunkt var C-compilere endnu ikke så udbredte, skriver Craig Lindley i en artikel i Dr. Dobbs, og andre sprog som Fortran krævede compilere, som var større end hvad maskineriet ofte kunne klare. Forth kunne på det tidspunkt lige passe ind med den rigtige størrelse og muligheder.

Ved interaktiv brug kan Forth se sådan ud:

10 HEX . A OK

Her konverteres tallet 10 til sin hexadecimalform, og fortolkeren svarer friskt ok.

Craig Lindley har savnet Forth så meget, at han nu har skrevet sin egen fortolker til sproget i Java. Han understreger, at det kun er for sjov og for at vise, at det kan lade sig gøre. Han har implementeret Forth efter hukommelsen, så man skal ikke regne med, at det er helt efter standarderne, advarer han.

Koden til fortolkeren kan downloades fra artiklen i Dr. Dobbs, som kan findes via det eksterne link herunder.

Og for de af os, som aldrig har gidet at læse en bog om, hvordan man skriver en fortolker eller en compiler, giver koden en god fornemmelse for, hvordan sådan noget stads fungerer.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (3)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Torben Mogensen Blogger

Selv om få bruger Forth nuomdage, så er Forth haft væsentlig indflydelse på designet af PostScript. De færreste bruger af PostScript ved, at edt indeholder et komplet programmeringssprog, så man kan få sin Postscript-printer til at lave større udregninger. I slutningen af firserne var det almindeligt, at laserprintere havde kraftigere processorer end de PC'er, de var koblet til. Så nogle folk lagde en beregninger ud i printeren. En af mine kolleger lavede f.eks. et program til beregning af Mandelbrots mængde, som så blev plottet i høj opløsning på printeren.

PostScript indgår i PDF, så de fleste PC-brugere har en variant af Forth installeret.

  • 0
  • 0
Peter Favrholdt

Hvem havde troet at en lærebog i et programmeringssprog var sjov (ja altså sådan rigtig ROFLOL!)

I tidernes morgen var jeg i erhvervspraktik hos IBM hvor jeg så mit snit til at fotokopiere en bog der hedder "Starting FORTH" af Leo Brodie.

Det er en genial bog og artiklen fik mig til at finde bogen (fotokopien) på hylden og på google:

http://home.iae.nl/users/mhx/sf.html

Desværre er online-versionens med nye illustrationer (hvilket redaktøren af online-versionen også beklager). Den originale bogs tegninger er helt fantastiske, f.eks. er der en grum bøddel i afsnittet om EXECUTE og en to-hovedet drage i afsnittet om SWAP (den bytter to elementer om på stakken og dens vinger siger "swap swap").

Hvis du nogensinde har programmeret en RPN lommeregner fra HP er FORTH en leg.

  • 0
  • 0
Log ind eller Opret konto for at kommentere