user-pic

Matt S Trout (mst)

  • Commented on A dream resyntaxed
    > versus Ovid saying "a method composed in from a role should not be allowed to access the existing method of a superclass at all" That was unclear. 'existing/inherited method of the same name' would have been more clear. Ovid...
  • Commented on A dream resyntaxed
    > I concede that my sub is at this point a well established prior art for prefix declaration modifiers (even though I still think it was a misstep for Perl, syntactically). Maybe it was, but we want to achieve something...
  • Commented on A dream resyntaxed
    Note I'm aware this is now arguably slightly less KIM but given Ovid's suggestion that 'modify method' was an improvement over 'modify 'I assumed this wasn't a strict requirement. It also seems to me that the existance (and IMO elegance)...
  • Commented on A dream resyntaxed
    Honestly (from IRC) - mst: the more I think about it, the more 'modify method foo :before' and 'common $foo' do go with 'common method foo' actually seem pretty ok to me mst: just let's un-begin-lift everything for consistency while...
  • Commented on A dream resyntaxed
    > Happy to... Sorry, I completely forgot to comment on your explanation of perceived differences, largely because your position on that now makes complete sense so I didn't really have much to add. It does strike me that if we're...
  • Commented on A dream resyntaxed
    > Pretending that my variables are class data To be clear, that has never been the argument. The argument has *always* been that 'my' variables could be used for many of the purposes of class data and that that means...
  • Commented on A dream resyntaxed
    > And yet I got enormous pushback against the idea of a separate declarator keyword for class data. Because, if slot :common is weird, and my and state are non-intentional, a separate keyword for class data what we actually need....
  • Commented on A dream resyntaxed
    Moo doesn't actually have any 'meta stuff', that was rather the entire reason I wrote it and why calling ->meta on a Moo class creates an object that auto-inflates itself to a Moose::Meta::Class on demand. Yes, what extensibility Moo *does*...
  • Commented on A dream resyntaxed
    1) CLOS uses 'defmethodp foo :before ...' and I've yet to see any of my angry opinionated lisper friends be sufficiently upset by this to macro up something else 2) This child of two Eng. Lit. graduates dearly loves your...
  • Commented on A dream resyntaxed
    (for those following along at home, M. Conway and I are both well aware that the other has at least a modicum of experience with variegated codebases/teams/contexts etc. and so any mention of 'experience in practice' should be taken as...
  • Commented on A dream resyntaxed
    The class data part seems to me to be going the wrong way - I agree that classes should behave *consistently* across phases but I disagree that begin lifting additional bits of syntax is the way to achieve that -...
  • Commented on I founded a company called Perl Research Institute, Ltd.
    This is fucking cool. Good luck and godsspeed. -- mst...
  • Commented on The Perl Community - a mixed bag of sometimes intollerance and sometimes fantastic help
    I have a horrible feeling it was me that you felt was telling you that you didn't know what you were doing, and that really wasn't the goal. Given all of the code you showed, the behaviour you were describing...
  • Commented on Paging TOBYINK
    Mouse's hopeless incompatibility with Moose is one of the reasons Moo exists. I'd strongly recommend either going straight to Moose or staying with Moo. The only way to make Moose and Mouse play nice together is, in fact, to go...
  • Commented on Perl's Pegex Module: a great way to parse files by creating grammars
    Ron: If the article was insufficient for *me* to understand why you think PEG is "dangerous", I fail to see how it's going to help beginners at all. Jeffrey: Nah, I read it as a regex-like thing and got the...
  • Commented on Perl's Pegex Module: a great way to parse files by creating grammars
    I'm afraid that article doesn't seem like a convincing argument unless you accept the author's premises a priori. Certainly the second example (A = "a"A"a"/"aa") was entirely obvious to me, and yet was clearly chosen to try and demonstrate a...
  • Commented on Missing Smart Match
    Actually, there's already Syntax::Keyword::Junction which is a cleaned up fork that's explicitly extant to avoid the Perl6:: thing (and is maintained by the usual suspects). -- mst...
  • Commented on Missing Smart Match
    If somebody can figure out a way to do pluggable ~~ that isn't even more confusing than what we currently have, the future is filled with possibilities. So far, nobody has, so the status quo remains. -- mst...
  • Commented on Missing Smart Match
    The problem is "just fix the bugs" will break things that rely on the currently documented behaviour. Also, making it pluggable had allllll sorts of fun scoping issues, and nobody was able to find a sufficiently sane approach to dealing...
  • Commented on Virtual Spring Cleaning (part 9 of X) wherein I retrieve content
    Future:: is a namespace for future implementations and extensions, and your module is going to cause much confusion in its current namespace. I'd suggest maybe HTTP::UserAgent::FutureBased or similar? -- mst...
  • Commented on Overview of current maintainer fails
    There are a number of inaccuracies in this post, not just whether certain modules are maintained, but who the maintainer(s) is/are, and whether they have merged various fixes. This data is not to be trusted and should be considered more...
  • Commented on The removal of the lexical topic feature in 5.24
    The _ prototype failed to be adopted long before the experimental pragma arrived on the scene, much though I guess that doesn't fit the desired narrative. I find it fascinating that in spite of reini's assertions to me on Twitter...
  • Commented on Test2/Test::Builder Update from the QAH
    Oh, chansen, I see you're having a 'yelling at people based on incomplete information' day again (though this comment is still better than our IRC comment telling the new pumpking to 'get your shit together' on his first day when...
  • Commented on The removal of the lexical topic feature in 5.24
    The _ prototype doesn't really help with things like @$ so far as I can see, unless you're saying that I need to rewrite everything that's currently 'foo { ... } ...' to 'foo sub (_) { ... } ...'...
  • Commented on Test2/Test::Builder Update from the QAH
    > I recall there was moves to propose a 3rd way, the "don't integrate yet, but have a way to smooth over our transition more progressively before we finally commit". We've already spent an extra year moving progressively and smoking...
  • Commented on The removal of the lexical topic feature in 5.24
    While, yes, ok, 'any' can thereby use the lexical topic, what about pure perl implementations of similar things using &$ signatures? My problems with lexical $_ have never been exactly core-implementation-related so much as "I have so much code that...
  • Commented on Test2/Test::Builder Update from the QAH
    So far as I can see, in the absence of a viable third way, the options on the table were, basically, 1) Don't merge it 2) Merge it and see what happens, and if necessary unmerge it until we can...
  • Commented on Test2/Test::Builder Update from the QAH
    So, while I've definitely disagreed with Exodist at various stages of the process (FVO 'disagreed' that included at least one fairly lengthy yelling session which, in hindsight, might have been more likely to make him quit than to listen to...
  • Commented on Virtual Spring Cleaning (part 2 of X) in which I release Apache::Tika::Async
    Given Future already supports all of the different loops, as soon as you load an event loop at all it's effectively free. Search::Elasticsearch chose Promises for no particular reason and the author was open to adding Future support as well;...
  • Commented on Virtual Spring Cleaning (part 2 of X) in which I release Apache::Tika::Async
    Dude, please don't call it that! ::Async indicates IO::Async components, which when written using Future.pm interoperate well with the rest of CPAN, including POE, Mojo and provided you bypass the AnyEvent landmine, AnyEvent code too. AnyEvent already tries to break...
Subscribe to feed Recent Actions from Matt S Trout (mst)

  • Nerdvana commented on A dream resyntaxed

    I also don't really see that class data is anything other than a global. You can describe them in lots of flowery prose, but in the end everyone in Java just used class static fields as global variables in all the same good and evil ways that C developers used globals. Perl already has 'our' for globals. If the problem is that people want to import the globals of a parent package for convenience, that can be done with the 'use' line. Or, maybe our $var :inherit;

  • Damian Conway commented on A dream resyntaxed

    Rather than respond individually to Matt’s many valid points — and his graceful concessions — let me simply summarize my current opinion.

    I concede that my sub is at this point a well established prior art for prefix declaration modifiers (even though I still think it was a misstep for Perl, syntactically).

    Therefore I also concede that common $foo and common method foo would be an acceptable (albeit non-KIM) compromise, and would give us everything we need in Corrina v1, even…

  • Piers Cawley commented on A dream resyntaxed

    I’d suggest that in before method foo … etc style code, method is no longer a keyword, but part of the identifier or ‘place’, analogous to setf in lisps.

    If you’re going to redo before/after/around, then I have a sneaking regard for lisp style named advice, so

    
    before method foo () { … }
    

    could become:

    
    wrapper massage_args :around (…) {…}
    
    

    wrap method foo :with(massage_args);

    Also, if we’re borrowing from Lisp, then before/after/around could (sho…

  • john napiorkowski commented on A dream resyntaxed

    I still don't get why we are redesigning everything from scratch rather than simple starting with the obvious thing, which is to take Moose (the far and away clear winner on CPAN in terms of popularity and maturity) and just clean it up a bit, perhaps modernize the syntax a little. What we seem to be designing here is something that is vastly different, completely incompatible and yet somehow lacks most of the features I get with Moose already. The main issue with Moose is that since it's not baked into the language it suffers from performance issues and dependency size issues (and due…

  • Robert commented on A dream resyntaxed

    I will be surprised if any answer is given to your questions. Obviously, they chose not to go the Moose-way but there is a rationale section if you haven't read it:

    https://github.com/Ovid/Cor/blob/master/rfc/overview.md#24-rationale

Subscribe to feed Responses to Comments from Matt S Trout (mst)

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.