On Sun, Jun 6, 2021 at 3:36 PM Linus Björnstam <linus.inter...@fastmail.se> wrote:
> Oh, my version is an error. I implemented the macro before definitions in > (some) expression contexts were a thing. > do you talk about what? the linked code? > > Andy did a marvellous thing implementinf the new letrec: if it is > possible, letrec will have no overhead. It also automatically handle > dependant clauses: even though it might seem counterintuitive, the > guile-proper version will do the right thing always. The syntactic > differentiation mine does is just there for our feeble human minds, at > least with regards to what guile-proper is doing. > > So TL/DR: guiles way is the correct way. > > -- > Linus Björnstam > > On Sun, 6 Jun 2021, at 14:02, Dr. Arne Babenhauserheide wrote: > > > > Linus Björnstam <linus.inter...@fastmail.se> writes: > > > > > becomes ONE letrec under gulie3, whereas my library turns it into > > > (letrec ((a 2) (b 3)) > > > (display "hej") > > > (letrec ((c 3)) > > > (+ a b c))) > > > > > > That should be an easy fix, again if there is any interest. > > > > I’m not sure which approach I prefer. Your approach is more precise, but > > I slightly lean towards the Guile3-version, because it does not change > > behaviour when I put a pretty-print between two defines. > > > > Though I would want a precise approach inside other forms (like when: > > separating inside when and outside when). > > > > Best wishes, > > Arne > > -- > > Unpolitisch sein > > heißt politisch sein > > ohne es zu merken > > > > Attachments: > > * signature.asc >