PCASTL - PCASTL
Paradigma | rozkazovací způsob, reflexní |
---|---|
Navrhl | Philippe Choquette |
Vývojář | Philippe Choquette |
Poprvé se objevil | 2008 |
Stabilní uvolnění | 3.5 / 31. března 2018 |
OS | Cross-platform |
Licence | GNU Lesser General Public License |
webová stránka | www |
Ovlivněno | |
C, R |
The PCASTL (zkratka pro rodičem a dětem přístupný jazyk syntaxe stromu) je interpretován programovací jazyk na vysoké úrovni. To bylo vytvořeno v roce 2008 Philippe Choquette.[1] PCASTL je navržen tak, aby usnadňoval psaní samočinně se měnící kód. Jazyk má vyhrazená slova rodič a dětská sada pro přístup k uzlům strom syntaxe aktuálně napsaného kódu.[2]
Ahoj světe
„Program Hello world "je celkem jednoduchý:
"Ahoj světe!"
nebo
tisk („Ahoj, světe!“)
udělá to samé.
Syntax
Syntaxe PCASTL je odvozena od programovací jazyky C a R. Zdroj R verze 2.5.1 byla studována, aby napsala gramatika a lexer použitý v tlumočníku PCASTL.
Vlivy
Jako v R, výroky mohou, ale nemusí být odděleny středníky.[3] Jako v R, a proměnná může změnit typ v a zasedání. Jako v C a R, PCASTL používá vyvážený závorky ({ a }) dělat bloky.
Operátoři nalezené v PCASTL mají stejné přednost a asociativita jako jejich protějšky v C.[2][4] pro smyčky jsou definovány jako v C. ++
a --
operátory jsou používány jako v C zvýšit nebo snížit proměnnou před nebo po použití v jejím výrazu.
Příklad PCASTL pomocí pro vyhrazené slovo a ++
operátor:
pro (i = 1; i < 4; i++) tisk(i)
Funkce a komentáře v PCASTL jsou definovány jako v R:
# definice funkce (komentář)A = funkce(){ tisk("Ahoj světe!")}# volání funkceA()
vyhrazená slova pro rodiče a děti
Ty vyhrazená slova lze psát pouze malými písmeny a jinak nebudou rozpoznány. The rodič vyhrazené slovo dává a odkaz do nadřazeného uzlu v strom syntaxe kódu, kde je slovo umístěno. V následujícím kódu je nadřazený uzel operátor =
.
a = rodič
The proměnná „a“ bude obsahovat a odkaz do =
uzel. Následující kód ukazuje, jak se dostat Reference do dvou podřízených uzlů operátor =
s dětská sada vyhrazené slovo.
a.childset [0] a.childset [1]
Chcete-li zobrazit hodnotu „a“, jsou v tomto příkladu uvedeny některé způsoby:
aa.childset [0] .parenta.childset [1] .parenta.childset [0] .parent.childset [0] .parent # a tak dále ...
V následujícím kódu: přiřadíme segment kódu pravému dítěti =
uzel, provedeme =
uzel podruhé a voláme nově definovanou funkci.
a.childset [1] = `function () print (" ahoj ") 'provést (a) a ()
Viz také
Reference
- ^ „pcosmos.ca“. Philippe Choquette. Citováno 2008-06-14.
- ^ A b "PCASTL: podle jazyka syntaxe přístupného pro rodiče a děti". Philippe Choquette. Citováno 2008-06-14.
- ^ „An Introduction to R“. R Development Core Team. Citováno 2008-06-14.
- ^ Hanly, Jeri R .; Elliot B. Koffman (1999). Řešení problémů a návrh programu v jazyce C, třetí vydání. Addison-Wesley. ISBN 0-201-35748-8.