[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Understanding macroexp.el
From: |
Stefan Monnier |
Subject: |
Re: Understanding macroexp.el |
Date: |
Wed, 18 Nov 2015 08:36:52 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) |
>> For byte-compiled code there should be no difference between the two
>> expansions.
> What's the use of `macroexp-unprogn' then at all?
It's when you care to generate slightly cleaner code it's easy to do so.
It usually doesn't really matter much.
> Or does it make a difference in other cases?
I can't remember exactly what motivated me to introduce
macroexp-unprogn, but I don't think it was a strong need.
I can retroactively come up with scenarios where it could make
a difference, but they all seem reasonably infrequent.
E.g. (+ 1 2) will be optimized to 3, but (+ 1 (progn 2)) won't.
Stefan