Manual - Evaluation Up
 Contents   News   View 

Vanilla and Special Functions Previous Next

Vanilla and Special Functions

Evaluation of a Quantum Expr proceeds according to whether its function is "vanilla" or "special".  Most Quantum functions and all user functions are vanilla.  Arguments of vanilla functions are Evaluated in sequence producing actuals that are passed to the function.  Special functions are different.  The entire Expr is passed to the special function un Evaluated and the special function does whatever Evaluation it feels like doing.  Predicates IsFunction, IsVanilla, and IsSpecial test if a name is a function, a vanilla function, and a special function respectively.

Special Functions in Quantum: Add, And, Assert, Bquote, Break, Case, Cond, Continue, Decf, Def, DefArray, DefProp, DefStruct, DefVar, Export, Global, Go, If, Import, Incf, Lambda, Let, Local, Loop, Multiply, Or, Pop, Prog, Push, PushNew, Quote, Seq, Setq, TrapAbort, TrapError, TypeCase, Unbound, Unless, UnwindProtect, and When

Reference Manual: Evaluation

©2004-2021 Planet Quantum Kelly Roach