Hello,
for my library https://github.com/cosmos72/cl-parametric-types I need the function introspect-environment:typexpand, which expands DEFTYPE'd types, similarly to what CL:MACROEXPAND does for macros.
Even though introspect-environment does not support ABCL, I found that system::expand-deftype does exactly what I need, yet I am wary of using a non-exported symbol from ABCL.
Is system::expand-deftype stable enough to be published as an ABCL extension to ANSI CL and to be used to implement introspect-environment:typexpand ?
Regards,
Massimiliano
On 2016/6/12 21:35, Massimiliano Ghilardi wrote:
Hello,
for my library https://github.com/cosmos72/cl-parametric-types I need the function introspect-environment:typexpand, which expands DEFTYPE'd types, similarly to what CL:MACROEXPAND does for macros.
Even though introspect-environment does not support ABCL, I found that system::expand-deftype does exactly what I need, yet I am wary of using a non-exported symbol from ABCL.
Is system::expand-deftype stable enough to be published as an ABCL extension to ANSI CL and to be used to implement introspect-environment:typexpand ?
The exported/imported status of symbols is very haphazard at this point, so I would not take the non-exported status of SYS::EXPAND-DEFTYPE as necessarily having any real meaning. My advice would be to go ahead, use the current symbol seeing if the implementation is robust enough for your usage. Then if someone gets the time, we should patch the implementation moving EXPAND-DEFTYPE to be exported from EXTENSIONS while leaving SYS::EXPAND-DEFTYPE with a note for future deprecation.
armedbear-devel@common-lisp.net