[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: expression and definition context in Scheme
From: |
Damien Mattei |
Subject: |
Re: expression and definition context in Scheme |
Date: |
Sat, 27 Aug 2022 21:02:16 +0200 |
hello Maxime,
On Sat, Aug 27, 2022 at 7:00 PM Maxime Devos <maximedevos@telenet.be> wrote:
>
> On 27-08-2022 18:48, Damien Mattei wrote:
>
> My ideas is as it is so easy to cheat the compiler
>
> I don't think it's cheating or abusive.
>
> from seeing the expressio context why does the compiler restrict this?
> expression and defintion context, i'm not sure they are in scheme
> standarts, are they really usefull?
> why not remove this from Scheme at all?
>
> I haven't read the RnRS closely, but I doubt that
>
> (some-procedure (define foo 0) (define bar 0))
>
? i do not understand well the meaning
> is allowed by the standard and that it could be meaningful.
>
in fact just allow 'define that act locally ,see my comment below
> Also, even if (begin ...) and (let () ...) where unified, it would be a
> shame to lose the ability to only have some definitions temporarily:
>
> (define foo 0)
>
> (let ((foo 0))
> whatever-something-using-the-inner-foo)
>
> something-using-the-outer-foo-again
>
i do not propose foo to overwrite the global one , just to allow local
define that have a local (in the block) range.
> If 'let' was replaced by 'begin', then it would have different semantics.
>
> Greetings,
> Maxime.
>
Regards,
Damien
Re: expression and definition context in Scheme, Linus Björnstam, 2022/08/30