You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
From discussion in Raku/problem-solving#3 and Raku/problem-solving#71 stems a conclusion that core classes with changed behavior must have separate implementation depending on which CORE.<lang>.setting they're defined in. For example, PseudoStash is now defined in CORE.setting and CORE.e.setting.
This effectively makes those implementations different classes. To distinguish between them they need either ver or api set to the correct language version or revision. To have this done properly, each CORE must be compiled with it's own language revision. I.e. for CORE.setting the compiler must implement c, for CORE.e.setting it must be e.
The text was updated successfully, but these errors were encountered:
vrurg
changed the title
[WIP] Make CORE compiled with corresponding language revision
[WIP] Make COREs compile with corresponding language revision
Aug 7, 2019
vrurg
changed the title
[WIP] Make COREs compile with corresponding language revision
[WIP] Provide better support for language revisions in COREs and for core classes
Aug 7, 2019
vrurg
added a commit
to vrurg/rakudo
that referenced
this issue
Aug 7, 2019
Metamodel::Versioning would set `ver` from compiler's `language_version`
method if value is not provided. This would be done only if a `CORE` is
being compiled at the time. This would set all versionized objects
version to the version of the core they're defined in.
`t/02-rakudo/14-revisions.t` provides an example.
rakudo#3107
The Problem
From discussion in Raku/problem-solving#3 and Raku/problem-solving#71 stems a conclusion that core classes with changed behavior must have separate implementation depending on which
CORE.<lang>.setting
they're defined in. For example,PseudoStash
is now defined inCORE.setting
andCORE.e.setting
.This effectively makes those implementations different classes. To distinguish between them they need either
ver
orapi
set to the correct language version or revision. To have this done properly, eachCORE
must be compiled with it's own language revision. I.e. forCORE.setting
the compiler must implementc
, forCORE.e.setting
it must bee
.The text was updated successfully, but these errors were encountered: