Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-10-07

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:00 [Coke] Hello.
00:00 dalek rakudo/nom: 06edf9d | coke++ | src/core/IO/Handle.pm:
00:00 dalek rakudo/nom: Remove parrot-only code path.
00:00 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/06edf9d913
00:07 chenryn_ joined #perl6
00:11 BenGoldberg m: say so 42;
00:11 camelia rakudo-moar 7f0e6a: OUTPUT«True␤»
00:11 BenGoldberg m: say !! 42;
00:11 camelia rakudo-moar 7f0e6a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/8atS5MDzab␤Two terms in a row␤at /tmp/8atS5MDzab:1␤------> 3say !!7⏏5 42;␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statemen…»
00:11 BenGoldberg m: say ! ! 42;
00:11 camelia rakudo-moar 7f0e6a: OUTPUT«True␤»
00:12 PotatoGim joined #perl6
00:19 dkm_ joined #perl6
00:21 laouji joined #perl6
00:21 pdurbin left #perl6
00:22 gfldex joined #perl6
00:22 perlboy_ joined #perl6
00:22 pistewaffle joined #perl6
00:23 konobi joined #perl6
00:23 rjbs joined #perl6
00:23 konobi say what?!
00:23 perlboy_ How do I install the man pages? doesnt seem rakudo did so.
00:23 rjbs "what?!".say
00:25 timotimo m: "what?!".say
00:25 camelia rakudo-moar 06edf9: OUTPUT«what?!␤»
00:28 pfhork joined #perl6
00:28 perlboy_ anyone...man pages for OSX brew install...?
00:29 laouji joined #perl6
00:29 konobi tried `brew options <perl6?>` ?
00:29 TingPing joined #perl6
00:30 pfhork I think I used OS X provided perl to run http://perlbrew.pl/ and got man pages. ymmv
00:30 muraiki joined #perl6
00:30 mst and then there's rakudobrew for installing rakudo
00:30 timotimo i'm not even sure rakudo has a man page
00:31 perlboy_ yeah I 'brew install raduko-star' - no man option
00:32 johnjohn101 joined #perl6
00:34 boggard joined #perl6
00:34 kk4vcz left #perl6
00:36 johnjohn101 hi perl6 peeps
00:36 johnjohn101 what's the word?
00:36 perlboy_ Hm seems canonical(?) Perl6 documentation is on GitHub: https://github.com/perl6/doc
00:36 Idiosyncrat joined #perl6
00:37 johnjohn101 perl 6 will be "out" EOY?  what will be available?
00:37 coetry joined #perl6
00:37 TimToady perlboy_: doc.perl6.org
00:37 timotimo bird's the word! :)
00:38 coetry TimToady, are you seriously Mr. Larry?
00:38 johnjohn101 so perl6 will use the java engine? or will it be parrot?
00:38 TimToady johnjohn101: yes, more or less what works now
00:38 dbenton joined #perl6
00:38 TimToady moar and maybe java
00:38 timotimo coetry: he's not always very serious
00:39 johnjohn101 TimToady: so download rakudo?
00:39 Idiosyncrat Just dropped in to say congratulations on the announcement.
00:39 timotimo johnjohn101: we've not been developing against parrot for multiple months now
00:39 coetry TimToady, congratulations sir, you are an inspiration. I look forward to joining the perl community
00:39 * TimToady bows
00:39 johnjohn101 timotimo: i see
00:39 timotimo johnjohn101: the release will likely be on JVM; it will be on MoarVM guaranteed
00:39 laouji joined #perl6
00:40 Idiosyncrat I was at the Monterey convention where the Perl 6 decision was made, though not "in the room"
00:40 * TimToady tried to show forest-fire running on JVM last night, but it blew up on the signal handler :)
00:40 Idiosyncrat Which is OK because I'm not good at dodging coffee cups.
00:40 johnjohn101 timotimo: interesting.
00:40 rurban joined #perl6
00:41 alpha- left #perl6
00:41 Idiosyncrat I'm pleased to hear that Perl 6 includes Lua.
00:42 Idiosyncrat Which version? 5.1? 5.2?
00:43 muraiki Idiosyncrat: https://github.com/raydiak/Inline-Lua/
00:43 timotimo "includes" lua?
00:43 timotimo ah, that
00:43 TimToady it doesn't include Lua, but there's a start on an Inline::Lua module
00:43 Idiosyncrat muraiki: thanks
00:43 timotimo just like Inline::Perl5 and Inline::Python
00:43 timotimo except the latter two are very advanced
00:43 TimToady well, the Python one doesn't really do the 'inline' part yet
00:44 ShimmerFairy Maybe they're referencing MoarVM's lua stuff as well? (I recall hearing luajit around mvm, at least)
00:44 TimToady still have to use the object there
00:44 laouji joined #perl6
00:44 Idiosyncrat OK.  Says 5.1 and Luajit compatible, which is good because that's exactly the choice we made for Marpa
00:44 timotimo there's a minilua in MoarVM's build system
00:44 TimToady it uses luajit, yes, though I don't know if that will continue
00:44 TimToady once we get our own superjit, which has been in the works all summer
00:45 timotimo oh
00:45 timotimo we're not using "luajit", we use "dynasm", which is what luajit uses
00:45 muraiki I was hoping we'd go with lejit
00:46 muraiki bad attempt at pun
00:46 TimToady all attempts at pun are bad :P
00:47 BenGoldberg That pun was illejit.
00:47 Idiosyncrat He did manage to find a pun not already used as the name of a language.
00:49 Idiosyncrat timotimo: minilua?
00:50 timotimo yeah, just a tiny lua implementation we can use to run dynasm on our source
00:50 timotimo only needed when you develop
00:50 timotimo and only needed once during the build steps
00:50 Idiosyncrat Lua is already pretty mini.
00:50 laouji_ joined #perl6
00:51 Idiosyncrat Did you drop language features?
00:51 timotimo we didn't do anything :)
00:51 timotimo https://github.com/LuaDist/luaji​t/blob/master/src/host/minilua.c - apparently minilua belongs to luajit?
00:53 DaveFol joined #perl6
00:54 tokuhirom joined #perl6
00:54 Idiosyncrat Gotta wonder why you'd try to shrink Lua any further -- though Mike Pall is definitely a guy who knows what he's doing, so I guess there had to be a reason
00:55 boggard i was going to jokingly ask when there would be an inline C module, but then i looked again at the modules directory and sure enough...
00:55 aborazmeh joined #perl6
00:55 aborazmeh joined #perl6
00:56 timotimo of course
00:57 konobi left #perl6
01:01 chrstphrhrt joined #perl6
01:02 Idiosyncrat left #perl6
01:03 llfourn o/ #perl6
01:03 llfourn congrats on new site
01:03 llfourn looks good
01:04 pink_mist Zoffix++
01:05 llfourn indeed!
01:05 fling http://perl6.org/ ?
01:05 * fling is on cdma, can't check atm :P
01:06 llfourn yes it's new and bootstrappy
01:06 llfourn but not too much
01:08 fling hmm hmm.
01:08 rjbs So, I have a Buf[uint8].
01:08 chenryn_ joined #perl6
01:09 rjbs Something is doing $buf1.push( $buf2.list )
01:09 rjbs I get: This type cannot unbox to a native integer
01:09 rjbs This used to work.  Any hot tips?
01:10 ShimmerFairy try .append, if that's available on Buf
01:11 pfhork I just realized I was in a Perl6 channel... I retract my mention of Perlbrew.
01:12 BenGoldberg perlbrew
01:12 BenGoldberg There aren't enough versions of perl6 yet for that to be worthwhile!
01:12 timotimo rjbs: we probably have to implement append and prepend for buf
01:12 llfourn rjbs: $buf1.push(|$buf2)?
01:12 nbiiebbiih joined #perl6
01:13 llfourn i dunno much about native bufs but .list might not behave the same way after GLR
01:13 shifty_ joined #perl6
01:13 timotimo we may want a hundred more tests in the spec test suite for this
01:14 rjbs timotimo: But it worked in June. :-/
01:14 rjbs llfourn: That sounds like a guess.
01:14 rjbs llfourn: I mean, a good guess!
01:14 llfourn rjbs: it sure is a guess :D
01:14 ShimmerFairy rjbs: .push was recently changed so that  $a.push($a.pop)  always ends up with the same list, with .append taking the place of "push a list"
01:14 mst pfhork: I dunno, you can use perlbrew to get a decent perl, then rakudobrew to use that to build a perl6
01:14 rjbs llfourn: It was a good guess.
01:14 timotimo june is oooold :)
01:14 rjbs Yeah, I knew some GLR stuff would affect this code.
01:15 pfhork Dropped in perl6 to ask this Question: If /. says last night Larry said perl6 is released as a development preview, why is there nothing about that on perl6.org the perl6-announce list ... is it (Christmas) a misunderstanding, or specific to some subpart of perl6?
01:16 rjbs Next problem is:
01:16 rjbs Cannot unbox a type object in any  at /Users/rjbs/.rakudobrew/moar-nom/install​/share/nqp/lib/Perl6/Metamodel.moarvm:1 in block <unit> at t/basic.t:163
01:17 rjbs That line is:   is-deeply( $zscii, Buf[uint16].new("Ameri\x[9D]ans".split('')>>.ord), "...and they're what we expect too",
01:17 timotimo pfhork: is it already christmas?
01:17 timotimo m: Buf[uint16].new("Ameri\x[9D]ans".split('')>>.ord)
01:17 camelia rakudo-moar 06edf9: OUTPUT«Cannot unbox a type object␤  in any  at gen/moar/m-Metamodel.nqp:1670␤  in block <unit> at /tmp/mfcMUJICOi:1␤␤»
01:18 mst pfhork: rakudo has been having monthly releases for years
01:18 timotimo m: say "Ameri\x[9D]ans".split('')>>.ord.perl
01:18 camelia rakudo-moar 06edf9: OUTPUT«(Int, 65, 109, 101, 114, 105, 157, 97, 110, 115, Int)␤»
01:18 timotimo haha
01:18 timotimo m: say "Ameri\x[9D]ans".comb>>.ord.perl
01:18 camelia rakudo-moar 06edf9: OUTPUT«(65, 109, 101, 114, 105, 157, 97, 110, 115)␤»
01:18 timotimo why use split('') and not comb?
01:18 rjbs timotimo: probably ignorance
01:18 mst pfhork: so far as I'm aware all that happened last night was larry gave a talk saying "probably this christmas", like he did at FOSDEM earlier etc.
01:18 rjbs Do bugs have comb?
01:18 rjbs bufs
01:18 timotimo if the thing you're splitting with matches at the beginnign and/or end, you'll end up with '' at the beginning and end
01:19 ShimmerFairy rjbs: no, afaik
01:19 rjbs fixing
01:21 timotimo m: "hiwhathi".split("hi").perl.say
01:21 camelia rakudo-moar 06edf9: OUTPUT«("", "what", "").Seq␤»
01:21 timotimo ^- for comparison
01:22 nightfrog joined #perl6
01:22 timotimo that's why it gives you the '' at the beginning and end when you .split("")
01:23 phork joined #perl6
01:25 pfhork joined #perl6
01:26 pfhork Thanks; I ... guess it's not actually real big news then. Sorry my captive-portal wifi crapped out just after I asked.
01:27 llfourn how do I find path of current source file? (ie FindBin)
01:27 timotimo to be fair, we've been doing lots of releases for a long time
01:27 timotimo but now we have 6.Birthday
01:27 timotimo and soon we'll have 6.Christmas
01:27 mst pfhork: larry gave a talk, somebody wrote a blog post with a suggestive title, lots of people then reported the title and not the content
01:27 mst pfhork: welcome to the internet
01:28 nuc_ joined #perl6
01:29 pfhork Okay... thanks. I did check the log after reloading. So I guess it's what I suspected and not something more special. (not to detract from existing regular releases)
01:29 timotimo to be fair, we have been looking forward to this time
01:29 timotimo as the "first release we'll use the special 'ready' word for", or something like that
01:29 timotimo because people have been bugging us like crazy about this s**t :)
01:29 timotimo "but when will it be production ready?" - "well, what is 'production ready' for you?" - "oh you're just evading the question!1"
01:30 pfhork It could be an opportunity for attention, better managed by calling it out on perl6.org.
01:30 timotimo since we've been working on perl6.org recently anyway, perhaps we should put a blurb bout that there
01:30 pfhork production is always a matter of "what makes you want to say that"
01:31 timotimo that's what we say anyway, pfhork :)
01:31 timotimo others aren't so interested in that
01:31 mst don't worry, if you think it's annoying in here, you should see how annoying it is for the perl5 community
01:31 mst "
01:31 mst "why haven't you released a major version?"
01:31 mst "we did, version 22 came out this year"
01:31 mst "but but but perl6"
01:31 timotimo oh god
01:31 mst "that's a different language that is very cool but not the same thing"
01:32 roguelazer joined #perl6
01:32 mst "but WHY HAVEN'T YOU RELEASED A MJAOR VERSION"
01:32 mst "*shoots user*"
01:32 mst or "omg, you mean this is going to be python 2/3?"
01:32 mst "no, they're TWO LANGUAGES. also we have interop both ways"
01:32 mst "but but but"
01:32 mst "*shoots user again*"
01:34 * mst ponders writing a blog post titled "almost, but not entirely, quite unlike python 3"
01:34 ShimmerFairy My preferred analogy is C and C++. Two different languages, it takes a little work to let the other language use your language's stuff ('extern "C"' et. al.), but they're undoubtedly connected :)
01:34 pfhork Should it be explained like C & Obj-C or C & C++ or C & C# [I believe that's varying degrees of sibling-hood]
01:35 mst I like C and C++ as an analogy
01:35 laouji_ joined #perl6
01:36 mst since in general I've been criticised and insulted about equally by perl5 and perl6 people for using it
01:36 ShimmerFairy pfhork: like I just said, I've thought of it like C/C++ for quite a while :)
01:36 mst which suggests it's probably right
01:37 ShimmerFairy mst: I wouldn't know for sure, but I feel like python 2/3 isn't quite as good a comparison, because AFAIK 3 is still seen as the "next version" of Python.
01:37 mst also C# is a java family language, so that makes no sense
01:37 mst ShimmerFairy: uh. that's precisely my point.
01:38 ShimmerFairy mst: oh, I'm afraid I misunderstood your point then. I thought you wanted to point out how neither is a direct successor of the other, kinda like C and C++ (where C++ isn't seen as the "next version" of C)
01:38 mst I do
01:38 mst that's why the python 2/3 comparison makes no sense at all
01:39 ShimmerFairy mst: ah, so "precisely my point" was about me saying python wasn't a good comparison then? :)
01:39 mst yes!
01:39 timotimo %)
01:39 timotimo this system is finally converging instead of oscilating! :)
01:39 mst hence why I was suggesting a blog post titled 'almost, but not entirely, quite unlike python 3'
01:40 ShimmerFairy mst: OK, sorry 'bout the confusion. I misread the tone of that response :)
01:40 mst also hence why the dialogue where somebody compared python ended with '*shoots user again*'
01:40 pfhork There's always B & C or C & D, ... ML and OCaml
01:40 mst ShimmerFairy: no, no, C/C++ is my goto comparison
01:40 ShimmerFairy good, mine too :)
01:41 mst ShimmerFairy: not sure what part of 'I like C and C++ as an analogy' led you to think I disagreed :D
01:41 pfhork but... I'd feel strange calling C# a Java family language; I think you only get to be in the family if you compile to java bytecode and run on the jvm. The [DC]LR might be analogous, but it's different.
01:41 mst pfhork: um. lolwut?
01:41 ShimmerFairy mst: that statement read to me like "oh, that's a good idea for my post" rather than "yes, I've felt the same". Sorry for misinterpreting things :D
01:41 mst C# is not a *JVM* language
01:42 mst but it's totally a java derivative
01:45 mst the whole point was to be a java derivative except suck less
01:45 mst at which I think it's succeeded admirably
01:45 mst ShimmerFairy: yeah. the bit I was confused by was why you thought I liked python 2/3 as a comparison when I brought it up specifically as a thing that was obviously wrong :D
01:45 ShimmerFairy If I remember my history, C# was Microsoft's way of saying "you won't let us make a Windows-based variant of Java, Sun? Well fine then, we'll make our own."
01:45 pfhork mst: right, it is not. So it's not quite fair to call it a java family language. Unless there's some definition of that family that's different than what I was thinking it was.
01:45 mst pfhork: wut
01:45 mst language family is something totally different to runtime
01:45 timotimo C# is so similar to java that i'd be willing to put them into one family
01:45 mst moarvm and the perl5 VM are completely different codebases
01:45 boggard except that java runs just about anywhere, and .net doesn't.
01:45 mst but they're still both perl family
01:45 mst pfhork: I'm talking about language families
01:45 mst pfhork: runtimes are a totally separate thing
01:45 pfhork okay, so here, the def of lang family is different than how I'd considered it. Duly noted.
01:45 boggard those are runtime implementations.
01:45 llfourn borthers from another mother :D
01:45 boggard openjdk and oracle-jdk are completely different codebases as well.
01:45 mst pfhork: 'things that share a runtime' are a totally different thing to language family in every conversation I've ever had about language families
01:45 mst like ... lisps are definitely a language family
01:45 mst 'JVM implemented languages' is an important grouping
01:45 pfhork which you'd put scheme in
01:45 mst common lisp, scheme, eulisp, clojure
01:46 mst symbolics lisp, for all four people who still remember it
01:46 pfhork and then clojure is... on the jvm right, so you get some interoportunities
01:46 boggard https://ouseful.files.wordpress.c​om/2012/07/proglanginfluence.png
01:46 boggard the whole idea of 'language family' implies an arbitrary threshhold.
01:47 boggard some languages are more closely related to each other than other languages. anything beyond that is subjective.
01:47 ShimmerFairy pfhork: 'language family' is more akin to how we tend to group natural languages, e.g. Romance, Germanic, etc. That is, it's more about the similarities and history behind the language, rather than the places supporting them.
01:47 mst right
01:47 mst are you going to claim that java magically became a different language when the dalvik implementation was released?
01:47 mst (note: I'm not saying you are, I'm just trying to illustrate what I mean)
01:48 timotimo why are we even talking about this still :
01:48 timotimo :)
01:48 timotimo it seems to me everybody already knows everybody's position on this
01:48 pfhork yeah I didn't want to waste anyone's time
01:48 pfhork someone was asking about a queue or something
01:49 mst timotimo: because we were trying to expand on our positions to avoid confusion
01:49 timotimo OK :)
01:49 mst and to present useful linguistic parallels that make the concepts clearer
01:49 mst clarity is nice
01:50 Zoffix llfourn, thanks :) After reading maybe too many trolls and haters about the new design it's nice to see people who do like the new design :)
01:51 ShimmerFairy Along the natural language analogy: just because the UN officially supports Germanic and Romance languages, doesn't mean they're any more related to each other :)
01:51 Zoffix I didn't even expect the new design to "make the news". It was a couple of hours of work over a beer lol :)
01:51 laouji_ joined #perl6
01:51 timotimo i like the new design
01:51 mst would be nice if the link at the bottom said 'perl5 to perl6' instead of 'perl 5 to 6'
01:51 mst the former would be more consistent with the 'two languages' principle
01:51 boggard front page of slashdot.
01:51 llfourn Zoffix: Much better than it was before and much easier to improve it from here
01:52 boggard i remember when that used to mean something :P
01:52 mst I'm pretty sure it still does
01:53 dalek perl6.org: a491a2d | (Zoffix Znet)++ | includes/footer:
01:53 dalek perl6.org: Differentiate between Perl 5 and Perl 6 more explicitly
01:53 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/a491a2dd6d
01:53 Zoffix mst, your wish is my command :p
01:54 dalek ecosystem: e3b8b13 | ShimmerFairy++ | META.list:
01:54 dalek ecosystem: Add Grammar::Parsefail to the ecosystem
01:54 dalek ecosystem:
01:54 dalek ecosystem: Also, correct some of my modules to my changed username.
01:54 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/e3b8b1345d
01:55 thowe joined #perl6
01:56 mst Zoffix++
01:57 mst sorry, we're going to have so much trauma over people failing to get it in the next year or so, I'm trying to be pedantic in advance :)
01:57 pfhork Front page of /. means the same in magnitude as it did in 2000. Meanwhile other magnitudes have eclipsed it.
01:57 timotimo not a bad idea
01:57 Zoffix I try to view it from the positive side: "Perl: Two languages. One family"
01:57 ShimmerFairy .oO( mst -Wpedantic )
01:58 pfhork May I say that mst and others are right when you think of the language from its own linage and useage perspective that you get family groupings and influences, with loan-words-and-concepts. I just, thought of family as a community or clique, which is where my difference stemmed, and C# and Java stand apart there on common libraries (some get cross ported etc, so yeah... hibernate, hibernate.net, lucene, lucene.net etc.) I may have been
01:59 mst pfhork: aha!
01:59 pfhork it was quiet.
01:59 mst pfhork: and I've just remembered the word I forgot to use earlier
01:59 mst pfhork: JVM *ecosystem*
01:59 pfhork oh; right.
01:59 mst is how I see that
01:59 Tideflat joined #perl6
01:59 mst 'language family' versus 'platform ecosystem'
01:59 mst and then I think everything is basically clear all round :D
02:00 mst C# code as written/deployed is mostly in the context of the CLR/.Net ecosystem, yeah
02:04 pfhork Yeah. I've idly wondered if packaging and containerizing a java app on Dalvik instead of Open/Oracle JDK, would work or have any utility, peculiar or not. Pardon; I'm getting kicked out of the locale with the captive portal wifi. I appreciate the discussion and clarifications on the reporting regarding perl6. And language relationships.
02:05 timotimo talk to you again some time, pfhork!
02:09 chenryn_ joined #perl6
02:09 pfhork left #perl6
02:10 telex joined #perl6
02:15 ajjay827 joined #perl6
02:16 ajjay827 Looking to get started with perl 6
02:17 timotimo cool
02:17 timotimo have you installed a version of rakudo yet?
02:17 ajjay827 I will right now. Only after I install will it show me what I need to do.
02:18 ajjay827 ?*
02:18 ajjay827 I know c and c++
02:18 timotimo hm? "show you what you need to do"?
02:18 timotimo it's also interesting to know what operating system you're on
02:18 ajjay827 I have a dual boot
02:18 ajjay827 I use Linux and Windows 10
02:19 timotimo ah, ok
02:19 ajjay827 Ill use Windows if the process is easier
02:19 timotimo personally, i'm a linux user, so i believe it's easiest to do it on linux; it's easy-ish to do on windows, as well ... i just don't know how
02:19 timotimo we often release a .msi for rakudo star
02:19 Tideflat Command-line things are often easier to do on Linux.
02:19 timotimo let me see if there's something up to date
02:20 ajjay827 For sure
02:20 timotimo oof, the newest .msi we have on offer is 2015.06
02:21 TimToady better just rakudobrew something more recent
02:21 ajjay827 Ok
02:21 laouji_ joined #perl6
02:21 timotimo that's right
02:21 timotimo rakudobrew works on windows, too
02:21 timotimo but there's some stuff you need ... like strawberry perl? i think?
02:21 TimToady probably easier on Linux
02:22 ajjay827 Ok sounds good.
02:22 timotimo and the MSVC compiler, which you probably have already
02:22 moznion joined #perl6
02:23 TimToady you might need to install build-essentials on Linux, if you haven't been developing
02:24 ajjay827 i just finished school for programming
02:24 ajjay827 I haven't developed really anything
02:24 TimToady build-essential
02:24 pecastro joined #perl6
02:25 ajjay827 Ok I'll do that first
02:25 llfourn (build-essential is only for debian things I think)
02:25 ajjay827 I have Linux mint
02:26 TimToady which is debian based via ubuntu
02:26 ajjay827 That should work
02:26 timotimo yeah, should work well
02:26 * TimToady uses mint
02:26 ajjay827 👍
02:26 timotimo on anything fedora-ish you'll be able to dnf groupinstall 'Development Utilities' or something similar to that
02:26 Tideflat Didn't mint switch to directly from Debian?
02:26 timotimo er, actually, only fedora has dnf, others have yum
02:27 timotimo anyway
02:27 tokuhirom joined #perl6
02:27 * TimToady wishes irssi actually handled Unicode outside the BMP...
02:28 TimToady .u 👍
02:28 yoleaux U+1F44D THUMBS UP SIGN [So] (👍)
02:28 noganex joined #perl6
02:29 boggard unicode is for the weak and infirm.
02:29 TimToady then it's for me :)
02:29 ShimmerFairy Is source-url still meant to be used in META6.json ? It's not in S22, but Panda apparently needs it.
02:31 ajjay827 Ok it's downloading
02:31 timotimo ajjay827: after build-essential, the next thing you'll want is a git clone of rakudobrew which you'll find on github
02:31 timotimo github.com/tadzik/rakudobrew
02:32 ajjay827 Ok
02:32 timotimo it has installation instructions in its readme
02:32 laouji joined #perl6
02:36 ajjay827 Ok downloaded it and now reading
02:36 kaare_ joined #perl6
02:37 ajjay827 Thank you for your help. Now it's time for me to learn
02:37 timotimo sure
02:37 timotimo there's a nice set of slides that ought to be a good introduction to perl 6
02:38 timotimo http://jnthn.net/papers/2015-spw-perl6-course.pdf
02:38 thowe Man, nothing brings out the haters like suggesting Perl (especially Perl 6) should be paid attention to.
02:38 ajjay827 Ok
02:39 thowe I should probably just not look at slashdot
02:39 ajjay827 Oh yeah bad ass
02:39 ajjay827 Thank you
02:40 Tideflat Is it true that perl 6.0 has been released?
02:40 thowe If I use a recent rakudobrew will I get the latest 6.0.0 dev release?
02:40 timotimo 6.0 is for christmas
02:40 timotimo we have 6.Birthday at the moment
02:40 TimToady we just went to beta state
02:41 Tideflat ah, thank you.
02:41 thowe Tideflat, I think it was a dev release for the release planned for Christmas
02:41 Tideflat Does perl 6 have scalar and list contexts like perl 5?
02:41 timotimo not in the same way
02:42 TimToady the heavy-duty language tweaks of the last year are essentially done, and now we're just doing docs, bugs, and optimizations for December
02:42 timotimo you could say "not at all"
02:42 thowe I went to a "tutorial" for Perl 6 at YAPC::NA not knowing much about it.  Despite being very tired and buzzed, mind was blown.
02:42 thowe I think I heard context is not a thing in Perl6
02:42 timotimo perl 6 has a few neat things, yeah
02:43 thowe I'll be loving on Perl 5 for a long time, though.
02:43 TimToady context works lazily in Perl 6, so it's a binding-time concept, not a compile-time concept
02:44 thowe I'm about 4 years into playing with it and would kind of like to get a job doing it, but I'm not sure how to make that transition.
02:44 thowe so I'm rewriting everything at work in Perl.
02:46 timotimo it's not necessarily the best strategy to just rewrite everything in perl just for rewriting in perl
02:47 thowe TimToady, huh, can you link to an explanatory example?
02:48 thowe timotimo, Well, it all needs to be rewritten anyway, as it sucked the first time, but I'm now better at programming in perl than anyone else here has ever been programming in anything.  The end results are helping us a lot.
02:48 timotimo oh
02:48 timotimo that's all right in that case
02:49 thowe Redoing our CRM/Billing interface in Mojo.  Superfun
02:49 timotimo oh, CRM, that's a hairy thing
02:50 thowe timotimo, yeah...  It's really easy to overthink something as seemingly easy as a contact record schema
02:51 laouji_ joined #perl6
02:52 thowe all the bootstrappy/jQuery/ajaxy/Angular/Mojo magic I've been weaving is making people happy, though.
02:52 llfourn thowe: I get good things done with angular + mojo too :)
02:53 thowe "Domain Driven Design" is a nice authoritative thing to point to when I need to explain what I'm up to, also.
02:53 jwhitecl joined #perl6
02:55 thowe I'm sort of "community trained".  listeing to falks like mst has helped me come a long way.  I finally met other people people in person this year at YAPC::NA.  It changed me.
02:55 thowe s/falks/folks/
02:56 thowe my nonstop Perl harping has gotten another guy at work into it, so there's that
02:57 ShimmerFairy .ask lizmat is 'source-url' still a thing you need to put in your META6.json, or is it just something panda still needs? I ask because it's not in S22, so I'm not sure if it was missed or it's 'deprecated', in a sense.
02:57 yoleaux ShimmerFairy: I'll pass your message to lizmat.
02:58 llfourn good to hear that people are still learning perl given that there is no hype with it
02:59 boggard thowe: that sounds like it has significant potential to not be maintainable.
02:59 thowe I think it gets more attention now than 4 years ago when I stumbled into it.
03:00 thowe boggard, What does?
03:00 boggard (re: rewriting everything in perl only because it needs to be rewritten)
03:00 boggard perl developers aren't as common as, say, java developers.
03:02 thowe boggard, It's an unmaintainable random collection of poorly written redundant php files now.  I'm using a framework and an ORM lib that all my other code shares.  It's a big step up and it's helping us to unify our process and reporting infrastructure.  It's been great.
03:03 boggard while i would agree that that's an improvement, it may not be the best improvement :P
03:03 * boggard sounds like management
03:04 thowe because it's Perl?
03:05 mst generally if people can program, they can learn perl fine
03:06 thowe mst, o hai...
03:07 thowe I tried for years to spur the development in directions that others at work were more familiar with.  It went nowhere every time.  I gave up and decided to do it to suit myself, and the results have been good.
03:08 thowe I find not using PHP is its own reward.
03:09 ShimmerFairy As far as I'm concerned, anything that leads to clearer and/or better-documented code is an improvement :)
03:09 mst thowe: http://trout.me.uk/quotes.txt
03:10 thowe hahaha...  banjo
03:10 chenryn_ joined #perl6
03:12 thowe I thought I might be making a good compromise by trying to use code igniter.  What a waste that was...
03:14 thowe I was like, OK, I can learn PHP if it helps move this along...  Worst idea ever.
03:19 pecastro joined #perl6
03:26 n0tjack joined #perl6
03:26 Loren_ joined #perl6
03:28 chenryn_ joined #perl6
03:28 xtreak joined #perl6
03:29 xtreak Is perl6 1.0 out?
03:29 leslie_ joined #perl6
03:29 Tideflat Not quite/
03:30 Tideflat The beta came out.
03:30 Tideflat Or at least that is what I understand.
03:31 TimToady we're now in beta state, but the first actual beta release will be in a week or two
03:31 TimToady but git HEAD is beta
03:31 TimToady we'll have two beta release, and then go golden in December
03:32 xtreak TimToady :):)
03:33 xtreak Is the glr work that was remaining done?
03:33 johnjohn101 that is exciting news that the 1st beta will be official
03:34 johnjohn101 soon
03:34 xtreak Thanks a lot everyone. Will try it out first thing in the morning. Congrats to all :)
03:35 TimToady yes, glr is done
03:36 laouji_ joined #perl6
03:39 aba_ joined #perl6
03:40 emdashcomma joined #perl6
03:44 n0tjack joined #perl6
03:54 mattn joined #perl6
04:02 blackcat_ joined #perl6
04:09 dalek doc: 3a8317e | Xtreak++ | lib/Type/Cool.pod:
04:09 dalek doc: Update cosine wikipedia link with correct text
04:09 dalek doc:
04:09 dalek doc: Fixes https://github.com/perl6/doc/issues/143 . Change sine to cosine.
04:09 dalek doc: review: https://github.com/perl6/doc/commit/3a8317e76e
04:09 dalek doc: 8ebc9db | labster++ | lib/Type/Cool.pod:
04:09 dalek doc: Merge pull request #144 from tirkarthi/tirkarthi-patch-1
04:09 dalek doc:
04:09 dalek doc: Update cosine wikipedia link with correct text
04:09 dalek doc: review: https://github.com/perl6/doc/commit/8ebc9db529
04:10 athos_ joined #perl6
04:11 laouji joined #perl6
04:15 athos_ left #perl6
04:17 n0tjack joined #perl6
04:18 xtreak joined #perl6
04:31 milton joined #perl6
04:31 Qbee joined #perl6
04:35 kipd joined #perl6
04:35 laouji_ joined #perl6
04:36 rcy joined #perl6
04:48 myp joined #perl6
04:49 n0tjack joined #perl6
04:51 pecastro joined #perl6
04:54 quadtron joined #perl6
04:56 TimToady .tell masak no, the -ME in CALL-ME is not frivolous (though admittedly a joke), because CALL is completely ambiguous about who doing the calling
04:56 yoleaux TimToady: I'll pass your message to masak.
04:56 [Sno] joined #perl6
05:01 chenryn_ joined #perl6
05:06 eythian left #perl6
05:11 Qbee Hi
05:11 Qbee can any one assist me in how do I volunteer..
05:18 ovidnis joined #perl6
05:19 xtreak joined #perl6
05:22 n0tjack joined #perl6
05:22 TimToady Qbee: what are you interested in?
05:24 chenryn_ joined #perl6
05:24 TimToady it's useful to us if you simply try to write programs in Perl 6, and report here when you run into difficulties
05:26 TimToady but there are many other ways to contribute as well
05:31 chenryn__ joined #perl6
05:35 Qbee @timToady, I can start with testing and automate the tests
05:36 laouji_ joined #perl6
05:36 TimToady Qbee++
05:55 n0tjack joined #perl6
05:57 pecastro joined #perl6
06:00 n0tjack joined #perl6
06:00 domidumont joined #perl6
06:06 domidumont joined #perl6
06:07 meg joined #perl6
06:07 meg hi!
06:07 meg how do i join this?
06:08 gfldex meg: you may want to have a look at http://rakudo.org/how-to-help/
06:09 meg thanks!
06:10 axd joined #perl6
06:12 domidumont joined #perl6
06:17 diana_olhovik joined #perl6
06:17 ggoebel joined #perl6
06:17 leslie_ left #perl6
06:19 [Sno] joined #perl6
06:20 meg exit
06:20 meg :q
06:21 ben joined #perl6
06:26 firstdayonthejob joined #perl6
06:26 pecastro joined #perl6
06:34 Ven joined #perl6
06:35 dalek roast: 1318d4d | ShimmerFairy++ | S05-mass/stdrules.t:
06:35 dalek roast: Add some tests for <?same>
06:35 dalek roast:
06:35 dalek roast: Fudged for rakudo, as it's NYI.
06:35 dalek roast: review: https://github.com/perl6/roast/commit/1318d4dd6e
06:36 dalek ecosystem: 211ee1f | (Yasuhiro Matsumoto)++ | META.list:
06:36 dalek ecosystem: add p6-Growl-GNTP
06:36 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/211ee1ffa4
06:36 dalek ecosystem: cb25928 | moritz++ | META.list:
06:36 dalek ecosystem: Merge pull request #67 from mattn/p6-Growl-GNTP
06:36 dalek ecosystem:
06:36 dalek ecosystem: add p6-Growl-GNTP
06:36 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/cb25928ebc
06:39 grondilu joined #perl6
06:47 rindolf joined #perl6
06:50 FROGGS joined #perl6
06:52 * [Tux] really likes this new error:
06:52 [Tux] Variable definition of type Str:D requires an initializer
06:52 FROGGS \o/
06:52 FROGGS good morning
06:55 [Tux] test             50000    36.552    36.441
06:55 [Tux] test-t           50000    37.188    37.077
06:55 [Tux] http://tux.nl/Talks/CSV6/speed4.html
06:58 dalek roast: 2cac060 | FROGGS++ | S11-modules/importing.t:
06:58 dalek roast: add RT ticket number info to test
06:58 dalek roast: review: https://github.com/perl6/roast/commit/2cac06036e
07:01 Ven ShimmerFairy: oh, I'd never seen <same> in s05 :o
07:02 ShimmerFairy Ven: I have, and happened to run into a situation where it'd be really helpful today :)
07:03 FROGGS .tell lizmat it is a recent change, aye
07:03 yoleaux FROGGS: I'll pass your message to lizmat.
07:05 capnhex_ joined #perl6
07:06 laouji_ joined #perl6
07:10 bitmap joined #perl6
07:16 FROGGS _itz: thanks for sharing, that is a very nice blog post... I wish I'd been there - http://www.10zenmonkeys.com/2015/10/06​/the-night-larry-wall-unveiled-perl-6/
07:17 ely-se joined #perl6
07:17 _itz me too .. it's a great venue and I look forward to the video!
07:21 jkva joined #perl6
07:24 paulmr joined #perl6
07:30 rurban joined #perl6
07:31 El_Che what are you guys doing? Being "the Perl" guy at work 3 people already came to me to tell me Perl6 was released yesterday. :)
07:32 gfldex TimToady++ gave a propaganda speech
07:33 El_Che Oh, besides the misunderstanding about what actually released, I found the attitude of people very positive
07:34 gfldex looking at comments on the intarwebs one can clearly see who gave perl6 a try and who didn't
07:34 El_Che very refreshing
07:37 _itz its at the top of hackernews! and more surprisingly most of the comments seem intelligent and sensible :)
07:39 rurban Great reception, applause!
07:40 ShimmerFairy joined #perl6
07:40 masak I loved the discussion about sequence heuristics on HN. :)
07:40 yoleaux 04:56Z <TimToady> masak: no, the -ME in CALL-ME is not frivolous (though admittedly a joke), because CALL is completely ambiguous about who doing the calling
07:41 masak "This is cool but I still don't get how it is able to distinguish between linear, power, exponential, etc. sequences so easily."
07:41 yobj joined #perl6
07:42 moritz it's called "magic" :-)
07:42 masak TimToady: if you say so. JavaScript has .call (and .apply), which in turn is inherited from the Scheme tradition. it works for them. I'd say there's a minimal amount of ambiguity -- if I see a method $obj.call(|@args), then I'd assume that what we're calling is the invocant.
07:43 masak but maybe I misunderstand. "completely ambiguous about *who* is doing the calling" -- er, the callee of .CALL ? :)
07:43 masak er, caller*
07:43 * masak has more coffee
07:47 leont joined #perl6
07:47 Zimoo joined #perl6
07:50 Jonis joined #perl6
07:50 laouji_ joined #perl6
07:53 El_Che wow 220 comments on HN
07:54 bjz joined #perl6
07:54 tokuhirom how do i load module on run time like Class::Loader::load_class on p5?
07:55 boru joined #perl6
07:56 moritz require ::($module_name); my $instance = ::($module_name).new;
07:56 moritz sorry, I don't know anything about p5 Class::Loader
07:58 tokuhirom Thanks! it works for me :)
08:02 zakharyas joined #perl6
08:03 g4 joined #perl6
08:03 g4 joined #perl6
08:10 gensym joined #perl6
08:11 masak tokuhirom++ # I'm sure you deserve this, one way or another
08:11 dakkar joined #perl6
08:15 bjorkintosh joined #perl6
08:17 darutoko joined #perl6
08:20 dakkar joined #perl6
08:21 bjz joined #perl6
08:22 Ulti gtodd yeah I had grand plans for doing nice Stats stuff like R and Pandas make a nice DataFrame class which can just plot itself nicely etc. Happy to accept anything into that repo ;P I'll try and spend a bit of time making sure what is in there works this week
08:23 ShimmerFairy ooc, what's needed to get CURLI and the other stuff working for getting packages off CPAN? I think it'd be great if we didn't have just a humble ecosystem/ repository to maintain by Christmastime :)
08:24 boegel joined #perl6
08:26 ShimmerFairy Ulti: two things I can think of on Stats: first, unicode sub names where feasible :P (σ for standard deviation, for example, assuming I got the greek char right). Second, a function that told you if stats you're comparing are statistically significant.
08:26 chenryn__ joined #perl6
08:26 Zimoo left #perl6
08:26 ShimmerFairy The 'statistically significant' stuff I've done before, but I couldn't quite figure out how to calculate the CDF whose values you use in the calculation (I'm not a stats expert).
08:29 chenryn__ how can we read $*IN inside a Promise thread?
08:33 zakharyas joined #perl6
08:35 laouji_ joined #perl6
08:36 pecastro joined #perl6
08:37 chenryn__ joined #perl6
08:44 RabidGravy joined #perl6
08:44 dalek nqp: b63d6f9 | ShimmerFairy++ | / (2 files):
08:44 dalek nqp: Add <same> rule to Cursor
08:44 dalek nqp:
08:44 dalek nqp: This is true between two characters who are the same, and false
08:44 dalek nqp: otherwise (including at the beginning or end of string). So <?same>
08:44 dalek nqp: would be true between the characters in 'aa', but not in 'ab'.
08:44 dalek nqp:
08:44 dalek nqp: A couple tests were added to rx_subrules.
08:44 dalek nqp: review: https://github.com/perl6/nqp/commit/b63d6f97cf
08:45 dalek rakudo/nom: c471450 | ShimmerFairy++ | tools/build/NQP_REVISION:
08:45 dalek rakudo/nom: Bump NQP_REVISION for <?same>
08:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c471450a01
08:45 boru left #perl6
08:45 dalek roast: a4a9f46 | ShimmerFairy++ | S05-mass/stdrules.t:
08:45 dalek roast: Unfudge tests for <?same>
08:45 dalek roast: review: https://github.com/perl6/roast/commit/a4a9f46f74
08:50 donaldh joined #perl6
08:51 jnthn morning, #perl6
08:51 yoleaux 6 Oct 2015 21:19Z <FROGGS> jnthn: the initializer is now required... works on vars, attrs but not in sigs: https://github.com/rakudo/rakudo/commit/7f0e6a56ae
08:52 pecastro joined #perl6
08:52 jnthn ShimmerFairy: same patch looks good correctness wise :)
08:53 jnthn ShimmerFairy: Can make it fail faster by moving `$cur := self."!cursor_start_cur"()` into the branch where we matched, so we dont' create a throwaway Cursor in the failing cases.
08:54 ShimmerFairy jnthn: I hoped it would look good :) . I know having two conditional branches that lead to a fail cursor can seem redundant, but I figured it was clearer than trying to cram too many checks on one line.
08:54 ShimmerFairy That's true. I can make the change if you'd like.
08:54 jnthn (Then you don't need to bind the $cur at all in the other branches)
08:55 jnthn ShimmerFairy: If you've time to do/test the tweak it's nice to have; we need all the perf help we can get in the regex engine :)
08:55 ShimmerFairy jnthn: so the failing branches should just return the fail cursor, instead of binding it, I take it?
08:56 jnthn ShimmerFairy: Yeah, then your if/elsif/else is the top level
08:56 jnthn ShimmerFairy: uh, last statement even :)
08:57 * jnthn drinks more coffee
08:57 jnthn So no need for explicit return also
08:58 Ven joined #perl6
08:58 ShimmerFairy jnthn: yes, I wasn't planning on using the 'return' function if that wasn't clear :)
09:00 jnthn ShimmerFairy: I didn't wake up quite enough yet for much to be clear ;)
09:01 ShimmerFairy jnthn: I heard it takes java a while to start up and help get work done anyway :P
09:02 vytas joined #perl6
09:02 chenryn__ joined #perl6
09:03 Ven ShimmerFairy++
09:03 espadrine joined #perl6
09:04 jnthn :D
09:04 jnthn Wow, a HN thread about Perl 6 that was actually worth reading. :)
09:04 ShimmerFairy jnthn: I liked how the negative comments were harder to read :)
09:06 FROGGS umm, what HN thread is this about?
09:06 moritz https://news.ycombinator.com/item?id=10341832 probably
09:06 FROGGS ohh, jnthn, do we want to schedule a session to talk about serialization issues?
09:07 spider-mario joined #perl6
09:08 jnthn FROGGS: Yeah, let's so I can unblock what you're doing. When's good?
09:08 Ven yeah, that thread was somewhat interesting.
09:08 dalek nqp: 3b57c8d | ShimmerFairy++ | src/QRegex/Cursor.nqp:
09:08 dalek nqp: Optimize <same> a bit
09:08 dalek nqp:
09:08 dalek nqp: As suggested by jnthn++ , only bother making a new cursor where it
09:08 dalek nqp: matters. Otherwise just give the fail cursor.
09:08 dalek nqp: review: https://github.com/perl6/nqp/commit/3b57c8d712
09:09 FROGGS jnthn: in about nine to ten hours?
09:09 FROGGS that thread it quite motivating
09:09 vytas joined #perl6
09:10 dalek specs: 8ee967d | jnthn++ | S06-routines.pod:
09:10 dalek specs: Remove language on proto auto-multi-ing routines.
09:10 dalek specs:
09:10 dalek specs: Discussion: http://irclog.perlgeek.de/p​erl6/2015-10-06#i_11327412
09:10 dalek specs: review: https://github.com/perl6/specs/commit/8ee967d2fa
09:11 jnthn FROGGS: OK, so "after dinner" :)
09:11 jnthn I should be about.
09:11 FROGGS good :o)
09:11 ShimmerFairy FROGGS: my biggest concern by this point is P6's ecosystem, namely its small size. I guess that's a good sign for the language itself though :D
09:11 Ven .oO( the aussies are wondering why you'd want to be a boot... )
09:12 FROGGS ShimmerFairy: well, that will grow with the number of users exponentially
09:12 FROGGS ShimmerFairy: my concern is more that our cpan is not nearly bullet proof yet
09:12 Ven ..and we have Inline::Perl5(/Python) :P
09:13 ShimmerFairy FROGGS: of course. Reading that thread made me realize that we really need to get our CPAN interaction working (and maybe migrating the ecosystem over, if that's desired), as well as improve on documentation.
09:14 ShimmerFairy Basically, the kind of stuff that would make it easier for newcomers: documentation, an easy way to distribute packages, and so on.
09:16 FROGGS aye
09:16 FROGGS so, a lot of work to be done for a bunch of people
09:16 lizmat joined #perl6
09:18 dalek roast: 801a3a2 | jnthn++ | S (2 files):
09:18 dalek roast: Remove tests about proto causing auto-multi-ing.
09:18 dalek roast:
09:18 dalek roast: This functionality has been removed from the design docs.
09:18 dalek roast: review: https://github.com/perl6/roast/commit/801a3a2268
09:21 jnthn Another xams RT down :)
09:22 FROGGS I'll also close the Type:D/:U ticket after adding tests today...
09:22 travis-ci joined #perl6
09:22 travis-ci NQP build errored. ShimmerFairy 'Optimize <same> a bit
09:22 travis-ci https://travis-ci.org/perl6/nqp/builds/84053809 https://github.com/perl6/nqp/com​pare/b63d6f97cf06...3b57c8d7121d
09:22 travis-ci left #perl6
09:22 jnthn FROGGS: \o/
09:22 jnthn Today we get below 90, then :)
09:22 FROGGS aye
09:22 FROGGS just counted it :o)
09:22 chenryn__ joined #perl6
09:23 literal joined #perl6
09:23 * jnthn is hoping to make it down to 50ish by the end of October
09:23 FROGGS wow
09:24 jnthn Some of them are mostly small things in need of a little design decision.
09:25 FROGGS yeah
09:25 jnthn There's a cluster of them around Unicode bits, and a cluster of them around I/O bits.
09:25 FROGGS sometimes you start working on an RT to solve a technical issue, and instead you've to become a language designer to solve it
09:26 jnthn A couple of parsing ones that I hope I can persuade TimToady++ to look into :)
09:27 FROGGS hmm, I like (easyish) parsing issues
09:27 jnthn Not sure how easyish they are. :)
09:27 jnthn And I think they need a decision making
09:28 jnthn https://rt.perl.org/Ticket/Display.html?id=67700 https://rt.perl.org/Ticket/Display.html?id=79174 https://rt.perl.org/Ticket/Display.html?id=114464 are the three notable parsing ones
09:28 ShimmerFairy I'd love if someone were able to solve The Inf Problem™. Every time I think about it, it's quite perplexing how you'd make it work.
09:29 donaldh lizmat: thanks for the weekly blog  - quick comment, the "gotten a face-lift" link goes to "about:blank" for me.
09:29 FROGGS jnthn: I can make up a decision ;o)
09:29 Psyche^_ joined #perl6
09:29 lizmat donaldh: huh?  lemme check
09:29 yoleaux 02:57Z <ShimmerFairy> lizmat: is 'source-url' still a thing you need to put in your META6.json, or is it just something panda still needs? I ask because it's not in S22, so I'm not sure if it was missed or it's 'deprecated', in a sense.
09:29 yoleaux 07:03Z <FROGGS> lizmat: it is a recent change, aye
09:29 ShimmerFairy jnthn: didn't we decide that https://rt.perl.org/Public​/Bug/Display.html?id=67700  was horrible and wrong?
09:29 * donaldh is loving the new perl.org
09:30 lizmat perl6.org I assume ?
09:30 ShimmerFairy that is,  $foo.meth: {...}.perl  being just like  $foo.meth({...}).perl
09:30 donaldh lizmat: double : in url
09:30 lizmat donaldh++  # fixed
09:31 FROGGS ShimmerFairy: that would be the decision I'd make if I would be in the right position
09:31 jnthn ShimmerFairy: I don't recall an actual ruling, though yeah, I think there was a leaning in that direction. :)
09:31 FROGGS okay, decision made
09:31 ShimmerFairy jnthn: I do recall discussing it once, and us both agreeing that it was oh so very wrong :)
09:33 s_kilk joined #perl6
09:34 brrt joined #perl6
09:34 ShimmerFairy FROGGS: I think it's safe to disallow it, I can imagine so many problems arising from doing it. One example,   $thing.foobar: $number.abs
09:34 FROGGS no, it was only about blocks IIRC
09:34 peperloni joined #perl6
09:35 peperloni ahoy
09:35 FROGGS but that would mean that  $a.b: { ... }.c  is different from  $a.b: $callable.c
09:35 FROGGS which is also kinda insane
09:36 FROGGS and you can easily add parens, but you cannot remove implicit parens
09:36 FROGGS hi peperloni
09:37 ShimmerFairy FROGGS: ah yes, forgot it was blocks only. But still, it seems so niche and problematic. When I stumbled on it in the spec and talked about it here last time, I was quite surprised by it.
09:38 FROGGS yes, so I'm inclined to go ahead and resolve that ticket and the tests, and revise the design docs...
09:38 El_Che moritz: how usable is https://github.com/moritz/perl6-Module-Starter? you put a big sign there?
09:38 El_Che moritz: (just wanted to migrate a inhouse lib to perl 6 as a test)
09:39 El_Che moritz: of course I can create the dirs and files manually, just looking for best practices
09:39 FROGGS El_Che: isa_ok and done_testing needs to kebab-cased at least
09:39 FROGGS m: mkdir-p "foo"
09:39 camelia rakudo-moar c47145: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7eP61grXmN␤Undeclared routine:␤    mkdir-p used at line 1. Did you mean 'mkdir'?␤␤»
09:39 FROGGS El_Che: and that sub does not exist
09:40 jdv79 ShimmerFairy: afaik zef may support cpan more but i haven't looked deeply
09:40 FROGGS err, nvm the mkdir-p
09:40 jdv79 after i get metacpan  sufficiently working i was going to turn to installing from cpan
09:40 jdv79 but if you have time...;)
09:40 El_Che Ok, I'll stick with this http://doc.perl6.org/language/modules
09:41 moritz El_Che: dunno, I haven't looked at it in ages
09:42 El_Che moritz: i use module-starter often on perl5, hence the question :)
09:42 moritz El_Che: feel free to take over that module if you want
09:43 El_Che moritz: I need to get more knowledgable with perl6 first. Hence the porting of a known module first
09:44 jdv79 FROGGS: no way to find out if its "good enough" without building it out and trying.  unless you have specific issues we could look into.
09:46 jdv79 hmm, the perl6.org examples progression is a bit jagged, no?
09:46 jdv79 3 out front and then a link to a page of links
09:48 jdv79 could we not have something like a few "ad" examples out front, then a second set of all the "major high points" types of things and then links to the huge lists to get lost in
09:53 jobr72 joined #perl6
09:54 Snelius joined #perl6
09:54 Snelius left #perl6
09:54 diana_olhovik joined #perl6
09:55 mprelude joined #perl6
10:01 laouji joined #perl6
10:01 ely-se joined #perl6
10:04 brrt left #perl6
10:05 laouji_ joined #perl6
10:08 Ven joined #perl6
10:09 cosimo joined #perl6
10:12 antiatom joined #perl6
10:14 lizmat hmmm...
10:14 lizmat S06:1633 states: "In standard Perl 6, C<Int> is generally assumed to mean C<Int:_>, except for invocants, where the default is C<Int:D>."
10:14 pmurias joined #perl6
10:14 lizmat I don't think we've actually implemented it this way at the moment?
10:15 pmurias having a grammar example on perl6.org would be great
10:15 lizmat m: class A { method foo { dd self } }; A.foo
10:15 camelia rakudo-moar c47145: OUTPUT«A␤»
10:15 lizmat according to S06:1633, that should have been an error ?
10:15 jnthn lizmat: Indeed. Another little thing to decide before Christmas.
10:16 jnthn lizmat: I think the problem has always been that it makes it harder to write `new` methods
10:16 lizmat should I ticket this, or is it on the list somewhere already
10:16 jnthn You can ticket it
10:16 lizmat will do
10:16 jnthn The resolution may well end up being we change S06, but we should decide on it one way or the other.
10:16 lizmat yup, indeed  :-)
10:17 ShimmerFairy Note that IIRC, .new has a default :U invocant
10:17 ShimmerFairy (by spec, of course)
10:18 lizmat the "default" new has an :U
10:19 lizmat all other .new 's would need to add it manually (as the default one actually has)
10:19 ShimmerFairy ah
10:19 lizmat m: class A { method new(A:D:) { } }; A.new
10:19 camelia rakudo-moar c47145: OUTPUT«Invocant requires an instance of type A, but a type object was passed.  Did you forget a .new?␤  in method new at /tmp/Gm1lQ2V71r:1␤  in block <unit> at /tmp/Gm1lQ2V71r:1␤␤»
10:20 lizmat jnthn: #126283 added
10:22 lizmat at the Amsterdam.pm meeting yesterday, the general feeling about the unflattening behaviour of .push / .unshift was that it was a good decision
10:23 lizmat what was less understood, was why we would *need* a .append/prepend?  Why not just teach that .push/unshift do not flatten
10:23 lizmat if you want flattening there, you will need to add it yourself
10:23 lizmat rather than start using .append/.prepend
10:26 ShimmerFairy lizmat: In a list-like class I have, I wrote an append method that takes another class like it and appends it to the invocant. In this case, it felt more natural to have a specific method for that, than to treat the object as though it were "just" a list by flattening it.
10:26 jnthn lizmat: 'cus if we make folks write `@a.push($_) for @b` they'll probably be unhappy
10:26 ShimmerFairy (also, I'll point out that my particular 'append' method would've happened regardless of the change being discussed :P)
10:27 lizmat @a.push(flat @b) would work, would it not, jnthn?
10:27 jnthn No
10:27 jnthn That's the point - push received a single argument pushes a single thing
10:28 jnthn *receiving
10:28 jnthn Always
10:28 lizmat aaaaahhhh  hmmm... ok
10:28 jnthn Oh, though we made an exception for a Slip
10:28 ShimmerFairy you'd have to Slip-ify it, in which case you're pushing a singular Slip that turns into a list
10:28 jnthn Still, @a.push(@b.Slip) is kinda ugly
10:28 ShimmerFairy *part of a list
10:28 jnthn And 'cus it's an argument list, @a.push(|@b) doesn't do the right thing.
10:28 ShimmerFairy @a.push(|@b) is nicer, but still sub-optimal imo
10:28 ShimmerFairy m: my @a = 1,2,3; my @b = 4,5; @a.push(|@b); say @a
10:28 camelia rakudo-moar c47145: OUTPUT«[1 2 3 4 5]␤»
10:29 lizmat m: my @a = ^10; my @b; @b.push(|@a); dd @b   # seems to to the right thing ?
10:29 camelia rakudo-moar c47145: OUTPUT«Array @b = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]␤»
10:29 ShimmerFairy jnthn: apparently not?
10:29 jnthn It still doesn't hit the Slip candidate
10:29 jnthn It flattens the thing into the argument list
10:29 jnthn To have them collected into a **@args
10:30 jnthn There'll be quite a big performance difference between doing that and doing @a.append(@b)
10:30 lizmat well, that may be sub-optimal from a performance point of view
10:30 me joined #perl6
10:30 lizmat jnthn: but if it doesn't hit the Slip candidate, why do we have a Slip candidate then ?
10:30 ShimmerFairy for .Slip
10:31 jnthn lizmat: Mostly for the case where you use .push on something and that something returns a Slip
10:31 jnthn lizmat: I guess more generally that we try to avoid having Slips "hang around"
10:32 jnthn So it'd be a bit surprising to see one actually make it into an Array
10:32 jnthn (If you work hard enough, you *can* get a literal Slip somewhere, but we try not to let it happen easily.)
10:33 Aww joined #perl6
10:34 cognominal joined #perl6
10:34 tester joined #perl6
10:34 lizmat ok
10:34 tester hi bitches
10:35 jnthn .oO( .WHO let the dogs out... )
10:36 sjn_phone joined #perl6
10:36 FROGGS jdv79: that's what I mean with "bullet proof"... we need to start using it
10:36 jdv79 about the same vintage as p6
10:37 jdv79 the song i mean (2k)
10:37 jnthn Oh wow...it's been that long? :)
10:38 * lizmat suspects the hater wasps have become agitated after Larry's talk in SF
10:40 jdv79 gettin old:(
10:41 jdv79 feels like a few years ago to me
10:42 * lizmat still remembers hearing "When I'm 64" for the first time when it came out
10:42 lizmat .oO( only 5 more years to go :-)
10:46 RabidGravy yeah the first thing I can definitely remember hearing on the radio was "Yellow Submarine"
10:46 ely-se joined #perl6
10:48 jdv79 it was probably something disco or classic rock for me but i can't remember details
10:48 _itz how is the windows MSI of star built?  does it use the nullsoft installer?
10:49 laouji joined #perl6
10:50 lizmat FROGGS / moritz  might know
10:50 ilmari was the talk videoed?
10:50 * moritz doesn't
10:51 jdv79 is it hard to build on windows?
10:51 laouji_ joined #perl6
10:51 jdv79 last time i tried i got crickets
10:51 FROGGS _itz: it uses the WiX toolset
10:51 jdv79 thank god i haven't had to since then
10:51 jnthn ilmari: I heard so
10:52 _itz jdv79: I installed Visual Studio Community and used the cmd.exe interface and nmake and it seemed to work
10:52 FROGGS I will create the 2015.09 soonish... I hope I don't forget again to do that
10:53 _itz FROGGS: I have a windows build now but not sure about the packaging step.. are there any docs?
10:53 jdv79 maybe its just me ignorance of the win env
10:53 _itz http://wixtoolset.org/ I assume
10:53 jdv79 could we doc that somewhere for people stuck on win?
10:54 FROGGS _itz: https://github.com/rakudo/star/blob​/master/tools/star/windows-msi.pod
10:54 _itz thanks I should have found that
10:55 sjn_phone joined #perl6
10:57 _itz hmm I used strawberry but not activestate but it seemed to work
10:58 FROGGS _itz: should work, yes
10:58 FROGGS though, you probably wont use nmake then, but gmake
10:59 Ven joined #perl6
10:59 _itz I used nmake and created a perl6.exe OK with strawberry but there was a reference to gmake
11:00 _itz actually I had to use --gen-moar *and* --gen-nqp to do that
11:08 Ven_ joined #perl6
11:08 mrf :D "Someone with more time than me needs to find an IQ test that is based around sequence questions like this and plug them all into Perl 6. So we can find out what Perl 6's IQ is and whether it has achieved AI."
11:09 orangek joined #perl6
11:12 AlexDaniel joined #perl6
11:12 yakudza joined #perl6
11:12 antiatom joined #perl6
11:13 AlexDaniel oh noes! perl6 is not cute anymore. It's looks too professional…
11:13 AlexDaniel I mean, perl6.org
11:14 _itz we need rperl6 or cperl6 now ;)
11:14 * mrf going to ditch perl6 looks to popular and I only learn niche languages :D
11:15 _itz "Artisan Craft Perl 6"
11:15 * AlexDaniel wishes there was a way to view previous website, e.g. cute.perl6.org
11:16 _itz archive.org?
11:16 AlexDaniel _itz: this might work today but of course it will be outdated soon
11:16 TEttinger Artisanal Language Development
11:17 TEttinger AlexDaniel: ?
11:17 TEttinger it isn't the google cache
11:17 TEttinger archive.org has snapshots probably going back as far as perl6.org has existed
11:17 jdv79 _itz: add "locally sourced organic"
11:18 AlexDaniel TEttinger: I mean, the content might stop making any sense a few months from now
11:18 TEttinger oh I see
11:18 TEttinger yes
11:18 _itz locally sourced = >200ms ping time?
11:18 TEttinger haha
11:18 AlexDaniel TEttinger: it's not like I want to look at it, I thought about showing it to kids…
11:19 TEttinger "hey look, kids, you love concurrency and hyperoperators!"
11:19 AlexDaniel at some point, yeah :)
11:20 masak AlexDaniel: I think the new perl6.org is a big improvement.
11:20 laouji_ joined #perl6
11:21 cgfbee joined #perl6
11:22 xtreak joined #perl6
11:22 AlexDaniel masak: I kinda like code examples and stuff. Indeed it is an improvement. Though I'm not sure why the same thing could not be done with the previous design
11:23 AlexDaniel yet I'm not the one who is willing to improve it, so whatever :)
11:23 xtreak A little wierd expansion for TimToady at reddit. There Is More Than One Acronym Defining Yourself . https://www.reddit.com/r/programming/comment​s/3nr0xo/larry_wall_unveils_perl_600/cvr2y6p Ofcourse TimToady :)
11:26 azawawi joined #perl6
11:26 dalek ecosystem: b494c8c | azawawi++ | META.list:
11:26 dalek ecosystem: Add Parse::Selenese to the ecosystem
11:26 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/b494c8c287
11:28 cognominal m: sub a( List :$args = () ) { b(|$args) };  sub b(:$a) { say $a   }; a(:args(:a<b>,))
11:28 camelia rakudo-moar c47145: OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤  in sub b at /tmp/g5CjzQ7_aM:1␤  in sub a at /tmp/g5CjzQ7_aM:1␤  in block <unit> at /tmp/g5CjzQ7_aM:1␤␤»
11:28 cognominal what is the syntax to pass an argument list with named arguments?
11:29 larion joined #perl6
11:32 lizmat cognominal: you mean a Capture ?
11:34 _itz hmm cl.exe is actually quite fast
11:34 cognominal lizmat, would that work here when calling .parse?  https://github.com/rakudo/rakud​o/blob/nom/src/core/Grammar.pm
11:36 laouji_ joined #perl6
11:39 kid51 joined #perl6
11:41 lizmat m: sub a(Capture() :$a = ()) { dd $a }; a( :a( 42, 66, :foo ) )
11:41 camelia rakudo-moar c47145: OUTPUT«Capture $a = \(42, 66, :foo)␤»
11:41 El_Che Building with rakudobrew on cygwin problem: http://paste.ubuntu.com/12703574/
11:41 lizmat cognominal: something like this  maybe ^^^
11:42 El_Che .rakudobrew/moar-nom/install is not there
11:44 cognominal in src/core/Grammar.pm  probably should be :    method parse($target, :$rule = 'TOP',  Capture :$args = (), Mu :$actions = Mu, *%opt) {
11:45 cognominal or :    method parse($target, :$rule = 'TOP',  Capture :$args = \(), Mu :$actions = Mu, *%opt) {
11:46 chenryn__ joined #perl6
11:48 lizmat m: my Int:_ $a   # did we decide to not allow :_ as a type smiley ?
11:48 camelia rakudo-moar c47145: OUTPUT«5===SORRY!5=== Error while compiling /tmp/D86PUy4MsR␤Invalid type smiley '_' used in type name␤at /tmp/D86PUy4MsR:1␤------> 3my Int:_7⏏5 $a   # did we decide to not allow :_ as␤»
11:50 suman joined #perl6
11:50 jdv79 :T is gone
11:51 jdv79 :_ is still in spec...
11:51 lizmat ok
11:51 El_Che (probably some missing build tool)
11:52 suman The best thing I like about perl 6 than perl 5 is its interactive prompt :)
11:53 jdv79 suman: surprising.  i never use it.  but i know plenty of others do.
11:53 jdv79 i'd love to understand that someday.  as if a one-liner or a script are not enough.
11:54 suman any plotting library in perl 6?
11:55 suman I mean like ggplot2, rbokeh, ggvis, shiny??
11:55 arnsholt No plotting libs yet, AFAIK
11:55 lizmat there's NativeCall  :-)
11:55 arnsholt That's not really a plotting library though =)
11:56 lizmat no, but you should be able to interface to a plotting lib quite easily, no ?
11:56 arnsholt But for plotting I'd probably just use gnuplot anyways
11:56 sjn_phone joined #perl6
11:56 suman lizmat how to interface to ggplot2 in perl6? Can you show me please?
11:57 sjn_phone joined #perl6
11:57 arnsholt NativeCall is for C libs, so doing ggplot2 would probably be tricky since that's an R lib, AFAICT
11:57 DrForr suman: Shell out to the binary, or use NativeCall?
11:57 lizmat arnsholt: Ah, I didn't know that
11:57 arnsholt Yeah, shelling out is probably the easiest way ATM
11:57 xtreak I had this strange question from reddit thread as "Why does Array inherit from a numeric type?" as Array inherits from COOL. Any ideas on over why its done that way?
11:58 arnsholt Well, Cool isn't really a numeric type
11:58 arnsholt Cool is the supertype for things that support various kinds of default coercions and such (they're "cool" with it =)
11:59 lme joined #perl6
12:00 suman arnsholt shelling out??? Ain't got it? Can you point me where I can get help?
12:01 xtreak So when a string is used as numeric type or vice versa the same method like e.g. sine can be used and the appropriate coercion is done ? this is where I got the question https://www.reddit.com/r/programming/comment​s/3nr0xo/larry_wall_unveils_perl_600/cvqo4k1
12:01 jdv79 maybe we should have a list of tasks people want to see
12:01 ShimmerFairy lizmat: Int:_ should definitely be allowed (it just means the same as Int in most places by spec), that appears to be an oversight.
12:01 lizmat yeah, looking at that now...
12:02 vytas joined #perl6
12:02 arnsholt suman: If you're familiar with Perl 5, it'd be something like "open my $plotter, '|-', 'gnuplot'; print $plotter $generated_gnuplot_script;"
12:03 arnsholt Basically, running gnuplot (or something else) as a subprocess and writing input to it
12:07 lizmat arnsholt: you would probably be better off with run(,:in) nowadays ?
12:07 arnsholt That would be the Perl 6 version, yes =)
12:08 jdv79 http://doc.perl6.org/type/Proc and/or http://doc.perl6.org/type/Proc::Async
12:08 jdv79 run() is not doc'd too well though
12:08 lme left #perl6
12:14 azawawi https://github.com/azawawi/perl6-parse-selenese  # the road to Perl 6 website testing has started :)
12:17 azawawi Any selenium users here?
12:18 _itz not for a few years .. but in the past
12:20 jdv79 azawawi: cool.  last time i used selenium it had serious issues.
12:20 azawawi i am aiming at porting https://metacpan.org/pod/Selenium::Remote::Driver and automating Selenium IDE test cases/suites generation in Perl 6
12:20 azawawi well im using it right away with a heavy JS website and it rocks :)
12:20 azawawi s/away/now/
12:20 jdv79 nice
12:20 lizmat azawawi++
12:21 jnthn cognominal: Maybe |%(...) instead of |... would do it
12:21 jnthn (To force the things into a hash, which is then going to pass named args)
12:21 jdv79 iirc ssl and  basic auth broke down
12:22 azawawi https://www.youtube.com/watch?v=DJm-itX7Y70  # for selenium + Perl 5
12:22 raiph joined #perl6
12:22 jdv79 if you can avoid that awesome but with legacy apps :(
12:22 Zoffix AlexDaniel, just checkout an older version and generate it with mowyw :)
12:22 jdv79 i want cross browser headless testing
12:23 jdv79 phantomjs on steroids
12:25 jkva_ joined #perl6
12:25 azawawi jdv79: sure :)
12:29 jdv79 it would be nice though:)
12:30 dalek rakudo/nom: 8ebc059 | lizmat++ | src/ (2 files):
12:30 dalek rakudo/nom: Implement variables/parameters/invocant pragmas
12:30 dalek rakudo/nom:
12:30 dalek rakudo/nom: Well, they parse correctly, error correctly and set up internal
12:30 dalek rakudo/nom: %*PRAGMAS value.  Now we only need to have the other parts of the
12:30 dalek rakudo/nom: code look at the %*PRAGMAS values at the right point.
12:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8ebc0591aa
12:31 Ven_ joined #perl6
12:31 jnthn lizmat: Do you consider those really important to get in for xmas?
12:31 dalek rakudo/nom: dafcfee | coke++ | docs/release_guide.pod:
12:31 dalek rakudo/nom: Claim the next release
12:31 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dafcfee4f0
12:31 _itz jnthn++ # santa
12:32 jnthn lizmat: If so, or if you know how to do 'em and think there's a low risk of us spending time on new bugs, go ahead.
12:32 * [Coke] tries to go to itz's zenmonkey link and it's super blocked at $dayjob. :)
12:33 _itz [Coke]: actually someone else reported that
12:33 lizmat jnthn: I intend to look at them, yes...
12:33 lizmat but write tests first  :-)
12:33 jnthn lizmat: +1 to tests :)
12:34 jdv79 [Coke]: what link?
12:34 jdv79 i got blocked looking at one of those links recently as well
12:35 azawawi jdv79: something like this https://metacpan.org/pod/Selenium::PhantomJS ?
12:36 lizmat jnthn: and it also wasn't in nope.md
12:36 lizmat right ?
12:36 jnthn lizmat: nope.md wasn't exhaustive or complete, just some known exclusions
12:37 [Coke] jdv79: eh, zenmonkey in backscroll. it was about the larry-craigslist talk.
12:37 lizmat ah, ok... well, it was right up my sleeve, I realized
12:37 jdv79 yup.  same here.
12:37 lizmat and now that we have my Int:D $a also
12:37 jnthn lizmat: I'm not *that* worried about it going in, I don't think
12:37 vytas joined #perl6
12:37 jdv79 azawawi: maybe
12:37 lizmat jnthn: the %*PRAGMAS system works fine, so should only be lexical anyway
12:38 jdv79 i know we tried to use phantom at $work but it was too immmature at the time (~2 years ago)
12:38 jnthn lizmat: I'm just wary of adding more features when we could do with polishing the many we already have too :)
12:38 jdv79 iirc the p5 integration was crap
12:38 lizmat true (and guilty as charged :-)
12:38 dalek roast: 7fa89c3 | lizmat++ | S02-types/WHICH.t:
12:38 dalek roast: Add X::Pragma... classes
12:38 dalek roast: review: https://github.com/perl6/roast/commit/7fa89c383f
12:39 lizmat jnthn: next time I'll take the absence in nope.md not as an authoritative: we need by Xmas
12:41 jnthn lizmat: Yeah, I was more trying to start a discussion/encourage a line of thought that assemble a complete list.
12:41 jnthn Though probably didn't really convey that very well :)
12:47 jdv79 why can't panda install somehting without an ecosystem json entry?
12:47 jdv79 i need a way around that if that's true
12:47 brrt joined #perl6
12:48 jdv79 oh, nm.  my fault.
12:49 azawawi im a bit confused. Why is .+? working but (.+?) is not working inside a grammar token?
12:49 azawawi m: grammar XYZ { token TOP { ^ <title> $ }; token title { '<title>' $<value>=(.+?) '</title>' }; }; say XYZ.parse( qq{<title>Login</title>} ) ?? "Matched" !! "Failed";
12:49 camelia rakudo-moar c47145: OUTPUT«Failed␤»
12:49 azawawi grammar XYZ { token TOP { ^ <title> $ }; token title { '<title>' $<value>=.+? '</title>' }; }; say XYZ.parse( qq{<title>Login</title>} ) ?? "Matched" !! "Failed";
12:49 azawawi m: grammar XYZ { token TOP { ^ <title> $ }; token title { '<title>' $<value>=.+? '</title>' }; }; say XYZ.parse( qq{<title>Login</title>} ) ?? "Matched" !! "Failed";
12:49 camelia rakudo-moar c47145: OUTPUT«Matched␤»
12:50 azawawi any reason for that behavior or am i missing something?
12:55 moritz not an explantion, but using a construct that needs backtracking to work inside a token seems dangerous
12:55 moritz (because tokens don't backtrack)
12:55 azawawi i see
12:55 azawawi so ( ... ) is not needed anyway
12:56 lizmat m: sub a(--> Int:D) { Int }; a   # jnthn, is this supposed to die or not ?
12:56 camelia rakudo-moar dafcfe: ( no output )
12:56 lizmat jnthn: perhaps a compile time NYI for --> Foo:D ?
12:57 dalek roast/pass-named-args-to-gram-rule: 4388f2d | (Stéphane Payrard)++ | S05-grammar/example.t:
12:57 dalek roast/pass-named-args-to-gram-rule: Support passing named argument when calling a grammar rule
12:57 dalek roast/pass-named-args-to-gram-rule: review: https://github.com/perl6/roast/commit/4388f2db8b
12:58 ely-se joined #perl6
13:00 jnthn lizmat: Either we should fix it or disallow it
13:00 lizmat jnthn: will ticket it, ok?
13:00 jnthn +1
13:01 solarbunny joined #perl6
13:03 iH2O joined #perl6
13:03 dalek rakudo/nom: 58c391b | lizmat++ | src/Perl6/World.nqp:
13:03 dalek rakudo/nom: Remove "my" that was hiding necessary value
13:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/58c391bf4e
13:05 lizmat .tell FROGGS hope you agree with https://github.com/rakudo/rakudo/commit/58c391bf4e
13:05 yoleaux lizmat: I'll pass your message to FROGGS.
13:07 chrstphrhrt joined #perl6
13:07 lizmat jnthn: wrt to --> Int:D, RT #126284
13:07 iH2O left #perl6
13:12 rindolf joined #perl6
13:13 cognominal I proposed a fix to pass  named arguments to rules https://github.com/rakudo/rakudo/pull/546
13:13 lizmat cognominal: waiting for Travis to finish
13:14 skids joined #perl6
13:14 lizmat cognominal: actually, Capture() might be better
13:14 lizmat so you can pass in a List as well
13:15 lizmat m: sub a(Capture() :$a = ()) { dd $a }; a( :a( 42, 66, :foo ) )   # like this
13:15 camelia rakudo-moar dafcfe: OUTPUT«Capture $a = \(42, 66, :foo)␤»
13:15 lichtkind joined #perl6
13:16 nuc__ joined #perl6
13:17 kjs_ joined #perl6
13:17 pecastro joined #perl6
13:18 gtodd azawawi: Farabi ++ :-)
13:21 laouji_ joined #perl6
13:22 azawawi gtodd: thx
13:22 * azawawi is debugging a grammar... :(
13:22 RabidGravy joined #perl6
13:23 gtodd azawawi:  plus I haven't checked it out but the electron stuff you're hacking on but it seems cool too ... a way to give perl6 apps a "canvas" wheee
13:24 azawawi gtodd: to control basically the electron chromium-based browser
13:24 azawawi gtodd: cross-browser and key bindings = hell
13:26 gosho joined #perl6
13:26 gtodd hell indeed
13:28 fling left #perl6
13:29 cognominal lizmat, yea,  I did not know that coercion was supported.
13:29 llfourn joined #perl6
13:32 Carolin joined #perl6
13:32 TimToady joined #perl6
13:32 perlgod joined #perl6
13:33 herp joined #perl6
13:33 herp Be nice to butterflies!?
13:34 herp How to take a serious programming language and turn it into a bedtime story for kids 101
13:34 herp left #perl6
13:37 ugexe joined #perl6
13:38 antiatom joined #perl6
13:39 lizmat yeah, definitely agitated  :-(
13:39 mrf zsh
13:39 mrf :(
13:39 zakharyas joined #perl6
13:39 _itz at least you didn't type csh
13:39 pink_mist this wasn't your shell terminal window :P
13:40 jdv79 currently importing the entire ecosystem into the metacpan prototype.  may take a while.
13:40 mrf You mean I can't execute arbitray code in irssi.
13:40 jdv79 i would bd nice to get some help fixing it up when we can see what's not working well
13:41 pink_mist mrf: /exec might allow you, but I don't think I'd recommend it :P
13:42 memyselfandi joined #perl6
13:42 jdv79 since i didn't try to map github users to cpan i'm just importing it all under my user for the moment.
13:43 colomon looking at http://design.perl6.org/Differences.html — shouldn’t +@array be mentioned in the section “number of elements in an array"?
13:44 colomon it’s mentioned under context but not really explained there.
13:45 daxim http://developers.slashdot.org/comme​nts.pl?sid=8130495&amp;cid=50675019   # comment poster is sad because there are no coroutines like in lua, merely a "poor approximation" and "not remotely composable to the same degree"
13:47 chrstphrhrt joined #perl6
13:48 lizmat daxim: well it is an Anonymous Coward
13:50 telex joined #perl6
13:50 daxim I don't discount the comment merely for coming from an AC.  the reasoning clearly took an effort to write, though I lack the knowledge to evaluate it
13:51 rotcpy joined #perl6
13:52 jnthn "Python and apparently Perl6/More implement recursion on the C stack" - well, if he meant Moar, then no, so they're already wrong by that point.
13:53 daxim that's the kind of reply I expected, with technical details
13:54 jnthn You can be as many callframes deep as you like when you take, it's not a local CPS transform.
13:54 jnthn Same with await.
13:54 n0tjack my favorite lang (J) still uses the C stack for recursion, and it drives me nuts
13:54 n0tjack breaks on me at least twice a year
13:56 jnthn Moar's "stack" frames actually live on the heap, and our gather/take impl is actually done in terms of delimited continuations, fwiw.
13:57 brrt oh, and to clear up any confusion on the point. MoarVM uses a run-time assembler from the LuaJIT project. it doesn't use LuaJIT proper, and none of the things that make luajit fast are taken over from luajit
13:57 brrt *just* the assembler and a runtime preprocessor :-)
13:58 pecastro joined #perl6
13:58 derp joined #perl6
14:00 dalek roast/pass-named-args-to-gram-rule: f973e6b | (Stéphane Payrard)++ | S05-grammar/example.t:
14:00 dalek roast/pass-named-args-to-gram-rule: added tests: list passed to rule as argument casted to Capture
14:00 dalek roast/pass-named-args-to-gram-rule: review: https://github.com/perl6/roast/commit/f973e6bf2b
14:00 dalek rakudo/nom: d5eeb4d | lizmat++ | src/core/Grammar.pm:
14:00 dalek rakudo/nom: Adaptation of PR #546, cognominal++
14:00 dalek rakudo/nom:
14:00 dalek rakudo/nom: Coerce to Capture, rather than just take
14:00 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d5eeb4df89
14:00 _itz on windows 10 I have  $*KERNEL.name=win32 and $KERNEL.bits=64 but a 32 bit moar.exe
14:00 lizmat argh, just missed cognominal's changes in the PR
14:01 cognominal just pushed it :)
14:01 _itz surely that should be a 32 bit rakudo on win64? :/
14:02 _itz is there something like $*VM.bits too?
14:03 lizmat _itz: perhaps somewhere in $*VM.config ?
14:04 lizmat _itz: if we can expose that reliably on diffferent OSs and backends, that would be brill
14:04 gtodd joined #perl6
14:04 cognominal lizmat++ btw
14:05 rjc joined #perl6
14:05 dalek roast: 4fa634f | lizmat++ | S02-types/WHICH.t:
14:05 dalek roast: Add X::InvalidTypeSmiley as a class
14:05 dalek roast: review: https://github.com/perl6/roast/commit/4fa634fdfe
14:06 dalek roast: dd9db49 | lizmat++ | S06-parameters/smiley.t:
14:06 dalek roast: Basic smiley type tests for parameters
14:06 dalek roast: review: https://github.com/perl6/roast/commit/dd9db49f2b
14:07 nuc__ joined #perl6
14:07 aborazmeh joined #perl6
14:07 aborazmeh joined #perl6
14:08 dalek rakudo/nom: bf25c42 | lizmat++ | t/spectest.data:
14:08 dalek rakudo/nom: Run basic smiley type tests for parameters
14:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/bf25c421fd
14:11 qwerty joined #perl6
14:13 Ulti .win 4
14:13 dalek roast: 4388f2d | (Stéphane Payrard)++ | S05-grammar/example.t:
14:13 dalek roast: Support passing named argument when calling a grammar rule
14:13 dalek roast: review: https://github.com/perl6/roast/commit/4388f2db8b
14:13 dalek roast: f973e6b | (Stéphane Payrard)++ | S05-grammar/example.t:
14:13 dalek roast: added tests: list passed to rule as argument casted to Capture
14:13 dalek roast: review: https://github.com/perl6/roast/commit/f973e6bf2b
14:13 dalek roast: f8a6acd | (Stéphane Payrard)++ | S0 (2 files):
14:13 dalek roast: Merge branch 'master' of https://github.com/perl6/roast
14:13 dalek roast: review: https://github.com/perl6/roast/commit/f8a6acd42a
14:13 lizmat cognominal++  :-)
14:14 FROGGS joined #perl6
14:15 cognominal back to the future Test::Grammar
14:16 csd_ joined #perl6
14:17 csd_ I notice a visible lag doing `perl6 -e 'print "A"'` to console... is this to be expected in the currently available release?
14:17 nuc__ joined #perl6
14:18 lizmat $ time perl6 -e 'print "A"'
14:18 lizmat A
14:18 lizmat real0m0.114s
14:18 lizmat that's about the lag we have nowadays, csd_
14:18 lizmat csd_: are you experiencing something (much) larger than that?
14:19 csd_ real 0m0.268s
14:19 csd_ meanwhile perl5 is 0.009s
14:20 cognominal comparing apple and oranges
14:20 brrt yes, perl5 is still very fast to start up :-)
14:20 lizmat csd_: try that again with  -MMoose
14:20 jnthn csd_: What's perl6 --version for you, btw?
14:21 jnthn csd_: lizmat will almost certainly be giving a number from current HEAD
14:21 csd_ 2015.03 built on MoarVM version 2015.03
14:21 lizmat csd_: upgrading to 2015.09 would improve things  :-)
14:21 csd_ -MMoose doesn't seem to affect anything
14:21 csd_ oh i guess the homebrew recipe is stale
14:22 lizmat csd_: perl6 has Moose like capabilities built in
14:22 lizmat so if you want to compare apples with other apples, you would have to include Moose (and some Moose extensions for that matter)
14:23 csd_ oh i was doing -MMoose to the perl6 query, not perl5
14:23 csd_ perl5 is similar to perl6 with that flag in it
14:24 PerlJam on my system, perl6 is about 4 times faster than perl5+Moose
14:24 n0tjack joined #perl6
14:24 jnthn We did quite a lot of work at startup in the last months, so I'd imagine 2015.03 is a good bit slower than the latest
14:25 jnthn work at improving startup time, I mean :)
14:25 csd_ what's the right way for me to install the 2015.09 release on OSX? i get confused with the perl repos vs rakudo and moarvm
14:25 PerlJam csd_: I use rakudobrew
14:25 jnthn csd_: A lot of folks use https://github.com/tadzik/rakudobrew
14:25 PerlJam csd_: (not on OSX though :)
14:27 csd_ oh thats helpful
14:27 csd_ sorry that sounded sarcastic, it wasnt
14:27 _itz oh the osname for 64bit Perl 5 is MSWin32
14:27 _itz confusing
14:30 brrt yes. yes it is
14:30 brrt actually, i think (although I don't speak for perl5 developers at all) that is because MSwin32 is the *platform name*
14:31 gfldex win32 is the windows api name
14:31 _itz ah
14:31 brrt as in, win32 is the name of the OS+APIs, regardless of whether the actual CPU architecture is 32 of 64 bit (or even x86 based)
14:31 gfldex the platformname is Windows_NT, no matter what windows older win2k you are using
14:31 lizmat m: say $*DISTRO.is-win
14:31 camelia rakudo-moar d5eeb4: OUTPUT«False␤»
14:32 lizmat should be True on any windows system
14:35 csd_ why does rakudobrew take so much longer to compile than homebrew?
14:35 csd_ maybe its a versioning thing again
14:35 laouji joined #perl6
14:36 csd_ version 2015.09-268-gbf25c42 gets my time to 'print "A"' down to 0.147s
14:37 vytas joined #perl6
14:38 _itz csd_: probably checking out from git?
14:39 [Coke] RT: 1037; nom: 8; glr: 4; lta: 88; weird: 12; xmas: 89
14:39 PerlJam does homebrew also compile nqp and moar?
14:39 csd_ not sure if they come precompiled or not
14:39 csd_ i think it just uses whats in that Rakudo-Star repo
14:39 * [Coke] is reminded to get the macport done, because that can be precompiled.
14:40 khw joined #perl6
14:40 * grondilu reads http://design.perl6.org/Differences.html and notice  =begin END which is deprecated, right?
14:43 brrt fwiw: time nqp -e 'nqp::say("OH HAI");' # real0m0.049s
14:44 brrt that's still many times slower than perl5, but in the same ballpark as python :-)
14:44 ilmari m: my $bar = 'ba bar'; say «foo $bar baz».perl
14:44 camelia rakudo-moar d5eeb4: OUTPUT«("foo", "ba", "bar", "baz")␤»
14:44 brrt (it is also, one might say, irrelevant)
14:44 ilmari oh, it splits _after_ interpolating?
14:44 Ven_ joined #perl6
14:45 brrt apparantly, yes
14:46 mfollett joined #perl6
14:46 lizmat m: my $bar = 'ba bar'; say «foo "$bar" baz».perl
14:46 camelia rakudo-moar d5eeb4: OUTPUT«("foo", "ba bar", "baz")␤»
14:48 ilmari m: my $bar = 'ba "ba" bar'; say «foo "$bar" baz».perl
14:48 camelia rakudo-moar d5eeb4: OUTPUT«("foo", "ba \"ba\" bar", "baz")␤»
14:48 Sgeo_ joined #perl6
14:48 rurban1 joined #perl6
14:49 pierrot_ joined #perl6
14:50 espadrine joined #perl6
14:50 zacts` joined #perl6
14:51 ilmari m: my $bar = 'ba "da boom" bar'; say «foo $bar baz».perl
14:51 camelia rakudo-moar d5eeb4: OUTPUT«("foo", "ba", "\"da", "boom\"", "bar", "baz")␤»
14:52 jnthn m: my $bar = 'ba "da boom" bar'; say «foo $bar baz».elems
14:52 camelia rakudo-moar d5eeb4: OUTPUT«6␤»
14:52 jnthn m: my $bar = 'ba "da boom" bar'; say «foo "$bar" baz».elems
14:52 camelia rakudo-moar d5eeb4: OUTPUT«3␤»
14:52 csd_ is there a way to make control characters work in the repl rather than printing to screen? (e.g. arrow keys and such)
14:52 jnthn m: my $bar = 'ba "da boom" bar'; say «foo bar baz».elems
14:52 camelia rakudo-moar d5eeb4: OUTPUT«3␤»
14:52 jnthn m: my $bar = 'ba "da boom" bar'; say «foo "bar baz"».elems
14:52 camelia rakudo-moar d5eeb4: OUTPUT«2␤»
14:52 jnthn The quotes consistently prevent such splitting.
14:52 _itz csd_: install rlwrap and use that is easiest
14:53 ilmari there's the Linenoise module, but it's rather limited compared to readline
14:54 csd_ thanks
14:58 Aww joined #perl6
14:59 ZoffixWork joined #perl6
14:59 ZoffixWork Is there a repo for http://learnxinyminutes.com/docs/perl6/ ?
15:00 lizmat vendethiel might know  :-)
15:00 _itz ZoffixWork: yes I think it's linked at the bottom .. maybe well hidden
15:00 ZoffixWork I'm reading it right now (and I don't know Perl 6 yet), so I have some feedback for confusing bits.
15:00 llfourn joined #perl6
15:00 ZoffixWork Oh. right >_<
15:00 ZoffixWork _itz++ # thanks
15:01 chrstphrhrt joined #perl6
15:02 nine .tell awawai I used to use Selenium but it's performance and stability were too abysmal, especially when trying to run test files in parallel. So I wrote a drop in replacement: https://metacpan.org/pod/WWW::WebKit and https://metacpan.org/pod/Test::WWW::WebKit
15:02 yoleaux nine: I'll pass your message to awawai.
15:02 raiph joined #perl6
15:03 dalek faq: 8a5705b | (Nova Patch)++ | answers.md:
15:03 dalek faq: clarify “Perl 5” instead of just “Perl” #wantarray
15:03 dalek faq: review: https://github.com/perl6/faq/commit/8a5705b592
15:07 dalek roast: 7dbd90f | lizmat++ | S06-parameters/smiley.t:
15:07 dalek roast: Add some more smiley type tests for parameters
15:07 dalek roast: review: https://github.com/perl6/roast/commit/7dbd90f339
15:07 dalek rakudo/nom: 2886c90 | lizmat++ | src/Perl6/World.nqp:
15:07 dalek rakudo/nom: Refine parameters/variables/invocant error checking
15:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2886c9009e
15:11 jdv79 nine:  but webkit isnt everything
15:12 masak literally.
15:12 jnthn .oO( I heard webkit is why Chrome is on the blink... )
15:13 masak TIL http://idioms.thefreedictionary.com/on+the+blink
15:13 jkva joined #perl6
15:15 laouji joined #perl6
15:17 mr_ron joined #perl6
15:18 mr_ron I am planning to make the interface of URI::Escape and URI available as kebab case wherever they use snake case.  Any objection or comment?
15:25 Jorge_ joined #perl6
15:26 pmurias joined #perl6
15:26 colomon someone should respond to this: https://news.ycombinator.com/item?id=10346168
15:26 * colomon has to run to noms and then bell rehearsal
15:32 dalek rakudo/nom: 82deb78 | lizmat++ | src/Perl6/Grammar.nqp:
15:32 dalek rakudo/nom: Allow for Int:_
15:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/82deb78a53
15:32 literal https://github.com/perl6/f​aq/blob/master/answers.md
15:32 dalek roast: e77c870 | lizmat++ | S06-parameters/smiley.t:
15:32 dalek roast: Unfudge now passing tests
15:32 dalek roast: review: https://github.com/perl6/roast/commit/e77c8708f5
15:32 chenryn__ joined #perl6
15:32 literal ^-- "Why do I need a backslash (unspace) to split method calls across multiple lines?" isn't this not true anymore?
15:33 lizmat cycling&
15:33 literal I recall seeing a commit from TimToady recently that addressed this
15:33 lizmat literal: it is in HEAD, but not the latest release ?
15:33 lizmat really afk&
15:33 literal I see
15:34 Marnen joined #perl6
15:36 jkva joined #perl6
15:42 antiatom joined #perl6
15:47 [Tux] http://blog.geekuni.com/201​5/09/state-of-the-geek.html <= perl6 does well :)
15:48 masak not to mention Perl :)
15:49 ilmari m: class { has Int:D $.foo }.new
15:49 camelia rakudo-moar 2886c9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/DaqrpaAyo1␤Variable definition of type Int:D requires an initializer␤at /tmp/DaqrpaAyo1:1␤------> 3class { has Int:D $.foo 7⏏5}.new␤»
15:49 ilmari m: class { has Int:D $.foo }.new(foo => 42)
15:49 camelia rakudo-moar 2886c9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/c5BY2KlmuC␤Variable definition of type Int:D requires an initializer␤at /tmp/c5BY2KlmuC:1␤------> 3class { has Int:D $.foo 7⏏5}.new(foo => 42)␤»
15:50 sitaram_ joined #perl6
15:50 ilmari m: class { has Int:D $.foo = Int }.new(foo => 42)
15:50 camelia rakudo-moar 2886c9: ( no output )
15:50 masak [Tux]: interesting -- so Perl 6 comes *2nd* (after Perl) on that list of what people would like to write more.
15:50 ilmari m: say  class { has Int:D $.foo = Int }.new(foo => 42)
15:50 camelia rakudo-moar 2886c9: OUTPUT«<anon>.new(foo => 42)␤»
15:50 ilmari m: say  class { has Int:D $.foo = Int }.new()
15:50 camelia rakudo-moar 2886c9: OUTPUT«Type check failed in assignment to $!foo; expected Int:D but got Int␤  in block <unit> at /tmp/zVFx9J_tsu:1␤␤»
15:50 [Tux] masak indeed, and PHP is the exception in many users but nobody wants to write more
15:50 sitaram_ hello; try as I might, I am unable to find the eqvt of: @ARGV = glob("dir"); while (<>) { ...
15:51 * [Coke] reminds folks that camelia experiments can also happen in private.
15:51 literal important bit being "[...] at Geekuni we focus on all things Perl and the sample reflects this with Perl 5 being by far the most popular language [...]"
15:51 sitaram_ I know the glob(...) becomes dir(...); the rest... I'm lost
15:51 ilmari [Coke]: I had been experimenting in my own repl, but behaviour changed since then
15:51 [Tux] and perl6 is *3rd* in annual growth
15:51 [Coke] ilmari: /msg camelia m: stuff #works.
15:51 [Coke] if you intend to share with channel, that's fine.
15:51 ilmari [Coke]: I wanted to show the to-me unexpected behaviour
15:52 [Coke] if not, helps keep backlog uncluttered.
15:52 [Tux] The languages with highest predicted growth rates among the survey are: F#, D, Perl 6 and Haskell.
15:52 [Coke] ok. with 6 sends there, can you summarize which is the one we're looking at?
15:52 [Tux] http://1.bp.blogspot.com/-I_sOsQl4FIc/Vgu5sRu2qtI​/AAAAAAAAB94/lEeNZCjGeZs/s1600/predicted_use.png
15:52 ilmari the last two
15:52 ilmari m: class { has Int:D $.foo }.new(foo => 42) # expect to work
15:52 camelia rakudo-moar 2886c9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sjWAEBTn0Z␤Variable definition of type Int:D requires an initializer␤at /tmp/sjWAEBTn0Z:1␤------> 3class { has Int:D $.foo 7⏏5}.new(foo => 42) # expect to work␤»
15:53 jnthn sitaram_: @*ARGS = dir('src/core'); for lines() { }
15:53 ilmari m: say  class { has Int:D $.foo = Int }.new(foo => 42) # it requires an initialiser, but allows one that doesn't pass the type constraint?!
15:53 camelia rakudo-moar 2886c9: OUTPUT«<anon>.new(foo => 42)␤»
15:53 jnthn sitaram_: uh, replace src/core with dir :)
15:53 [Coke] ilmari: you're giving it a runtime value for a compile time constraint, it reads like.
15:53 sitaram_ jnthn: thanks; will try
15:53 jnthn ilmari: It does disallow actually assinging it
15:53 tokuhirom joined #perl6
15:54 ilmari jnthn: yes, that's as I expected
15:54 jnthn m: say  class { has Int:D $.foo = Int }.new # an error
15:54 camelia rakudo-moar 82deb7: OUTPUT«Type check failed in assignment to $!foo; expected Int:D but got Int␤  in block <unit> at /tmp/CzuGohIGhI:1␤␤»
15:54 ilmari jnthn: I just thingk the " = Int" part is redundant
15:54 jnthn The default value is ignored if one is provided during intialization
15:54 masak sitaram_: something like `for dir("dir") -> $file { for $file.lines { ... } }`
15:55 jnthn ilmari: The idea would be more to provide a sensible default value
15:55 absence joined #perl6
15:55 ilmari it makes sense for normal variables, but not for attributes
15:55 ilmari jnthn: required attributes with defaults are pretty common
15:55 n0xff joined #perl6
15:55 ilmari with *no* defaults
15:56 jnthn m: say  class { has Int:D $.foo is required }.new
15:56 camelia rakudo-moar 82deb7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/2SE9xieRFS␤Variable definition of type Int:D requires an initializer␤at /tmp/2SE9xieRFS:1␤------> 3ay  class { has Int:D $.foo is required 7⏏5}.new␤    expecting any of:␤        constraint␤»
15:56 jnthn Maybe we could relax it in that case.
15:56 pyrimidine joined #perl6
15:56 sitaram_ ARGS!  I've been trying ARGV.  There's only thing to say at this point: "aaaaargh!"
15:56 pink_mist lol
15:56 pink_mist sitaram++
15:56 sitaram_ jnthn: thanks again.  I was just being blind
15:56 ilmari m: class { has Int $.foo is required }.new(foo => Int).say
15:56 camelia rakudo-moar 82deb7: OUTPUT«<anon>.new(foo => Int)␤»
15:57 ilmari jnthn: :D without an initialiser could imply "is required"
15:57 TimToady m: say @*ARGV
15:57 camelia rakudo-moar 82deb7: OUTPUT«Dynamic variable @*ARGV not found␤  in block <unit> at /tmp/ydc7_fVahe:1␤␤Actually thrown at:␤  in block <unit> at /tmp/ydc7_fVahe:1␤␤»
15:57 jnthn ilmari: That'd be another way to do it
15:57 TimToady this should maybe do Levenshtein?
15:58 absence there's been several stories about a 1.0 development release in the news lately, both announced by larry himself, and earlier rumors about release on his birthday. but where is it? there's no mention of it on perl6.org, and if i follow the "download rakudo" button, the latest build seems to be rakudo-star-2015.06-x86_64 (JIT).msi from july
15:58 jnthn TimToady: Where, given it's a dynamic, ooc? In GLOBAL:: and PROCESS::?
15:58 chenryn__ joined #perl6
15:58 TimToady anywhere in its cache?
15:58 coetry joined #perl6
15:58 PerlJam TimToady: would you also do Levenshtein if it were @ARGV instead?
15:58 jnthn Hmm :)
15:58 TimToady which we could save about 2.5% on by revising
15:59 TimToady that is, last I measured a couple weeks ago, we had 2.5% overhead on dynvar lookup in compiling setting
15:59 nine jdv79: no, Test::WWW::WebKit of course doesn't help with cross browser testing. However it's great to test the JS parts of your application on a very standards conformant engine. We've found that if you don't do anything crazy, it's quite sufficient.
16:00 TimToady and a better cache scheme would reduce that to near 0
16:00 jnthn absence: There was a 2015.09 release; the MSI is typically a bit behind the source releases
16:00 TimToady absence: the headlines on those stories are less accurate than the stories themselves, which indicate a Christmas release
16:00 PerlJam absence: you can always built it yourself or use rakudobrew
16:01 TimToady we just went into beta state on my birthday, and the first beta will come out in a week or so as a real compiler release
16:01 * jnthn heard someone mention working on the MSI a bit earlier on today, so mebbe it'll be there within the next day or two.
16:01 TimToady the point, however, is that the current HEAD is beta, and being treated like a beta
16:01 pyrimidine joined #perl6
16:02 b2gills Shouldn't ∘ be right associative?
16:02 TimToady I don't consider the September release to be quite beta
16:02 TimToady b2gills: doesn't matter
16:02 TimToady and pragmatically, left allows [\o] &func xx * to work
16:03 TimToady we had it right associative, and that was a problem
16:03 TimToady m: say [\**] 1..*
16:03 camelia rakudo-moar 82deb7: OUTPUT«Cannot reverse a lazy list␤  in block <unit> at /tmp/SjPDI24O5S:1␤␤Actually thrown at:␤  in any  at gen/moar/m-Metamodel.nqp:2860␤  in block <unit> at /tmp/SjPDI24O5S:1␤␤»
16:03 * b2gills I was busy since before glr landed
16:04 b2gills I was trying to figure out what the proto sub definition would look like
16:04 b2gills proto sub infix:<∘> ( &?, &? ) is equiv(&[~]) is assoc<left> {*} # is what I have so far
16:05 kjs_ joined #perl6
16:05 b2gills Also that doesn't work if I swap `is assoc` and `is equiv`
16:05 * PerlJam wonders what function composition means when the functions are optional ...
16:05 laouji joined #perl6
16:06 TimToady b2gills: you don't need the assoc except to override the default for the precedence level
16:07 donaldh joined #perl6
16:07 TimToady and I see that I neglected to add a proto in the setting...
16:07 TimToady but since it's hardwired in the parser anyway, it just uses the <O %concatenation> thing there
16:08 TimToady so a proto doesn't really need the equiv
16:08 grondilu joined #perl6
16:08 jkva joined #perl6
16:09 TimToady so it's just proto sub infix:<∘> (|) {*}
16:09 * [Coke] claimed the next compiler release, btw. do we want any special notes on that? I was going to throw in something.
16:09 virtualsue joined #perl6
16:09 b2gills i assume it would if it wasn't built in though
16:09 absence TimToady: ah cool, the "in a week" part was missing from the story about the talk yesterday
16:10 PerlJam [Coke]: You mean other than reiterate TimToady's "beta" message?
16:12 chenryn__ joined #perl6
16:13 dalek rakudo/nom: 0cee783 | TimToady++ | src/core/operators.pm:
16:13 dalek rakudo/nom: add missing proto for function composition
16:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0cee783632
16:13 [Coke] More like specific details on the beta message.
16:13 TimToady we only have general details
16:13 [Coke] "This is the perl 6.0 beta, just a compiler, look for an msi and rakudo star soon..."
16:13 b2gills m: say &[o].count
16:13 camelia rakudo-moar 82deb7: OUTPUT«Inf␤»
16:13 ^elyse^ joined #perl6
16:14 bpmedley joined #perl6
16:16 dalek doc: 3f016cd | (David H. Adler)++ | lib/Type/Date.pod:
16:16 dalek doc: Added usage statements to Date.pod
16:16 dalek doc: review: https://github.com/perl6/doc/commit/3f016cd385
16:16 dalek doc: b264497 | (David H. Adler)++ | lib/Type/DateTime.pod:
16:16 dalek doc: Added usage statements to DateTime.pod
16:16 dalek doc: review: https://github.com/perl6/doc/commit/b264497676
16:16 dalek doc: 6bff923 | (David H. Adler)++ | lib/Type/Dateish.pod:
16:16 dalek doc: Added usage statements to Dateish.pod
16:16 dalek doc: review: https://github.com/perl6/doc/commit/6bff92355e
16:16 dalek doc: a16df94 | (David H. Adler)++ | lib/Type/Date (3 files):
16:16 dalek doc: Merge branch 'usage_statements'
16:16 dalek doc:
16:16 dalek doc: Usage statements for Types beginning with "D"
16:16 dalek doc: review: https://github.com/perl6/doc/commit/a16df94613
16:16 dalek doc: 616e382 | (David H. Adler)++ | lib/Type/Cool.pod:
16:16 dalek doc: Merge branch 'master' of https://github.com/perl6/doc
16:16 dalek doc: review: https://github.com/perl6/doc/commit/616e38212c
16:16 rindolf joined #perl6
16:16 dalek doc/usage_statements: b264497 | (David H. Adler)++ | lib/Type/DateTime.pod:
16:16 dalek doc/usage_statements: Added usage statements to DateTime.pod
16:16 dalek doc/usage_statements: review: https://github.com/perl6/doc/commit/b264497676
16:16 dalek doc/usage_statements: 6bff923 | (David H. Adler)++ | lib/Type/Dateish.pod:
16:16 dalek doc/usage_statements: Added usage statements to Dateish.pod
16:16 dalek doc/usage_statements: review: https://github.com/perl6/doc/commit/6bff92355e
16:18 TimToady m: say &[but].count
16:18 camelia rakudo-moar 82deb7: OUTPUT«Inf␤»
16:19 TimToady jnthn: how much overhead are we taking on our binary operators that do ($?, $?) instead of (|)?
16:19 TimToady (in the proto)
16:19 jnthn Umm...I'd have to go look
16:20 TimToady might want an 'is count(2)' if we want to just lie about a |
16:20 jnthn I *think* we ended up with hitting the multi-cache in those cases though
16:20 jnthn Because you can only get an entry in the multi cache if you went through the proto's check at some point
16:20 jnthn So it's a one-off overhead per type tuple
16:21 jnthn If it works the way I remember :)
16:21 patrickz joined #perl6
16:21 laouji joined #perl6
16:21 quuxman joined #perl6
16:22 TimToady well, obligate binaries should probably not use | then
16:22 jnthn Do you have some data suggesting we're doing badly in that case, btw?
16:22 quuxman Hello. I'm trying to get panda to work, and on both Mac OS and Ubuntu 14.04 I get the error "Undeclared routine: unit used at line 3. Did you mean '&uniq'?"
16:22 moritz quuxman: then your rakudo is too old
16:22 TimToady no, other side of it, &[but] and such are reporting .count of Inf
16:22 quuxman moritz: I installed both with the package manager. Guess I have to build from source?
16:23 TimToady only list associatives should be reporting Inf
16:23 jnthn Aha
16:23 jnthn I'll check for you in just a moment (just finishing up a mail)
16:24 donaldh joined #perl6
16:24 moritz quuxman: yes, that would preferable
16:24 TimToady m: say &[+].arity
16:24 camelia rakudo-moar 82deb7: OUTPUT«0␤»
16:25 TimToady and our .arity is turning out to be pretty useless
16:26 TimToady we probably shoulda just had .arity return a range, and .count is then .arity.max
16:27 ZoffixWork joined #perl6
16:28 nbiiebbiih joined #perl6
16:28 jnthn .arity is how many things *must* you pass, .count is how many things can you pass
16:29 TimToady well, sure, but that's not the common meaning of arity
16:29 b2gills I was just thinking that if you forced to the count to 2 in binary operators it could prevent the ability to optimize `[+] 1,2,3` with `sub infix:<+> (@_) { .... }` or so
16:29 bhm joined #perl6
16:29 dalek doc/usage_statements: 7e1a1a8 | (David H. Adler)++ | lib/Type/EnumMap.pod:
16:29 dalek doc/usage_statements: Added usage statements to EnumMap.pod
16:29 dalek doc/usage_statements: review: https://github.com/perl6/doc/commit/7e1a1a8b32
16:29 dalek doc/usage_statements: f3071d9 | (David H. Adler)++ | lib/Type/ (2 files):
16:29 dalek doc/usage_statements: Added usage statements for Exception.pod and Failure.pod
16:29 dalek doc/usage_statements: review: https://github.com/perl6/doc/commit/f3071d9045
16:29 dalek doc/usage_statements: b94de0c | (David H. Adler)++ | lib/Type/Grammar.pod:
16:29 dalek doc/usage_statements: Added usage statements for Grammar.pod
16:29 dalek doc/usage_statements: review: https://github.com/perl6/doc/commit/b94de0c2a2
16:30 TimToady m: say &[+].count
16:30 camelia rakudo-moar 82deb7: OUTPUT«2␤»
16:31 dalek doc: 7e1a1a8 | (David H. Adler)++ | lib/Type/EnumMap.pod:
16:31 dalek doc: Added usage statements to EnumMap.pod
16:31 dalek doc: review: https://github.com/perl6/doc/commit/7e1a1a8b32
16:31 dalek doc: f3071d9 | (David H. Adler)++ | lib/Type/ (2 files):
16:31 dalek doc: Added usage statements for Exception.pod and Failure.pod
16:31 dalek doc: review: https://github.com/perl6/doc/commit/f3071d9045
16:31 dalek doc: b94de0c | (David H. Adler)++ | lib/Type/Grammar.pod:
16:31 dalek doc: Added usage statements for Grammar.pod
16:31 dalek doc: review: https://github.com/perl6/doc/commit/b94de0c2a2
16:31 dalek doc: e6e5f2a | (David H. Adler)++ | lib/Type/ (4 files):
16:31 dalek doc: Merge branch 'usage_statements'
16:31 dalek doc:
16:31 dalek doc: Usage statements for Types E-G
16:31 dalek doc: review: https://github.com/perl6/doc/commit/e6e5f2ab1e
16:33 TimToady b2gills: probably makes more sense to do optimized definition of prefix:<[+]> and such
16:33 quuxman how do I move something installed with rakudobrew?
16:35 liztormato joined #perl6
16:35 TimToady m: sub prefix:<[+]> (+args) { say "HERE" }; say [+] 1,2,3
16:35 camelia rakudo-moar 82deb7: OUTPUT«HERE␤True23␤»
16:35 cognominal joined #perl6
16:36 jnthn drop that prec!
16:36 liztormato ilmari: could you rakudobug the attribute :D issue?
16:37 TimToady m: sub prefix:<[+]> (+args) is equiv(???) { say "HERE" }; say [+] 1,2,3
16:37 camelia rakudo-moar 82deb7: OUTPUT«Stub code executed  in code  at /tmp/BJZZb6YAWo:1␤5===SORRY!5=== Error while compiling /tmp/BJZZb6YAWo␤Can't use unknown trait 'is equiv' in a sub+{precedence} declaration.␤at /tmp/BJZZb6YAWo:1␤    expecting any of:␤        rw raw hidden-from…»
16:37 TimToady what do I put for ??? there?
16:37 TimToady there's no actual list prefix operator I can equiv to
16:38 TimToady m: sub prefix:<[+]> (+args) is equiv(&say) { say "HERE" }; say [+] 1,2,3
16:38 camelia rakudo-moar 82deb7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/R00EA622_Y␤Routine given to equiv does not appear to be an operator␤at /tmp/R00EA622_Y:1␤»
16:40 jnthn m: sub prefix:<[+]> (+args) is looser(&infix:<,>) { say "HERE" }; say [+] 1,2,3 # mebbe
16:40 camelia rakudo-moar 82deb7: OUTPUT«HERE␤True␤»
16:40 TimToady well, we should have a target we can equiv to somehow
16:41 pmurias jnthn: do you know that MAIN gets called differently when a .nqp file is called directly with nqp-m or precompiled?
16:41 pmurias jnthn: https://paste.debian.net/314832
16:43 jnthn pmurias: yes
16:43 timotimo quuxman: we don't really have a tool for that yet
16:43 jnthn pmurias: Given we don't yet pre-comp scripts in Rakudo, I've just not cared about it enough to fix it yet. If you wish to, feel free :)
16:44 quuxman why not just clone the repository and build it? What's the point of rakudobrew?
16:44 timotimo quuxman: i think rakudo and nqp compile a few paths into "themselves" regarding the installation
16:44 timotimo rakudobrew does exactly that
16:44 csd_ how would i search for documentation on $^a, $^b, etc ?
16:44 timotimo but it also handles changing versions and such
16:45 timotimo csd_: the first try was in language/functions, but that only mentions these; there's no explanation
16:46 pmurias jnthn: if fixing this will help Rakudo I can do it
16:46 moritz csd_: there has long been an idea floating around about a search for syntactic features; so far, nobody has done it
16:46 liztormato csd_: perhaps 'automatic signature' ?
16:46 TimToady csd_: they're called placeholders, but so far only docced in the design docs
16:46 timotimo m: sub foo($a) { $^a }
16:46 camelia rakudo-moar 82deb7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/b8hM3YgWZ9␤Redeclaration of symbol $^a as a placeholder parameter␤at /tmp/b8hM3YgWZ9:1␤------> 3sub foo($a) { $^a7⏏5 }␤»
16:46 timotimo ^- here's the name you're looking for, as TimToady just told you, too
16:47 csd_ googling about perl's syntax seems challenging
16:47 TimToady ayup :)
16:47 csd_ thx TimToady
16:48 csd_ googling "dollar carat" got me close, but it was perl5 related :-/
16:48 jnthn pmurias: I don't know how many more blockers we'll have for script pre-comp, but it'll help by removing the one I know about :)
16:48 csd_ i'm sure without customized search results it would return jewelry links ;)
16:48 TimToady S06:Placeholder_variables
16:49 timotimo i always thought it's spelled "caret"
16:49 csd_ you're probably right
16:49 * TimToady thought it was spelled "uparrow" :)
16:49 skids .oO(a POD search-engine-optimization directive)
16:49 timotimo i was taught by a comp-sci teacher in school to pronounce it "worauf er zeigt"
16:50 timotimo loosely "what it points at"
16:50 timotimo (yeah, that's pascal brane-damage)
16:51 TimToady someone really needs to write a snippet explainer
16:52 pink_mist $snipped.EXPLAIN
16:52 pink_mist *$snippet
16:52 TimToady EVAL($snippet,:explain)
16:53 El_Che spinning a win7x86 vm to have a look at rakudo on cygwin
16:53 quuxman I get the same error, "Undeclared routine: unit used at line 3. Did you mean 'uniq'?" from `perl6 bootstrap.pl` in a just cloned panda and a newly built perl6 from current github version
16:54 timotimo EXPLAIN EVAL 'say $what'
16:54 quuxman Error while compiling $HOME/src/panda/ext/File__Find/lib/File/Find.pm
16:54 sQuEE joined #perl6
16:54 pecastro joined #perl6
16:54 jnthn El_Che: Last I knew, the blocker was that libuv didn't build on Cygwin, which we depend on
16:55 moritz quuxman: what does perl6 --version say?
16:55 timotimo quuxman: i bet it's a problem with your $PATH
16:55 quuxman oh I failed to uninstall the package manager version
16:55 timotimo ... yeah i was going to suggest that
16:55 quuxman yep
16:55 n0tjack joined #perl6
16:56 El_Che john: I tried at and the only error I got was that the install dir wasn't created by Configure.pl
16:56 dalek nqp: 9e6e486 | (Pawel Murias)++ | src/vm/js/ (2 files):
16:56 dalek nqp: [js] implement sub MAIN(*@ARGS) {...}
16:56 dalek nqp: review: https://github.com/perl6/nqp/commit/9e6e486efc
16:56 dalek nqp: 23b8ab5 | (Pawel Murias)++ | src/vm/js/HLL/Backend.nqp:
16:56 dalek nqp: [js] make nqp-js pass command line args when invoking node to execute the js
16:56 dalek nqp: review: https://github.com/perl6/nqp/commit/23b8ab5e7f
16:58 IJ27 joined #perl6
16:59 btyler without opening a ginormous can of worms, what stands in the way of 'use Perl6::Grammar' in p6 code?
17:00 quuxman how do I get a REPL where I can enter multiple lines?
17:00 travis-ci joined #perl6
17:00 travis-ci NQP build passed. Pawel Murias '[js] make nqp-js pass command line args when invoking node to execute the js'
17:00 travis-ci https://travis-ci.org/perl6/nqp/builds/84137499 https://github.com/perl6/nqp/com​pare/3b57c8d7121d...23b8ab5e7fde
17:00 travis-ci left #perl6
17:00 btyler (saying "it's hard, someone smart needs to do it" is an answer I'm perfectly happy with, just wondering)
17:01 moritz btyler: you cannot compile Perl 6 with a mere grammar, you need to keep a symbol table / lexpads and all that arround
17:01 moritz btyler: the use (with a :from<NQP>) itself might even be implemented
17:02 rurban joined #perl6
17:02 moritz m: use Perl6::Grammar:from<NQP>; say 'alive';
17:02 camelia rakudo-moar 0cee78: OUTPUT«alive␤»
17:02 El_Che jnthn: samn "no install dir" error: http://paste.ubuntu.com/12706202/ :(
17:03 jnthn TimToady: Answer: in "proto x($, $?) { * }; multi x($) { }; x(1) for ^1000" we call the proto for real only once
17:03 btyler moritz: I was just hoping to some parsing for kicks. thank you!
17:03 quuxman or at least load a file from the existing REPL?
17:03 TimToady jnthn: okay, I'll change | to $? $? as appropriate
17:03 jnthn TimToady: OK.
17:04 firstdayonthejob joined #perl6
17:04 stephen144 joined #perl6
17:04 timotimo quuxman: you'll want to install "Linenoise" probably
17:05 timotimo or perhaps it'll be enough to put a \ at the end of your line
17:05 timotimo (yeah, not so awesome, sorry)
17:06 jnthn Dinner; will prolly hack more on the case folding stuffs later on today :)
17:06 quuxman timotimo: already installed Linenoise. How do I use it?
17:06 timotimo it'll be used automatically
17:06 quuxman timotimo: I wanted to be able to paste subroutines into the REPL
17:07 timotimo oh ... yeah ... :\
17:07 timotimo without some backslashes, probably not going to happen ;(
17:07 timotimo we really, really, really want that Jupyter integration
17:07 timotimo anyway, AFK for a bit
17:08 rindolf Hi all. sup?
17:08 coetry joined #perl6
17:08 steve-robot joined #perl6
17:08 nine rindolf: lots of new faces. So someone must have been talking about Fight^WPerl 6.
17:09 * nine looks at TimToady
17:09 rindolf nine: Fight?
17:09 rindolf nine: ah, Fight Club.
17:09 liztormato_ joined #perl6
17:10 TimToady jnthn: is proto (Mu $?, Mu $?) doing spurious itemization?
17:11 rindolf nine: http://www.shlomifish.org/humour/fortunes/s​how.cgi?id=sharp-ruby-lang-about-sharp-ruby
17:11 TimToady jnthn: and if so, do we need to allow something like (Mu \?, Mu \?)
17:12 rindolf «The zeroth rule of Fight Club is Chuck Norris can talk about Fight Club»
17:12 TimToady m: sub foo(Mu \?) { 42 }
17:12 camelia rakudo-moar 0cee78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/aR1j0R9iq0␤Malformed parameter␤at /tmp/aR1j0R9iq0:1␤------> 3sub foo(Mu \7⏏5?) { 42 }␤    expecting any of:␤        constraint␤»
17:13 liztormato_ joined #perl6
17:13 TimToady m: say &[~~].count
17:13 camelia rakudo-moar 0cee78: OUTPUT«Inf␤»
17:13 TimToady looking at that one right now
17:14 TimToady actually, that one is strict binary, so I've just made the proto (Mu \topic, Mu \matcher)
17:15 masak wow, "Total of 292 nicks". when did this happen? :)
17:16 masak I always had the impression we were hovering around ~200 all the time.
17:16 _itz "September" :)
17:17 _itz ^ Eternal
17:18 masak _itz: :)
17:18 moritz remember, remember, the 2015 September
17:18 pyrimidine joined #perl6
17:19 masak ...the wiki engine November
17:21 laouji joined #perl6
17:23 FROGGS joined #perl6
17:23 FROGGS o/
17:23 yoleaux 13:05Z <lizmat> FROGGS: hope you agree with https://github.com/rakudo/rakudo/commit/58c391bf4e
17:24 FROGGS lizmat++ # good catch
17:25 * masak wonders if some shadowing 'my' things like that are catchable
17:25 masak like, I don't want the compiler to warn about it always, but I might want it when the shadowing makes either or both variables pointless
17:25 El_Che jnthn: this is the "official" rason why rakudo does not build on cygwin: https://cygwin.com/cygwin-api/std-notimpl.html . pthread_barrier is needed by uv. Should this be documented somewhere on the website?
17:26 liztormato masak: only if it isn't used within that same scope
17:26 FROGGS masak: warnings about unused variables might help already
17:27 ^elyse^ joined #perl6
17:28 FROGGS m: sub foo(:D $a) { $a }; foo 42
17:28 camelia rakudo-moar 0cee78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0jonO0MCQo␤Missing block␤at /tmp/0jonO0MCQo:1␤------> 3sub foo(:7⏏5D $a) { $a }; foo 42␤»
17:29 FROGGS m: sub foo(Int:_ $a) { $a }; foo 42
17:29 diana_olhovik_ joined #perl6
17:29 camelia rakudo-moar 0cee78: ( no output )
17:29 absence left #perl6
17:29 FROGGS m: my Int:_ $a
17:29 camelia rakudo-moar 0cee78: ( no output )
17:29 FROGGS m: my Int:x $a
17:29 camelia rakudo-moar 0cee78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/QIfPOimopQ␤Invalid type smiley 'x' used in type name␤at /tmp/QIfPOimopQ:1␤------> 3my Int:x7⏏5 $a␤»
17:30 masak FROGGS: Niecza has warnings about unused variables. they're extremely annoying.
17:30 masak FROGGS: there are so many situations where I declare a variable and then not use it.
17:30 FROGGS masak: yes
17:30 liztormato masak: to what ent?
17:30 FROGGS maybe we want a pedantic mode in a distant future
17:30 liztormato End
17:31 Xor_ joined #perl6
17:31 masak liztormato: I'm not sure I can make a long list on the spot, even though I feel there's half a dozen reasons.
17:32 masak liztormato: one is that named variables are better documentation than anonymous variables, and it's not the compiler's job to force me to make named variables anonymous.
17:32 liztormato But what made niecza's warnings so annoying?
17:32 masak liztormato: another is that sometimes I have multis, and in some of the candidates I don't end up using a parameter, even though I still declared it for consistency.
17:32 n0tjack is it necessary or recommended to use strict; use warnings; at the top of p6 scripts?
17:32 liztormato Ok, so parameters should be exempt?
17:32 masak liztormato: the fact that I felt I was right and the compiler should stay out of my business made warnings so annoying.
17:33 FROGGS liztormato: think of multi subs where dont use all params in all candidates, it will warn about the unused
17:33 FROGGS where you*
17:33 masak liztormato: to be honest, I'd prefer if there weren't warnings for correct things such as unused variables.
17:33 paulmr joined #perl6
17:33 masak liztormato: they annoy the heck out of me when I'm compiling partial programs.
17:33 n0tjack (most google hits for this question are talking about perl5 even if you specifically use +perl6 in the query)
17:34 liztormato Well. You started this discussion
17:34 moritz n0tjack: no need for that
17:34 masak n0tjack: no -- both "strict" and "warnings" are built in.
17:34 moritz m: use strict; # I think this will even complain
17:34 camelia rakudo-moar 0cee78: ( no output )
17:34 moritz ah no
17:34 moritz m: use warnings; # this one will
17:34 camelia rakudo-moar 0cee78: OUTPUT«===SORRY!===␤Could not find warnings in any of:␤  file#/home/camelia/.perl6/​2015.09-271-g0cee783/lib␤  inst#/home/camelia/.perl6/2015.09-271-g0cee783␤  file#/home/camelia/rakudo-inst-2/share/perl6/lib␤  file#/home/camelia/rakudo-inst-2/share/perl…»
17:34 n0tjack thanks guys
17:34 TimToady m: sub foo(\a?) { say a }; foo 42
17:34 camelia rakudo-moar 0cee78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/aiXL_y_EXE␤Malformed parameter␤at /tmp/aiXL_y_EXE:1␤------> 3sub foo(\a7⏏5?) { say a }; foo 42␤    expecting any of:␤        constraint␤»
17:34 TimToady huh
17:34 masak liztormato: I'm sorry if I was unclear. I was talking about a very narrow special case related to your commit to nine.
17:35 masak liztormato: where a variable accidentally shadows another.
17:35 TimToady jnthn: is there a fundamental reason \a can't be optional?
17:35 FROGGS TimToady: yes, somehow these dont like to be optional
17:35 FROGGS I also hit it the other day
17:35 liztormato TimToady: because they're aliases?
17:36 TimToady well, I guess I'll use $? for now, on the assumption that even if the proto does a temporary itemization, it's harmless
17:36 liztormato If the parameter isn't specified, what should it alias to?
17:36 FROGGS liztormato++ # for Type:_
17:38 [Coke] (cygwin, website) maybe under a FAQ of "why doesn't rakudo build on..."
17:39 TimToady m: sub foo(\a = 42) { say a }; foo
17:39 camelia rakudo-moar 0cee78: OUTPUT«42␤»
17:39 [Coke] and or "when will you target..."
17:39 TimToady liztormato: if defaults work, then so shoule ?
17:39 TimToady *ld
17:39 liztormato And default to Any ?
17:43 chrstphrhrt joined #perl6
17:44 moritz star: say 'version?'
17:44 camelia star-m 2015.03: OUTPUT«version?␤»
17:44 nine What do I have to do to precompile a module? Tried perl6 --target=moar --output=Perl5.pm.moarvm TestModule.pm
17:44 nine But that gives me: ===SORRY!=== cannot stringify this
17:44 FROGGS nine: target=mbc
17:45 [Coke] ... even though we don't call anything mbc anywhere else. :)
17:45 liztormato CompUnit.precomp
17:46 liztormato nine: ^^^
17:46 liztormato Cycling again &
17:47 n0tjack breaks on me at least twice a year
17:50 steve-robot beginner question: my @arr = prompt "Enter 1 2 3 "; .WHAT tells me, that that's an array. @arr2 = @arr.map: {$_ + $anydate}; leads to "Cannot call Numeric(Date: ); none of these signatures match: (Mu:U \v: *%_)" mapping over (1,2,3) works as expected. What am I missing?
17:50 Kogurr joined #perl6
17:51 b2gills I found an error while going through the gitlog https://github.com/rakudo/rakudo/commit/​e5612aac40d5767efb309dd60c4b2a7ec8befaa4
17:52 timotimo ah, good catch
17:52 moritz steve-robot: you are trying to add a Date to a string, probably
17:52 [Coke] steve-robot:  that's literally all of the code? what are you entering at the prompt?
17:52 timotimo so we could use "without" instead of "unless" there?
17:52 timotimo hm
17:52 timotimo well, that binds a $_
17:52 timotimo so could be more costly
17:53 timotimo so just .DEFINITE?
17:53 timotimo or .defined? hmm.
17:53 timotimo no, wait
17:53 timotimo isn't that there so that if you put a 0 in there, or a False, it'll delete the key?
17:53 b2gills which makes sense for bag and mix not set
17:54 steve-robot [Coke]: that's the part that breaks, I am entering 1 2 3
17:54 b2gills m: my $a = SetHash.new; $a<a> = 1 ; say $a
17:54 camelia rakudo-moar 0cee78: OUTPUT«SetHash.new(a)␤»
17:54 b2gills m: my $a = SetHash.new; $a<a> = 0 ; say
17:54 camelia rakudo-moar 0cee78: OUTPUT«5===SORRY!5===␤Argument to "say" seems to be malformed␤at /tmp/tJsUdsYXr2:1␤------> 3my $a = SetHash.new; $a<a> = 0 ; say7⏏5<EOL>␤Other potential difficulties:␤    Unsupported use of bare "say"; in Perl 6 please use .say if you meant $_…»
17:54 b2gills m: my $a = SetHash.new; $a<a> = 0 ; say $a
17:54 camelia rakudo-moar 0cee78: OUTPUT«SetHash.new()␤»
17:54 b2gills m: say SetHash.new(:a(0))
17:54 camelia rakudo-moar 0cee78: OUTPUT«SetHash.new()␤»
17:55 b2gills m: say set 0
17:55 camelia rakudo-moar 0cee78: OUTPUT«set(0)␤»
17:55 tokuhirom joined #perl6
17:55 pecastro joined #perl6
17:55 [Coke] steve-robot: can you gist your code?
17:55 [Coke] (gist.github.com)
17:57 [Coke] but, as the error message indicates, you're trying to get a numeric value of a date:
17:57 b2gills .... Wait ... nevermind ( apparently I've been away from Perl 6 too long )
17:57 [Coke] m: +Date.new();
17:57 camelia rakudo-moar 0cee78: OUTPUT«WARNINGS:␤Useless use of "+" in expression "+Date.new()" in sink context (line 1)␤Cannot call Numeric(Date: ); none of these signatures match:␤    (Mu:U \v: *%_)␤  in block <unit> at /tmp/rLsHlIJ04K:1␤␤»
17:57 [Coke] m: say Date.new(); say 123+Date.new();
17:57 camelia rakudo-moar 0cee78: OUTPUT«2015-12-24␤2016-04-25␤»
17:58 [Coke] you can do addition, but not numify.
17:59 b2gills timotimo: sorry for wasting your time the code is correct, I don't know what I was thinking
17:59 timotimo no, it's all right
18:00 timotimo someone i look up to recently said "i prefer a false positive in code review over no code review at all"
18:00 timotimo in other words: thanks for your effort
18:02 n0tjack the named capture syntax is neat
18:02 jmc joined #perl6
18:03 timotimo which one are you refering to?
18:04 TimToady is it possible to use panda for both a rakudobrew and a dev version of rakudo?
18:05 tadzik yes
18:05 tadzik they should work independently
18:05 tadzik panda's files are relative to the rakudo installation path, CUSTOM_LIB and stuff
18:05 TimToady when I install a separate panda, it goes out and looks for .rakudobrew
18:05 tadzik oh, odd
18:05 xfix joined #perl6
18:05 xfix joined #perl6
18:06 TimToady oh, wrong path, I think
18:06 steve-robot [Coke]: thanks for your help. I've pasted a minimal example here: http://pastebin.com/raw.php?i=y9FE58NF
18:06 * TimToady needs two different bashrcs somehow
18:06 tadzik TimToady: is there some particular env var causing the problem?
18:07 FROGGS hmmmm, is 'use variables :D' meant to affect attribute declarations?
18:07 [Coke] unfortunately, pastebin is blocked at my $dayjob. Can someone else take a look?
18:08 * FROGGS looks
18:09 n0tjack ok, this thing is giving helpful error messages. now I'm officially suspicious.
18:09 TimToady tadzik: yes, PATH
18:09 tadzik ah
18:10 tadzik so panda picks up not the perl6 you wanted it to?
18:10 TimToady I wish it was relative to my current directory tree somehow
18:10 FROGGS m: say 1 + Date.new(2010, 12, 24)
18:10 camelia rakudo-moar 0cee78: OUTPUT«2010-12-25␤»
18:10 FROGGS m: say <1> + Date.new(2010, 12, 24)
18:10 camelia rakudo-moar 0cee78: OUTPUT«2010-12-25␤»
18:11 FROGGS m: say "1" + Date.new(2010, 12, 24)
18:11 camelia rakudo-moar 0cee78: OUTPUT«Cannot call Numeric(Date: ); none of these signatures match:␤    (Mu:U \v: *%_)␤  in block <unit> at /tmp/pJbEzRM8H9:1␤␤»
18:12 FROGGS so, prompt returns strings... and that's the problem here
18:12 FROGGS m: say val "1"
18:12 camelia rakudo-moar 0cee78: OUTPUT«1␤»
18:12 FROGGS m: say val("1").WHAT
18:12 camelia rakudo-moar 0cee78: OUTPUT«(IntStr)␤»
18:13 FROGGS steve-robot: turn your line 12 to: return @arr.map: {val($_) + $startdate};
18:13 FROGGS or: return @arr.map: {+$_ + $startdate};
18:13 TimToady I guess I want a trampoline version of panda that looks up the directory tree for a symlink to the real panda for this directory tree
18:13 FROGGS steve-robot: though, you cannot enter "1 2 3" without splitting the string by whitespace
18:15 TimToady or I just need to start a subshell with a different PATH
18:17 mfollett joined #perl6
18:17 steve-robot FROGGS: thanks, that helped a lot!
18:18 FROGGS :o)
18:23 n0tjack if I want to split a string on whitespace, discarding empties, must I really write e.g. comb /\S+/, $stuff instead of split ' ', $stuff  ?
18:23 n0tjack that seems inconvenient
18:23 FROGGS m: use Test; isa-ok Int, Int, '...'
18:23 camelia rakudo-moar 0cee78: OUTPUT«ok 1 - ...␤»
18:23 FROGGS m: use Test; isa-ok IntStr, IntStr, '...'
18:23 camelia rakudo-moar 0cee78: OUTPUT«ok 1 - ...␤»
18:23 FROGGS m: use Test; isa-ok Int:U, IntStr, '...'
18:23 camelia rakudo-moar 0cee78: OUTPUT«not ok 1 - ...␤␤# Failed test '...'␤# at /tmp/SLNE9ouev5 line 1␤# Actual type: Int␤»
18:24 Peter_R joined #perl6
18:24 moritz n0tjack: you can just use $stuff.words
18:24 n0tjack ah, much better
18:24 FROGGS m: use Test; isa-ok Int:U, Int, '...'
18:24 camelia rakudo-moar 0cee78: OUTPUT«ok 1 - ...␤»
18:24 FROGGS m: use Test; isa-ok IntStr, Int, '...'
18:24 camelia rakudo-moar 0cee78: OUTPUT«ok 1 - ...␤»
18:24 n0tjack what if I wanted to split on pipes? or instances of XXX ?
18:24 timotimo i find "$++ state vars for very fast loops" confusing
18:24 timotimo though ... state vars aren't actually a big performance hit AFAIK
18:25 moritz n0tjack: then you .split('|')
18:26 n0tjack m: say '1||2||||3|4|'.split('|')
18:26 camelia rakudo-moar 0cee78: OUTPUT«(1  2    3 4 )␤»
18:26 n0tjack that doesn't discard empties
18:26 moritz it doesn't
18:26 moritz if you want that, just do it :-)
18:26 timotimo then .split(/\|+/)
18:26 moritz m: say '1||2||||3|4|'.split('|').grep(&so)
18:26 camelia rakudo-moar 0cee78: OUTPUT«((1) (2) (3) (4))␤»
18:27 timotimo um ... huh?
18:27 moritz m: say '1||2||||3|4|'.split('|').grep(&chars)
18:27 camelia rakudo-moar 0cee78: OUTPUT«(1 2 3 4)␤»
18:27 n0tjack &chars I get
18:27 n0tjack what's &so?
18:27 timotimo where did those sublists come from there?
18:27 timotimo n0tjack: opposite of "not"
18:27 n0tjack and is there a "this array less the elements of this other array", like a left join?
18:27 moritz http://faq.perl6.org/#so
18:27 n0tjack (1,2,3) -. (1,3)
18:28 n0tjack moritz: thanks
18:28 moritz we have set operators
18:28 moritz but they work on sets
18:28 moritz m: say (1, 2,3).grep(none(1, 3))
18:28 camelia rakudo-moar 0cee78: OUTPUT«(2)␤»
18:28 n0tjack ooh, built in sets
18:28 n0tjack none is cool too
18:28 n0tjack thanks
18:29 * n0tjack goes off to make his helloworld.p6 even weirder
18:29 dalek roast: fca109d | FROGGS++ | S12-attributes/smiley.t:
18:29 dalek roast: add tests for smileys on attributes
18:29 dalek roast: review: https://github.com/perl6/roast/commit/fca109de6c
18:29 moritz http://doc.perl6.org/type/Set
18:30 timotimo moritz: excuse me, but where did (1) (2) (3) (4) come from in the .grep(&so) example?
18:30 timotimo i see something i don't understand and it scares me! ;)
18:30 moritz timotimo: I have no idea
18:30 moritz m: say '1||2||||3|4|'.split('|').grep(&so).perl
18:30 camelia rakudo-moar 0cee78: OUTPUT«(("1",), ("2",), ("3",), ("4",)).Seq␤»
18:30 moritz m: say '1||2||||3|4|'.split('|').perl
18:30 camelia rakudo-moar 0cee78: OUTPUT«("1", "", "2", "", "", "", "3", "4", "").Seq␤»
18:31 timotimo m: say &so.arity; say &so.count
18:31 camelia rakudo-moar 0cee78: OUTPUT«0␤Inf␤»
18:31 moritz eeks
18:31 timotimo m: say '1||2||||3|4|'.split('|').grep(*.so).perl
18:31 camelia rakudo-moar 0cee78: OUTPUT«("1", "2", "3", "4").Seq␤»
18:31 timotimo it's about the "take as many as you like" thing?
18:31 lizmat FROGGS: since we're going to handle the initializer on attributes with :D differently, maybe we would need an "use attributes :D" pragma as well ?
18:31 TimToady I've been fixing up some arity/counts, but not yet 'so'
18:31 moritz I guess it's messing up the zero-args case
18:31 timotimo m: say '1||2||||3|4|'.split('|').grep({ so $_ }).perl
18:31 camelia rakudo-moar 0cee78: OUTPUT«("1", "2", "3", "4").Seq␤»
18:31 timotimo probably
18:31 lizmat instead of using 'use variables :D' ?
18:32 timotimo thank you, TimToady
18:32 FROGGS lizmat: hmmm, good question
18:33 mprelude joined #perl6
18:33 FROGGS lizmat: I would not say no to an attributes pragma, on the other hand I find all of these pragmas kinda weird
18:33 lizmat well, without the pragma's, we wouldn't need Int:_
18:33 FROGGS troo
18:34 FROGGS I just can't imagine that somebody will use these pragmas, is all
18:34 lizmat I'm pretty sure *I* would
18:34 FROGGS hehe
18:34 lizmat and possibly use them in the settings with :D all of them
18:35 lizmat even to the point I was thinking of 'use smileys :D' would be doing all of them  :-)
18:36 ab5tract_ FROGGS: "all of these pragmas" -> what pragmas are you referring to, ooc?
18:36 lizmat use smileys :D would be the same as: use variables :D; use attributes :D; use parameters :D; use invocant :D
18:37 FROGGS ab5tract_: ^^
18:37 FROGGS :o)
18:37 ab5tract_ :)
18:37 FROGGS except there is no 'use smileys'
18:37 ab5tract_ ahh
18:37 lizmat (yet  :-)
18:37 dalek rakudo/nom: 8d4e744 | lizmat++ | src/Perl6/World.nqp:
18:37 dalek rakudo/nom: Add 'use attributes' pragma handling
18:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8d4e74413f
18:38 FROGGS I guess 'use invocant :D' really does make sense, in so far that you often add to all methods except .new
18:38 ab5tract_ fwiw, I like it. but I have to say part of that attraction lies in the cute factor, which I know can be a turn off to others
18:38 ab5tract_ but from that perspective, one could argue that it's a good way to avoid those folks ;)
18:39 sufrostico joined #perl6
18:40 antiatom joined #perl6
18:40 FROGGS lizmat: problem is that a 'use smileys :D' is dangerous, in fo far as we might add a fifth category 'use flubber :D', and then we can either make smileys cover that too and break your code or do the opposite and have a mess
18:40 st_iron joined #perl6
18:40 st_iron hi
18:40 FROGGS well, it would be a mess either way I think
18:40 lizmat yeah, good point
18:40 * st_iron just installing rakudo
18:40 lizmat probably something for a macro then
18:41 FROGGS so for keywords we should try to be as specific as possible, to be able to keep the meaning
18:41 FROGGS yeah
18:41 Hor|zon joined #perl6
18:41 st_iron I use rakudobrew, is it the best way to do it? (I have seen something about it on perl6.org, but I do not find it now)
18:41 dalek ecosystem: 1d46336 | ugexe++ | META.list:
18:41 dalek ecosystem: Add Base64
18:41 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/1d463360b3
18:41 n0tjack can I hyper a unary operator?
18:42 FROGGS st_iron: rakudobrew is probably the best way to try things, yes
18:42 TimToady st_iron: it's best if you just want to play with the current version
18:42 n0tjack m: say gather for ("1","2","3") { take +$_ };
18:42 camelia rakudo-moar 0cee78: OUTPUT«(1 2 3)␤»
18:42 [Coke] st_iron: http://rakudo.org/how-to-get-rakudo/
18:42 n0tjack is there a cute >>+>> ("1","2","3") way to do that?
18:43 n0tjack m: say +<< ("1","2","3")
18:43 camelia rakudo-moar 0cee78: OUTPUT«(1 2 3)␤»
18:43 n0tjack nice
18:43 [Coke] is there a desire to make examples.perl6.org look like the new perl6.org?
18:44 FROGGS [Coke]: I think that would be nice, yeah
18:44 steve-robot FROGGS: Although my problem is now resolved, I just can't figure out what +$_ does? Black magic?
18:45 FROGGS steve-robot: $_ contains a string, your input, and the + prefix op numifies it
18:45 FROGGS steve-robot: so it turns a string that turns a valid number into said number type
18:45 FROGGS m: say "+42"
18:45 camelia rakudo-moar 0cee78: OUTPUT«+42␤»
18:45 FROGGS m: say +"42"
18:45 camelia rakudo-moar 0cee78: OUTPUT«42␤»
18:45 FROGGS m: say (+"42").WHAT
18:45 camelia rakudo-moar 0cee78: OUTPUT«(Int)␤»
18:46 FROGGS m: say +"42.7"
18:46 camelia rakudo-moar 0cee78: OUTPUT«42.7␤»
18:46 FROGGS m: say +"42e7"
18:46 camelia rakudo-moar 0cee78: OUTPUT«420000000␤»
18:46 steve-robot oh, I didn't know about that prefix trick, thanks again
18:46 st_iron TimToady, FROGGS, [Coke], thanks, I am compiling it now, let's rock
18:46 * [Coke] notes that "prefix:+" isn't available on docs.perl6.org
18:46 moritz [Coke]: known issue with the search index generation :(
18:47 [Coke] moritz: issue #?
18:47 dalek roast: 4341b10 | FROGGS++ | S12-attributes/smiley.t:
18:47 dalek roast: use new attributes pragma in todo test
18:47 dalek roast: review: https://github.com/perl6/roast/commit/4341b10aa4
18:47 [Coke] related to 130, 131?
18:47 moritz https://github.com/perl6/doc/issues/48
18:48 st_iron version 2015.09-55-gf09c782 < I've read it 2015.09.55 at first
18:48 [Coke] moritz++
18:49 moritz m: say 'newer'
18:49 camelia rakudo-moar 0cee78: OUTPUT«newer␤»
18:49 moritz star: say 'newer'
18:49 camelia star-m : OUTPUT«newer␤»
18:49 moritz oh, forgot to create the version file
18:50 moritz star: say 'newer'
18:50 camelia star-m 2015.09: OUTPUT«newer␤»
18:50 moritz much better
18:50 moritz such new
18:50 pink_mist what's 'star'? another backend vm?
18:51 * pink_mist gets confused between all the p6: m: j: r: and now star:
18:51 moritz pink_mist: it's a distribution that includes rakudo, some modules, docs and a module installer
18:51 pink_mist ah, interesting
18:51 moritz star: use JSON::Tiny; say to-json { a => [2, 1e5] }
18:51 camelia star-m 2015.09: OUTPUT«{ "a" : [ 2, 100000 ] }␤»
18:51 pink_mist cool
18:51 moritz m: use JSON::Tiny; say to-json { a => [2, 1e5] }
18:51 camelia rakudo-moar 0cee78: OUTPUT«===SORRY!===␤Could not find JSON::Tiny in any of:␤  file#/home/camelia/.perl6/​2015.09-271-g0cee783/lib␤  inst#/home/camelia/.perl6/2015.09-271-g0cee783␤  file#/home/camelia/rakudo-inst-2/share/perl6/lib␤  file#/home/camelia/rakudo-inst-2/share/pe…»
18:51 dalek perl6-examples: f423a3c | (Quinn Perfetto)++ | / (2 files):
18:51 dalek perl6-examples: solved project euler 39
18:51 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/f423a3c7cc
18:51 dalek perl6-examples: c3a6d2e | (Zoffix Znet)++ | / (2 files):
18:51 dalek perl6-examples: Merge pull request #32 from Quinny/master
18:51 dalek perl6-examples:
18:51 dalek perl6-examples: solved project euler 39
18:51 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/c3a6d2ec87
18:52 lizmat joined #perl6
18:53 moritz uhm, what does a once { } block do?
18:53 dha joined #perl6
18:53 [Coke] m: for 1..10 { once { say "hi" }; say $_ }
18:53 camelia rakudo-moar 8d4e74: OUTPUT«hi␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤»
18:54 [Coke] "run once"
18:54 timotimo m: for 1..3 { for 1..10 { once { say "hi" }; say $_ } }
18:54 camelia rakudo-moar 8d4e74: OUTPUT«hi␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤hi␤1␤2␤3␤​4␤5␤6␤7␤8␤9␤10␤hi␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤»
18:54 timotimo ^- with closure clone semantics; so just like a state var
18:54 lizmat_ joined #perl6
18:55 dha hoo boy. The IO pods are a bit of a mess... :-/
18:55 moritz "here be dragons"
18:56 steve-robot Am I supposed to find val() at docs.perl6.org?
18:57 dha Should I be avoiding this particular can of worms for now?
18:57 dalek rakudo/nom: 53969ab | lizmat++ | src/Perl6/World.nqp:
18:57 dalek rakudo/nom: use smileys :_ should return to original state
18:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/53969abf63
18:57 FROGGS dha: depends what you are up to... we need to get it in shape
18:57 dha putting in usage statements where there are signatures.
18:58 lizmat_ dha: jnthn mentioned he wanted to look at them soonish with his pumpkin hat on
18:58 dha But it's messy and confusing.
18:58 lizmat_ dha: I would avoid at the moment...
18:58 dha Ok. Ooh. time to use a new git command!
18:58 coetry joined #perl6
18:58 FROGGS *g*
18:59 dha Never used stash before...
18:59 [Coke] crap, I need to remember to time a full run of "build the docs" at some point.
18:59 FROGGS steve-robot: you are supposed to find everything in the end, but we have holes in there still
19:00 steve-robot FROGGS: good to know it's not me… have a nice day!
19:00 [Coke] please let us know if you try to find a doc and can't. If it's missing, we can add it to teh WANTED list. if it's a bug, we can open an issue in the doc creation project.
19:00 * [Coke] gets a TON of uninitialized value warnings in a full run of htmlify...
19:00 lizmat_ FROGGS: re has Int:D $.foo , shouldn't that modify autogenerated accessors ?
19:00 FROGGS steve-robot: thanks, I wish the same :o)
19:01 dalek perl6-examples: ed1ffb5 | (Zoffix Znet)++ | categories/euler/prob (2 files):
19:01 dalek perl6-examples: Rename prob39 file so tests can find it properly
19:01 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/ed1ffb598f
19:01 FROGGS lizmat: and it does not?
19:01 [Coke] hurk. htmlify is borked.
19:01 FROGGS m: class Foo { has Int:D $.bar }
19:01 camelia rakudo-moar 8d4e74: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Jkp1Om01Kv␤Variable definition of type Int:D requires an initializer␤at /tmp/Jkp1Om01Kv:1␤------> 3class Foo { has Int:D $.bar 7⏏5}␤»
19:01 FROGGS m: class Foo { has Int:D $.bar = 42 }
19:01 camelia rakudo-moar 8d4e74: ( no output )
19:01 FROGGS m: class Foo { has Int:D $.bar is rw = 42 }; Foo.new.bar = Int
19:01 camelia rakudo-moar 8d4e74: OUTPUT«Type check failed in assignment to $!bar; expected Int:D but got Int␤  in block <unit> at /tmp/xshM9N6msb:1␤␤»
19:02 FROGGS lizmat: is there something I missed?
19:02 FROGGS [Coke]: yes, I tried to fix it but there is still something borken
19:02 lizmat I sorta expected it to happen sooner, before trying to assign to $!bar
19:03 lizmat but I guess this way is better anyway...
19:03 [Coke] how is the site getting generated if the generator is borked?
19:03 moritz [Coke]: probably not at all
19:03 FROGGS ... since mid September
19:05 dha Hm... is there any point in putting in a usage statement for a method stub? E. g. C<iterator> in Iterable.
19:06 * [Coke] opens a ticket.
19:07 lizmat m: my Int:D(False) $a = 42; $a = Int   # looking at that now
19:07 camelia rakudo-moar 8d4e74: OUTPUT«Type check failed in assignment to $a; expected Int:D(False) but got Int␤  in block <unit> at /tmp/Py8ZipBXh0:1␤␤»
19:07 * dha punts
19:07 timotimo hm
19:08 timotimo how good is our regex engine when it comes to things anchored with a $ at the end?
19:08 timotimo i imagine $word ~~ /[ea?|u|i] rl $/; might be VERY expensive for long words if we don't do very well
19:08 timotimo we don't do any "how long can this part of the regex be" analysis yet, AFAIK
19:08 M-tadzik joined #perl6
19:09 timotimo but perhaps the whole thing already gets flipped and thus becomes a BOS-anchored thing?
19:09 moritz which answers your question, no? :/
19:09 timotimo yeah
19:09 tadzik oh, this works :)
19:09 timotimo and that's quite the endeavour
19:09 M-tadzik (I mean this)
19:09 lichtkind_ joined #perl6
19:09 timotimo oh, matrix
19:09 timotimo m: say "foobar".substr(*-3)
19:09 camelia rakudo-moar 8d4e74: OUTPUT«bar␤»
19:10 lichtkind_ are $~Quasi and $~Trans dumped?
19:10 * [Coke] tries to find the commit that caused the failures...
19:10 FROGGS m: my Int:!D $a = 42; $a = Int
19:10 camelia rakudo-moar 8d4e74: OUTPUT«5===SORRY!5===␤Type 'Int' is not declared. Did you mean 'int'?␤at /tmp/tU3oxP6dH4:1␤------> 3my Int7⏏5:!D $a = 42; $a = Int␤Malformed my␤at /tmp/tU3oxP6dH4:1␤------> 3my Int7⏏5:!D $a = 42; $a = Int␤␤»
19:10 FROGGS ewww
19:10 [Coke] might be a doc commit that generates pod we're not expecting or something.
19:10 timotimo lichtkind_: the $~ twigil isn't implemented yet AFAIK
19:11 lichtkind_ it is
19:11 timotimo oh
19:11 FROGGS timotimo: it is
19:11 lichtkind_ since 4 other
19:11 lichtkind_ ~vars are there
19:11 lichtkind_ just 2 are missing from specs
19:11 FROGGS lichtkind: there is no $~Trans, and I don't see what that should be
19:11 lichtkind_ so i ask if its todo or dropped
19:11 FROGGS and for $~Quasi, we don't know yet
19:12 lichtkind_ there was a time when syn said there should be trans
19:12 lichtkind_ allright so i cut it from tablets
19:12 lichtkind_ thanks
19:13 timotimo trans is the language for tr/.../.../ operators?
19:14 st_iron joined #perl6
19:14 st_iron oops, moar ate up my memory
19:14 st_iron say $word if $word ~~ m :i/ amas /;
19:15 st_iron this line technically killed my notebook
19:15 FROGGS :S
19:15 dalek tablets: 7035b5e | (Herbert Breunung)++ | docs/ (3 files):
19:15 dalek tablets: remove $~Trans
19:15 dalek tablets: review: https://github.com/perl6/tablets/commit/7035b5e1c4
19:15 [Coke] ugh. bisecting is a no go, since it depends on a version of perl 6 that doesn't exist anymore.
19:15 lichtkind yes timotimo
19:16 FROGGS and the lhs of trans is Regex and the rhs is Quote... so there is no need for Trans
19:16 timotimo st_iron: uh oh; can you help us figure out what went wrong?
19:16 lichtkind i mit commit i can bring back any time :) long live git
19:16 timotimo or did you just get a gigantic string in there?
19:16 lichtkind FROGGS and quasi is not sure
19:16 lichtkind ?
19:16 timotimo that depends very much on masaks work
19:16 timotimo which is post 6.Christmas
19:16 FROGGS lichtkind: we will know once the macros got revised
19:17 lichtkind who masters dalek?
19:17 lichtkind thanks FROGGS
19:17 FROGGS lichtkind: you're welcome
19:17 st_iron timotimo: I am just playing around, slurping the whole unix dict into memory, iterate through it and say words with / amas /
19:17 lichtkind i would like a repo added to dalek
19:18 FROGGS lichtkind: there is a dalek setup howto... gimme a sec
19:18 timotimo why slurp all of it into memory?
19:18 gfldex st_iron: it would be nice if you could nopaste the source somewhere
19:18 FROGGS lichtkind: https://github.com/perl6/mu/bl​ob/master/misc/dalek-push.txt
19:18 jnthn TimToady: Optional parameters don't have a variable name to bind to and so we don't even go so far as to create containers
19:18 st_iron timotimo: http://pastebin.ca/3184525
19:19 st_iron timotimo: I used it in the past (way years back) to measure something
19:19 timotimo you do know that this for loop is useless? :)
19:19 st_iron timotimo: I just wrote it to perl6 to look at it :)
19:19 jnthn El_Che: We can document that, and point people to just grab a normal Windows build and use it under cygwin, which should be good enough for most cases.
19:20 st_iron ouch, so I killed my notebook
19:20 st_iron "sit down, rtfm mr. iron" :)
19:20 timotimo st_iron: you'll get a single run of the for loop with the complete contents of that file
19:20 flussence that doesn't seem like... very computer-murdery code
19:20 timotimo you'd probably prefer using "lines" to iterate
19:20 timotimo can you tell us how big exactly your dict file is?
19:21 jnthn TimToady: Don't see a reason why \a? couldn't work; it'd jsut shove Any (or Mu, or whatever declared type) in there
19:21 flussence oh, the regexing a giant string part might be a little painful, yeah... (but why does it do that?)
19:22 gfldex that file is about 1MB in size
19:22 st_iron of course: 920K    /usr/share/dict/american-english
19:22 lizmat m: sub a(\a = Any) { dd a }; a
19:22 camelia rakudo-moar 8d4e74: OUTPUT«Any␤»
19:23 lizmat m: sub a(Int \a = Any) { dd a }; a
19:23 camelia rakudo-moar 8d4e74: OUTPUT«5===SORRY!5=== Error while compiling /tmp/JVJNrMMerE␤Default value '(Any)' will never bind to a parameter of type Int␤at /tmp/JVJNrMMerE:1␤------> 3sub a(Int \a = Any7⏏5) { dd a }; a␤    expecting any of:␤        constraint␤»
19:23 lizmat m: sub a(Int \a = 42) { dd a }; a
19:23 camelia rakudo-moar 8d4e74: OUTPUT«42␤»
19:23 lichtkind FROGGS++
19:23 TimToady jnthn: what I'm struggling with at the moment is that $y does (R2, R3); is passing 3 arguments to infix:<does> for some reason
19:23 TimToady but I don't see anything that could be slipping the RHS
19:24 Hor|zon_ joined #perl6
19:25 flussence fwiw, «perl6 -e 'lines.grep(rx:i/amas/).say' < /usr/share/dict/words» runs with stable mem usage, with a 2.5MB file here.
19:25 timotimo flussence: stable at what level?
19:25 dalek joined #perl6
19:25 timotimo probably still higher than would make me happy ;)
19:25 timotimo like, 80 megs?
19:25 flussence just under 100MBish, yeah
19:26 timotimo typical
19:26 timotimo perl6 -e '' is at 60 megs on my machine
19:26 gfldex st_iron: it's eating little more then 2.5GB on my side as well and gets killed by kernel
19:26 flussence the repl chews up 140MB here...
19:26 TimToady I guess I'll just leave 'does' alone
19:27 xfix joined #perl6
19:27 xfix joined #perl6
19:28 flussence (hm... if a simple regex on 950KB of text is enough to cause OOM... I'm hoping there's some really simple bug somewhere causing it, and fixing that will help across the board)
19:28 yobj joined #perl6
19:28 yobj joined #perl6
19:28 lichtkind_ FROGGS have you the rights to do that becasuse i dont
19:28 timotimo flussence: it'd be great if you could find something :)
19:29 FROGGS lichtkind_: for which repository?
19:29 flussence golfed OOM: «perl6 -e 'given $*IN.slurp-rest { .say when rx:i/amas/ }' < /usr/share/dict/words»
19:29 n0tjack is there any kind of builtin which means "defined, numeric, and greater than zero"?
19:30 n0tjack (or, if not "greater than zero", then "not equal to zero")
19:30 gfldex st_iron: change 'for $words -> $word {' to 'for $words.lines -> $word {' will fix it
19:30 lichtkind_ FROGGS, https://github.com/perl6/problem_solver_tutorial
19:30 lichtkind_ was created by moritz
19:30 FROGGS m: my Int:D $foo where * > 0 = 42; say $foo;
19:30 [Sno] joined #perl6
19:30 camelia rakudo-moar 53969a: OUTPUT«42␤»
19:30 FROGGS m: my Int:D $foo where * > 0 = 42; say $foo; $foo = -2
19:30 camelia rakudo-moar 53969a: OUTPUT«42␤Type check failed in assignment to $foo; expected Int:D but got Int␤  in block <unit> at /tmp/Eo8PsBW0wR:1␤␤»
19:31 jnthn TimToady: wrt does, I think because we code-gen does with a bunch of roles to pass them all, to avoid an ambiguity
19:31 FROGGS m: my Int:D $foo where * > 0 = 42; say $foo; $foo = 2
19:31 camelia rakudo-moar 53969a: OUTPUT«42␤»
19:31 st_iron gfldex: checking, thanks
19:31 FROGGS m: my Int:D $foo where * > 0 = 42; say $foo; $foo = 0
19:31 camelia rakudo-moar 53969a: OUTPUT«42␤Type check failed in assignment to $foo; expected Int:D but got Int␤  in block <unit> at /tmp/wYNzfHi7mS:1␤␤»
19:31 FROGGS n0tjack: something like that ^^
19:31 n0tjack FROGGS: something suitable for grep
19:31 n0tjack I'm writing grep {$^x > 0}, @stuff
19:31 n0tjack I'm wondering if there's anything cuter
19:31 flussence UInt where True?
19:32 jnthn TimToady: And does needs special compilation 'cus of the does Foo(42) case...hm, or maybe that's only on but, I forget.
19:32 FROGGS m: say (-5 .. 5).grep: UInt where *.so
19:32 camelia rakudo-moar 53969a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tsbLrt29pS␤Two terms in a row␤at /tmp/tsbLrt29pS:1␤------> 3say (-5 .. 5).grep: UInt7⏏5 where *.so␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        stateme…»
19:32 El_Che jnthn: good point
19:32 FROGGS m: say (-5 .. 5).grep: { UInt where *.so }
19:32 camelia rakudo-moar 53969a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OBPkWmtl_I␤Two terms in a row␤at /tmp/OBPkWmtl_I:1␤------> 3say (-5 .. 5).grep: { UInt7⏏5 where *.so }␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤     …»
19:32 gfldex st_iron: for loops are basicly .map on the array and with that loop of yours you create a list with nearly 100k elements that contain the whole file and then you ask it to create a match object for each of those 100k elements
19:32 n0tjack why are all you native speakers saying <data>.function {block} instead of function {block}, <data> ?
19:33 TimToady okay, I see mixin_op, so I'll still leave 'em alone
19:33 flussence m: say (-5 .. 5).grep: UInt & *.so
19:33 camelia rakudo-moar 53969a: OUTPUT«(1 2 3 4 5)␤»
19:33 n0tjack nice!
19:33 FROGGS ohh
19:33 st_iron gfldex: yeah, it was for a perl5 presentation aka "look at it, it is pretty fast" :)
19:33 timotimo gfldex: no, that for loop gets sinked, and so it doesn't keep thev alues around
19:33 st_iron gfldex: I just wrote it in perl6 as my first "official" rakudo run :)
19:34 n0tjack m: say UInt.WHAT
19:34 camelia rakudo-moar 53969a: OUTPUT«(UInt)␤»
19:34 jnthn TimToady: Yeah, though it is one of those corners of the language where it's been a bit "torture the implementor" and so we've ended up with "clever" code trying to make all the things that should work work. :)
19:34 FROGGS lichtkind_: done
19:35 TimToady well, nobody in their right mind is going to ask for the count of does/but anyway
19:35 jnthn :)
19:35 lichtkind_ FROGGS += 2 :)
19:35 FROGGS *g*
19:35 El_Che jnthn: if you point me to the rakudo.org site repo I'll send a PR with the documentation changes
19:35 jnthn TimToady: If I can get one quick ruling: trait in STD parses <trait_mod> | <colonpair>. I can't figure out what the colonpair case is meant to do. Any pointers, or is it "not 6.christmas"? :)
19:35 TimToady n0tjack: two reasons: 1) slightly faster if the listop is implemented in terms of the method, and 2) you don't have to worry about a list infix eating up the block accidentally
19:35 Ajjay joined #perl6
19:36 TimToady m: say map { $_ * 2 }, 1 ... 10
19:36 camelia rakudo-moar 53969a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dLSNGh31Tx␤Missing comma after block argument to map␤at /tmp/dLSNGh31Tx:1␤------> 3say map { $_ * 2 }, 1 ... 107⏏5<EOL>␤»
19:36 TimToady oh, there's a cool mis-diagnosis
19:37 TimToady maybe s/block/first/
19:37 n0tjack m: say map {$_*2}, 1..10;
19:37 camelia rakudo-moar 53969a: OUTPUT«(2 4 6 8 10 12 14 16 18 20)␤»
19:37 n0tjack I see, I'd expect ... to work like ..
19:37 TimToady but .. is tighter than comma, while ... isn't
19:37 n0tjack still though, the last operation should come first!
19:38 n0tjack unless you speak Hebrew, I guess
19:38 FROGGS El_Che: rakudo.org is not histed in a repository... but I've got the power to edit articles...
19:38 FROGGS hosted*
19:38 TimToady say map ({ $_ * 2 }, 1 ... 10) is how it's being parsed
19:39 TimToady m: say map { $_ * 2 } <== 1 ... 10
19:39 camelia rakudo-moar 53969a: OUTPUT«()(1 2 3 4 5 6 7 8 9 10)␤»
19:39 n0tjack m: say 1 ... 10;
19:39 camelia rakudo-moar 53969a: OUTPUT«(1 2 3 4 5 6 7 8 9 10)␤»
19:39 n0tjack TimToady: Dude!
19:39 dha Hm. The List type has a C<first> method, but not a <last> method. grumble.
19:39 TimToady theres a workaround, except I don't know where that first () came from
19:39 andreoss joined #perl6
19:39 dha (as documented in List.pod, anyway)
19:40 n0tjack I think that was from my  ...  not your  <==
19:40 TimToady m: say map { $_ * 2 } <== 1 ... 10
19:40 camelia rakudo-moar 53969a: OUTPUT«()(1 2 3 4 5 6 7 8 9 10)␤»
19:40 TimToady no it was mine
19:40 FROGGS weird one
19:40 Kogurr joined #perl6
19:40 TimToady m: say map { $_ * 2 } <== 0,2 ... 10
19:40 camelia rakudo-moar 53969a: OUTPUT«()(0 2 4 6 8 10)␤»
19:41 FROGGS m: say(map { $_ * 2 } <== 0,2 ... 10)
19:41 camelia rakudo-moar 53969a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GffgBALvxu␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/GffgBALvxu:1␤------> 3say(map { $_ * 2 }7⏏5 <== 0,2 ... 10)␤    expecting any of:␤        infix␤       …»
19:41 TimToady m: say map { $_ * 2 }, Empty <== 0,2 ... 10
19:41 camelia rakudo-moar 53969a: OUTPUT«()(0 2 4 6 8 10)␤»
19:41 TimToady it's the non-argument before the <== somehow, I think
19:41 TimToady m: say map { $_ * 2 } <== 1..10
19:41 camelia rakudo-moar 53969a: OUTPUT«()1..10␤»
19:41 TimToady has nothing to do with the ...
19:42 TimToady so a plain old bug
19:42 TimToady in feed operators
19:42 TimToady m: say map { $_ * 2 } <== slip 1..10
19:42 camelia rakudo-moar 53969a: OUTPUT«()12345678910␤»
19:42 n0tjack m: say grep {$^x%2} <== map {$_*$_} <== 1..10;
19:42 camelia rakudo-moar 53969a: OUTPUT«()(1 4 9 16 25 36 49 64 81 100)␤»
19:43 n0tjack it didn't add two ()s
19:43 TimToady m: say map { $_ * 2 },0 <== 1..10
19:43 camelia rakudo-moar 53969a: OUTPUT«(0)1..10␤»
19:43 TimToady ah, it's not slipping the left side
19:44 FROGGS TimToady: btw, I'd like to make '$foo.map: {...}.perl' mean '$foo.map({...}).perl' rather than '($foo.map: {...}).perl' - my eyes parse it that way anyway
19:44 st_iron good bye for today, see you later
19:44 FROGGS TimToady: ... as in, change the design docs and tests
19:44 TimToady oh, wait, say is inside
19:44 TimToady m: say() <== map { $_ * 2 },0 <== 1..10
19:44 camelia rakudo-moar 53969a: OUTPUT«(0 2..20)␤»
19:44 TimToady m: say() <== map { $_ * 2 },0 <== 1...10
19:44 camelia rakudo-moar 53969a: OUTPUT«(0 20)␤»
19:44 n0tjack m: say() <== grep {1=$^x%2} <== map {$_*$_} <== 1..10;
19:44 camelia rakudo-moar 53969a: OUTPUT«Cannot modify an immutable Int␤  in block <unit> at /tmp/6CoUaxMQCM:1␤␤»
19:45 n0tjack m: say() <== grep {1==$^x%2} <== map {$_*$_} <== 1..10;
19:45 camelia rakudo-moar 53969a: OUTPUT«(1 9 25 49 81)␤»
19:45 TimToady m: say() <== map { $_ * 2 },0 <== |(1...10)
19:45 camelia rakudo-moar 53969a: OUTPUT«(0 2 4 6 8 10 12 14 16 18 20)␤»
19:45 El_Che FROGGS: ok, I'll post a small gist
19:45 TimToady m: say() <== map { $_ * 2 } <== |(1...10)
19:45 camelia rakudo-moar 53969a: OUTPUT«(2 4 6 8 10 12 14 16 18 20)␤»
19:46 n0tjack m: say 1j1;
19:46 camelia rakudo-moar 53969a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dYbOI7pYlu␤Confused␤at /tmp/dYbOI7pYlu:1␤------> 3say 17⏏5j1;␤»
19:46 TimToady I suspect <== should automatically | its args
19:46 n0tjack m: say 1i1;
19:46 camelia rakudo-moar 53969a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/zJYkWsJmlO␤Confused␤at /tmp/zJYkWsJmlO:1␤------> 3say 17⏏5i1;␤»
19:46 n0tjack m: say 1+1i;
19:46 [Coke] so, I'm pretty sure that that htmlify breakage comes from push/append GLR changes.
19:46 camelia rakudo-moar 53969a: OUTPUT«1+1i␤»
19:46 FROGGS [Coke]: most likely, yes
19:46 n0tjack m: say sqrt (1+1i);
19:46 camelia rakudo-moar 53969a: OUTPUT«1.09868411346781+0.455089860562227i␤»
19:46 TingPing_ joined #perl6
19:47 FROGGS [Coke]: I fixed one thing, but was unable to understand the second
19:47 n0tjack m: say sqrt (-1);
19:47 camelia rakudo-moar 53969a: OUTPUT«NaN␤»
19:47 n0tjack wait what?
19:47 mjp_ joined #perl6
19:47 [Coke] I just changed every push: to append: as a hail mary.
19:47 FROGGS n0tjack: remove that whitespace
19:47 MilkmanDan joined #perl6
19:47 n0tjack m: say sqrt(-1);
19:47 camelia rakudo-moar 53969a: OUTPUT«NaN␤»
19:47 quuxman joined #perl6
19:47 [Coke] m: say sqrt(-1+0i);
19:47 camelia rakudo-moar 53969a: OUTPUT«6.12323399573677e-17+1i␤»
19:47 [Coke] you don't get complex unless you ask for it.
19:48 n0tjack would that's how the rest of my life worked
19:48 n0tjack does p6 support comparison tolerance?
19:48 TimToady but once you have it, Complex is a sticky type, like FatRat, or Num
19:49 TimToady doesn't usually need it, so nothing built in, unless you count round(0.000001) or so
19:49 n0tjack just wondering if I'm going to cut my self on floating points
19:49 [Coke] you can make your own equality operator with tolerance pretty easily.
19:49 n0tjack yeah, I was thinking that
19:49 TimToady m: say pi.round(0.0001)
19:49 camelia rakudo-moar 53969a: OUTPUT«3.1416␤»
19:49 n0tjack make one and use it whereever I'm worried
19:49 [Coke] m: say 0.1 + 0.2 + 0.3 = 0.6
19:49 camelia rakudo-moar 53969a: OUTPUT«Cannot modify an immutable Rat␤  in block <unit> at /tmp/oMYOV6BNMg:1␤␤»
19:50 TimToady m: say pi.round(0.0001).WHAT
19:50 camelia rakudo-moar 53969a: OUTPUT«(Rat)␤»
19:50 yqt joined #perl6
19:50 [Coke] m: say 0.1 + 0.2 + 0.3 == 0.6
19:50 camelia rakudo-moar 53969a: OUTPUT«True␤»
19:50 El_Che FROGGS: https://gist.github.com/nxadm/a7cac4d5a66e6b1a03a4
19:50 El_Che FROGGS: or something like that
19:50 n0tjack m: say sqrt(0+1i);
19:50 camelia rakudo-moar 53969a: OUTPUT«0.707106781186548+0.707106781186547i␤»
19:51 n0tjack where is the spec for numeric constant notation?
19:51 n0tjack as in 1e10 and 1+1i
19:51 TimToady I guess round wouldn't make much sense on a complex unless we supported Rat-based complexes
19:52 TimToady S02:Literals
19:52 n0tjack thanks
19:53 flussence m: my $*TOLERANCE = 1e-2; sub infix:<≅>(\a, \b) { abs(a - b) < ($*TOLERANCE // 1e-6) }; say pi ≅ 22/7
19:53 camelia rakudo-moar 53969a: OUTPUT«True␤»
19:54 TimToady m: say sqrt(0+1i).reals».round(0.0001)
19:54 camelia rakudo-moar 3fd80c: OUTPUT«(0.7071 0.7071)␤»
19:55 FROGGS El_Che: please reload and check
19:56 fubaaaz joined #perl6
19:56 dalek rakudo/nom: db3122a | TimToady++ | src/core/ (6 files):
19:56 dalek rakudo/nom: accurify a bunch of .arity/.count values
19:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/db3122af9d
19:56 FROGGS uff, we have about 50 ppl more in here as usual
19:57 TimToady for some strange reason :)
19:57 FROGGS :o)
19:57 labster_ joined #perl6
19:58 FROGGS I've heard good things about that specific strange reason :o)
19:58 [Coke] do we have a writeup somewhere of when we'd want append instead of push?
19:59 [Coke] moritz: I wonder how recent the perl6 that's being used to build docs is.
19:59 FROGGS [Coke]: it is from last weekend
20:00 lizmat hmmm.. just had a non-repeatable hang on t/spec/S17-supply/syntax.t
20:00 rurban joined #perl6
20:00 dalek roast: d9a5f45 | TimToady++ | S03-operators/reduce-le1arg.t:
20:00 dalek roast: [xx] () is now a bind failure, so use try
20:00 dalek roast: review: https://github.com/perl6/roast/commit/d9a5f454c6
20:01 boggard is there a perl IDE written in perl6 yet?
20:01 FROGGS [Coke]: .append does Single Arg Rule™ IIRC - which is like... "I don't care what data I push", or so
20:01 TimToady lizmat: yeah, and I just had a double free on something else, so we're still a bit flakey in spots
20:01 FROGGS boggard: no
20:01 boggard that's too bad. seems like it would be a fun project.
20:02 TimToady but then it would turn into an editor, and we'd have to go out and hang ourselves
20:02 saaki you mean "hell, yea, i'm taking that sucker on!"
20:02 boggard considering how easily extended perl6 is...
20:02 [Coke] FROGGS: I basically have no idea if any of the 10 instances of push are wanting an update.
20:02 FROGGS boggard: well, it is your chance to "register" the perfect name, and start hacking :o)
20:02 boggard thinking about it :P
20:02 TimToady [Coke]: if it was working before, append is always safe
20:03 dalek rakudo/nom: c8c613e | lizmat++ | src/Perl6/World.nqp:
20:03 dalek rakudo/nom: Ruggedize :D/:U handling
20:03 dalek rakudo/nom:
20:03 dalek rakudo/nom: Also set up handling of variables/parameters/attributes/invocant  pragma's
20:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c8c613ee5b
20:03 dbenton joined #perl6
20:03 TimToady append is +args semantics, and push is **args semantics, so push will never flatten anything, and will push one thing for each comma-separated item at a syntactic level
20:04 dha So, what is the C<:&as> in "multi sub    unique(*@values, :&as) returns Seq:D"? It's not covered in the documentation?
20:04 TimToady the difference is if you say .push: @foo you get the array pushed as a single item, but .append: @foo will split it up and push each element of @foo
20:06 laouji joined #perl6
20:06 lizmat dha: the :as indicates how you would like to transform values seen before judging them unique
20:06 dha That's what I figured, but the documentation contradicts that.
20:06 n0tjack m: say log 10, max 1, abs -1234
20:06 camelia rakudo-moar 3fd80c: OUTPUT«0.323486913607975␤»
20:07 n0tjack is there a way to flip those 2 arguments to log without parenthesitis?
20:07 n0tjack m: log(max (1, (abs -1234)),10) # works but yuck
20:07 camelia rakudo-moar 3fd80c: OUTPUT«WARNINGS:␤Useless use of "log(max (1, (abs -1234)),10)" in expression "log(max (1, (abs -1234)),10)" in sink context (line 1)␤»
20:07 moritz m: say <a A b>.unique(:as(&lc))
20:07 camelia rakudo-moar 3fd80c: OUTPUT«(a b)␤»
20:07 n0tjack m: say log(max (1, (abs -1234)),10) # works but yuck
20:07 camelia rakudo-moar 3fd80c: OUTPUT«2.30258509299405␤»
20:07 leedo_ is there an equivalent to `perldoc -f` with perl6? i'm not getting a perl6doc or seeing anything i perl6 --help
20:08 PerlJam leedo_: not yet, unfortunately.
20:08 dha oh, wait. it may not contradict it, as such. But you have to know what C«<===>» does to have any idea what's going on, as written.
20:08 leedo_ ah ok, thanks
20:08 moritz well, perl6/doc comes with a small command line tool for viewing docs, but it's mostly broken right now :(
20:09 leedo_ the web docs are nice, but sometimes i'm just curious about a function i see in an example here and have a terminal up
20:09 PerlJam leedo_: yeah, that happens all the time for me too.  But I just end up reading the source.
20:10 dha lizmat - did you actually mean transform? Because I wouldn't expect C<unique> to actually *change* elements of the list.
20:10 TimToady m: say log 1 max abs -1234, 10
20:10 camelia rakudo-moar 3fd80c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/pCpKY3nfz9␤Calling abs(Int, Int) will never work with proto signature ($)␤at /tmp/pCpKY3nfz9:1␤------> 3say log 1 max 7⏏5abs -1234, 10␤»
20:10 lizmat dha: it would only transform them for the lookup
20:10 TimToady m: say log 1 max -1234.abs, 10
20:10 camelia rakudo-moar 3fd80c: OUTPUT«0␤»
20:10 TimToady m: say log(1 max -1234.abs, 10)
20:10 camelia rakudo-moar 3fd80c: OUTPUT«0␤»
20:10 dha Hm. Trying to think what to call that in a usage statement. COMPARE_FUNC?
20:11 TimToady m: say log (1 max -1234.abs), 10
20:11 camelia rakudo-moar 3fd80c: OUTPUT«0␤»
20:11 [Coke] moritz, FROGGS - do we have both things we run and things we pod in lib/ in perl6-doc?
20:11 lizmat dha: AS ?
20:11 dha AS seems insufficiently descriptive.
20:11 moritz [Coke]: yes
20:11 moritz [Coke]: lib/Perl6/* is run, iirc
20:11 lizmat COMPARE_AS
20:11 lizmat ?
20:11 dha Particularly as the following documentation is unclear.
20:11 dha ah., that would work.
20:12 moritz maybe just fix the documentation?
20:12 lizmat COMPARE-AS   perhaps ?
20:12 PerlJam lizmat: maybe &as should be called &by like in sort.   Isn't it really more like &unique-by ?
20:12 moritz please let's not go on another rename-stuff-and-break-the-ecosystem shopping tour
20:12 n0tjack m: log | reverse 10, max 1, abs -1234;
20:12 camelia rakudo-moar 3fd80c: OUTPUT«WARNINGS:␤Useless use of "log | reverse 10, max 1, abs -1234" in expression "log | reverse 10, max 1, abs -1234" in sink context (line 1)␤»
20:12 PerlJam moritz: good point.
20:12 * moritz is still recovering from the last two
20:12 n0tjack m: say log | reverse 10, max 1, abs -1234;
20:12 camelia rakudo-moar 3fd80c: OUTPUT«3.09131515969722␤»
20:13 dha Oh, there's docs on :as. Maybe I should take a nap.
20:14 dha I'm going to use COMPARE_AS, and we can always change it, if that doesn't pass muster.
20:14 TimToady m: my &log10 = &log.assuming(*,10); say log10 max 1, abs -1234;
20:14 camelia rakudo-moar 3fd80c: OUTPUT«3.09131515969722␤»
20:15 [Coke] moritz: we should split that up so the docs are separate from the code.
20:15 n0tjack TimToady: in my case 10 is a parameter to the fn
20:15 [Coke] (don't rename stuff). there is no better time to rename things than right now.
20:15 [Coke] it will only get worse after xmas.
20:15 n0tjack I saw 60[10,24,20] and now I want to write an "antibase" function, which explodes based numbers into their digits
20:15 TimToady m: sub infix:<log>($b,$n) { log $n, $b }; say 10 log max 1 abs -1234;
20:15 camelia rakudo-moar 3fd80c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/FJl2CfYkuR␤Two terms in a row␤at /tmp/FJl2CfYkuR:1␤------> 3($b,$n) { log $n, $b }; say 10 log max 17⏏5 abs -1234;␤    expecting any of:␤        infix␤        infix stopper␤        postfix…»
20:16 TimToady m: sub infix:<log>($b,$n) { log $n, $b }; say 10 log max 1, abs -1234;
20:16 camelia rakudo-moar 3fd80c: OUTPUT«3.09131515969722␤»
20:16 n0tjack m: sub ndr(Num value, Int radix = 10) { 1 + log | reverse radix , max 1, abs value } say ndr -1234,10;
20:16 camelia rakudo-moar 3fd80c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/UyHGra7dDv␤Malformed parameter␤at /tmp/UyHGra7dDv:1␤------> 3sub ndr(Num7⏏5 value, Int radix = 10) { 1 + log | reve␤    expecting any of:␤        constraint␤        formal parameter␤»
20:16 flussence .oO( there's a blurry line somewhere between parsing strings to numbers and parsing strings to codepoints... )
20:17 n0tjack I'm trying to make a simple, one-liner function that gives me the number of digits required to represent "value" in "radix" (default 10)
20:17 n0tjack so avoiding helper functions, trying to keep it flat and clear (hence avoiding all those parens)
20:18 AlexDaniel joined #perl6
20:18 lizmat [Coke]: re rename, +1
20:19 TimToady m: say .base(10).chars given max 1, abs -1234
20:19 camelia rakudo-moar 3fd80c: OUTPUT«4␤»
20:19 leedo_ moritz: PerlJam fwiw p6doc -f seems to do what I was looking for
20:19 leedo_ doesn't seem broken here
20:19 leedo_ ah, i guess the -f functionality isn't quite as described
20:21 n0tjack given shoves its RHA into $_?
20:21 TimToady yes, it's a topicalizer, we say
20:21 TimToady so is ~~
20:21 laouji joined #perl6
20:21 n0tjack that's neat
20:22 TimToady m: say .base(10).chars given 1 max abs -1234
20:22 camelia rakudo-moar 3fd80c: OUTPUT«4␤»
20:22 TimToady max can also be an infix
20:22 n0tjack that's not gonna work for base 1000
20:22 n0tjack oh, nice! that fixes it then
20:22 n0tjack m: say log 10, 1 max abs -1234;
20:22 camelia rakudo-moar 3fd80c: OUTPUT«0.323486913607975␤»
20:23 n0tjack m: say (1 max abs -1234), 10;
20:23 camelia rakudo-moar 3fd80c: OUTPUT«123410␤»
20:23 n0tjack m: say log (1 max abs -1234), 10;
20:23 camelia rakudo-moar 3fd80c: OUTPUT«3.09131515969722␤»
20:23 [Coke] moritz, FROGGS: ok, switching to append everywhere (not just htmlify) seems much better.
20:23 n0tjack only 1 set of parens, not bad
20:23 n0tjack and no sneaky tricks
20:23 dha LIST.combinations is making my head hurt. Well, actually, more combinations($n, $k).
20:24 TimToady you're not supposed to *read* the source code...oh wait...
20:24 nakajima joined #perl6
20:25 dha I'm just reading the docs!
20:26 dha Huh. Reading the description of C<combinations($n, $k)>, I'm surprised those aren't specifically Ints
20:30 El_Che FROGGS++ : looks good
20:30 El_Che FROGGS: we'll save some people some that with that
20:31 [Coke] moritz, FROGGS: nope. using append everywhere instead of push still dies. ah well
20:32 dha joined #perl6
20:35 TimToady so I'm still getting a bunch of failed tests having to do with, er, failure
20:35 TimToady what's up with that?
20:36 TimToady someone hacking on p6 without updating the tests?
20:36 colomon joined #perl6
20:36 laouji joined #perl6
20:36 TimToady someone hacking on p6 without *running* the tests?
20:37 * dha punts again "EXPR" is my friend.
20:38 n0tjack joined #perl6
20:38 [Coke] reminder, if a test if failing, should be fudged and an RT opened.
20:38 n0tjack m: sub foo(Real @vals, Int $r){ say "hi";} my Real @v = (1.1,2,3.3); foo(@v, 10);
20:38 camelia rakudo-moar c8c613: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yRfqqu_TR8␤Strange text after block (missing semicolon or comma?)␤at /tmp/yRfqqu_TR8:1␤------> 3sub foo(Real @vals, Int $r){ say "hi";}7⏏5 my Real @v = (1.1,2,3.3); foo(@v, 10);␤    expecting any …»
20:39 FROGGS TimToady: I just know about timotimo changing something about die/fail... though I'm not sure that it's that
20:40 lizmat FROGGS: yeah, and I worked on it as well
20:40 dha Ok, confusion. the sub signature for List.permutations is "multi sub    permutations($n)      returns Seq:D" Should that be C<@n> or the like, or am I even more confused than I think I am?
20:40 lizmat and now remember I promised to work on that today  :-(
20:41 dha No, in the core it takes an Int. Now I'm really confused.
20:41 n0tjack it gives all the permutations of order N
20:41 lichtkind_ highphive liz
20:41 n0tjack try permutations(3)
20:42 dha Oh god, it's like combinations, but this time it's specifically an Int.
20:43 ZoffixWork joined #perl6
20:43 ZoffixWork This sucks :) https://news.ycombinator.com/item?id=10347772
20:43 ZoffixWork (Is there a Perl 5 EOL being discussed?)
20:43 dha So, as a subroutine it takes an integer, but it serves as a method to List.
20:43 dha Gah.
20:44 pink_mist ZoffixWork: perl 5 isn't anywhere near even discussing getting eol'd ... that said, 5.18 and earlier are
20:44 ZoffixWork pink_mist, hence my "this sucks" comment :)
20:45 flussence talking about a p5 eol is silly; its current versioning scheme is good for at least half a millenium!
20:47 masak ZoffixWork: maybe not phrase it "Perl 5's last release"...? :)
20:48 masak ZoffixWork: too easily misunderstood, even with the rest of your message
20:48 ZoffixWork masak, fixed. Thanks :)
20:48 tokuhirom joined #perl6
20:48 n0tjack try permutations(3)
20:49 pink_mist you already said =)
20:50 dha Yeah. It looks to me like that version of permutations (and combinations) should be in Int, rather than List. That List has a permutations (and combinations) method but the sub version works on integers is confusing as heck.
20:50 dha (YMMV)
20:51 laouji joined #perl6
20:52 n0tjack pink_mist: I know, I hit up-arrow in the wrong terminal ;)
20:53 n0tjack I don't get why sub foo(Real @values, Int $r) { ... } doesn't match foo(array_of_reals, 10)
20:54 mrsolo joined #perl6
20:56 FROGGS n0tjack: does array_of_reals just happen to contain Reals or is it typed?
20:56 n0tjack it's typed
20:57 n0tjack my Real @vals = (1.1,2,3.3);
20:57 FROGGS m: my Real @foo; sub bar(Real @bar) { }; bar @foo
20:57 camelia rakudo-moar c8c613: ( no output )
20:57 FROGGS m: my Real @foo = (1.1,2,3.3); sub bar(Real @bar) { }; bar @foo
20:57 camelia rakudo-moar c8c613: ( no output )
20:57 FROGGS m: my Real @foo = (1.1,2,3.3); sub bar(Real @bar, Int) { }; bar @foo, 1
20:57 camelia rakudo-moar c8c613: ( no output )
20:57 FROGGS it does work here...
20:58 n0tjack weird, I must be doing something else wrong
20:58 n0tjack I'm using multis, maybe I screwed something up there
20:59 n0tjack https://gist.github.com/ano​nymous/634472baa623d340ca30
21:00 dha joined #perl6
21:00 FROGGS m: https://gist.github.com/ano​nymous/634472baa623d340ca30
21:00 camelia rakudo-moar c8c613: OUTPUT«4␤4␤7␤Cannot call ndr(List); none of these signatures match:␤    (Real $value, Int $radix = { ... })␤    (Real @values, Int $radix = { ... })␤  in block <unit> at /tmp/I423hsWAMq:16␤␤»
21:00 dha bah.
21:00 FROGGS n0tjack: remove the whitespace in line 16?
21:01 FROGGS n0tjack: that is where the List is coming from
21:01 n0tjack FROGGS: jesus, thanks. that was going to drive me nuts.
21:01 FROGGS *g*
21:02 dha The Lock.unlock method has this signature in the docs: "method lock(Lock:D:)" I assume that *should* be "unlock"
21:02 lizmat dha: I think you would be correct there
21:03 dha I will change that, then.
21:03 lizmat looks like a copy-pasto
21:03 kjs_ joined #perl6
21:04 FROGGS gnight #perl6... I'm about to dream about bounded serialization
21:04 lizmat gnight FROGGS
21:05 lichtkind_ good night
21:06 japhb joined #perl6
21:06 dalek doc: cce1d92 | (David H. Adler)++ | lib/Type/ (5 files):
21:06 dalek doc: Added usage statements to Types Iterable.pod through Lock.pod
21:06 dalek doc: review: https://github.com/perl6/doc/commit/cce1d92663
21:06 dalek doc: 72ca69b | (David H. Adler)++ | lib/Type/ (5 files):
21:06 dalek doc: Merge branch 'usage_statements'
21:06 dalek doc:
21:06 dalek doc: Usage statements for types Iterable through Lock
21:06 dalek doc: review: https://github.com/perl6/doc/commit/72ca69bb53
21:06 dalek doc/usage_statements: cce1d92 | (David H. Adler)++ | lib/Type/ (5 files):
21:06 dalek doc/usage_statements: Added usage statements to Types Iterable.pod through Lock.pod
21:06 dalek doc/usage_statements: review: https://github.com/perl6/doc/commit/cce1d92663
21:07 dalek doc: 5645366 | (David H. Adler)++ | lib/Type/Lock.pod:
21:07 dalek doc: Changed signature for unlock to actually read "unlock" instead of "lock"
21:07 dalek doc: review: https://github.com/perl6/doc/commit/5645366c96
21:09 jdv79 nine: i agree.  a good start!
21:10 dalek doc/usage_statements: d01bd8b | (David H. Adler)++ | lib/Type/Match.pod:
21:10 dalek doc/usage_statements: Added usage statement to the one method with a signature in Match.pod
21:10 dalek doc/usage_statements: review: https://github.com/perl6/doc/commit/d01bd8bfef
21:10 telex joined #perl6
21:12 jkva joined #perl6
21:15 [Coke] dha: are you building the docs at all, or just editing the text?
21:16 dha editing the text. I guess I should do a build at some point and see what happens.
21:17 [Coke] wait until I fix it. :)
21:18 dha Oh. ok. What's wrong with it?
21:19 [Coke] it doesn't work.
21:19 [Coke] dies during the buildl
21:20 dalek rakudo/nom: d21bd38 | lizmat++ | src/Perl6/ (3 files):
21:20 dalek rakudo/nom: Make use variables :U work
21:20 dalek rakudo/nom:
21:20 dalek rakudo/nom: And possibly others, but there are no tests for that yet.
21:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d21bd3870f
21:20 jojotus joined #perl6
21:20 laouji joined #perl6
21:21 dha oh. :-)
21:22 masak haha! *luqui* just tweeted me, expressing *surprise* that Perl 6 is releasing this year! :D
21:23 masak (he has co-written some of the specifications)
21:23 lizmat .oO( it was not all in vain :-)
21:23 masak "I haven't been following at all, and had assumed it had been mostly abandoned. Neat." -- luqui
21:24 jojotus hey
21:26 gfldex m: say 'ohai jojotus!';
21:26 camelia rakudo-moar c8c613: OUTPUT«ohai jojotus!␤»
21:26 jojotus :D
21:26 jojotus is there any list of beginner-friendly LHF tasks?
21:27 jojotus I'm familiar with Perl 5 and a bit with Perl 6 from some years back
21:27 gfldex you could what-ever-you-want.pl6 and find bugs in the process
21:27 gfldex *write
21:28 jojotus I think I'll do just that
21:28 * dha has hit the wall for today on docs, me thinks.
21:29 flussence porting a heavily-used p5 package to p6 is a useful (and sometimes easy) way to start...
21:29 mfollett joined #perl6
21:29 flussence you might want to look at https://github.com/perl6/perl6-most-wanted too
21:30 mscha joined #perl6
21:30 jojotus oh, that looks very useful, thanks
21:30 mscha p6: say i**2; say i*i;
21:30 camelia rakudo-moar c8c613: OUTPUT«-1+1.22464679914735e-16i␤-1+0i␤»
21:31 dha That's certainly how *I* got sucked in.
21:31 mscha p6: say i**2 - i*i;
21:31 camelia rakudo-moar c8c613: OUTPUT«0+1.22464679914735e-16i␤»
21:31 lizmat dha++  # for letting him being sucked in  :-)
21:32 llfourn joined #perl6
21:32 mscha p6: say e**(π*i);
21:32 camelia rakudo-moar c8c613: OUTPUT«-1+1.22464679914735e-16i␤»
21:36 dalek rakudo/nom: 98d0913 | lizmat++ | src/core/Failure.pm:
21:36 dalek rakudo/nom: Fix 2 of the 3 Failure related test failures
21:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/98d09135ec
21:36 dha I just hope I'm not messing up the docs too much. :-)
21:37 colomon joined #perl6
21:37 dalek roast: f70ed57 | lizmat++ | S05-grammar/example.t:
21:37 dalek roast: Adjust test count: SKIPped tests also count!
21:37 dalek roast: review: https://github.com/perl6/roast/commit/f70ed579d0
21:41 lizmat m: use attributes :U; class A { has Int $.a = 42 }; A.new
21:41 camelia rakudo-moar c8c613: ( no output )
21:41 donaldh joined #perl6
21:44 masak dha++ # for all the good docs work
21:47 dha joined #perl6
21:48 masak oh, we don't have `perl6 -i` yet?
21:50 laouji joined #perl6
21:52 dha Not noticably.
21:52 TEttinger joined #perl6
21:53 jdv79 dha++
21:53 dha What did I do now? :-)
21:55 bjz joined #perl6
22:00 dalek rakudo/nom: 25d3482 | lizmat++ | src/core/ (2 files):
22:00 dalek rakudo/nom: Fix other Failure related test fail
22:00 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/25d348264d
22:01 dalek roast: 1f0d061 | lizmat++ | S03-operators/orelse.t:
22:01 dalek roast: Line number info now being returned correctly
22:01 dalek roast: review: https://github.com/perl6/roast/commit/1f0d061956
22:03 lizmat m: use attributes :U; class A { has Int $.a = 42 }; A.new
22:03 camelia rakudo-moar 98d091: OUTPUT«Type check failed in assignment to $!a; expected Int but got 42␤  in block <unit> at /tmp/ByUGXlDI7p:1␤␤»
22:04 lizmat error message still needs fixing, but we can now set defauilt smileys on attributes
22:11 kyclark joined #perl6
22:13 lichtkind joined #perl6
22:13 gilesebop joined #perl6
22:14 lichtkind_ joined #perl6
22:25 grondilu m: my @a of Int; my @b; @b[3] = 3;  @a := @b; dd @a
22:25 camelia rakudo-moar 25d348: OUTPUT«Array[Int] @b = [Any, Any, Any, 3]␤»
22:26 * lizmat wonders why https://github.com/tokuhirom/p6-Crust is not in the ecosystem yet ?
22:30 masak lizmat: forgiveness > permission -- please add it :)
22:30 lizmat ok, I will :-)
22:30 jdv79 it was added...
22:30 jdv79 wasnt it
22:31 dalek ecosystem: 07aa811 | lizmat++ | META.list:
22:31 dalek ecosystem: Add tokuhirom/p6-Crust
22:31 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/07aa8119bd
22:31 cognominal joined #perl6
22:32 lizmat jdv79: it's now  :-)
22:32 jdv79 fabulous!
22:33 dalek ecosystem: f8f899c | (Tokuhiro Matsuno)++ | META.list:
22:33 dalek ecosystem: Added Crust
22:33 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/f8f899cc62
22:33 jdv79 thats weird
22:33 jdv79 parallel universe?
22:34 skids joined #perl6
22:35 maddingu1 joined #perl6
22:35 dalek ecosystem: 86eea03 | lizmat++ | META.list:
22:35 dalek ecosystem: Revert "Add tokuhirom/p6-Crust"
22:35 dalek ecosystem:
22:35 dalek ecosystem: This reverts commit 07aa8119bda2ab0d634f405db5a021d0a58e559b.
22:35 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/86eea03c51
22:35 lizmat only 1 in there now  :-)
22:38 donaldh Re: tokuhirom, I noticed from the p6weekly that he wrote Getopt::Tiny which surprised me given we have MAIN.
22:38 donaldh It got me thinking, what features should we highlight on perl6.org
22:40 thou joined #perl6
22:42 pmurias_ joined #perl6
22:43 leedo_ i was thinking MAIN's automatic argument parsing would be great
22:43 leedo_ when i show that to non-perl folks they are impressed
22:46 BenGoldberg joined #perl6
22:46 lizmat good night, #perl6!
22:47 pink_mist good night lizmat
22:48 donaldh Even the classic hello-world can benefit from some automatic argument parsing https://gist.github.com/do​naldh/82a9ab17466e22f8ff12
22:49 gfldex having impressive examples on perl6.org sounds fun
22:50 kyclark joined #perl6
22:51 laouji joined #perl6
22:52 pink_mist is the 'use v6;' needed?
22:52 donaldh nope
22:52 pink_mist right, ok =)
22:53 donaldh But you get a great error message if you accidentally run perl 5
22:53 donaldh Perl v6.0.0 required--this is only v5.18.2, stopped at hello.p6 line 3.
22:53 gfldex and at some point it may end up in the magic file
22:54 thou If STD.pm isn't being developed, it should be removed from http://perl6.org/specification/ side-bar, right?
22:54 tokuhirom joined #perl6
22:55 grondilu STD.pm is very much used by rakudo, I think.
22:56 gfldex Commits on Feb 24, 2015
22:56 gfldex that's quite some time ago
22:56 cognominal After the Perl 6 denial phase,  general perception will shift to the "blind men and the elephant" phase.   https://en.wikipedia.org/wik​i/Blind_men_and_an_elephant  :)
22:57 grondilu STD.pm is edited as often as the rest of rakudo, but it is from times to times.
22:57 grondilu *is not*
22:57 grondilu let me rephrase that
22:57 grondilu STD.pm is *not* edited as often as the rest of rakudo, but it is from times to times.
22:57 grondilu usually byt TimToady
22:58 sitaram_ hi all; I'm pretty new to perl 6 (but not perl 5).  How does perl 6 compare in terms of speed?  I have a plain text program plus data that seems to be at least 2 orders of magnitude slower so I am sure I screwed up somewhere, but thought I'd ask about general impressions of perl 6 (Rakudo, moarvm, 2015-07 version) speed first
22:58 sitaram_ s/plain text program/plain text handling task/
22:58 thou OK, I was prompted to consider this since STD was sorted into the "Historical Compilers" section on the Compilers tab
22:59 grondilu Perl 6 is still slow for most task, but it's improving fast
22:59 grondilu *slower*
23:00 grondilu thou: I'm not sure but I think it's a bit complicated as there are several versions of STD if I'm not mistaken.  The official one serves as a reference or something.
23:00 sitaram_ grondilu: thanks
23:01 gfldex sitaram_: the inliner doesn't inline much, the optimiser doesn't optimise much and the JIT doesn't jit much right now. That will change with time.
23:03 grondilu (hopefully that will change before Xmas)
23:03 sitaram_ gfldex: :)
23:03 donaldh sitaram_: since you're running rakudo on MoarVM, you can profile your program and get a great interactive HTML report.
23:04 gfldex sitaram_: you could also like a nopaste here and we can have a look
23:04 sitaram_ donaldh: naah; I was only playing with a straightforward grep-type task.  I'll paste, as gfldex said.  Give me a minute or three.
23:05 AlexDaniel sitaram_: by the way, although you might not get better performance (comparing to perl5) with regular code, you might try parallelizing it!
23:05 AlexDaniel sitaram_: and since this is pretty easy with perl6, there is a chance that you will get better wall clock time
23:06 AlexDaniel sitaram_: also, most of the execution time is actually startup time, did you account that?
23:07 donaldh sitaram_: it's as easy as perl6 --profile script.p6
23:08 thou grondilu: I hear you, but I also think it's a poor representation to have http://perl6.org/compilers/std-viv show "Note: STD and viv aren't actively developed any more" warning, but also indicate that it is the "official Perl 6 grammar" on the Design page.
23:09 sitaram_ AlexDaniel: informally, I did account for startup and it's still pretty high
23:10 [Coke] thou: good point.
23:10 sitaram_ gfldex: http://paste.fedoraproject.org/276148/44259295 is the coe.  https://dimroc-public.s3.amazonaws.com/etl​-language-comparison/tweets20140416.tar.gz but I worked with only one percent of it (10,000 lines from each file instead of the million in each that exist there)
23:11 sitaram_ this takes 47 seconds.  The perl 5 version... don't ask (about 3.2 seconds for the full dataset.  That would be over 3 orders of magnitude!)
23:11 sitaram_ AlexDaniel: hence why I am assuming startup-time is not what I am seeing here :)
23:11 dalek perl6.org: 8b7bfc9 | coke++ | source/specification/index.html:
23:11 dalek perl6.org: "official" and "historical" not in sync,
23:11 dalek perl6.org: use less confusing language
23:11 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/8b7bfc9a13
23:11 [Coke] thou: ^^
23:12 sitaram_ oops; s/coe/code/ 3 messages above
23:12 TimToady note that we're quite a bit faster than the 2015-07 version already
23:12 grondilu viv very much worked along with STD and really is not developped anymore.  But STD still is used I think.
23:13 TimToady STD was a prototype grammar, and was always meant to be thrown away
23:13 [Coke] grondilu: from observing how it's used, it's a reference for rakudo at this point.
23:13 [Coke] basically, once TimToady started commiting to rakudo...
23:13 AlexDaniel sitaram_: also, are you running on 32-bit or 64-bit system?
23:13 TimToady and hardly even that; rakudo has surpassed STD in many respects
23:15 sitaram_ AlexDaniel: aah that could be it; this is 32-bits.  Thanks for reminding me of that
23:15 AlexDaniel sitaram_: well, the thing is that there is no JIT for 32-bit, as far as I know
23:16 AlexDaniel yet?
23:16 TimToady 2015-07 was pre-GLR, so slow on list processing
23:16 AlexDaniel sitaram_: there is nothing wrong with your code, I think
23:17 rurban joined #perl6
23:17 AlexDaniel sit
23:17 AlexDaniel sitaram_: so, have you tried profiling it? What does it say?
23:18 sitaram_ AlexDaniel: looking at the HTML; overview page says no JIT (JIT bar is 0%).  I'll take a look on a 64-bit system when I get to work
23:19 sitaram_ "JIT-compiled frames [blank color bar]", then "0% (0)"
23:19 AlexDaniel sitaram_: even though there is no JIT, it shouldn't be as slow as it is right now, I think. Where did it spend most of its time?
23:21 gfldex sitaram_: i took the first 10000 lines of the first tweet file and get real    0m3.574s
23:21 gfldex user    0m3.520s
23:21 gfldex sys     0m0.052s
23:22 AlexDaniel gfldex: woah!
23:22 sitaram_ AlexDaniel: which part of the HTML would tell me?  The "Routines" part seems to be internals
23:23 sitaram_ gfldex: that would make 3*13 seconds for all 13 files (which is what I used)
23:23 [Coke] profiling includes internals. There might want to be a way to elide those from the profile html at some point.
23:23 masak 'night, #perl6
23:23 sitaram_ gfldex: I assume you're on 64-bit, too :(
23:23 sitaram_ erm
23:23 sitaram_ gfldex: I assume you're not on 32-bit, too :(
23:24 dalek perl6.org: a888709 | (Tim Smith)++ | source/specification/index.html:
23:24 dalek perl6.org: Move roast above STD.pm in Design sidebar
23:24 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/a888709204
23:24 thou [Coke]: Thanks, that works
23:24 gfldex it's 64bit but a fairly slow AMD Athlon(tm) II X2 260 Processor
23:24 AlexDaniel sitaram_: It's OK if there are internals, because I think that the internals are slowing you down
23:25 AlexDaniel sitaram_: as I've said, I see nothing wrong with your code
23:25 [Coke] I would definitely retry on a recent version.
23:26 AlexDaniel sitaram_: but if you are seeing some performance issue which is just as bad, then perhaps it is worth reporting it!
23:26 sitaram_ [Coke]: and on 64-bit :)  No point looking at it if there's no JIT!
23:27 AlexDaniel there was some project that compared the code speed across different perl6 versions
23:27 AlexDaniel and also perl5…
23:27 AlexDaniel is it dead now?
23:27 sitaram_ AlexDaniel: I'll try 64-bit on a more recent version this weekend
23:27 AlexDaniel ah no, hm, not quite: https://github.com/japhb/perl6-bench
23:33 AlexDaniel sitaram_: if you find that it is still *really* slow even with JIT, then just submit a bug report. Maybe it would also make sense to submit a test for perl6-bench, so that you can see how it will improve over time…
23:34 AlexDaniel sitaram_: especially considering that you probably have a perl5 version of the same code :)
23:36 laouji joined #perl6
23:37 sitaram_ AlexDaniel: I do indeed; it takes about 6 second for the full set (not 3 seconds; I mis-typed that earlier).  Same basic code -- this isn't a complex "algorithm" :)
23:37 sitaram_ I'll do that; it'll have to be the weekend or so though :(
23:38 AlexDaniel sitaram_: it does not have to be a complex algorithm :)
23:39 AlexDaniel sitaram_: in fact, a golfed-down version is preferable :)
23:40 TimToady well, I can see several reasons P5 would do much better on that particular problem than P6 in its current state; primarily because P5 goes to great pains to avoid getting into the regex engine if it can help it
23:40 AlexDaniel for a bug report
23:41 TimToady and also because P5 can process UTF-8 in it's raw form as if it were ASCII when you aren't actually searching for anything outside of ASCII
23:42 sitaram_ AlexDaniel: if you mean https://github.com/japhb/perl6-bench, I'd like to first ask whoever runs it how they want the data I suppose.  The largest file in that repo right now is less than a MB; I hesitate to add 13MB to it in one shot!
23:43 AlexDaniel sitaram_: I'd say pre-generate it automatically, it does not have to be some real data
23:43 sitaram_ aah ok
23:43 sitaram_ sure
23:43 ShimmerFairy TimToady: I know you mentioned $= for pod being a potential issue with things like  $ = 42  earlier, and I just thought that we could change the Pod twigil to $|pod etc. if needed. (pipe being in the leading declarative comment #| , compared to trailing #=)
23:44 TimToady I decided that a $= prefix was kinda silly when you can just use the item function
23:44 sitaram_ thanks everyone; it's just gone 5am here and my day starts...
23:45 TimToady I take it you're in, like, India or so
23:45 sitaram_ TimToady: yup :)
23:45 TimToady well, have a great day!
23:45 flussence wouldn't pod data be more appropriate as a simple $? variable, since it's compile-time constant and all...?
23:45 AlexDaniel sitaram_: http://www.jnthn.net/papers/​2014-yapceu-performance.pdf
23:45 ShimmerFairy TimToady: ok. Just thought I'd bring up a possible alternate twigil if it turned out to be needed :)
23:46 AlexDaniel sitaram_: starting from slide 77 there are some impressive graphs
23:46 sitaram_ the only country (AFAIK) with a fractional-hour offset from GMT (actually there are others I just don't know which ones)
23:46 sitaram_ AlexDaniel: downloading for later, I'm afraid.  Thanks
23:46 AlexDaniel sitaram_: just wanted to demonstrate what all this perl6-bench stuff is about ;)
23:47 dalek perl6.org: ed8ca15 | (Tim Smith)++ | source/compilers/index.html:
23:47 dalek perl6.org: Mention that Rakudo is built on NQP
23:47 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/ed8ca15288
23:48 sitaram_ TimToady: thanks :)  You too
23:49 sitaram_ AlexDaniel (and others): thanks for all the ideas.  I'll do something over the weekend or so, once I grab a 64-bit machine somewhere.
23:49 AlexDaniel good luck :)
23:50 * sitaram_ is stuck to 32 on my day-to-day laptop because of bl**dy webex.  Flaky on 64, but $job pretty much requires it.  <sigh>
23:50 timotimo i have no idea what webex is :S
23:51 ][Sno][ joined #perl6
23:51 flussence I'm guessing one of those business programs people end up relying on that ends up not getting an update for 10..Inf years... seen a few myself :)
23:52 sitaram_ lucky you :)  (though TBH it isn't that bad for discussing stuff; it's just de rigeur to complain about anything "corporate" ;-)
23:52 * AlexDaniel is also on 32-bit, sipmly because it takes time to relearn to click on another download link…
23:53 dalek perl6.org: 9a22964 | (Tim Smith)++ | source/index.html:
23:53 dalek perl6.org: Describe Camelia as "plucky"
23:53 dalek perl6.org:
23:53 dalek perl6.org: Fixes #32.
23:53 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/9a22964e46
23:53 cestdiego joined #perl6
23:53 cestdiego p6: say 3;
23:53 camelia rakudo-moar 25d348: OUTPUT«3␤»
23:56 ShimmerFairy m: say "0123456789" ~~ /<:Numeric_Value(0..7)>/    # something tells me this is wrong :)
23:56 camelia rakudo-moar 25d348: OUTPUT«「0」␤»
23:56 ShimmerFairy m: say "0123456789" ~~ /<:Numeric_Value(0..7)>+/    # something tells me this is wrong :)
23:56 camelia rakudo-moar 25d348: OUTPUT«「0123456」␤»
23:56 flussence .oO( In a fit of insanity, I have decided to do a --profile-compile of CORE.setting under callgrind... )
23:56 ShimmerFairy m: say "0123456789" ~~ /<:Numeric_Value(0..^7)>+/    # even more perplexing
23:56 camelia rakudo-moar 25d348: OUTPUT«「0123456」␤»
23:57 ShimmerFairy m: say "0123456789" ~~ /<:Numeric_Value(0..^8)>+/    # even more perplexing
23:57 camelia rakudo-moar 25d348: OUTPUT«「01234567」␤»

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo