HI
On May 8, 2019, at 18:24 , Michael Raskin 38a938c2@rambler.ru wrote:
Thank you for your comments.
- The proposal requires the presence of a CDR-NN package. Such a proposal should be made separately. FTTB if CDR-14 is used, only the CDR-NN feature should be provided. I would be in favor of a new CDR stating that a CDR-XX nickname could be added to a package implementing a given feature.
I thought that maybe I don't want to create too many proposals at once. I see, I will split.
- The proposal as is may not be portably implemented by a third party without resorting to implementation support which may or may not be there. The problematic operators are WITH-PARENT-ENVIRONMENT and ENVIRONMENT-ENTRY-NAMES. Do you see any way to provide it in a simple (read: non SBCL) way?
Finally, COPY-ENVIRONMENT may and LEXICAL-ENVIRONMENT also be problematic.
Note that B-level and C-level support requires some properties of underlying implementation that do not currently hold for many popular ones.
I may have misread the proposal, but, AFAIU, even what you call “Level A” cannot be easily provided without a commitment by the implementations.
Also note that I want to provide common names for much more functionality than I want to require. It is enough to have WITH-AUGMENTED-ENVIRONMENT for B-level complieance, and COPY-ENVIRONMENT (or standalone AUGMENT-ENVIRONMENT) is not required even on the C-level. It is purely a «please tell me if you already provide this».
Frankly, I think SLIME wants to do something that boils down to ability to define ENVIRONMENT-ENTRY-NAMES, so that shouldn't be too bad.
LEXICAL-ENVIRONMENT has very weak requirements, I think on most implementations it can be defined by a third-party library.
WITH-PARENT-ENVIRONMENT is definitely completely optional — on the other hand, if the implementation never tracks parent environments, it is OK to always have NIL there.
LW already has SYS:MAP-ENVIRONMENT which looks like ENVIRONMENT-ENTRY-NAMES, so, yes, it is definitively doable, like everything else, given a “sufficiently supportive implementation/vendor”.
I just feel that CDRs should not make too many requests on the implementation.
Apart from that, I would also note that listing names should not be sufficient for a CDR. Functions and macros signatures should also be described (*), as well as types.
As for the specific content, I would also explicitly refer to the CLtL2 Environment Section 8.5.
All the best
Marco Antoniotti
(*) To the chagrin of the folks at Franz (you-know-why 3:) 3:) 3:) )
-- Marco Antoniotti, Associate Professor tel. +39 - 02 64 48 79 01 DISCo, Università Milano Bicocca U14 2043 http://bimib.disco.unimib.it Viale Sarca 336 I-20126 Milan (MI) ITALY
Please check: http://cdac2019.lakecomoschool.org Please check: http://troncopackage.org Please check: https://www.frontiersin.org/research-topics/7394/network-bioscience
Please note that I am not checking my Spam-box anymore. Please do not forward this email without asking me first (cum grano salis).