diff options
-rw-r--r-- | README.md | 22 |
1 files changed, 22 insertions, 0 deletions
@@ -5,3 +5,25 @@ * SimpleShell compiles to POSIX sh, where the output is supposed to be human-readable. * The syntax is de facto a mixture of sh, C and Haskell. + + +## Variables + +* Variables are local to their function or procedure; there are no (nested) + variable scopes. +* All variables have static types. Same for function and procedure + signatures. + + +## Functions + +* Functions are pure; they compute a single value from a list of arguments. +* Compare pure Haskell functions. + + +## Procedures + +* Procedures are similar to POSIX sh functions. +* Procedures take a list of arguments, and return a pair of + exit code and return value. +* Procedures may receive data from stdin and write data to stdout and stderr. |