Ai Dreams Forum
Member's Experiments & Projects => AI Programming => Topic started by: Zero on June 27, 2019, 01:04:42 pm
-
From Wikipedia (https://en.wikipedia.org/wiki/M-expression#I-expressions):
A more recent (circa 2003) variant is I-expressions, which use indentation to indicate parentheses implicitly, and are thus in some ways intermediate between S-expressions and M-expressions. I-expressions were introduced in Scheme Request For Implementation 49 as an auxiliary syntax for Scheme, but they have not been widely adopted.
Example from https://srfi.schemers.org/srfi-49/srfi-49.html (https://srfi.schemers.org/srfi-49/srfi-49.html)
define (fac x)
if (= x 0) 1
* x fac (- x 1)
let
group
foo (+ 1 2)
bar (+ 3 4)
+ foo bar
I like it. It's elegant, isn't it?
-
"which use indentation to indicate parentheses implicitly"
Is that what it's for, indentation, to take the place of parentheses?
-
That's right. Cool thing is you still have a choice whether to use indentation or parens as you see fit.