amastus programming language draft spec

(this is very incomplete)

amastus is a little programming language i've been thinking about for a while. it aims to be quite simple, and is inspired by other quite simple languages, like lua, scheme, and apl.

amastus doesnt aim to be the fastest; it's not the most concise. there are others with more beautiful syntax, and others again with more ubiquity. and yet, the sum of these compononts of mediocrity somehow exceeds its parts

amastus is a programming language, and a lover is a person. and though that person is by no measure perfect, when they are with their partner the chemistry forms a single whole.


- lisp-like (linked lists, single namespace, prefix notation, functional programming style)
- array programming language
- return and print are same
- functionality to work with strings and line-based files
- to be used as a shell (external commands, piping in some capacity, path)
- first set of parentheses implicit, provided expression covers a single line (or has nested parentheses if multiple lines)


(def sum (lambda (array)
(when ((= 0 (length array))
(return 0))
(t (return (head array) + (sum (tail array)))))))