[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Does declaration order matter in guile?

From: Dr. Arne Babenhauserheide
Subject: Re: Does declaration order matter in guile?
Date: Tue, 14 Feb 2023 21:26:54 +0100
User-agent: mu4e 1.8.13; emacs 28.1

wolf <> writes:

>> 1. You bind 'foo' to the syntax transformer.
>> 2. During the compilation of (foo y), the compiler calls the syntax 
>> transformer to
>>    affect the generation of code, so it will do the right thing.
> Interesting, I think I understand the difference. So in some ways this can be
> compared to the C pre-processor? Is there a way to view the resulting code
> after all the transformations were applied?

In the guile shell you can use

,expand (foo 1)

to see what it expands to.

Also see

,h compile

> Meaning that if I want to use the many guile- libraries available under guix
> and elsewhere, the most pragmatic approach would be to just not care about 
> R6RS
> vs R7RS all that much, and just do what guile manual recommends. Correct?

R7RS vs. R6RS isn’t that big of a difference in Guile, because it mostly
supports both and you can mostly use either of them.

R7RS is cleaner is some ways and managed to re-unite some of the Scheme
implementations (that were split between R5RS and R6RS). So knowing R7RS
means that you can make your code run in a much larger number of
domains, and you can keep many of your skills even when moving from
mostly server-side webdev (i.e. Chicken or Guile¹) to embedded (Chibi),
or to shipping binaries(i.e. Gambit or bigloo), or even Java/JWM (kawa),
or to others (see

Why Guile?
Why others?

¹: partially moving into clientside via Guilescript or others:

Also Spritely started working on Guile on WebAssembly:

Best wishes,
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.

Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]