Az if lefoglalt kulcsszónak kettõ vagy három paramétert adhatunk meg. Az elsõ paraméter a kiértékelendõ logikai kifejezést adja meg, ha az elsõ paraméter kiértékelése igaz eredményt ad vissza a második paraméter értékelõdik ki, ha hamis értéket, akkor a harmadik, vagy ha ez nem létezik, akkor nil értékkel tér vissza. Egy érdekes példa az if elágazás és a rekurzió kombinált alkalmazására a Fibonacci sor kiszámítása.
A switch lefoglalt kulcsszó egy feltételválasztásnak felel meg. Az elsõ paraméter adja meg az azonosítót, aminek az értékei szerint szeretnénk választani, a második paraméter a lehetséges értékek és a hozzájuk tartozó utasítások halmaza.
A while lefoglalt kulcsszónak is kettõ vagy három paramétere lehet. Két paraméter esetén az elsõ a ciklusfeltétel a második pedig a ciklus magja. Három paraméter esetén az elsõ a ciklus elõfeltétele, egy utasítás ami csak egyszer hajtódik végre, ekkor a második paraméter lesz a ciklusfeltétel, a harmadik pedig a ciklusmag. Egy érdekes példa az alkalmazására a legnagyobb közös osztó kiszámítása.
A do ciklus hasonló a while ciklushoz, azzal a különbséggel, hogy a ciklusfeltétel a ciklusmag lefutás után értékelõdik ki, nem pedig elõtte. Itt is két vagy három paramétert adhatunk meg. Két paraméter esetén az elsõ a ciklusmag, a második a ciklusfeltétel. Három paraméter esetén az elsõ paraméter az inicializálás, második a ciklusmag, harmadik a ciklusfeltétel.
A loop lefoglalt kulcsszónak négy paramétert kell megadnunk. Az elsõ paraméter az inicializálás, a második a kilépési feltétel, a harmadik adja meg a lépést, a negyedik pedig a ciklusmagot.
Az iterálható objektumokhoz léteznek iterációk, tipikus iterálható típusok pl. a lista, vektor, tömb. Kétféle iterációra van lehetõség, az elsõ módszer a for lefoglalt kulcsszót használja, a második egy explicit iterátor, amit maga az objektum hoz létre.
For iterációnál három paramétert kell megadni, az elsõ az iterátor változója, a második az iterált összetett objektum, a harmadik pedig a végrehajtandó utasítás. Egy for iterációban lehetõségünk van több objektum párhuzamos iterálására, erre jó példa a két vektor skaláris szorzatát kiszámító iteráció.
Az iteráció elvégezhetõ explicit módon létrehozva az iterátort minden egyes vektorhoz és lépésrõl-lépésre haladva is (get-iterator ill. next felhasználásával).
Más nyelvekhez hasonlóan, a return végrehajtásakor a megadott érték visszaadódik és a végrehajtás menete megszakad.
Az eval kulcsszót akkor használjuk, ha mindenképp ki akarunk értékelni egy kifejezést, tipikusan függvények törzsében használt kulcsszó, ha vissza szeretnénk adni egy részkifejezés érékét. Ezzel szemben a protect kulcsszó létrehoz egy kifejezést a kiértékelése nélkül. Az eval használható a protecttel védett kifejezések mindenképpeni kiértékelésére is.
Új blokk létrehozására alkalmas kulcsszó, mindig az utoljára kiértékelt kifejezés értékét adja vissza. A blokkban létrehozott változók/objektumok lokálisak, ezért a blokk végrehajtása után ezek megsemmisülnek.