XL (programozási nyelv)

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt hozzászólók, és jelentősen eltérhet a 2015. november 4-én felülvizsgált verziótól ; az ellenőrzések 3 szerkesztést igényelnek .
XL
Nyelvóra többparadigma : kötelező
Megjelent 2000
Szerző Christoph De Dinechin [d]
Kiadás 0,1 (2010)
Teszt verzió 2010-02-27
Típusrendszer szigorú
Befolyásolva Ada , C++
Engedély GPLv2
Weboldal xlr.sf.net
OS Unix-szerű operációs rendszer

Az XL  a bővíthető nyelv alapja a kiterjeszthető nyelv. Ez egy programozási nyelv, amelyet a fogalmi programozás támogatására terveztek .

Leírás

Az XL programozottan bővíthető szintaxist és szemantikát biztosít. A fordítóbővítmények segítségével új funkciókat lehet hozzáadni egy nyelvhez. A beépülő modulok alapkészlete a szabványos kötelező nyelvek szerint kerül megvalósításra. A programozók saját beépülő moduljaikat írhatnak konkrét feladatok végrehajtására, például más számrendszerekkel való együttműködésre, amelyeket később egyszerűen beépíthetnek a nyelvbe.

Nyelv

Az XL az absztrakció három szintjét határozza meg:

Az XL-nek nincsenek sem primitív típusai, sem fenntartott szavak. Minden használt operátor és adattípus, mint például az egész számok vagy az összeadás operátor, a szabványos könyvtárban (XL2) deklarálva van. Az XL1 hordozható, hogy különböző környezeteken és platformokon futhasson. De az XL2-ben már nincs ilyen garancia: ha egy adott processzor nem támogatja a lebegőpontos szorzást, akkor a megfelelő operátor leírása a szabványos könyvtárban kimaradhat, és az ilyen szorzás használata fordítási időt eredményezhet. hiba.

Egy példa Hello World program XL-ben így néz ki:

használja az XL.TEXT_IO-t Írd meg "Hello World"

Egy alternatív írásmód a széles körben méretezhető programok számára megfelelő stílusban a következő:

import IO = XL.TEXT_IO IO.WriteLn "Hello World"

Szintaxis

A szintaxis XL0 szinten van meghatározva. Az XL0 fordítási lépés a leíró fájl szintaxisával konfigurálható, amely meghatározza a szöveg megjelenítési módját és az operátor elsőbbségét rendeli hozzá. Az alapszintaktikai fájl általános matematikai jelöléseket határoz meg, például "+" az összeadáshoz, amelyeket általában a műveletek sorrendjében alkalmaznak.

A szerkezeti fa 7 típusú csomópontot tartalmaz: 4 levél típusú csomópontot (egész, valós, szöveg és szimbólum) és 3 belső típusú csomópontot (infix, előtag és blokk).

Szabványos szintaktikai fájl esetén a következő egy érvényes XL0, amely független minden szemantikától.

A = B + "helló"

A feldolgozás után így fog kinézni:

index("=", szimbólum ("A"), index("+", szimbólum("B"), szöveg("Helló")))

Linkek