Re: The most general form of let/let*
Lassi Kortela 15 Nov 2022 20:11 UTC
> So, a way to express a general dependency graph is needed and let the
> Scheme interpreter sort out a suitable sequencing.
Aha, the syntax is isomorphic to Makefile syntax.
> I propose a form like the following one:
>
> (let-values (((d) (using c
> (k c)))
> ((a) (f))
> ((c) (using b
> (h b)))
> ((b) (g)))
> <expr>)
>
> Marc
let-using
let-values-using
> “The purpose of abstracting is not to be vague, but to create a new
> semantic level in which one can be absolutely precise.”
> ― Edsger W. Dijkstra
"A programming language is low level when its programs require attention
to the irrelevant." - Perlis :)
I'm very much in favor of encoding dependencies precisely, but a robust
and convenient implementation probably requires our field to change the
standard program representation from trees to graphs. Nevertheless, this
is an interesting hack.