4 ms·
That significantly complicates the grammar, as now nested function calls require context from their parent to form an AST node. S-exps are the literal represent
by tadfisher 6y ago
That significantly complicates the grammar, as now nested function calls require context from their parent to form an AST node. S-exps are the literal representation of the AST which allows for easily modifying and inspecting code, for example through macros. It's not so much "the first element is significant", it's more like "this is the convention of what a function looks like so you can pass it around and modify it as a single list".