"Pokud v nějakém jiném jazyce chceme syntaxi, která tam není, musíme prosit tvůrce jazyka. Ne tak v LISPu: tam si můžeme takovou syntaxi nadefinovat sami."
To je trosku LISP-centricke :-) I jine jazyky nabizi podobnou rozsiritelnost, i kdyz je pravda, ze nejde zrovna o jazyky mainstreamove (mezi ty radim Javu, C, C++, C#, PHP atd.). Treba takovy FORTH a vlastne i Tcl jde podobnym zpusobem rozsirovat o dalsi syntakticke prvky.
Ale zamysleme se nad tim, proc to je vlastne mozne? Tyto jazyky (LISP, Scheme, FORTH, Tcl) maji velmi jednoduchou syntaxi, stary LISP dokonce nemel syntaxi zadnou, protoze se zapisoval primo derivacni strom, ktery si jinak prekladace a interpretery vytvari sami.
Pridani nove syntakticke kategorie je tedy velmi jednoduche, protoze vlastne samotna syntaxe zustava nezmenena (treba smycky v LISPu neni nic jineho nez specialni forma), ale v jinych jazycich se slozitejsi syntaxi (C, C++, Java, Python...) to uz mozne vetsinou neni. Maximalne se daji pretizit operatory, ale to je vrchol moznosti daneho jazyka, operatory uz nejdou pridat (+nastavit jejich asociativitu ci prioritu) a to vubec nemluvim napriklad o novych typech smycek ci opravdu slozitych makrech, kterym se predava cast kodu na "schroustani".