SRFI 49
defines some "Python-like" whitespace sensitive syntax.
For example straight from the proposal:
let
group
foo
+ 1 2
bar
+ 3 4
+ foo bar
Denser equivalents using more traditional S-expressions:
let
group
foo (+ 1 2)
bar (+ 3 4)
+ foo bar
Both those expressions above are equivalend to the standard Scheme syntax of:
(let ((foo (+ 1 2))
(bar (+ 3 4)))
(+ foo bar))
I strongly believe that such a syntax is much more useful,
especially for Scheme beginners but even more for editing
small code portion in textareas as one does often in Askemos/BALL.
Beware however:the srfi is not yet final and
the discussion seems to have dried up.
Future versions will implement the srfi-defined rules,
i.e., if worst comes to worst and those change,
your precious code will break.
But that's kind of unlikely, especially if you use if for small
code portions or the large structure and keep some emergency
code in standard syntax only, which should be able to bootstrap
you code upgrade process.
Beware of tabulators:please see the srfi discussion archive.
Tabulators cause major headache.
Currently they count as one space.
Better don't use them at all, it might even be disabled until the srfi is finalised.