Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-05-05

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 timotimo OH!
00:00 timotimo of course
00:00 diakopter two is the name/key, three is the value
00:00 timotimo "file", "nofile", True?
00:00 timotimo yes
00:00 diakopter yes, it defaults to True
00:00 timotimo # Error: Type check failed in assignment to '$a'; expected 'Tree' but got 'Tree' (Tree and Tree|7052662459765981306 respectively)
00:00 diakopter says the spec anyway
00:00 timotimo why does one have a WHICH with and one a WHICH without a number?
00:01 diakopter o_O
00:01 timotimo hopefully one of the experienced rakudo-guts-wranglers sees this is the backlog and knows what's going on
00:01 timotimo i'll go to bed :)
00:02 FROGGS ya, me too
00:02 timotimo gute nacht, FROGGS :)
00:02 timotimo gnite, rest
00:02 FROGGS schlaf gut :o)
00:02 FROGGS gnight all
00:02 timotimo gebe mir mühe :3
00:23 kurahaupo joined #perl6
00:45 census gootnight FROGGS
00:48 frdmn joined #perl6
01:03 dalek roast: c6dcb13 | (Brent Laabs)++ | S32-io/io-spec- (3 files):
01:03 dalek roast: 405 IO::Spec tests
01:03 dalek roast: review: https://github.com/perl6/roast/commit/c6dcb13db2
01:04 colomon labster++
01:05 labster most of those come from Perl 5.
01:06 colomon so?  no one had raided them in the previous decade.  so I say labster++
01:06 labster I feel like a Viking raider.
01:07 census hahah
01:07 census viking
01:07 census indiana jones
01:07 census or a robin hood
01:09 labster Maybe Arsène Lupin (but more like Lupin III, probably)
01:10 TimToady The Scarlet Pimpernel
01:14 MrMeek-afk joined #perl6
01:14 labster Exactly!  Saving blue-bloods from the guillotine, dressed like a dandy.  But with tests.
01:15 kurahaupo joined #perl6
01:18 berekuk joined #perl6
01:23 lue joined #perl6
01:24 FROGGS_ joined #perl6
01:56 thou joined #perl6
02:15 zacts joined #perl6
02:58 kurahaupo joined #perl6
03:25 kurahaupo joined #perl6
03:53 preflex_ joined #perl6
04:01 jeffreykegler joined #perl6
04:03 frd|afk joined #perl6
04:25 Psyche^ joined #perl6
05:06 kaare_ joined #perl6
05:20 dmol joined #perl6
05:55 zby_home joined #perl6
06:21 CharellKing joined #perl6
06:25 xinming joined #perl6
06:28 xinming joined #perl6
06:42 CharellKing left #perl6
06:51 dalek roast: 09bd951 | (Brent Laabs)++ | S32-io/io-path-unix.t:
06:51 dalek roast: added IO::Path::Unix tests
06:51 dalek roast: review: https://github.com/perl6/roast/commit/09bd951aea
07:33 dalek DBIish: 8a82a8d | moritz++ | lib/DBDish/Pg.pm6:
07:33 dalek DBIish: [Pg] reafctoring handling status code
07:33 dalek DBIish: review: https://github.com/perl6/DBIish/commit/8a82a8d166
07:45 moritz http://www.debian.org/News/2013/20130504 \o/ wheezy released!
08:21 donaldh joined #perl6
08:21 diakopter any moose folks around?
08:25 labster sorry, I'm not canadian.
08:29 FROGGS diakopter: no, sorry
08:29 diakopter nm, I found #moose-dev
08:35 domidumont joined #perl6
08:41 rindolf joined #perl6
08:42 labster well, just found my first bug in the IO::Spec stuff thanks to the tests.  It seems that someone changed the behavior of the ? quantifier while I wasn't looking.
08:42 moritz yes
08:42 moritz it used to generate a zero- or one-element list, now it generates Nil or Match
08:43 labster It didn't actually produce wrong results, oddly enough; it just complained about Any in string context.
08:55 domidumont joined #perl6
09:00 labster Well, I have a pull request up for it.  A two character swap.
09:02 dalek rakudo/nom: 1b7852a | (Brent Laabs)++ | src/core/IO/Spec/Win32.pm:
09:02 dalek rakudo/nom: fix IO::Spec::Win32 warn due to ?-quantifier
09:02 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1b7852a45c
09:02 dalek rakudo/nom: 88f9c9e | moritz++ | src/core/IO/Spec/Win32.pm:
09:02 dalek rakudo/nom: Merge pull request #133 from labster/nom
09:02 dalek rakudo/nom:
09:02 dalek rakudo/nom: fix IO::Spec::Win32 warn due to ?-quantifier
09:02 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/88f9c9e957
09:04 Nom- Anyone know the reasoning behind the last statement in a block having an optional semicolon?
09:06 moritz Nom-: think of semicolons as statement separators, not statement terminators, and it suddenly makes sense
09:08 Nom- ok
09:08 kurahaupo joined #perl6
09:08 moritz jnthn: how hard would it be to implement leave(), and would approach would make sense?
09:09 spider-mario joined #perl6
09:09 moritz s/would/which/
09:14 moritz r: my %h = a => 42, b => 1; say %h.sort.perl
09:14 camelia rakudo 88f9c9: OUTPUT«("a" => 42, "b" => 1)␤»
09:17 dalek DBIish: ceb2f8e | moritz++ | t/99-common.pl6:
09:17 dalek DBIish: [t] do not compare hashes by string
09:17 dalek DBIish: review: https://github.com/perl6/DBIish/commit/ceb2f8ea10
09:19 Nom- all good and well, but i'm struggling to wrap my head around how to correctly handle all scenarios in this experment i'm doing :)
09:20 Nom- It's definitely simpler if they're not optional, but i'll get there
09:20 telex joined #perl6
09:20 tangentstorm left #perl6
09:21 FROGGS Nom-: think of a CSV file, if there where was a , at the end, would it mean it terminates the line or could it mean that there is an empty field after that?
09:23 Nom- Yeah, I know how I *want* to do it... I think my issue is I either can't work out how to express it in this grammar i'm toying with, or it doesn't support it
09:23 Nom- Not sure which yet... still diving through it's code to see which is which
09:23 moritz Nom-: are you trying to parse Perl 6 code?
09:24 Nom- NQP
09:24 dalek DBIish: d7f171d | moritz++ | lib/DBDish/Pg.pm6:
09:24 dalek DBIish: [Pg] fix column_names
09:24 dalek DBIish: review: https://github.com/perl6/DBIish/commit/d7f171d35c
09:24 Nom- It's a tad simpler as an experiment than Perl6 itself :)
09:24 FROGGS Nom-: uhh, why if I'm allowed to ask?
09:26 dmol joined #perl6
09:26 Nom- I like punishing myself it seems :)
09:26 FROGGS if it is just about parsing a random language, you may start with an old basic (one with line numbers for example)
09:31 Nom- Nah not random..
09:32 Nom- I'm hoping to eventually be able to contribute... but I've got a bit of learning to do -- most of my programming career has been around doing Web Apps and stuff .. compilers and parsers are new to me :)
09:32 Nom- But I like a challenge... just some hurdles that I need to jump over
09:37 berekuk joined #perl6
09:39 masak antenoon, #perl6
09:47 Nom- What's an "anternoon" ;)
09:48 diakopter well, ante- is the Latin prefix for "before"
09:48 diakopter so it's a pun on 'afternoon'
09:48 berekuk joined #perl6
09:49 huf oh wow this is a word i've been needing since i learned the words "morning" and "afternoon"
09:52 Gothmog_ joined #perl6
09:52 masak you're welcome ;)
09:53 huf i never could really accept that 11:00 is still morning :)
09:53 masak yeah, it's somewhere around there I draw the line, too.
09:57 masak "they've all gone crazy / mourning all day and mourning all night" -- Lloyd-Webber's Evita
09:57 huf sounds like summer in st petersburg
10:08 kivutar joined #perl6
10:10 jtpalmer_ joined #perl6
10:11 __sri joined #perl6
10:11 hrbkid_ joined #perl6
10:12 rhr_ joined #perl6
10:12 charsbar_______ joined #perl6
10:13 moritz_ joined #perl6
10:13 xdbr joined #perl6
10:13 Juerd_ joined #perl6
10:14 Subterra joined #perl6
10:14 awwaiid_ joined #perl6
10:14 integral_ joined #perl6
10:14 integral_ joined #perl6
10:17 lee__ joined #perl6
10:17 timotimo whoa
10:24 ivan``_ joined #perl6
10:24 integral joined #perl6
10:24 kurahaupo joined #perl6
10:28 moritz_ joined #perl6
10:28 jtpalmer_ joined #perl6
10:28 rindolf joined #perl6
10:28 sftp joined #perl6
10:28 Nom- joined #perl6
10:28 Bucciarati joined #perl6
10:28 mikemol joined #perl6
10:28 geekosaur joined #perl6
10:28 LordVorp joined #perl6
10:28 markov joined #perl6
10:28 arnsholt joined #perl6
10:28 Yappo________ joined #perl6
10:28 estrabd_ joined #perl6
10:28 Pleiades` joined #perl6
10:28 bonsaikitten joined #perl6
10:28 gabriel_ joined #perl6
10:28 hoelzro joined #perl6
10:28 mls joined #perl6
10:28 yoleaux joined #perl6
10:28 dpk joined #perl6
10:28 ironcamel joined #perl6
10:28 Rix joined #perl6
10:28 wtw joined #perl6
10:28 felipe joined #perl6
10:28 sjn joined #perl6
10:28 labster joined #perl6
10:28 jlaire joined #perl6
10:28 zamolxes_ joined #perl6
10:28 yves_ joined #perl6
10:28 atrodo joined #perl6
10:28 breinbaas joined #perl6
10:28 chee joined #perl6
10:28 szbalint joined #perl6
10:28 kcwu joined #perl6
10:28 tomaw joined #perl6
10:28 cotto joined #perl6
10:28 scottp joined #perl6
10:33 ivan``_ joined #perl6
10:33 integral joined #perl6
10:33 [particle]1 joined #perl6
10:33 Chillance joined #perl6
10:33 nyuszika7h_ joined #perl6
10:34 moritz_ joined #perl6
10:34 jtpalmer_ joined #perl6
10:34 rindolf joined #perl6
10:34 sftp joined #perl6
10:34 Nom- joined #perl6
10:34 Bucciarati joined #perl6
10:34 mikemol joined #perl6
10:34 geekosaur joined #perl6
10:34 LordVorp joined #perl6
10:34 markov joined #perl6
10:34 arnsholt joined #perl6
10:34 Yappo________ joined #perl6
10:34 estrabd_ joined #perl6
10:34 Pleiades` joined #perl6
10:34 bonsaikitten joined #perl6
10:34 gabriel_ joined #perl6
10:34 hoelzro joined #perl6
10:34 mls joined #perl6
10:34 yoleaux joined #perl6
10:34 dpk joined #perl6
10:34 ironcamel joined #perl6
10:34 Rix joined #perl6
10:34 wtw joined #perl6
10:34 felipe joined #perl6
10:34 sjn joined #perl6
10:34 labster joined #perl6
10:34 jlaire joined #perl6
10:34 zamolxes_ joined #perl6
10:34 yves_ joined #perl6
10:34 atrodo joined #perl6
10:34 breinbaas joined #perl6
10:34 chee joined #perl6
10:34 szbalint joined #perl6
10:34 kcwu joined #perl6
10:34 tomaw joined #perl6
10:34 cotto joined #perl6
10:34 scottp joined #perl6
10:36 sciurius joined #perl6
10:36 nyuszika7h joined #perl6
10:37 daniel-s_ joined #perl6
10:39 Chillance joined #perl6
10:39 [particle]1 joined #perl6
10:39 Juerd joined #perl6
10:39 charsbar_______ joined #perl6
10:39 __sri joined #perl6
10:39 kivutar joined #perl6
10:39 berekuk joined #perl6
10:39 dmol joined #perl6
10:39 telex joined #perl6
10:39 Patterner joined #perl6
10:39 preflex joined #perl6
10:39 lue joined #perl6
10:39 japhb_ joined #perl6
10:39 woolfy joined #perl6
10:39 skids joined #perl6
10:39 REPLeffect joined #perl6
10:39 jaldhar joined #perl6
10:39 arlinius joined #perl6
10:39 cognominal joined #perl6
10:39 lizmat joined #perl6
10:39 araujo joined #perl6
10:39 mtk joined #perl6
10:39 bakedb joined #perl6
10:39 xenoterracide joined #perl6
10:39 espent joined #perl6
10:39 Kharec joined #perl6
10:39 wooden joined #perl6
10:39 bruges joined #perl6
10:39 robinsmidsrod joined #perl6
10:39 dalek joined #perl6
10:39 Celelibi joined #perl6
10:39 camelia joined #perl6
10:39 raiph joined #perl6
10:39 `patch` joined #perl6
10:39 jerome_ joined #perl6
10:39 stevan_ joined #perl6
10:39 prammer joined #perl6
10:39 daniel-s joined #perl6
10:39 pmichaud joined #perl6
10:39 mathw joined #perl6
10:39 baest joined #perl6
10:39 hugme joined #perl6
10:39 tadzik joined #perl6
10:39 PerlJam joined #perl6
10:39 masak joined #perl6
10:39 betterworld joined #perl6
10:39 ruoso joined #perl6
10:39 flussence joined #perl6
10:39 colomon joined #perl6
10:39 rurban joined #perl6
10:39 ingy joined #perl6
10:39 sjohnson joined #perl6
10:39 revdiablo joined #perl6
10:39 kshannon joined #perl6
10:39 snarkyboojum joined #perl6
10:39 TimToady joined #perl6
10:39 Maddingue joined #perl6
10:39 vaelxon joined #perl6
10:39 SHODAN joined #perl6
10:39 bloonix joined #perl6
10:39 swarley joined #perl6
10:39 c1sung joined #perl6
10:39 patspam_ joined #perl6
10:39 BooK joined #perl6
10:39 cxreg joined #perl6
10:39 simcop2387 joined #perl6
10:39 takesako___ joined #perl6
10:39 jfried joined #perl6
10:39 lestrrat joined #perl6
10:39 GlitchMr joined #perl6
10:39 smash joined #perl6
10:39 sunnavy joined #perl6
10:39 genehack joined #perl6
10:39 huf joined #perl6
10:39 larks joined #perl6
10:39 japhb joined #perl6
10:39 sdgvf_ joined #perl6
10:39 anocelot joined #perl6
10:39 apejens joined #perl6
10:39 mikec__ joined #perl6
10:39 ponbiki joined #perl6
10:39 risou joined #perl6
10:40 sivoais joined #perl6
10:41 salv0 joined #perl6
10:42 sivoais joined #perl6
10:42 nyuszika7h joined #perl6
10:44 raiph joined #perl6
10:50 sivoais joined #perl6
10:52 gcole joined #perl6
10:56 cognominal joined #perl6
11:01 sivoais joined #perl6
11:04 masak nwc10++ # rebasing a merged scenario for better bisectability
11:04 masak I had never thought of doing that -- now I must add a slide to our git course :P
11:08 masak general question: if I want to apply a patch to parrot/ in Rakudo, what's the easiest way after that to tell Rakudo's Configure.pl to re-build parrot (and nqp)?
11:09 66MAACJVP joined #perl6
11:10 arnsholt Hmm. Good question
11:10 nyuszika7h joined #perl6
11:11 masak nwc10: curious question: how do you defined "left" and "right" in the context of a merge?
11:12 arnsholt I guess the assignment of current branch and branch being merged in to either of those terms is arbitrary
11:12 sivoais joined #perl6
11:12 arnsholt Depends entirely on how you draw the diagram on paper, I suppose =)
11:12 masak that's what I'm thinking.
11:14 timotimo that's one of the points where git gets loads of criticism; that you can't tell any more afterwards
11:14 PacoAir joined #perl6
11:15 masak timotimo: that's not true, though.
11:16 masak timotimo: in a merge commit, the first parent is the commit you merged into, and the subsequent ones are the commits you merged.
11:16 timotimo mercurial proponents sure keep wiggling that argument at git proponents :)
11:16 masak if you have a URL where that argument is presented, I'd be interested to read it.
11:17 masak timotimo: ooc, do you know if mercurial users use the terms "left" and "right" about merges?
11:18 masak by the way, "java.lang.RuntimeException: Method code too large" is both funny, scary, and worrying all at the same time.
11:18 masak jnthn, what are you making the JVM do? :P
11:19 masak and, heh, the Jython people have found that one too: http://bugs.jython.org/issue1891
11:20 diakopter No, JVM, *you're* too large
11:21 masak :P
11:22 sivoais joined #perl6
11:31 nwc10 masak: left and right, as in
11:31 nwc10 Merge: 72df616 5cf0134
11:31 nwc10 ^left   ^right
11:31 nwc10 I think that "left" or "leftmost" is used somewhere in the git docs
11:32 masak oh, ok. didn't find it in 'git merge --help'
11:32 masak anyway, that clarifies you usage. thanks.
11:33 sivoais joined #perl6
11:37 preflex_ joined #perl6
11:39 masak your*
11:40 moritz_ r: say Date.new(2013, 1, 31).delta(2, month)
11:40 camelia rakudo 88f9c9: OUTPUT«2013-03-31␤»
11:44 sivoais joined #perl6
11:45 pecastro joined #perl6
11:45 rindolf left #perl6
11:56 sivoais joined #perl6
12:07 sivoais joined #perl6
12:15 masak moritz_: do you think spec'ing an object which represented a bunch on deltas on different time scales would be useful? some kind of "duration" or "time span" object?
12:15 moritz_ masak: I don't know
12:16 moritz_ masak: but maybe I'll find out soon :-)
12:16 timotimo i don't have a link for that argument right now, sorry
12:17 moritz_ I'm implementing what I outlined here: http://irclog.perlgeek.de/perl6/2013-05-04#i_7019279
12:17 timotimo moritz_: any clue whatsoever about this error? # Error: Type check failed in assignment to '$a'; expected 'Maybe' but got 'Maybe' (Maybe and Maybe|7052662458959412579 respectively)
12:17 timotimo (i added the WHICH output to the error message method)
12:17 moritz_ looks like one is a type object and the other an instance
12:18 moritz_ so maybe some definedness thingy?
12:18 moritz_ Maybe:D vs. Maybe?
12:18 timotimo that might make sense. in that case, it's even more unhelpful to get the WHICH output
12:18 timotimo because it will always expect an undefined thing and get a defined thing or an undefined thing
12:19 timotimo as in, you wouldn't say my 1 $foo = 1; you'd say my Int $foo = 1;
12:19 sivoais joined #perl6
12:19 moritz_ arnsholt: I have some code that uses DBDIsh::SQLite and segfaults every time I run it
12:20 arnsholt moritz_: Gimme! =)
12:20 timotimo if you would like to go bug hunting, you can grab my EXPORT_sub branch from github.com/timo/ADT and run t/02-EXPORT.t
12:20 moritz_ \o/
12:20 arnsholt That was nothing short of perfect timing, BTW
12:20 arnsholt I've literally just come back from a walk outside
12:21 timotimo i'll rest my wrist now. it hurts :(
12:21 masak moritz_++ # donor-o-meter
12:22 moritz_ arnsholt: ok, steps to reproduce:
12:22 moritz_ 1) git clone git@github.com:moritz/donate-o-meter.git
12:22 moritz_ 2) cd donate-o-meter
12:22 zby_home joined #perl6
12:22 moritz_ 3) sqlite3 db.sqlite3 < schema.sql
12:22 moritz_ 4) sqlite3 db.sqlite3 < irclog-data.sql
12:22 kaare_ joined #perl6
12:22 moritz_ 5) panda install DBIish
12:23 moritz_ 6) perl6 balance.pl
12:23 masak moritz_: having an object for time spans would re-introduce the ordering issues we avoided with .delta -- but I don't think it'd be so bad, actually. there are two "obvious" orders, and we can just pick the more sensible of those. and most of the "add or subtract time span to/from DateTime" logic can be delegated to .delta
12:23 FROGGS moritz_: where is that donor-o-meter?
12:23 masak FROGGS: it's not complete yet, IIUC.
12:23 FROGGS ahh, k
12:23 moritz_ FROGGS: I've just started implementing it, at git@github.com:moritz/donate-o-meter.git
12:24 moritz_ FROGGS: once it works, you'll be able to see it on the irc log page
12:24 FROGGS on the today-page too?
12:24 FROGGS otherwise I'd miss it
12:24 moritz_ yes
12:24 FROGGS k, sounds good
12:24 * arnsholt starts updating his Perl 6 stuff
12:24 moritz_ but it's a long way to go
12:25 moritz_ arnsholt: I've run it with  This is perl6 version 2013.02.1-90-g1c99395 built on parrot 4.10.0 revision RELEASE_4_10_0
12:26 moritz_ masak: the ordering issue can be avoided by just storing a list of (value, unit) pairs, and always processing them in the same order
12:29 arnsholt moritz_: Recent-ish git version, right?
12:30 moritz_ arnsholt: February
12:30 sivoais joined #perl6
12:31 masak moritz_: that's a double-edged sword, though. advantage: more exact in some cases. disadvantage: timespan addition doesn't commute.
12:31 moritz_ masak: advantage: timestamp addition doesn't commute.
12:32 moritz_ it doesn't commute, period.
12:32 moritz_ if you write code where it commutes, it can't be correct
12:34 moritz_ s/timestamp/durationi/
12:34 moritz_ *duration
12:34 moritz_ r: say Date max Date.today
12:34 camelia rakudo 88f9c9: OUTPUT«2013-05-05␤»
12:34 geekosaur the result is a durr-ation
12:35 moritz_ r: say Date min Date.today
12:35 camelia rakudo 88f9c9: OUTPUT«2013-05-05␤»
12:37 dmol !karma
12:39 masak moritz_: you may very well be right, but I don't see it. my mental view of duration objects is that they are "detached" from any actual point on the (civil) timeline. so you can talk about durations without having to care about leap years and leap seconds, and only at the end do you apply it back down and start caring again.
12:39 masak moritz_: under that model I do believe duration addition commutes.
12:40 moritz_ masak: ah, my mental model is a bit different. For me a Duration is like a diff that only makes sense in context of applying it to a certain Date(Time)
12:41 FROGGS btw, I calculate fees for 550 employees (using p5's DateTime::Span and firends), and you really need span objects
12:41 FROGGS so for example I useally create spans like: 1 day, but this doesnt mean it is actually 24 hours long
12:42 sivoais joined #perl6
12:42 FROGGS only at the time I do: $spanset->intersection( $span_one_day ) it become a 'real time'
12:44 masak moritz_: oh, but (again according to my model) that loses one of the big advantages of durations: being able to say "as long after DateTime Z as DateTime Y is after DateTime Z".
12:45 masak moritz_: use case: scheduling software: want to move an appointment to some other datetime. want to calculate the end of that appointment.
12:46 moritz_ masak: good and valid point
12:46 masak FROGGS: I like the word "span" better than "duration", I think.
12:46 masak it feels more neutral, somehow.
12:47 FROGGS cool, so I have to grep/replace on word less then *g*
12:47 gtodd FROGGS: you have 550 employees?!
12:47 FROGGS gtodd: well, not me personally
12:47 FROGGS the company I am working for
12:47 gtodd FROGGS: would be cool if CEO's used IRC :)
12:48 FROGGS maybe it is a german idom to say 'my company' and 'my employees'
12:48 FROGGS err, not 'my employees' actually
12:48 gtodd ah yes ok   ... my coworkers,  fellow employees, etc
12:48 moritz_ I found a really nice implementation of calculating how much recurring transactions contribute to a given time span: https://github.com/moritz/donate-o-meter/blob/master/balance.pl#L55
12:49 moritz_ it boils down to    return $amount * elems($start, *.delta($interval, $unit) ...^ *>$end);
12:49 * arnsholt is somewhat embarrased to admit that he has never used Panda before now
12:49 masak moritz_: nice!
12:49 moritz_ arnsholt: you don't actually *need* panda; if you install zavolaj first and then DBIish, you are fine too
12:49 masak every day Perl 6 just grows nicer somehow.
12:50 arnsholt moritz_: I figure it's a good time as any to install it =)
12:51 countley joined #perl6
12:53 sivoais joined #perl6
12:54 berekuk joined #perl6
12:54 arnsholt Oh, FFS. Ubuntu has sqlite 2
12:54 arnsholt moritz_: Any idea if your stuff will work with sqlite2 instead?
12:56 moritz_ wtf? sqlite2 is, like, decades dead, isn't it?
12:57 moritz_ arnsholt: I'm sure ubuntu has sqlite3 (maybe under the name 'sqlite' though)
12:58 moritz_ the SQL would likely work with sqlite2, but the C api (and thus DBD::SQLite) would not
12:58 cosimo arnsholt: sqlite3 maybe
12:58 arnsholt Bah.
13:00 arnsholt Right. That's libsqlite3-dev installed at least
13:00 * geekosaur is looking at his mint (ubuntu derivative) system and not seeing sqlite2...
13:00 arnsholt It's just called sqlite
13:00 arnsholt sqlite is sqlite2 and sqlite3 is the new one
13:01 arnsholt It's just that apt-cache search is useless
13:01 geekosaur moo? apt-cache search tells me 'sqlite' is a cli, not a library
13:01 moritz_ geekosaur: the library is probably in a separate package
13:01 arnsholt So I missed the 3-suffixed versions in the midst of the more or less irrelevant stuff
13:01 arnsholt YEah
13:01 arnsholt libsqlite3
13:01 geekosaur yes, moritz_, libsqlite3
13:03 geekosaur my point is that what most people think of as sqlite is the library; the cli might well have an independent version number (and work with multiple sqlite lib versions)
13:03 moritz_ by the way, I love sqlite. It has awesome documentation, a simple but powerful C API, comprehensive tests and is generally just awesome
13:04 moritz_ the small number of datatypes can be surprising, but it's well documentation, and it works well in most cases
13:04 sivoais joined #perl6
13:06 gtodd liking sqlite can lead to liking fossil :)
13:06 FROGGS has rakudo  a 'per package' symbol table?
13:07 arnsholt moritz_: perl6 balance.pl prints 15 locally
13:08 arnsholt Does the sqlite driver use callbacks, by any chance?
13:10 moritz_ arnsholt: revert to the first commit of that repo please
13:11 moritz_ arnsholt: the second commit avoids the segfault by don't talking tot he database at all :-)
13:11 arnsholt Oh, right =)
13:11 arnsholt There we go. Boom.
13:12 arnsholt Looks like it's segfaulting while packaging up a string of return
13:15 sivoais joined #perl6
13:16 MrMeek joined #perl6
13:21 arnsholt moritz_: Oh. It's trying to make a string result from a null pointer
13:22 FROGGS why would it want to do that? :P
13:22 arnsholt That's a very good question =)
13:23 arnsholt I think it's a braino
13:26 sivoais joined #perl6
13:28 FROGGS okay, to answer my question, is is just: ($package.WHO){$name}
13:33 arnsholt moritz_: Building NQP with probable fix now
13:34 moritz_ \o/
13:36 arnsholt Building Rakudo now
13:37 FROGGS .tell jnthn beware: I want to talk about the 'underlying problem' with you *g*
13:37 yoleaux FROGGS: I'll pass your message to jnthn.
13:37 FROGGS awesome
13:37 sivoais joined #perl6
13:38 FROGGS see ya later guys
13:41 FROGGS[mobile] joined #perl6
13:44 rindolf joined #perl6
13:45 rindolf left #perl6
13:45 dalek nqp: cdbd822 | (Arne Skjærholt)++ | src/vm/parrot/ops/nqp_dyncall.ops:
13:45 dalek nqp: Correctly handle NULL pointers in make_str_result.
13:45 dalek nqp: review: https://github.com/perl6/nqp/commit/cdbd822840
13:45 dalek zavolaj: 37f1592 | (Arne Skjærholt)++ | t/03-simple-returns. (2 files):
13:45 dalek zavolaj: Add test for Str function returning NULL.
13:45 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/37f1592b50
13:48 arnsholt moritz_: That should fix it I think
13:49 sivoais joined #perl6
13:55 arnsholt Yep. Checked your code now. It works
13:55 arnsholt Thanks for finding the bug =)
14:00 sivoais joined #perl6
14:11 sivoais joined #perl6
14:22 sivoais joined #perl6
14:33 sivoais joined #perl6
14:39 sciurius joined #perl6
14:42 sivoais joined #perl6
14:47 CharellKing joined #perl6
14:49 CharellKing left #perl6
14:53 sivoais joined #perl6
15:04 sivoais joined #perl6
15:15 sivoais joined #perl6
15:25 masak answer to my own question previously, about how to tell Rakudo that Parrot needs to be rebuilt: clean -xdf everything. Configure.pl --gen-parrot. patch Parrot and make install it. make install Rakudo.
15:25 masak nqp doesn't seem to need to be rebuilt.
15:27 sivoais joined #perl6
15:30 saxx joined #perl6
15:34 * colomon is finally actually trying to set up a smoke tester for the ecosystem.
15:35 spider-mario joined #perl6
15:36 FROGGS[mobile] colomon++
15:36 timotimo cool :)
15:36 timotimo that will probably make rakudo star releases smoother
15:36 colomon mind you, I still need to figure out the details of how to do it!
15:37 colomon I've created a separate account on my linux box for it.
15:37 FROGGS[mobile] masak: would be cool if dont need to rebootstrap modules after recompiling rakudo
15:37 colomon I'm running a smoke test by hand at the moment there using emmentaler.
15:37 colomon Now the question is how to automate it all.
15:38 sivoais joined #perl6
15:39 FROGGS[mobile] fetch module list, smoke em in lastchange order
15:39 tadzik and difftool
15:39 tadzik and irc bot
15:39 tadzik that
15:39 tadzik * that'd be Future
15:39 colomon difftool and irc bot?
15:40 colomon FROGGS[mobile]: I'm looking for something simpler: the best way to automate running a sequence of command lines.  cd rakudo; git pull; perl Configure.pl --gen-parrot; etc
15:40 arnsholt colomon: I've thought a bit about that particular problem. On mobile IRC right now, but I'll try to remember to dump my thoughts later
15:42 FROGGS[mobile] colomon: bat and sh files? p5 script
15:42 FROGGS[mobile] ?
15:43 colomon was just going to check if CPAN has a solution.
15:47 masak my all-day bisect is coming along fine. I've now reduced the suspects to this short-ish list: https://gist.github.com/masak/5520459
15:47 masak may the betting on the culprit begin.
15:47 masak (my bet is on the merge commit)
15:48 masak or, more exactly, something from that branch.
15:49 timotimo 22b3cf3 run S02-magicals/vm.t, timotimo++ - this one most probably didn't introduce the trouble!
15:50 colomon FROGGS[mobile]: doing a simple sh script would be easy.  but having one that detects when something goes wrong and notifies me is a bit trickier.  Or maybe I'm just not thinking of something obvious!
15:51 geekosaur set -e ?
15:51 xinming joined #perl6
15:57 FROGGS[mobile] a cronjob will give you stderr via email
16:01 colomon FROGGS[mobile]: Good point.  I never really had that working properly on my old Linux box -- I really need it mailed to my gmail address, not some mail limited to one box that I never actually read.
16:01 colomon And on the other hand, I don't want the e-mail if everything is working.
16:02 geekosaur colomon, redirect stdout (not stderr) to /dev/null. and add a mail alias redirecting your local account to your gmail account
16:02 geekosaur set -e; exec >/dev/null
16:03 geekosaur some crons also support a MAILTO=address in the crontab entry
16:04 colomon MAILTO I understand (though I'm not sure it's the right granularity) .
16:04 colomon set -e is a mystery to me.
16:05 geekosaur tells the shell to abort if any command not used as a conditional (i.e. "if command ..." or "command || somethingelse") exits nonzero
16:05 sivoais joined #perl6
16:06 colomon ah!
16:06 colomon okay, yes that's definitely a good tip!
16:09 geekosaur a related handy tip, if you *do* want to run some command and allow it to fail safely under "set -e", append " || :" to it. (the "||" makes it conditional, and ":" is the null command. you could substitute "true" for ":" if you wanted, but some shells will actually run an external /bin/true in that case; ":" is a shell builtin)
16:14 colomon geekosaur++
16:14 * colomon is currently trying to set up e-mail for the box.
16:17 sivoais joined #perl6
16:20 colomon sweet!  mail seems to be working
16:22 genehack joined #perl6
16:27 sivoais joined #perl6
16:35 moritz_ masak: what is slow, exactly?
16:35 sciurius joined #perl6
16:39 sivoais joined #perl6
16:43 moritz_ ar
16:43 moritz_ arnsholt: I'm now testing your nqp fix
16:45 moritz_ that is, running panda and all that stuff again :_)
16:48 moritz_ ... and hoping that my laptop doesn't overheat
16:48 moritz_ I've hibernated a few times during rakudo compilation to avoid that
16:48 moritz_ erm, hibernated the laptop, not myself :-)
16:49 * lizmat hopes that the fan keeps running during hibernation
16:49 yoleaux 4 May 2013 23:03Z <jnthn> lizmat: you want to subclass ClassHOW, I expect. You then write a role with the new functionality you want in, and then arrange for it to be mixed in to every class automatically (easiest is probably method compose($obj) { self.add_role($obj, YourRolewithNewIn); nextsame; }
16:50 moritz_ lizmat: it doesn't :(
16:50 skids joined #perl6
16:50 lizmat then ^Sing maybe better than hibernating to prevent overheating
16:50 sivoais joined #perl6
16:51 geekosaur you mean ^Z?
16:51 moritz_ lizmat: good point, I should try that
16:51 lizmat geekosaur: doubting now...
16:51 pmichaud 15:25 <masak> nqp doesn't seem to need to be rebuilt.
16:52 lizmat I use ^Z mostly when I'm editing
16:52 pmichaud seems more like the case that nqp is automatically rebuilt.
16:52 moritz_ Ctrl+S should SIGSTOP the process, no?
16:52 moritz_ or does it just lock the terminal?
16:52 geekosaur that's ctrl-z
16:52 geekosaur ctrl-s pauses terminal output, which will eventually cause the program to block
16:52 moritz_ ah, but not during setting compilation
16:52 lizmat ack, geekosaur is right, you want ^Z
16:53 moritz_ fairy 'nuff
16:53 lizmat i am crazy
16:53 moritz_ lizmat: tell news :-)
16:54 lizmat note to self: never leave your keyboard unattended when woolfy is around
16:54 woolfy :-)
16:54 moritz_ :-)
16:54 masak pmichaud: are we both talking about Rakudo's nqp, not Parrot's?
16:54 pmichaud masak: yes.
16:55 moritz_ arnsholt: your fixed works, thank you very much
16:55 moritz_ arnsholt++
16:55 masak in that case, at what part (of the steps I posted) is it rebuilt? I'm not doing a re-Configure.
16:55 pmichaud it's possible that nqp doesn't need rebuilding... but that'd surprise me a bit.
16:55 sivoais joined #perl6
16:55 pmichaud btw, my bet is on 256339c
16:55 masak oh, indeed.
16:55 masak that one is immediately suspect.
16:55 moritz_ what exactly is slow?
16:56 masak moritz_: running psyde on my posts.
16:56 lizmat a factor of 10 slower
16:56 masak moritz_: it takes either 4 minutes, or between 40 and 60.
16:56 pmichaud masak: in fact, a quick check would be to pick the 2013.01 rakudo release and build it against the 5.0 parrot.
16:56 moritz_ that's not exactly minimal, I guess :-)
16:56 pmichaud well, "quick" being relative here, of course.  :)
16:57 masak moritz_: it's not. but it puts the difference in stark contrast. and today, I happen to have the time for this.
16:58 masak moritz_: consider it an experiment being repeated $NUMBER_OF_POSTS times with each run ;)
16:58 masak to avoid sampling bias, etc.
16:59 masak 350 posts. I seem to have blogged 350 times.
16:59 * moritz_ finds that he prefers fatarrow over colonpair when vertically aligning the values
16:59 lizmat TIMTOWTPI
16:59 masak ;)
17:00 moritz_ lizmat++
17:00 * masak .oO( just give me a 351st chance, I think I got it this time... )
17:00 pmichaud actually, my "quick check" doesn't appear to be able to actually check whatever changed.
17:00 moritz_ and thanks to arnsholt++, I can now account recurring transactions with data from the sqlite database
17:02 masak I'll take the scenic route.
17:02 masak I think it'll become pretty evident at what point I'll have something RT-able.
17:02 pmichaud fwiw, I think you can safely skip testing 483ce86 :-)
17:03 masak hehe
17:03 pmichaud and
17:03 pmichaud 78d2a2a
17:03 moritz_ as well as f67e101, c89dd87 and a763a18
17:03 * masak .oO( HOW CAN YOU BE ABSOLUTELY SURE??? )
17:03 pmichaud because I looked at the commits?
17:04 masak EDEUSEXBISECT
17:06 pmichaud so, you could "git bisect skip" those and speed up the bisect just a bit
17:06 masak oki
17:06 felher masak: I found some time today to start with your workshop. If you want to take a look or place a link, here's the solutions to roman and promise.
17:06 felher masak: https://gist.github.com/a8ff211b6f47c9e84024.git
17:06 masak felher: looking.
17:06 masak felher: happy to continue any further conversation over at #masakism ;)
17:08 census joined #perl6
17:11 pmichaud masak: if the NQP_VERSION bump is the problem commit, then it's going to be something that happened in NQP between commits 883fd06 and f8a37df
17:11 masak yes. :) and a new bisect.
17:11 pmichaud that includes the commits where EXPR was converted from PIR to NQP, fwiw.
17:11 masak oh!
17:12 pmichaud there aren't that many commits between the two -- just eight commits.
17:12 masak sounds like a very likely slowdown... :/
17:12 moritz_ masak: do you eval a lot in psyde?
17:12 masak checking.
17:12 moritz_ because EXPR is compile time only, afaict
17:12 masak moritz_: no, no eval in psyde.
17:12 moritz_ masak: or very large amounts of code?
17:13 pmichaud https://gist.github.com/pmichaud/5521439   # commits between 883fd06 and f8a37df
17:13 pmichaud large amounts of code shouldn't affect runtime speed, though.
17:13 pmichaud unless the code itself is taking forever to start.
17:13 moritz_ no, just compile time
17:13 masak moritz_: it's 256 lines of code.
17:13 pmichaud masak: oh!  Can I see the code?
17:14 masak sure.
17:14 pmichaud that might help me narrow it down really quick.
17:14 pmichaud (256 isn't much at all :)
17:14 masak pmichaud: https://github.com/masak/psyde/blob/master/psyde
17:14 masak I'm planning to do some refactors to psyde. reduce it down to ~16 lines of code :P
17:15 moritz_ uses lots of stuff that could potentially be slow
17:16 moritz_ regexes, trans, IO, list-y stuff
17:16 pmichaud well, there aren't many commits left in the bisect that would seem to be able to affect it
17:16 masak no matter what's affecting what, something slowed down my blog generator 10x.
17:17 pmichaud https://gist.github.com/pmichaud/5521450   # masak's list reordered by commit date
17:17 masak I want to find that something, first the commit, and then the cause :)
17:17 moritz_ masak: does the machine swap when it's that slow?
17:17 moritz_ and then EXTERMINATE it!
17:17 masak moritz_: no, I can't imagine that.
17:17 masak plenty of memory here.
17:17 pmichaud indeed, looking at the remaining commits, it seems it will have to be either 256339c or c255f1d
17:17 masak moritz_: it's definitely CPU-bound.
17:17 moritz_ well, you'd feel it if you're using the computer for other purposes too :-)
17:17 lizmat hmmm… that would explain the spread of 40 .. 60 minutes
17:18 masak moritz_: which I am.
17:18 pmichaud masak: does your code have any regex interpolations?
17:18 masak pmichaud: I gave you the code! :P
17:18 masak but no, I don't think so...
17:18 pmichaud masak: I'm still parsing it.
17:18 pmichaud masak: I figure you know the answer already :)
17:18 masak it uses .trans
17:18 pmichaud well, I've always hated the .trans code :)
17:18 masak then write a better one :)
17:19 pmichaud I started to, but I have to understand .trans first.
17:19 masak I know you've had bad experiences with that code bringing out failures and stuff...
17:19 moritz_ pmichaud: the spec, or the old code?
17:19 masak ...but the thing that's there today is a great improvement on what we had before. at least in some respects.
17:19 pmichaud moritz_: either.
17:20 masak pmichaud: and I know it's not the end state of that code.
17:20 pmichaud in some ways it's like the sequence operator stuff.... I had to carefully parse the spec in my head before I could finally come up with clean code.
17:20 moritz_ does interpolating array variables into regexes work properly?
17:20 masak pmichaud: TimToady keeps mumbling about how .trans should really induce a grammar and piggyback LTM somehow.
17:20 pmichaud masak: I can believe that.
17:20 moritz_ if yes, it's easy to... exactly
17:20 masak but for that, we'd need a kind of API to build a grammar. a bit like a MOP for grammars. I don't know to what extent we have that already.
17:20 moritz_ parts of the awefulness of the current code is that it has to re-invent LTM (with limited scope)
17:21 masak I suppose to quite a large extent.
17:21 pmichaud oh, we could definitely improve on that.
17:21 pmichaud array interpolation does have LTM built in now.
17:21 masak it would be a very happy thing to do.
17:21 lizmat so we're sure it's .trans now?
17:21 pmichaud no
17:22 moritz_ we're just speculating while masak++'s machine does the work :-)
17:22 masak ...but I wouldn't be surprised...
17:22 masak well, not .trans per se.
17:22 pmichaud There are basically two commits left... one of them changes regex interpolation (which .trans might be doing)
17:22 masak but something slowing down .trans doing whatever the heck it does.
17:22 masak right.
17:22 pmichaud the other one incorporates a number of NQP revisions
17:22 pmichaud either one are still candidates for the problem
17:23 masak "incorporates a number of NQP revisions"...? so, it's a merge? :P
17:23 pmichaud no, it's not a merge
17:23 moritz_ masak: NQP revision bump
17:23 masak oh! the Rakudo commit.
17:23 pmichaud it's an NQP revision bump.
17:23 masak sorry :)
17:23 * masak is slow today, but not as slow as psyde on the bad commits
17:24 pmichaud masak: eta til we know the result of the 255f1d commit, ooc?
17:24 pmichaud er, c255f1d
17:25 masak RSN
17:25 pmichaud okay.
17:26 mtk joined #perl6
17:26 masak no more than 40 minutes :)
17:26 pmichaud I'm not sure which commit I'm wanting it to be.... :-/
17:28 Ayiko left #perl6
17:29 Ayiko joined #perl6
17:29 pmichaud oh, wait!
17:29 masak hm, I seem to have provided the wrong set of commits we're reduced down to already. here's the real one: https://gist.github.com/masak/5520459
17:29 pmichaud right
17:29 pmichaud just looked at that also
17:29 masak :)
17:30 masak the rule is that the currently tested commit should always be in the middle of the list :P
17:30 pmichaud so now there are *more* nqp revisions that could be implicated.
17:31 * pmichaud looks
17:35 * moritz_ is guilty of premature OO in his newest project, and already regrets it
17:37 pmichaud https://gist.github.com/pmichaud/5521515   # list of NQP commits involved in masak's commit range
17:37 pmichaud *bisect range
17:38 masak ok, now I can mark c255f1d as bad.
17:38 masak the next suggested one is 78d2a2af.
17:38 masak skipping that one.
17:39 pmichaud +1
17:39 masak also skipping f67e101e.
17:39 pmichaud +1
17:40 masak building and testing c89dd87c.
17:40 pmichaud isn't that just a bump to VERSION?
17:40 masak yes.
17:40 moritz_ skip it
17:40 masak and hence significant.
17:40 moritz_ no
17:40 masak oh wait.
17:40 moritz_ the only thing it changes is the version of itself that rakudo reports
17:41 masak indeed not.
17:41 moritz_ when you do perl6 --version
17:41 pmichaud I'd be very surprised if that affects anything.  :)
17:41 masak ok, skipping.
17:41 pmichaud I think we're down to 256339c being the culprit.
17:41 masak also skipping 42f8ead6.
17:41 pmichaud worth a test, definitely
17:42 masak yes. building and testing that one now.
17:42 berekuk joined #perl6
17:44 spider-mario joined #perl6
17:49 pmichaud it's looking as though it has to be the EXPR code somehow.  :-(
17:53 ggoebel joined #perl6
17:53 thou joined #perl6
17:54 pmichaud oh, and Rakudo's Cursor type calls eval()
17:54 pmichaud (for regex interpolation)
17:56 pmichaud okay, I'm off to work on other things.. I eagerly await to hear the bisect results.  :)
17:58 masak me too :)
17:59 masak hm, 256339c appears to be good.
18:03 moritz_ have to say, error reporting is really nice in comptemporary rakudo
18:04 moritz_ s/^/I/
18:04 kurahaupo joined #perl6
18:04 pmichaud ...256339c is *good*?
18:08 masak yep.
18:08 masak surprising, I know.
18:08 * colomon suspects the changelog.
18:08 colomon ;)
18:08 pmichaud were you being certain to reset the nqp build on each bisect?
18:09 timotimo it's crazy how long these runs take
18:09 timotimo over an hour vs 5 minutes, holy cow.
18:09 pmichaud (and the parrot build?)
18:09 masak pmichaud: I clean -xdf everything on each bisect step. taking no chances here.
18:09 pmichaud did you clean -xdf in the parrot/ and nqp/ directories, also?
18:09 masak pmichaud: specifically, I did so before that step.
18:10 masak pmichaud: clean -xdf *removes* those directories.
18:10 pmichaud on my system it doesn't.
18:10 masak Removing nqp/
18:10 masak Removing parrot/
18:10 timotimo regexes in arrays in regexes o_O
18:10 pmichaud it says "Removing nqp/" and "Removing parrot/", but doesn't actually remove them.
18:10 pmichaud watchs
18:10 masak dammit.
18:10 masak (clean -xdf)--
18:11 * masak wonders how far back to rewind the bisect
18:11 pmichaud you may have to start over-ish.
18:11 masak yeah.
18:11 timotimo oh wow
18:11 masak ok, I'll assume the endpoints are accurate.
18:11 pmichaud because any later nqp/parrot would've been considered "good enough" for the builds
18:11 masak aye.
18:12 masak restarting bisect.
18:12 pmichaud https://gist.github.com/pmichaud/5521625   # git clean -xdf doesn't actually clean parrot/ and nqp/
18:12 masak TIL
18:15 jnthn evening, #perl6
18:15 yoleaux 13:37Z <FROGGS> jnthn: beware: I want to talk about the 'underlying problem' with you *g*
18:15 masak jnthn! \o/
18:15 jnthn the...what? :P
18:16 pmichaud afk, lunch
18:17 masak jnthn: want to talk about THE UNDERLYING PROBLEM with YOU. :P
18:17 masak jnthn: AM I MAKING MYSELF CLEAR :P
18:18 lizmat masak: wrt the bisect: maybe you can reduce the run by not doing all documents, so that a bad run will only take 5 mins, and a good one 30 seconds?
18:19 timotimo should make sure that that really happens; could be the bad run will only get a growth that bad if the number of articles is huge
18:19 masak *sigh* -- all you hectic modern people. here I am, trying to enjoy a slow Sunday bisect... :P
18:20 lizmat if you are enjoying it,  by all means!
18:20 masak timotimo: I doubt that, though. I can generally tell just by looking at the speed of the output. (it prints a line of progress output per post).
18:21 timotimo ok
18:21 masak and the 10x slowdown shines through a bit.
18:21 timotimo sounds good then
18:21 pmichaud I think I want to add a tools/build/bisect script to make git bisecting a bit more robust in the future
18:21 masak ooh.
18:21 pmichaud (i.e., to avoid the dependency issues masak++ just came up with)
18:22 pmichaud and to avoid re-cloning the nqp/ parrot/ directories at each bisect step
18:22 colomon pmichaud++
18:23 masak sounds good.
18:23 pmichaud but lunch comes first :-/
18:23 pmichaud anyone else is welcome to contribute a script before me :)
18:24 * colomon is still working on automatic ecosystem smoke testing.
18:25 pmichaud could also be a --bisect option to Configure.pl, although that doesn't help in the current bisection
18:26 ggoebel joined #perl6
18:28 * jnthn is very curious what the slowness will turn out to be.
18:30 lizmat rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; say 3 ~~ Day
18:30 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«False␤»
18:31 moritz_ rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; say Day(3).defined
18:31 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«True␤»
18:31 moritz_ rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; say Day(42).defined
18:31 lizmat S12:1887 states: "    3 ~~ Day    # True, using Day as a subset of Int"
18:31 camelia niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: No match␤  at /home/p6eval/niecza/lib/CORE.setting line 1504 (die @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 2103 (EnumMap._lookup @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 1308 (CommonEnum.postcircumfix:<( )> @ 5)…
18:31 camelia ..rakudo 88f9c9: OUTPUT«False␤»
18:31 masak rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; say Day ~~ Int
18:31 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«True␤»
18:31 moritz_ can it be both a subtype and a subset?
18:32 moritz_ that sounds wrong to me
18:32 masak enums are not subtypes, if by "subtype" you mean the thing with the keyword "subset" in Perl 6.
18:32 moritz_ no, I meant "class that inherits from"
18:33 masak it's also not a question of inheritance, since infix:<~~> does lots of other things.
18:33 masak well, not *necessarily* a question of inheritance.
18:33 jnthn I suspect if you want to implement those semantics you can get them by hacking on EnumHOW a bit
18:33 * lizmat is just trying things from the Synopses
18:34 jnthn But what that working really means is "if you match one of the enum value's underlying values it's good enough"
18:34 masak yes, that was what I was after.
18:34 masak it doesn't say how it's implemented.
18:35 lizmat fwiw, 3 ~~ Thu works
18:35 lizmat (as in: returns True)
18:36 jnthn Well, it's kinda significant how you implement it in so far as whether you expect to be able to pass 3 to a sub foo(Day $x) { }
18:36 masak oh, sure.
18:36 moritz_ and if the callee can still expect all the goodness of a Day object
18:37 jnthn But I suspect "subtype" is being used a bit handwavily in the spec there.
18:37 masak jnthn: does that mean hacking ACCEPT won't be enough?
18:37 masak er, ACCEPTS
18:37 jnthn masak: Well, ACCEPTS for a :U invocant typically delegates to the meta-object.
18:37 lizmat jnthn: indeed
18:37 lizmat rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; sub foo ( Day $d ) { say "foo" }; foo(3)
18:37 camelia niecza v24-37-gf9c8fc2: OUTPUT«Potential difficulties:â�¤  $d is declared but not used at /tmp/ruUVS3HBNM line 1:â�¤------> [32mTue Wed Thu Fri Sat Sun>; sub foo ( Day [33mâ��[31m$d ) { say "foo" }; foo(3)[0mâ�¤â�¤Unhandled exception: Nominal type check failed in binding '$d' in 'foo'; got In…
18:37 camelia ..rakudo 88f9c9: OUTPUT«Nominal type check failed for parameter '$d'; expected Day but got Int instead␤  in sub foo at /tmp/DQ6GB9NyWw:1␤  in block  at /tmp/DQ6GB9NyWw:1␤␤»
18:38 jnthn We can special-case ACCEPTS on :U for enum types I guess.
18:38 masak \o/
18:38 jnthn But it'll drag it out of kilter with the usual expectation that ~~ SomeType gives the same answer that a type check would on binding.
18:38 jnthn So we may want to tread carefully :)
18:39 lizmat but this warrants a rakudobug, right ?
18:39 masak absolutely.
18:39 masak a NYI one, I guess.
18:39 * lizmat submits rakudobug
18:39 masak lizmat++
18:39 jnthn In so far as "we don't match the spec", yes. But I don't yet feel I've enough information to knwo what the right way to fix it is :)
18:41 jnthn ('cus of the two ways I can think of, both have a slightly unattractive consequence)
18:41 masak yeah. from a spec perspective, it doesn't feel completely "orthogonal" either.
18:42 lizmat fwiw, I think the use of enums is so that you do *not* have to use any numbers
18:42 masak I mean, I can see why one would want this sometimes, but it also somehow feels like a big "bend" in the spec for relatively little gain.
18:42 lizmat so, to me, as a lay person, it is perfectly understandable that this doesn't work
18:42 masak lizmat: yeah.
18:42 masak lizmat: obviously the quick-and-easy solution here would be to unspec that one. :)
18:42 lizmat so, this could be considered a spec issue rather than a NYI bug
18:42 lizmat indeed
18:43 masak lizmat: but I would suggest investigating just how impossible it is first.
18:43 lizmat #117875 has it all
18:43 masak also, an unspec would need to go through TimToady, who will likely have an interesting take on it.
18:45 jnthn Yeah, it's a lang design call.
18:51 pmichaud I'd suggest verifying the lang design first before dealing with implementation stuff.
18:52 pmichaud We had a similar situation where   $value ~~ Grammar was supposed to smart match something against a Grammar, until we pointed out that you couldn't easily type-match.
18:52 pmichaud This sounds.... similar
18:52 masak dealing with implementation stuff sometimes is how we verify the lang design, though.
18:52 masak I agree, though. we should discuss whether this is vital before spending time trying to implement it.
18:53 masak I for one wouldn't lament the unspec'ing of that feature. for the reasons lizmat gave.
18:53 lizmat this I think is a typo in the spec (S12:1910)
18:53 lizmat rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; say Day.enums.invert{3}
18:53 camelia rakudo 88f9c9: OUTPUT«postcircumfix:<{ }> not defined for type List␤  in method gist at src/gen/CORE.setting:10022␤  in method gist at src/gen/CORE.setting:893␤  in sub say at src/gen/CORE.setting:10917␤  in block  at /tmp/aIctujKlzU:1␤␤»
18:53 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Cannot use hash access on an object of type List␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /home/p6eval/niecza/lib/CORE.setting line 352 (Any.at_key @ 9) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /tmp/teIKosjtpS line 1 (mainli…
18:53 pmichaud also, having   3 ~~ Day   feels wrongish to me, since 3 is an Int and Int !~~ Day
18:53 lizmat rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; say Day.enums.invert[3]
18:53 masak 3 is an Int, and Day is Int, but I don't have to have 3 being a Day.
18:53 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«3 => "Thu"␤»
18:54 masak especially as (and this is perhaps a convincing point), declaring the enum effectively inserts Day *between* 3 and Int, which... feels weird, conceptually.
18:55 masak heh, there's probably some category-theoretical theorem somewhere saying "don't do that, it'll lead to tears" :)
18:55 pmichaud let's assume there is one and fix the spec.  :) :) :)
18:56 masak not quite a +1, but no objections either ;)
18:57 masak and I'm still curious to hear what TimToady has to say.
18:57 masak (which might well be "screw category theory, we want this for reasons A, B and especially C")
18:58 lizmat so: "Day.enums.invert{3}" doesn't work, but is in the spec, "Day.enums.invert[3]" works as expected
18:58 masak r: my %h; say %h.invert.^name
18:58 camelia rakudo 88f9c9: OUTPUT«List␤»
18:59 masak lizmat: .invert{3} looks weird.
18:59 masak it's a List...
18:59 lizmat that was my feeling as well
18:59 lizmat indeed
18:59 pmichaud rn: my enum Day <Mon Tue Wed Thu Fri Sat Sun>; say Day.enums.invert.hash{3}
18:59 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«Thu␤»
18:59 lizmat but the fact that it's a list may be the issue?
18:59 pmichaud .invert is returning a list of Pairs
18:59 lizmat no, that's according to spec
19:00 lizmat indeed
19:00 * lizmat will fix spec with s/{3}/[3]/ ?
19:00 pmichaud there's been some mumbling that a list of Pairs should be able to act like a hash.
19:00 masak lizmat: +1
19:00 * jnthn does some mumbling about that idea :)
19:00 pmichaud i.e., that it would be able to understand .{ }
19:01 masak pmichaud: I hope that remains a mumbling.
19:01 jnthn .{ } on an array is reserved for custom indexing schems, no?
19:01 masak yeah.
19:01 pmichaud wouldn't .invert be a form of "custom indexing scheme", though?
19:01 masak pmichaud: it's a list because there can be duplicate keys.
19:01 jnthn If it is, it produces a bit more than a nrmal List... :)
19:02 pmichaud masak: yes, I know, but .{ }  on such a List could "handle" duplicate keys somehow
19:02 masak /o\
19:02 pmichaud I'm merely point out that  .{ }  on List is a defined behavior.
19:02 pmichaud *pointing
19:02 masak yes, I agree.
19:02 pmichaud (in S09)
19:03 masak I'm just uncomfortable even going down that road :)
19:03 pmichaud and thus  enum.invert could produce the results listed in the spec.
19:03 masak s/even going/even imagining going/
19:03 pmichaud I'd be wary of putting  .[3] into the spec.
19:03 pmichaud Yes, it works in the example just given, but that's something of an artifact of how the enum is constructed and/or .pairs is being produced.
19:05 lizmat maybe I should make an issue out of this?
19:05 PacoAir joined #perl6
19:06 pmichaud rn:  my enum Day ( :Mon(1), 'Tue', 'Wed', 'Thu' );  say Day.enums.invert.[3]
19:06 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«4 => "Thu"␤»
19:06 pmichaud rn:  my enum Day ( :Mon(1), 'Tue', 'Wed', 'Thu' );  say Day.enums.invert.[3];  say Thu;
19:06 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«4 => "Thu"␤Thu␤»
19:07 pmichaud rn:  my enum Day ( :Mon(1), 'Tue', 'Wed', 'Thu' );  say Day.enums.invert.[3];  say +Thu;
19:07 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«4 => "Thu"␤4␤»
19:07 pmichaud note that .[3] doesn't give the enum with value 3 (which would be Wed)
19:09 lizmat that's because the enums start at 1
19:09 lizmat the list starts at 0
19:10 lizmat the list that "invert" returns
19:11 moritz_ but enums can start at any value, and indeed they don't need to be continuous at all
19:11 lizmat so you're saying the error in the spec is the missing .hash ?
19:12 * moritz_ hasn't followed the discussion closely enough to tell
19:13 masak lizmat: yeah.
19:13 masak lizmat: though .hash isn't what we recommend either after an .invert
19:14 masak lizmat: (because that gives last-entry-wins behavior)
19:14 masak lizmat: we recommend pushing the result onto another hash.
19:14 lizmat but in the case of an enum, you never have that problem
19:14 masak troo
19:14 masak ...unless you do
19:15 lizmat so is there a reason why .invert on a hash doesn't return a Bag?
19:15 masak rn: my enum Ex ( :Foo(1), 'Bar', :Baz(1) ); say Ex.enums
19:15 camelia niecza v24-37-gf9c8fc2: OUTPUT«EnumMap.new(...)␤»
19:15 camelia ..rakudo 88f9c9: OUTPUT«("Foo" => 1, "Bar" => 2, "Baz" => 1).hash␤»
19:15 moritz yes, bags count, but you're not (always) interested in the count
19:15 lizmat true
19:16 masak and you really want inverted Pairs, and a Bag doesn't give you that.
19:16 masak lizmat: as you see, duplicate enum values are OK, at least according to the implementations.
19:16 masak lizmat: which means .invert can have duplicate keys.
19:16 lizmat indeed
19:17 lizmat feels more and more like an issue that requires TimToady's attention, no?
19:19 moritz aye
19:20 masak lizmat++ # teasing out issues that require TimToady's attention
19:21 lizmat brb
19:23 * moritz notices that the hpmor podcast has nearly caught up to the written hpmor
19:24 masak pmichaud: I tried to reproduce the weird 'git clean -xdf' behavior in a new git repository, but there it works as I expect it to: https://gist.github.com/masak/5521876
19:25 masak pmichaud: oh! but I bet I know what it is. both nqp and parrot subdirectories have a .git directory in them -- perhaps git-clean special-treats them.
19:25 masak investigating.
19:27 moritz yes, it does
19:28 moritz git clean does not descend into other git repos by default
19:28 masak it does? it just removed mine when I tested here.
19:28 masak moritz: also, I didn't see anything about it in the manpage. maybe I missed it.
19:28 masak moritz: do you agree that it's still surprising/unintuitive that it outputs "Removing parrot/" ?
19:29 masak (and then does nothing)
19:29 moritz yes
19:33 lue hello world o/
19:35 masak moritz: ok, I reproduced it. 'git clean -dfx' stops removing the nested git repo as soon as there's a commit in that repo.
19:35 masak moritz: it actually removes it if it's a repo without an initial commit.
19:37 moritz woah.
19:38 moritz masak: so you bisected, and didn't always have the recommended nqp/parrot revisions?
19:38 * colomon has done that before.  :(
19:39 masak moritz: reporting on #git now.
19:39 masak colomon: yeah. but no problem, I can just do it again.
19:39 colomon masak: sure, but you wasted hours, no?
19:40 masak nah :)
19:40 masak I did other stuff in the meantime. :)
19:40 * colomon just started a test smoke run of his new smoking script
19:40 masak learning the hard way. it's often very effective, even if it isn't efficient...
19:53 kivutar joined #perl6
19:55 colomon masak: maybe I'm getting old, but I find that if my "learning the hard way" is on something I don't do that often (like a major bisect) I'm apt to forget it by the next time I do it.  :(
19:57 masak colomon: forgetting things is part of the semantics of "hard" :P
20:01 moritz sounds... hard!
20:02 FROGGS g'evening
20:03 lizmat evening FROGGS!
20:04 FROGGS hi lizmat
20:04 masak FROGGS! \o/
20:04 lizmat to come back to earlier
20:04 lizmat rn: my enum Day <Sun Mon Tue Wed Thu Fri Sat>; sub foo ( Int $d ) { say $d.WHAT }; foo(Wed)
20:04 FROGGS masak: o/
20:04 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«(Day)␤»
20:05 lizmat foo accepts Int, is that the way to do this?  To still get the types in the sub?
20:05 FROGGS jnthn: would be cool if we could talk about what is wrong with things like:
20:05 FROGGS r: our @a = 4, 5
20:05 camelia rakudo 88f9c9: OUTPUT«No such method 'STORE' for invocant of type 'Any'␤  in block  at /tmp/1jwgBF2IVu:1␤␤»
20:06 colomon lizmat: absolutely, if B is an A, foo(A $a) should accept B as an argument, and it's still a B even inside foo.
20:06 lizmat FROGGS: its another way of saying: $ perl -wE 'our @a=4,5; say @a'
20:06 lizmat Useless use of a constant (5) in void context at -e line 1.
20:07 FROGGS lizmat: I know what it is, the problem is that this does not work in rakudo
20:08 colomon rn: my @a = 4, 5;
20:08 camelia niecza v24-37-gf9c8fc2: OUTPUT«Potential difficulties:â�¤  @a is declared but not used at /tmp/8ZFlI4Y5C4 line 1:â�¤------> [32mmy [33mâ��[31m@a = 4, 5;[0mâ�¤â�¤Â»
20:08 camelia ..rakudo 88f9c9:  ( no output )
20:08 colomon rn: my @a = 4, 5; say @a
20:08 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«4 5␤»
20:08 FROGGS I know now a bit more about how the symbol table in perl 5 works, but I dont see why it actually does not work in rakudo
20:08 colomon rn: our @a = 4, 5; say @a
20:08 camelia rakudo 88f9c9: OUTPUT«No such method 'STORE' for invocant of type 'Any'␤  in block  at /tmp/D28gbkOjbM:1␤␤»
20:08 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«4 5␤»
20:09 berekuk joined #perl6
20:09 lizmat why would there be a difference between "my" and "our" in this case?
20:11 colomon looks like a rakudobug to me.
20:11 FROGGS well, the difference is where @a is stored, exactly the same like in perl5
20:11 colomon rn: our @a; say @a;
20:11 camelia rakudo 88f9c9: OUTPUT«(Any)␤»
20:11 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«␤»
20:11 FROGGS colomon: it is
20:11 FROGGS and jnthn said that there is some 'underlying problem'
20:24 jnthn FROGGS: I think the fix may be to install the appropraite kind of container inside the WHO at compile time
20:25 jnthn FROGGS: e.g. have something like install_lexical_contaienr that instead installs it in the package
20:25 jnthn Then the lexical is just bound each frame entry to that
20:25 jnthn Not sure if that'll fix it, but I'm hopeful.
20:26 FROGGS jnthn: sounds good
20:26 FROGGS and doesnt really sound like a problem
20:27 jnthn Well, the problem is that we dont do anything like that today ;)
20:28 FROGGS but we do that for 'my'-vars (not in the package though)
20:37 timotimo are we talking about installing things in symbol tables? in my test case for the ADT module, something seems to be going wrong with the EXPORT sub, such that i would get an error like Type check failed in assignment to '$a'; expected 'Maybe' but got 'Maybe' (Maybe and Maybe|7052662458959412579 respectively)
20:39 FROGGS timotimo: we are talking about our-vars only
20:39 timotimo ok
20:49 FROGGS timotimo: how do you create the Tree class? is that done once, over maybe several times (always when hitting "Tree") ?
20:49 timotimo it's created once, as far as i know. then it's passed through a hash into and then as a hash out of my EXPORT sub
20:50 lizmat was there a time in the spec of Perl 6, where Any === Mu ?
20:51 colomon lizmat: there was a time when there was no Mu...
20:51 colomon probably the most straightforward answer to what I think you mean is "yes".
20:52 lizmat indeed.. so I think S12:2387, wherever it says "Cool and Any", it should become "Cool, Any and Mu"
20:52 timotimo i don't think you can get more straight forward than a plain "yes" or "no".
20:53 colomon timotimo: but I might be mistaking what she means, which is why the qualifiers.  ;)
20:53 lizmat e.g. on the ^parents method: "    :excl               exclude Cool and Any (the default)"
20:53 lizmat that should be: "    :excl               exclude Cool, Any and Mu (the default)"
20:53 lizmat rn: say Str.^parents :all
20:53 camelia rakudo 88f9c9: OUTPUT«(Cool) (Any) (Mu)␤»
20:53 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Unable to resolve method parents in type ClassHOW␤  at /tmp/by2CUfeDlK line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583) ␤  at…
20:54 colomon lizmat: I'm not sure that's a fair assumption -- Mu and Cool came about at the same time, as I recall.
20:54 bruges_ joined #perl6
20:54 colomon or did they?
20:54 jnthn lizmat: I suspect Mu is implied transitively.
20:55 lizmat then why is it listed specifically with :all ?
20:55 * colomon was here when Mu and Cool were invented, but doesn't necessarily remember all the details.
20:56 jnthn lizmat: Dunno. :all includes all the things, not adding that means "stop searching when you hit Cool or Any"
20:56 lizmat lines were added in 2010 by TimToady
20:57 jnthn Feel free to make them match, anyway. We certainly exclude the stuff in Mu.
20:57 lizmat 2010-09-24 09:38:47 -0700, did we have Mu then already?
20:57 FROGGS r: class A { has @.a = 7 }; my $a = A.new
20:57 camelia rakudo 88f9c9:  ( no output )
20:57 FROGGS r: class A { has @.a = 7 }; my $a = A.new; say $a.a
20:57 camelia rakudo 88f9c9: OUTPUT«7␤»
20:57 jnthn I'm fairly sure that :all came some time after Mu did.
20:57 lizmat I will make them match
20:59 skids joined #perl6
21:08 lizmat scratch that: S12:2511 states "Note that when we say "C<Cool> and C<Any>" above, we really mean those types as well as any types outside of them, such as C<Mu> or C<Junction>.
21:09 lizmat feels a bit like monkeypatching to me, but there you go ;-)
21:12 * jnthn wasn't keen on meta-methods lying by default... :)
21:12 jnthn OK, it's past midnight here, so sleep... &
21:13 lizmat S12:2501 has a rationalisation for that
21:13 lizmat goodnight jnthn!
21:14 masak lizmat: I've never been keen on making C<Any> and C<Cool> "special". feels like it clutters the type system.
21:14 masak feels like a design smell.
21:14 FROGGS gnight jnthn
21:24 masak lol, I blogg'd. http://strangelyconsistent.org/blog/after-the-masakism-workshop
21:25 FROGGS lol, I read
21:27 tadzik lol, do want
21:28 berekuk joined #perl6
21:29 tadzik yeah, that was awesome :)
21:29 lizmat masak++ again!
21:30 lizmat and on that thought, I'm calling it a day: "a day"
21:30 masak \o/
21:31 FROGGS maybe I have time at the next event too, on may 1st I could just lurk a bit the last 30mins :/
21:32 masak FROGGS: when would be a good time for you?
21:34 FROGGS more like 9pm to > midnight (berlin time)
21:34 FROGGS I think we are one hour off atm
21:34 masak FROGGS: I think we're both on CET.
21:35 FROGGS or, before 18pm on weekend
21:35 FROGGS it is 23:35p.m here
21:35 masak here too.
21:35 FROGGS I just was thinking the we must be of because jnthn said something about already midnight
21:35 FROGGS off*
21:35 masak (though 23:35 am would be weird) :P
21:36 masak FROGGS: well, jnthn is one timezone to the west at present :P
21:36 masak don't assume that just because we're neighbors, we're in the same time zone :P
21:36 masak er, east*
21:37 FROGGS ahh, I see *g*
21:38 * lue is in an awkwardly position timezone for suggesting times (PDT/PST), relative to the most common timezones of #perl6 :P
21:39 labster I already live in PDT (Pacific Standard Time), so that sounds good to me :P
21:40 masak how can I get lots of people to commit on four hours of workshop time that would suit them?
21:40 masak sort of like a kickstarter but for scheduling.
21:41 lue (#perl6's off-hours to me tend to be from 16:00 to somewhere in the 00:00..02:00 range)
21:41 kurahaupo joined #perl6
21:42 masak I know about doodle.com -- I'm curious if there's something people like even more.
21:42 FROGGS I just wanted to say that
21:43 FROGGS I dont know something similar though
21:45 gtodd www.whenisgood.com ?  doodle.com is the simplest I've seen
21:46 masak all I know is May is out of the question. middle of June is the earliest I could commit to.
21:47 FROGGS same for me
21:47 masak oh, and if I don't hear from anyone about desired topics and tasks, I'm going to simply improve the current material, trying to make it more effective.
21:47 masak but I'm very open for suggestions.
21:47 lue same here on the "after May" bit
21:48 masak ok, let me just throw a date out there: June 19.
21:49 masak and, since FROGGS requested it, from 18:00Z to 22:00Z.
21:49 labster Well, I haven't done all of the original material yet, so that works for me
21:49 labster http://en.wikipedia.org/wiki/Juneteenth ?
21:49 masak (which will make it more difficult for Asians to attend, but maybe easier for people from the New World)
21:49 masak I put it in my work schedule.
21:50 masak we'll let it brew for a while, and make it official if people seem OK with that datetime.
21:50 masak labster: oh, I didn't know that date had any special significance like that.
21:51 masak labster: does that make it worse, or better, from your perspective? or doesn't matter?
21:51 erkan joined #perl6
21:51 erkan joined #perl6
21:53 Moukeddar joined #perl6
21:53 labster I'm on the west coast, and it's not celebrated out here.  But for the places that it's a holiday, it would likely be easier.
21:55 lue sounds like a good time to me :)
21:55 labster It's not a major holiday, anyway, and it's the middle of the week.
21:56 cognominal joined #perl6
21:56 labster 18-22Z sounds good to me, too
21:57 * lue imagines the possible day when #masakism is a big enough deal to warrant a 24-hour workshop, just to avoid scheduling issues :)
21:59 labster that sounds like more of a #masakre
22:04 labster r: say IO::Path::Win32.new("\\\\server\\share\\").Str
22:04 camelia rakudo 88f9c9: OUTPUT«\\server\share\\␤»
22:04 labster dang, bugs already.  harmless ones, but still.
22:18 masak one nice thing about repeatedly generating HTML for all of my posts all day is that I'm reminded of old posts. :)
22:18 masak for example, this is what programming on Rakudo was like in 2009: http://strangelyconsistent.org/blog/three-bugs-that-bug-me-right-now
22:18 masak we have *markedly* improved in the past four years.
22:19 masak here's hoping the next four years will bring an improvement of the same magnitude.
22:20 census yay for masakism
22:21 masak census: glad you liked it ;)
22:22 kurahaupo joined #perl6
22:23 lue .oO(There was a time rakudo devs were nowhere to be seen?)
22:27 masak or masak-of-2009 was using hyperbole. possibly.
22:33 cosimo joined #perl6
22:52 cognominal I commented about returning Nil on a failed match   https://github.com/rakudo/rakudo/commit/5edb1357bec9418a9b45d78c85290b59e3e0f821#commitcomment-3148676
22:56 masak 'night, #perl6
22:56 labster cognominal: you should try perl6-debug.  it does a great job showing regex-in-progress.
22:56 labster night, masak.
23:18 itz__ joined #perl6
23:21 rafl joined #perl6
23:37 grondilu joined #perl6
23:44 grondilu rn: my $x = 13; say $x[0]
23:44 camelia rakudo 88f9c9, niecza v24-37-gf9c8fc2: OUTPUT«13␤»
23:45 berekuk joined #perl6
23:47 * geekosaur eyes that suspiciously

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

Perl 6 | Reference Documentation | Rakudo