Appendix A: Keywords
The following list contains keywords that are reserved for current or future use by Calyxium. As such, they cannot be used as identifiers. Identifiers are names of functions, variables, parameters, structs fields, modules, types.
Keywords Currently in Use
The following is a list of keywords currently in use, with their functionality described.
rec
- define a recursive functionif
- branch based on the result of a conditional expressionthen
- fallback forif
control flow constructselse
- fallback forthen
andif
control flow constructslet
- bind a variable or functionmatch
- match a value to patternswith
- branch based on the value of matchuse
- in a module path, refers to the modules rootmod
- define a moduletrue
- Boolean true literalfalse
- Boolean false literalenum
- define an enumerationrecord
- define a recordtype
- define a ADTfn
- define a anonymous functions, lambda abstraction
Deprecated keywords
Superseded byfor
- loops over itemsrec
Keywords Reserved for Future Use
The following keywords do not yet have any functionality but are reserved by Calyxium for potential future use.
class
extends
ref