[Openmcl-devel] Query about ASSERT and COMPILER-LET

Michał "phoe" Herda phoe at disroot.org
Thu Apr 16 22:12:23 UTC 2020


I always ask Quicklisp about where it pulls its sources from.

In this case:
https://github.com/quicklisp/quicklisp-projects/blob/master/projects/iterate/source.txt

This means that https://gitlab.common-lisp.net/iterate/iterate is the
place we want to submit our patches to.

On 17.04.2020 00:11, Robert Goldman wrote:
>
> Thanks. In that case, I think it should be relatively easy to fix
> ITERATE to walk this form.
>
> Unfortunately, I don't know who is maintaining that package now -- the
> common-lisp.net page lists only a darcs repository, which is kind of
> like saying it's available on Betamax...
>
> On 16 Apr 2020, at 16:16, Ron Garret wrote:
>
>     I’m running v1.12-dev.5-23-gb25693fa on Catalina and AFAICT the
>     code for ASSERT has not changed, and still invokes COMPILER-LET.
>
>     COMPILER-LET is an undocumented CCL extension, but AFAICT from
>     looking at the source it is safe to simply treat it as if it
>     expanded as follows:
>
>     (defmacro compiler-let (bindings &body body)
>       (declare (ignore bindings))
>       `(progn , at body))
>
>     rg
>
>     On Apr 16, 2020, at 12:53 PM, Robert Goldman <rpgoldman at sift.info
>     <mailto:rpgoldman at sift.info>> wrote:
>
>>     In the SHOP3 planner, I use the ITERATE package for looping. When
>>     I compile SHOP3 on my Linux test machine with 1.11, I get
>>     compiler warnings, because ITERATE can't successfully code walk
>>     CCL's code.
>>
>>     When I look at the warning messages, it looks to me as if
>>     |ASSERT| calls are being translated into a complex s-expression
>>     wrapped in |ccl:compiler-let|, which ITERATE doesn't know how to
>>     walk.
>>
>>     However, on my laptop, which runs macOS Catalina, and CCL 1.12, I
>>     do *not* get these compiler warnings.
>>
>>     So I was wondering: going forward can I rely on this being OK?
>>     Has the compiler-let rewrite been removed from CCL? Or is this
>>     something that is related to the OS, so that it will continue to
>>     appear on Linux?
>>
>>     I would like to know because if this is something that will
>>     continue to appear, I can try to add support for
>>     |ccl:compiler-let| to ITERATE. But this might be quite difficult,
>>     and I would prefer not to, unless it's absolutely necessary.
>>
>>     Thanks,
>>     R
>>
>>     _______________________________________________
>>     Openmcl-devel mailing list
>>     Openmcl-devel at clozure.com <mailto:Openmcl-devel at clozure.com>
>>     https://lists.clozure.com/mailman/listinfo/openmcl-devel
>
>
>
> Robert P. Goldman
> Research Fellow
> Smart Information Flow Technologies (d/b/a SIFT, LLC)
>
> 319 N. First Ave., Suite 400
> Minneapolis, MN 55401
>
> Voice: (612) 326-3934
> Email: rpgoldman at SIFT.net
>
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> https://lists.clozure.com/mailman/listinfo/openmcl-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.clozure.com/pipermail/openmcl-devel/attachments/20200417/a9d520a1/attachment-0001.html>


More information about the Openmcl-devel mailing list