3 ms·
In Lil[0], avoiding "F" is doable, but not very convenient. The if/elseif keywords are off the table, but you still have both explicit looping constructs and f
by RodgerTheGreat 2y ago
In Lil[0], avoiding "F" is doable, but not very convenient.
The if/elseif keywords are off the table, but you still have both explicit looping constructs and function declarations:
while x ... end
each x y z in w ... end
on name x y do ... end
There are five primitive operators with "F": typeof (rarely needed), floor (inconvenient to work around but at least you still have % for modulo), first (can be replaced with indexing), flip (transpose a matrix/table; this could be replaced (slowly) with a user-defined function), fuse (join a list of strings into a single string; very difficult to do without, since Lil doesn't have a vanilla string-concat operator), format (string formatting; this removes tons of functionality and the easiest ways of working around not having fuse).
Most of the query forms (select, extract, and update expressions) would be OK, but they all need a "from" clause to specify the source table, so no dice.
What you're left with is still very much Turing-Complete, but much less ergonomic.
[0] http://beyondloom.com/tools/trylil.html http://beyondloom.com/tools/trylil.html