in reply to Re^2: Back to the __future__
in thread Back to the __future__

Note that it is by far "done" (yet). There are lots of issues to be discussed before decisions are made.

E.g. the above statement conflicts with the idea that use v5.12.4; can be used to indicate that one needs version 5.12.4 or up because a vital bug was fixed in that version and the script won't work with anything older.

That concept could be solved by using something like use ge5.12.4 (as in greater or equal to 5.12.4, which I suggested to Jesse). That however will not suffice, as you might need 5.12.4 or newer (because of the bugfix) but do not support beyond 5.16.7 (because of syntax change). How would you define ranges? use ge5.12.4, lt5.16.8;?

How will perl "support" ranges (if at all)? Should there be more than one declaration? What if - inside a range - something changed dramatically. What should perl choose to do? Syntax vs Semantics? etc etc.


Enjoy, Have FUN! H.Merijn

Replies are listed 'Best First'.
Re^4: Back to the __future__
by thargas (Deacon) on Aug 19, 2011 at 11:24 UTC

    Hmm. This sounds similar to the problem we have with browser-detection as opposed to feature-detection. Wouldn't it be better, instead of saying "I need version 5.20 semantics", to say "I need X semantics", where X is the name of a semantic set. Implementing this feature at this late stage in perl's development would probably require significant work, but would avoid module/script authors having to determine which semantics changed in which versions. If you care about them, you ask for what you want.