http://www.perlmonks.org?node_id=683709


in reply to Re^2: Perl 6 shocking revelations #1
in thread Perl 6 shocking revelations #1

I read the note at the top, and thought that 'it has not been accepted' referred to your paper, not the Perl 6 type system itself. I assumed that Perl 6 has some sort of type system, and it is approved at some level. So it didn't occur to me to read it as 'this paper is a proposal to change the Perl 6 type system.'

I would move the list of new and unapproved features from the bottom to the top.

I also suggest this pattern for the first sections. That is, move the conclusion to the top of the section, and explain what you are getting at. This drops the 'shocking revelation' motif, but would be an easier read. The text and examples are interesting enough. It doesn't need additional drama, in my opinion.

I think it would be interesting to continue demonstrating inheritance with the Complex and Quaternion examples that you hint at. You could show how they do or do not give correct answers when inheritance is used. What makes this interesting is that one would probably work, and the other probably wouldn't, which I think would make your point well.

It should work perfectly the first time! - toma

Replies are listed 'Best First'.
Re^4: Perl 6 shocking revelations #1
by John M. Dlugosz (Monsignor) on Apr 30, 2008 at 18:25 UTC
    Re:
    I assumed that Perl 6 has some sort of type system, and it is approved at some level. So it didn't occur to me to read it as 'this paper is a proposal to change the Perl 6 type system.'
    It's worse than that. If you grep the synopses, you'll find,
    • Perl 6 has an optional type system that helps you write safer code that performs better. The compiler is free to infer what type information it can from the types you supply, but will not complain about missing type information unless you ask it to.
    • A variable's type is a constraint indicating what sorts of values the variable may contain. More precisely, it's a promise that the object or objects contained in the variable are capable of responding to the methods of the indicated "role".
    • Junction types
    It is vague at best, with some interesting clues of requirements. It has not yet been designed, just talked about in the newsgroup.

    Thanks for the other suggestions.

    Do you have any code for quartnion I could rewrite in Perl 6 as the example?

    —John

      I've been away at the 2008 Maker Faire - sorry for the delay in my reply.

      There is a perl module Math::Quaternion that you could use. I have not tried this module.

      It should work perfectly the first time! - toma