help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: What does "lacks a prefix" mean?


From: Filipp Gunbin
Subject: Re: What does "lacks a prefix" mean?
Date: Mon, 13 Jul 2015 15:26:14 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (darwin)

On 10/07/2015 13:04 -0400, Stefan Monnier wrote:

>>> let* says "I need variables which depend on each
>>> other" and if they're really not, that look strange.
>
> If let behaved like let* it wouldn't look strange to you.  Many other
> functional languages dropped the "simultaneous let" and only kept the
> equivalent of let* (or even letrec).

But if 90% of users make the distinction and 10% of them don't it would
cause confusion.  If everybody uses the same construct then it does not
matter.

letrec is nice :-)

>>> And probably it's a bit slower.
>
> Regarding efficiency, there's no clear winner between the two.
> It's basically irrelevant.

I meant that there could be an extra inner frame for each of the
bindings in let*, while only one in let.  I don't have enough knowledge
of emacs lisp implementation to say for sure, that's why "probably" in
my comment.

>>> And non-parallelizable theoretically :)
>
> In practice neither is easily parallelizable anyway.

Is it because each of the value expression could modify something in the
environment?

> And the work needed to auto-convert a "let*" to a "let" when possible
> is trivial in comparison to what's needed to parallelize the code.  So
> again, it's really irrelevant.

Ok, thanks.

Filipp



reply via email to

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