I started to write a test script for "Boolean Operators" with and w/o "Short-Circuit" in Perl.
And quickly found me needing to define and test "Truthiness" in Perl.
(Wait ... "0 but true" is false? Remembered it differently ;-)
And now I find myself obliged to also define "Contexts", because an empty list is also false.
And "Data Types", because internally it's more difficult, than just Scalar, Array and Hash.
It's a lot of work, but in the end it could help in many corners when done correctly:
- Regression testing between Perl versions
- Leading to a proper language definition
- Bottom up documenting the language in POD
- Helping to test cross implementations in other languages like in JS
Like so often, after a first success I find myself a bit stuck in the big picture.
I'll throw in my first approach as is for meditation.
There is a lot to be criticized, but my normal perfectionism is too risky and might lead to a never release cycle.
Thoughts?
Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery
FootballPerl is like chess, only without the dice