Closed PhilLast closed 5 years ago
Fixed with commit Acre 6.0.0+258 2019-08-31 21:51
Seems you could assign derived functions into the current space from elsewhere but not into another space from here. Oh well. Works now 14.0 - 17.0 and no expectation that it won't continue to work henceforward.
This occurs during the setup of an acre session. It's not specific to the
Version
user-cmd or anything to do with theAfterSave
api-fn. Indeed it occurs before sufficient of the framework is in place and ready to differentiate between the commands or the functions.But it is specific to Dyalog 14.0.
There's a bug in 14.0 (and presumably earlier) that throws a spurious SYNTAX ERROR during the assignment of derived functions across namespace boundaries that was corrected in Dyalog 14.1 as this works perfectly in 14.1 and up.
Unfortunately the tests won't work in all the Dyalog versions that acre itself runs in so to discover this before release I should at least attempt to start an acre session in each, open a project and change something in the editor as that covers 90% of everything acre does. I haven't and have been relying on the fact that acre starts in the latest version I have and passes all significant tests.
I'll try to fix this over the weekend that means finding another algorithm for creating 26 derived functions on-the-fly in
⎕SE.acre
that works in all Dyalog versions. I've worked around it before because I've been doing this stuff more-or-less since refs first existed.