Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-02-18

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:04 ggoebel jnthn: regarding looking up the unicode codepoint for a character name... you may want to google: apache fop getcodenameforglyph
00:05 ggoebel source code and binaries aren't much different in size from icu though...
00:09 alec__ joined #perl6
00:14 AndChat|98100 joined #perl6
00:15 AndChat|98100 joined #perl6
00:28 mh joined #perl6
00:29 thou joined #perl6
00:36 ggoebel phenny tell jnthn: or perhaps just process http://www.unicode.org/Publ​ic/6.2.0/ucd/NamesList.txt
00:37 dalek perl6-most-wanted: 504e1fa | (Geoffrey Broadwell)++ | most-wanted/modules.md:
00:37 dalek perl6-most-wanted: Continuing through task-belike-*
00:37 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/504e1fab2d
00:38 AndroUser2 joined #perl6
00:43 alec__ joined #perl6
00:48 [Coke] phenny: ask curtispoe if https://github.com/Ovid/Config-Tiny is gone or moved.
00:48 phenny [Coke]: I'll pass that on when curtispoe is around.
00:51 [Coke] japhb: ^^ looks like someone started on an ini configurator
00:54 japhb [Coke], commits welcome (easier now that it's in the perl6 org)  :-)
00:54 japhb Or I will eventually get to it if it's listed in the Perl 6 module list
00:54 [Coke] I found a blog post that said he started it, but it's gone.
00:55 japhb :-(
01:01 anuby joined #perl6
01:06 PhilipS__ joined #perl6
01:16 hypolin joined #perl6
01:16 drbean joined #perl6
01:21 alec__ joined #perl6
01:26 dalek specs: 703df65 | lue++ | S02-bits.pod:
01:26 dalek specs: [S02] Fixed double angle bracketed formatting code.
01:26 dalek specs: review: https://github.com/perl6/specs/commit/703df65477
01:31 alec__ joined #perl6
01:38 shinobicl joined #perl6
01:38 shinobicl hi... are there any plans for 'improving' META.info in perl6 packages? Like the thing that Maven's "pom.xml" does in java?.
01:52 Exodist joined #perl6
01:55 skids joined #perl6
02:00 dalek perl6-most-wanted: a792408 | (Geoffrey Broadwell)++ | most-wanted/modules.md:
02:00 dalek perl6-most-wanted: More task-belike-* results
02:00 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/a7924086ea
02:03 sevin joined #perl6
02:10 colomon n: say 4.bin
02:10 p6eval niecza v24-23-g0520c7c: OUTPUT«Unhandled exception: Unable to resolve method bin in type Int␤  at /tmp/wUqKivx7va line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4233 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4234 (module-CORE @ 580) ␤  at /home/p6…
02:14 dayangkun joined #perl6
02:17 MikeFair joined #perl6
02:30 alec__ joined #perl6
02:31 s1n joined #perl6
02:33 lustlife joined #perl6
02:34 dalek perl6-most-wanted: 284cccf | (Geoffrey Broadwell)++ | most-wanted/modules.md:
02:34 dalek perl6-most-wanted: Finish going through current set of task-belike-*
02:34 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/284cccfb01
02:41 colomon forgive me, I have used a side-effect in a grep block.
02:48 diakopter karma will introduce wrongness into your primality tests
02:49 benabik retroactively.
02:52 FROGGS_ joined #perl6
02:56 dalek perl6-most-wanted: 0fa6f10 | (Geoffrey Broadwell)++ | tools/prettify-json:
02:56 dalek perl6-most-wanted: Sort prettified JSON
02:56 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/0fa6f106b0
03:00 colomon I'm distressingly pleased by the code: https://gist.github.com/colomon/4974879
03:02 benabik colomon: It's definitely clever.  By which I mean I don't understand it.
03:02 colomon benabik: I had to do research.
03:02 benabik colomon: You might want to add comments so people don't have to research it to figure it out.  ;-)
03:02 colomon and it's probably overkill.
03:03 colomon or wrong.
03:03 colomon I've actually twisted my brain in knots trying to figure out how to gracefully test it.
03:04 colomon The grep selects things from @items based on the bits of $gray.
03:05 colomon $gray is the Gray number corresponding to $i.  Though now that I'm thinking about it I'm not sure why it's useful here.
03:08 dalek perl6-most-wanted: 808d96f | (Geoffrey Broadwell)++ | most-wanted/modules.md:
03:08 dalek perl6-most-wanted: Start marking up existing WIP modules from the Perl 6 modules list
03:08 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/808d96f8a8
03:13 colomon yeah, the Gary number thing is totally useless in my implementation.
03:13 colomon at least according to my tests.
03:13 s1n joined #perl6
03:16 colomon oh, my routine is very inefficient in this case.
03:21 colomon so probably I need to figure a better way to use the Gray number thing.
03:29 orafu joined #perl6
03:32 shinobicl left #perl6
04:31 dayangkun joined #perl6
04:33 odoacre joined #perl6
04:40 skids colomon: Are you trying to figure out a useful ordering for the combos?  http://en.wikipedia.org/wiki​/Combinatorial_number_system might help.
04:43 kaleem joined #perl6
04:48 preflex_ joined #perl6
04:59 ElDiabolo joined #perl6
05:03 bonsaikitten hrm. can anyone help me figure out a parrot issue? it's not detecting perldoc, which is installed and as far as I can tell functional
05:03 bonsaikitten I don't quite understand the Configure.pl and the machinery behind it yet
05:05 moritz bonsaikitten: maybe try #parrot?
05:05 moritz (on irc.perl.org, that is)
05:05 dalek perl6-most-wanted: 106229f | (Geoffrey Broadwell)++ | most-wanted/bindings.md:
05:05 dalek perl6-most-wanted: WIP bindings from the Perl 6 modules list
05:05 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/106229f13e
05:05 dalek perl6-most-wanted: 9cc09f6 | (Geoffrey Broadwell)++ | most-wanted/modules.md:
05:05 dalek perl6-most-wanted: WIP modules from the Perl 6 modules list
05:05 dalek perl6-most-wanted: review: https://github.com/perl6/perl6​-most-wanted/commit/9cc09f6f1c
05:06 japhb OK all -- that's a reasonable first take on perl6-most-wanted, but it's far from perfect.
05:06 bonsaikitten moritz: hrm ok
05:07 japhb I'm burning out a bit, so if there is anyone else interested in keeping perl6-most-wanted, please do make commits at will
05:08 japhb *keeping up
05:08 japhb I guess before I completely let go, I should note the current location on the most-wanted wiki page ...
05:12 japhb Done.
05:12 japhb *whew*
05:12 moritz japhb++ # cleanup before letting go
05:13 japhb Feels good to have it off my mind.
05:14 japhb I knew it needed to be done, but it was a ton of pretty much slogging drudgery work to get it to a stage useful to the community at large.
05:14 japhb (And hopefully it is, at this point.  :-)
05:21 sevin joined #perl6
05:57 ElDiabolo joined #perl6
06:28 ElDiabolo joined #perl6
06:31 ElDiabolo when was operator overloading added to rakudo ?
06:32 quester joined #perl6
06:35 TimToady it's pretty much been part of the design from the beginning, though not always implemented quite right
06:36 TimToady and we don't really talk about "operator overloading", because it falls out from multiple dispatch and the fact that operators are just funny names for functions
06:39 ElDiabolo TimToady, I am getting a "Cannot add tokens of category 'operator'" from my debian sid rakudo and wanted to check if this is just not implemented there. It is however a 2012-10 thingy, so thats not the problem.
06:41 TimToady there is no category "operator"
06:41 TimToady you must be more specific: "prefix", "postfix", "infix" etc.
06:42 ElDiabolo TimToady, Uh, thanks :)
06:45 benabik r: multi postfix:<!>(1) { 1 }; multi postfix:<!>($i) { $i * ($i - 1)! }; say 5!
06:45 p6eval rakudo b9ee89: OUTPUT«120␤»
06:51 rindolf joined #perl6
07:08 rindolf joined #perl6
07:10 lue joined #perl6
07:10 sizz joined #perl6
07:17 PacoAir joined #perl6
07:18 sizz_ joined #perl6
07:21 bapa joined #perl6
07:26 rindolf joined #perl6
07:27 ElDiabolo joined #perl6
07:27 ElDiabolo r: map {say "::$_";} <== (1, 2, 3);
07:27 p6eval rakudo b9ee89: OUTPUT«::1␤::2␤::3␤»
07:33 sevin_ joined #perl6
07:38 rindolf joined #perl6
07:40 daxim_ joined #perl6
07:43 kaleem joined #perl6
07:45 SamuraiJack joined #perl6
07:45 proller joined #perl6
07:45 daxim_ joined #perl6
07:50 FROGGS joined #perl6
07:50 FROGGS morning
07:53 domidumont joined #perl6
07:57 tadzik1 joined #perl6
07:59 ElDiabolo r: sub prefix:<select>(@table)  is looser(&infix:<+>) {}
07:59 p6eval rakudo b9ee89:  ( no output )
08:01 ElDiabolo r: sub prefix:<select>(@table)  is looser(&infix:<+>) is export{}
08:01 p6eval rakudo b9ee89: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Missing blockâ�¤at /tmp/LkYh9EmZB9:1â�¤------> [32mable)  is looser(&infix:<+>) is export{}[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        statement listâ�¤Â»
08:02 moritz ElDiabolo: add a space before the {
08:02 moritz ElDiabolo: otherwise it's parsed as a postcircumfix
08:02 moritz like in %hash{...}
08:03 quester left #perl6
08:03 rindolf joined #perl6
08:06 ElDiabolo moritz, Thx :)
08:07 ElDiabolo r: sub prefix:<select>(@table)  is looser(&infix:<+>) is export {}
08:07 p6eval rakudo b9ee89:  ( no output )
08:11 FROGGS ElDiabolo: why a select-prefix and not just a function?
08:11 am0c joined #perl6
08:12 ElDiabolo FROGGS, Thoughtlessness
08:17 ElDiabolo Thx.
08:17 arlinius joined #perl6
08:17 ElDiabolo r: map {say "::$_";} <== (1, 2, 3);
08:18 p6eval rakudo b9ee89: OUTPUT«::1␤::2␤::3␤»
08:18 ElDiabolo r: map {say "::$_";}, (1, 2, 3);
08:18 p6eval rakudo b9ee89: OUTPUT«::1␤::2␤::3␤»
08:18 domidumont joined #perl6
08:20 ElDiabolo The above does nothing in my test script unless I do my @dumy = map ...  . Any hints on why ?
08:21 moritz ElDiabolo: map itself is lazy
08:22 moritz ElDiabolo: and it is only evaluated when there's some indication that the elements are needed
08:22 moritz assignment to an array is such an indication
08:22 moritz as well as sink (void) context
08:22 ElDiabolo Good. Thx.
08:23 moritz ElDiabolo: though it might be interesting who you managed to not put it into sink context (or maybe sink context detection is imperfect)
08:23 moritz s/who/how/
08:29 ElDiabolo moritz, Sink context is wrong in my rakudo, I think.
08:29 Ovidius joined #perl6
08:30 ElDiabolo moritz, map {say "::$_";}, @table;   as one line in a script fails.
08:30 ElDiabolo fails to say anything, to be precise.
08:32 fhelmberger joined #perl6
08:32 FROGGS I would might do: say map {"::$_";}, @table;
08:32 Ovidius Can anyone point me to recent benchmarks for Rakudo? Someone's taking issue with my performance comments on my recent blog post.
08:35 ElDiabolo FROGGS, Yeah, I'll work around, just wondering if a bug report makes sense.
08:36 FROGGS ya, thats the question, bug or feature?
08:40 moritz ElDiabolo: what rakudo version are you using?
08:40 ElDiabolo OK, now I can do                    say select {"--$_";} from @table;
08:41 ElDiabolo This means I can tackle the first (as masak has pointed out) problem. Table aliases.
08:41 dayangkun joined #perl6
08:42 ElDiabolo What I would like to do is    select {"--$t";} from @table $t;
08:43 rindolf ElDiabolo: what does select do here?
08:44 ElDiabolo rindolf Nothing by now.
08:44 rindolf ElDiabolo: Nothing yet?
08:45 ElDiabolo moritz, 2012.10-1 (as debian sid calls it).
08:47 ElDiabolo rindolf, I am currently learning p6 by implementing a LINQuish SQL lookalike.
08:47 rindolf ElDiabolo: ah, OK.
08:48 moritz ElDiabolo: that explains it. sink context was implemented in 2013.01
08:48 moritz (well, that was the first release containing it)
08:49 ElDiabolo The problem with the table alias $t is 1. that the statement declares a local variable and I don't know how to implement this and 2. that said $t is first used and then declared .
08:50 arnsholt To implement aliases you're probably going to need macros
08:50 ElDiabolo moritz, Ah, thx. Hope the debian package maintainer stays active :)
08:51 arnsholt masak++ has implemented a fair chunk of macros, but I don't think creating variable bindings is supported yet
08:51 ElDiabolo rindolf, I would prefer to stay as close as possible to SQL.
08:52 rindolf ElDiabolo: OK.
08:53 cosimo joined #perl6
08:56 moritz ElDiabolo: what do you want the syntax to look like?
09:00 ElDiabolo moritz, SQL.
09:00 moritz ElDiabolo: well, SQL doesn't use sigils
09:01 ElDiabolo moritz, hehe. Embedded SQL to data.
09:03 dayangkun joined #perl6
09:04 moritz ElDiabolo: you might be able to pull of some tricks with self-declared formal parameters
09:04 moritz for example if you look at http://perlgeek.de/blog-en/pe​rl-6/physical-modelling.html
09:04 ElDiabolo moritz, In the long run an SQL to the database could be implemented this wax, too.
09:04 moritz y_acceleration  => { $:force / $:mass },
09:04 moritz here $:force and $:mass are named parameters
09:05 moritz which can be discovered from the outside by introspecting the signature
09:05 moritz which is how Math::Model tracks interdependencies between the various expresions
09:05 ElDiabolo s/wax/way/
09:05 jnthn morning o/
09:06 moritz so, you might be able to get something running along the lines of
09:06 moritz { select $:alias.name from table as $:alias }
09:07 moritz \o jnthn
09:08 ElDiabolo moritz, Oh, cool. I thought that I may have to get away from using variable declaration for aliases but did not know how yet.
09:13 FROGGS moritz: is it possible to declare variables like $<id> for use in a while loop when doing:   while $sth.fetch { ... }    ?
09:13 FROGGS so you dont need to explicitly bind them?
09:13 moritz FROGGS: $<id> just desugars to $/{ 'id' }
09:14 FROGGS hmmm
09:14 moritz but I'd do it like this:
09:14 moritz for $sth.rows { say $:id, $:name }
09:15 tadzik $:id?
09:15 tadzik std: $:id
09:15 p6eval std 7551b8f: OUTPUT«[31m===[0mSORRY![31m===[0m�Placeholder variable $:id may not be used outside of a block at /tmp/ZOWbTMREwf line 1:�------> [32m<BOL>[33m�[31m$:id[0m�Check failed�FAILED 00:00 41m�»
09:15 tadzik hm
09:15 moritz r: { say $:id }.(id => 42)
09:15 p6eval rakudo b9ee89: OUTPUT«42␤»
09:15 moritz tadzik: like $^id, only named
09:15 tadzik today I learned
09:15 tadzik nice
09:16 FROGGS so, $sth.rows returns  hash and it will just work like that?
09:17 FROGGS r: my @rows = { id => 42 }, { id => 43 }; for @rows { say $:id }
09:17 p6eval rakudo b9ee89: OUTPUT«Required named parameter 'id' not passed␤current instr.: '' pc 311 ((file unknown):146) (/tmp/MUwLLQ2ri_:1)␤called from Sub '' pc 256919 (src/gen/CORE.setting.pir:116553) (src/gen/CORE.setting:5590)␤called from Sub 'reify' pc 255934 (src/gen/CORE.setting.pir:116188…
09:17 moritz erm, no :(
09:18 moritz I didn't consider that
09:18 moritz you'd have to do differently after all
09:18 moritz $sth.rows: { $:id, $:name }
09:18 moritz $sth.rows: { say $:id, $:name }
09:18 jnthn r: my @rows = { id => 42 }, { id => 43 }; for @rows { say .<id> }
09:18 p6eval rakudo b9ee89: OUTPUT«42␤43␤»
09:18 moritz then $sth.rows can introspect the closure, and decide which arguments to pass into it
09:19 moritz or like jnthn++ said :-)
09:19 jnthn r: my @rows = { id => 42 }, { id => 43 }; for @rows -> (:$id) { say $id }
09:19 p6eval rakudo b9ee89: OUTPUT«42␤43␤»
09:19 jnthn r: my @rows = { id => 42 }, { id => 43 }; for @rows -> $/ { say $<id> }
09:19 p6eval rakudo b9ee89: OUTPUT«42␤43␤»
09:19 jnthn :)
09:19 moritz my @rows = { id => 42 }, { id => 43, name => "foo" }; for @rows -> (:$id) { say $id }
09:20 moritz r: my @rows = { id => 42 }, { id => 43, name => "foo" }; for @rows -> (:$id) { say $id }
09:20 p6eval rakudo b9ee89: OUTPUT«42␤Unexpected named parameter 'name' passed in sub-signature␤current instr.: '' pc 383 ((file unknown):210529660) (/tmp/fDATWtoqwK:1)␤called from Sub '' pc 256919 (src/gen/CORE.setting.pir:116553) (src/gen/CORE.setting:5590)␤called from Sub 'reify' pc 255934 (src/g…
09:20 moritz that's the disadvantage if you go that route: you have to use all the elements
09:20 jnthn Or throw in a *%
09:20 jnthn But yes
09:21 FROGGS okay, maybe .<id> might be the sanest
09:21 FROGGS r: my @rows = { id => 42 }, { id => 43 }; for @rows { say "$.<id>" }
09:21 p6eval rakudo b9ee89: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Non-variable $ must be backslashedâ�¤at /tmp/N9LdLJTryB:1â�¤------> [32m> 42 }, { id => 43 }; for @rows { say "$[33mâ��[31m.<id>" }[0mâ�¤    expecting any of:â�¤        argument listâ�¤        prefix or termâ�¤        prefix or meta-prefixâ�¤    â€¦
09:22 FROGGS r: my @rows = { id => 42 }, { id => 43 }; for @rows { say "&.<id>" }
09:22 p6eval rakudo b9ee89: OUTPUT«&.<id>␤&.<id>␤»
09:22 FROGGS hmmm
09:22 FROGGS r: my @rows = { id => 42 }, { id => 43 }; for @rows { say "$(.<id>)" }
09:22 p6eval rakudo b9ee89: OUTPUT«42␤43␤»
09:22 FROGGS ahh, right
09:26 ObseLeTe joined #perl6
09:27 spider-mario joined #perl6
09:33 dvj perl6: my $a = "#12"; my $c = $a.match(/^\# (\d+) $/);
09:33 p6eval rakudo b9ee89:  ( no output )
09:33 p6eval ..niecza v24-23-g0520c7c: OUTPUT«[31m===[0mSORRY![31m===[0m��No unspace allowed in regex; if you meant to match the literal character, please enclose in single quotes ('#') or use a backslashed form like \x23 at /tmp/e6pQHSS86S line 1:�------> [32mmy $a = "#12"; my $c = $a.match(/^\…
09:33 dvj perl6: my $a = "#12"; my $c = $a.match(/^\# (\d+) $/); say $c;
09:33 p6eval niecza v24-23-g0520c7c: OUTPUT«[31m===[0mSORRY![31m===[0m��No unspace allowed in regex; if you meant to match the literal character, please enclose in single quotes ('#') or use a backslashed form like \x23 at /tmp/mmdva6p85p line 1:�------> [32mmy $a = "#12"; my $c = $a.match(/^\…
09:33 p6eval ..rakudo b9ee89: OUTPUT«「#12」␤ 0 => 「12」␤␤»
09:35 dvj perl6: my $a = "#12"; my $c = $a.match(/^'#' (\d+) $/); say $c;
09:35 p6eval rakudo b9ee89, niecza v24-23-g0520c7c: OUTPUT«「#12」␤ 0 => 「12」␤␤»
09:35 dvj My rakudo installation gives me:  0 => 「12」
09:36 dvj Is the regex matching wrong?
09:37 arnsholt It matched the whole string, but you're only capturing the numbers
09:37 moritz dvj: I agree with what rakudo and niecza do here on the channel
09:37 moritz dvj: if you just want the string, use .Str or prefix ~
09:38 dvj rakudo: my $a = "#12"; my $c = $a.match(/^'#' (\d+) $/); say ~$c;
09:38 p6eval rakudo b9ee89: OUTPUT«#12␤»
09:38 moritz the 0 => 「12」 means "the first positional capture (with index 0) matched the string '12')
09:39 moritz in general, regex matches return Match objects, which contain much richer information than just the matched string
09:39 moritz http://doc.perl6.org/type/Match
09:39 dvj rakudo: my $a = "#12"; my $c = $a.match(/^'#' (\d+) $/); say $c.Int;
09:39 p6eval rakudo b9ee89: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏#12' (indicated by ⏏)␤  in method Int at src/gen/CORE.setting:10512␤  in method Int at src/gen/CORE.setting:2392␤  in block  at /tmp/IEz8E8D2Qq:1␤␤»
09:40 moritz r: my $a = "#12"; my $c = $a.match(/^'#' (\d+) $/); say $c[0].Int
09:40 p6eval rakudo b9ee89: OUTPUT«12␤»
09:40 moritz r: '#12' =~ /'#' (\d+) $ / and say $0.Int
09:40 p6eval rakudo b9ee89: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of =~ to do pattern matching; in Perl 6 please use ~~�at /tmp/XBUFUM_rUh:1�------> [32m'#12' =~[33m�[31m /'#' (\d+) $ / and say $0.Int[0m�»
09:40 moritz r: '#12' ~~ /'#' (\d+) $ / and say $0.Int
09:40 p6eval rakudo b9ee89: OUTPUT«12␤»
09:40 dvj ah, ok. I see. Takes some time getting used to stuff being wrapped into Match and Junctions coming from Perl5 :)
09:41 moritz dvj: yes. But once you've got used to Match objects, you won't ever want to go back
09:41 moritz especially when you try to extract the value of quantified capturing groups in Perl 5
09:42 moritz and I mean all values, not just the last one :-)
09:42 kresike joined #perl6
09:42 kresike hello all you happy perl6 people
09:51 mathw happy people? where?
09:51 FROGGS me is somewhat happy
09:51 diakopter I'm happy
09:51 FROGGS hi kresike
09:53 kresike FROGGS, o/
09:55 masak hello happy kresike
09:55 masak and good forenoon, #perl6
09:55 dakkar joined #perl6
09:55 mathw actually, I'm fairly happy this morning
09:55 mathw although I have lots of dull work to do
09:56 kresike hello masak o/
10:02 FROGGS mathw: well, "dull work" is the definition of $work, isnt it?
10:02 FROGGS or better: $day_job
10:03 diakopter FROGGS: nah, some people are blessed with jobs they enjoy
10:03 mathw FROGGS: Not always! My other job's usually rather more interesting. However in two weeks I'm starting a new job to replace both of them so I don't know how interesting that one's going to be. I'm hoping for 'occasionally' or better.
10:04 FROGGS I wanna have an interesting job too ó.ò
10:05 mathw so does everyone else
10:05 mathw however, the last year or so I've come to really value a stable job too
10:05 mathw even if it's a bit less interesting
10:09 masak FROGGS: my $dayjob is not dull.
10:12 mathw my saturday job certainly isn't dull :D
10:14 jerome joined #perl6
10:14 * moritz 's job isn't dull, but being paid to work on Perl 6 would be even better :-)
10:14 mathw :)
10:23 masak I guess that's why we're here.
10:40 mmcleric [Coke], japhb: about play-perl and p6mw - http://play-perl.org/quest​/512203d8e05a54a63a000022 - can you comment on that?
10:41 tadzik \o/
10:43 mmcleric ohai
10:48 moritz \o mmcleric
11:04 FROGGS r: say "foobar" ~~ / [f|oo||b||a||r]+ / # is it valid to mix | and || ?
11:04 p6eval rakudo b9ee89: OUTPUT«「foobar」␤␤»
11:18 b1rkh0ff joined #perl6
11:23 salv0 joined #perl6
11:47 moritz FROGGS: they simply have different precedences
11:47 moritz S05 has the details
11:49 xinming joined #perl6
11:57 hubba joined #perl6
12:00 brrt joined #perl6
12:01 masak TimToady: why are "replication" (x xx) and "concatenation" (~) their own precedence levels, rather than "multiplicative" and "additive", respectively?
12:04 moritz nr: say "we have " ~ 1000 * rand " open tickets"
12:04 p6eval niecza v24-23-g0520c7c: OUTPUT«[31m===[0mSORRY![31m===[0m��Two terms in a row at /tmp/IoD0owAAoI line 1:�------> [32msay "we have " ~ 1000 * rand [33m�[31m" open tickets"[0m��Parse failed��»
12:04 p6eval ..rakudo b9ee89: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Two terms in a rowâ�¤at /tmp/0fHdHa4z2V:1â�¤------> [32msay "we have " ~ 1000 * rand [33mâ��[31m" open tickets"[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix or meta-infixâ�¤        infix stopperâ�¤        statement endâ�¤        sta…
12:04 moritz nr: say "we have " ~ 1000 * rand ~ " open tickets"
12:04 p6eval niecza v24-23-g0520c7c: OUTPUT«we have 965.92582015596611 open tickets␤»
12:04 p6eval ..rakudo b9ee89: OUTPUT«we have 1.56008228393034 open tickets␤»
12:04 moritz nr: say "we have " ~ 20 + 100 * rand ~ " open tickets"
12:04 p6eval niecza v24-23-g0520c7c: OUTPUT«we have 102.22957611187806 open tickets␤»
12:04 p6eval ..rakudo b9ee89: OUTPUT«we have 31.8332726971374 open tickets␤»
12:04 moritz ok, this one actually illustrates the point I wanted to make :-)
12:05 masak yes, I accept your point. that's the consequence of the separation of precedence levels -- we can leave off the parens there.
12:05 masak but... hm. the fact that we can there is still (mildly) surprising to me.
12:05 mberends joined #perl6
12:05 masak mberends! \o/
12:06 masak moritz: I guess my expectations differ from the precedence table, and that's it.
12:07 mberends masak! moritz!
12:07 moritz mberends!
12:10 tadzik \o/
12:11 * masak .oO( http://tvtropes.org/pmwiki/pmwiki.​php/Main/ReactiveContinuousScream )
12:11 masak mberends!
12:12 masak moritz: as in, I'd totally write that as "we have " ~ (20 + 100 * rand) ~ " open tickets" -- even *knowing* that the precedence table is that way.
12:14 tadzik I'll go for
12:14 tadzik (damnit, Return key) "foo bar {100 * 20 + rand} baz"
12:16 masak tadzik: then for the sake of the example let's make it $prefix ~ (20 + 100 * rand) ~ $suffix
12:17 tadzik well, I'd still go for "" with a block inside :)
12:18 masak I guess the situation can be summarized as "the separation of those levels in the precedence table allows for numeric calculation to be done inside a chain of ~s, without parenthesizing"
12:18 tadzik I guess so
12:18 moritz aye
12:19 masak I think my surprise comes from the fact that I consider infix:<x> to be a multiplication operator, and thus wouldn't be at all surprised if it were sorted with infix:<*>
12:19 masak ...and indeed, that's how Perl 5 does it.
12:20 SmokeMachine joined #perl6
12:21 SmokeMachine joined #perl6
12:21 moritz fwiw I don't feel strongly either way
12:23 masak I'm curious because (a) it's a difference from Perl 5, and (b) I know TimToady wouldn't frivolously add prec levels, so there has to be a correspondingly good reason for it.
12:23 masak my suspicion is that the reason comes from TimToady, not from the RFCs. :)
12:39 moritz r: my $x = 42; $x; say $x
12:39 p6eval rakudo b9ee89: OUTPUT«42␤»
12:39 moritz huh, still doesn't work
12:39 moritz have I forgotten again to push my commits?
12:39 mmcleric joined #perl6
12:41 dalek rakudo/nom: 018b73b | moritz++ | src/Perl6/ (2 files):
12:41 dalek rakudo/nom: warn about variables in sink context
12:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/018b73bbed
12:43 renormalist joined #perl6
12:56 masak moritz: bloody distributed version control systems. people commit and commit, but what good does it do? it's all local. :P
12:56 arnsholt =D
12:57 moritz masak: indeed. And it doesn't help that I program rakudo on four different hosts
12:57 arnsholt My boss (to the extent that I have on, being in academia) tried to sell me on his "industrial-strength" version control system (SVN) the other day
12:57 masak "I forgot to push" is the new "the dog ate my homework".
12:57 moritz and occasionally remotely from one on the other
12:57 arnsholt All in good humour of course, but I've still to needle him about the deficiencies of SVN =)
13:03 kaleem joined #perl6
13:09 dvj perl6: my $a = "asdf"; $a.substr(/\s+.*$/, '');
13:09 p6eval niecza v24-23-g0520c7c: OUTPUT«Unhandled exception: System.InvalidCastException: Cannot cast from source type to destination type.␤  at Anon.1.MAIN.3e9c0f7f-de90-4a​f4-8b94-dbbd4ca5c7c3.C1ANON (Niecza.Frame ) [0x00000] in <filename unknown>:0 ␤  at Niecza.Kernel.RunCore (Niecza.Frame& cu…
13:09 p6eval ..rakudo b9ee89: OUTPUT«No such method '!cursor_start_all' for invocant of type 'Int'␤  in regex  at /tmp/OkAeclaTjF:1␤  in method substr at src/gen/CORE.setting:3904␤  in block  at /tmp/OkAeclaTjF:1␤␤»
13:10 kaleem joined #perl6
13:10 dvj oh, I was using substr instead of subst
13:11 dvj still, weird error message by rakudo
13:20 moritz I agree
13:20 moritz r: so /\s+.*$/
13:20 p6eval rakudo 018b73: OUTPUT«No such method 'match' for invocant of type 'Any'␤  in method Bool at src/gen/CORE.setting:10772␤  in sub prefix:<so> at src/gen/CORE.setting:2587␤  in block  at /tmp/Bcj0Dp8iyr:1␤␤»
13:20 jnthn Well, you can pass a *-1 there
13:21 jnthn So it thinks it's getting a whatever block, and invokes it with the number of elements
13:26 jnthn r: /\s+.*$/(1)
13:26 p6eval rakudo 018b73: OUTPUT«No such method '!cursor_start_all' for invocant of type 'Int'␤  in regex  at /tmp/RCQPow3JFD:1␤  in block  at /tmp/RCQPow3JFD:1␤␤»
13:27 moritz that's the old "violating the regex calling conventions should produce better error messages" problem
13:28 masak aye.
13:29 FROGGS joined #perl6
13:29 daxim_ joined #perl6
13:30 jnthn yes.
13:34 FROGGS jnthn: I'm trying to match stuff in <?before ...> tokens, is it possible to pass these matches to the Actions.pm methods?
13:35 FROGGS I have problems getting these values
13:35 moritz <?before> doesn't capture
13:35 FROGGS damn it
13:36 moritz I wonder if if you can say <alias=?before ...?
13:36 moritz erm. <alias=?before ...>
13:36 FROGGS will try
13:37 FROGGS moritz: https://github.com/rakudo/rakudo/commit/​932bc5318374968c5aa14316a328374a6247a97d
13:37 FROGGS I cen use $<twigil> in that grammar, but I am unable to bind it, say, to $*SOMETHING
13:37 FROGGS but I can do: :my $*SOMETHING := "1"
13:38 FROGGS I do get the "1" within the actions
13:38 moritz well, you have to declare $*SOMETHING in an outer rule
13:39 jnthn r: say '1234' ~~ /<before 2> \d+/
13:39 p6eval rakudo 018b73: OUTPUT«「234」␤ before => 「」␤␤»
13:39 jnthn oh, yeah, it'z zerowidth... :)
13:39 FROGGS r: say '1234' ~~ /<before $<thing>=[2]> \d+/
13:39 p6eval rakudo 018b73: OUTPUT«「234」␤ before => 「」␤␤»
13:39 moritz otherwise it's gone by the time the action method for this rule is called
13:39 jnthn r: say '1234' ~~ /<before (2)> \d+/
13:39 p6eval rakudo 018b73: OUTPUT«[31m===[0mSORRY![31m===[0m�Unrecognized regex metacharacter ( (must be quoted to match literally)�at /tmp/jMZD9COhbS:1�------> [32msay '1234' ~~ /<before (2)> \d+[33m�[31m/[0m�Regex not terminated�at /tmp/jMZD9COhbS:1�------> [32msay '1234' ~~ /<before (2)…
13:40 jnthn Yeah
13:40 FROGGS r: my $*THING; say '1234' ~~ /<before $<thing>=[2]> \d+ { $*THING := $<thing> } /; say $*THING
13:40 p6eval rakudo 018b73: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Cannot use bind operator with this left-hand sideâ�¤at /tmp/VKQOlWVzZI:1â�¤------> [32m$<thing>=[2]> \d+ { $*THING := $<thing> [33mâ��[31m} /; say $*THING[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix or meta-infixâ�¤        infi…
13:40 jnthn Try assignment
13:40 moritz FROGGS: try assigning (in rakudo at least)
13:40 FROGGS nqp: my $*THING; say('1234' ~~ /<before $<thing>=[2]> \d+ { $*THING := $<thing> } /); say($*THING)
13:40 p6eval nqp: OUTPUT«234␤␤»
13:40 xenoterracide joined #perl6
13:41 jnthn That's an option, yes :)
13:41 FROGGS nqp: my $*THING; say('1234' ~~ /<before $<thing>=[2]> \d+ { $*THING := $<thing>.Str } /); say($*THING)
13:41 p6eval nqp: OUTPUT«234␤␤»
13:41 FROGGS I though I've seen that somewhere...
13:41 moritz r: '1234' ~~ /<before $<thing>=2>234/; say $<thing>
13:41 p6eval rakudo 018b73: OUTPUT«Any()␤»
13:41 moritz heh, would have been too easy
13:41 FROGGS r: say('1234' ~~ /$<zw>=<before $<thing>=[2]> \d+ /);
13:41 p6eval rakudo 018b73: OUTPUT«「234」␤ zw => 「」␤ before => 「」␤␤»
13:42 FROGGS ya, zerowidth
13:42 FROGGS r: say('1234' ~~ /$<zw>=<?[2]> \d+ /);
13:42 p6eval rakudo 018b73: OUTPUT«「234」␤ zw => 「」␤␤»
13:42 FROGGS r: say('1234' ~~ /$<zw>=<?[2]>? \d+ /);
13:42 p6eval rakudo 018b73: OUTPUT«「1234」␤ zw => 「」␤␤»
13:42 moritz r: 'abc' ~~ /<before <alpha>> bc/; say $<before><alpha>
13:42 p6eval rakudo 018b73: OUTPUT«Any()␤»
13:42 FROGGS r: say('21234' ~~ /$<zw>=<?[2]>? \d+ /);
13:42 p6eval rakudo 018b73: OUTPUT«「21234」␤ zw => 「」␤␤»
13:43 FROGGS moritz: is it not <?before ...> ?
13:43 FROGGS with an "?" ?
13:44 moritz well, usualy yes :-)
13:45 arnsholt Oh, how I wish I could have sub MAIN in Perl 5
13:45 sevin joined #perl6
13:45 FROGGS okay, so if I cant capture it, then I might do that at runtime... like in Cursor.INTERPOLATE
13:46 FROGGS but then I might run into problem when / || @a / is optimized to / @a /, right?
13:46 FROGGS s/problem/problems/
13:46 moritz erm, what problems?
13:46 moritz neither || @a nor @a captures
13:47 FROGGS no, that's not what I'm trying to do
13:47 FROGGS @a = <a b c>; / @a /  is equal to /[a|b|c]/
13:48 FROGGS but / || @a / should switch to sequential
13:48 FROGGS like /[a||b||c]/
13:51 FROGGS it is tricky to make these things right
13:51 masak arnsholt: you mean there isn't a CPAN module for sub MAIN yet? :) surprising.
13:52 masak arnsholt: OTOH, it's not really nice unless you also have multis.
13:52 moritz http://www.digi.no/911787/​opera-sendte-90-paa-doren # now I'm glad I didn't join Opera last year
13:52 masak "Perl 6 isn't a menu of features you can pick and choose from."
13:52 moritz first you need proper subroutine signatures
13:52 moritz and preferrably a type system
13:53 masak right. and make sure not to break prototypes in the process!
13:53 masak or the existing light-weight types system.
13:53 arnsholt moritz: Wow. That's the department where I interned
13:54 arnsholt And yeah, I've actually toyed with the idea of making a MAIN module for Perl 5, but decided the tools aren't really there
14:00 dayangkun joined #perl6
14:01 PacoAir joined #perl6
14:12 lustlife1 joined #perl6
14:21 Psyche^ joined #perl6
14:33 bluescreen10 joined #perl6
14:42 bluescreen10 joined #perl6
14:42 bluescreen100 joined #perl6
14:43 pmurias joined #perl6
14:44 pmurias hi
14:45 tadzik hi
14:46 colomon n: sub postfix:<!>($n) { [*] 1..$n; }; say 26! / (2! * 24!)
14:46 p6eval niecza v24-23-g0520c7c: OUTPUT«325␤»
14:46 nwc10 masak: who was it who said "Perl 6 isn't a menu of features you can pick and choose from." ?
14:46 nwc10 I've forgotten
14:46 PacoAir joined #perl6
14:47 daxim_ it's got layers.
14:49 moritz I think it was TimToady, not sure though
14:50 phenny joined #perl6
14:51 nwc10 I'm not sure if anyone said *that* directly :-)
14:52 FROGGS nwc10: looks like it's about that: http://www.gossamer-threads.com/lists/engi​ne?do=post_view_flat;post=283318;page=1;mh​=-1;list=perl;sb=post_latest_reply;so=ASC
14:52 nwc10 that's me :-)
14:52 masak nwc10: it was someone on p5p.
14:52 masak heh, yeah seems it was nwc10 :)
14:52 nwc10 "Message-ID: <20120906092302.GO9583@plum.flirble.org>" is in my sent mail folder. :-)
14:53 FROGGS nwc10: I guessed that :o)
14:53 masak 'Larry's overriding design decision for Perl 6 seems to be "I can't fix this in Perl 5".' -- I like that one too.
14:53 masak I have that one as "You can't get here from there."
14:55 nwc10 which is actually more serious than http://simonkidd.wordpress.com/2010/08/12​/if-i-were-you-i-wouldnt-start-from-here/
14:58 nwc10 "I can't fix this in Perl 5" is heresy in some circles.
14:58 masak yes, of course.
15:01 nwc10 excellent topic to rant about over beer :-)
15:01 nwc10 but, one's two biggies for starters
15:01 nwc10 Perl 5 (the current implementation) is never going to have decent threads
15:02 nwc10 Perl 5 (the current implementation) is never going to have better than O(n) Unicode [for code points] and O(n**2) Unicode [for graphemes]
15:02 daxim_ http://lwn.net/Articles/537621/   has this article been already discussed? the log search didn't find anything, so I don't know whether it's because I'm using it wrong or not
15:03 moritz daxim_: the fulltext search just plain sucks
15:04 masak daxim_: ISTR it was discussed a few days ago.
15:04 moritz anyway, just seems like chromatic's usual Perl 6 FUD and ranting
15:04 brrt daxim_, imho (haven't seen it yet), its a distraction
15:04 brrt lets keep trucking on
15:04 masak wow, only now I see that the title of that one is "Goodnight, Perl 6" (when chromatic's article was "Goodnight, Parrot")
15:04 FROGGS nwc10: the link "Taking YAPC::EU 2003 in Paris seriously" on your page is borken
15:05 nwc10 FROGGS: I should ask Elaine where that image lives now.
15:06 moritz oh sorry, this one wasn't by chromatic. I misread the meta data.
15:06 daxim_ I didn't notice that this article is a reply/comment, either
15:06 brrt anyway, a lot of people don't believe in perl6, and luckily, some do
15:07 masak oh, it appears to be two distinct lwn posts. one the child of the other.
15:07 stopbit joined #perl6
15:08 huf why are all these people personally insulted that p6 isnt ready by their concepts of ready?
15:08 masak it appears to be a kind of cargo-culted anger.
15:10 masak there's not much thought about it. it reaches ridiculous proportions when people write "I waited five years for Perl 6, and then I used X instead", as if all they did for five years was to sit on a stool outside of a closed door waiting for something to happen.
15:10 masak I bet no-one ever did that. :)
15:10 moritz well, they would have starved first
15:10 moritz evolution takes care of us, so to speak
15:10 * masak hugs evolution
15:11 brrt :-)
15:11 tadzik that'd be natural selection, actually
15:11 tadzik evolution is when they mutate, no?
15:11 masak tadzik: last I looked, evolution and natural selection were, at the very least, good buddies.
15:12 tadzik oh they are
15:12 * tadzik hums De-evolving by Jonathan Coulton
15:12 huf one drives the other
15:12 masak random genotype changes add entroy. natural selection removes it.
15:13 daxim_ bribe me to port Algorithm-Combinatorics. that would be a low-level yak for me in order to do more interesting stuff in the language.
15:13 tadzik daxim_: I'll teach you an optimal way to tie a shoe
15:13 masak :P
15:13 tadzik serious offer
15:13 masak can you do it with one hand?
15:13 spider-mario joined #perl6
15:13 tadzik nah
15:14 daxim_ tadzik, I already know that!   https://plus.google.com/10824727​8178090416113/posts/Hd69rD4pHTk
15:15 tadzik oh, that's merely about, er, Węzeł Płaski and Węzeł Babski, however you call that in English :)
15:15 huf hmm?
15:15 huf is this some nursery rhyme?
15:16 * tadzik decomutees
15:17 daxim_ okay, if you have something better to offer than this, then I accept your proposal! deal?
15:17 colomon daxim_: For what it's worth, I just added combinations to List::Utils.
15:18 daxim_ oh, good
15:18 masak huf: seems to be related to https://en.wikipedia.org/wiki/File:Granny_knot.svg
15:19 masak the terms seem to mean "flat knot" and "woman's knot".
15:19 colomon r: my $a = [].shift; say $a
15:19 p6eval rakudo 018b73: OUTPUT«Element shifted from empty list␤  in method gist at src/gen/CORE.setting:10516␤  in sub say at src/gen/CORE.setting:7601␤  in block  at /tmp/Ml5j36QVfu:1␤␤»
15:20 colomon r: my $a = [].shift; say $b; say $a
15:20 p6eval rakudo 018b73: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Variable '$b' is not declaredâ�¤at /tmp/yQKgiaQWKG:1â�¤------> [32mmy $a = [].shift; say $b[33mâ��[31m; say $a[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
15:20 colomon r: my $a = [].shift; say 42; say $a
15:20 p6eval rakudo 018b73: OUTPUT«42␤Element shifted from empty list␤  in method gist at src/gen/CORE.setting:10516␤  in sub say at src/gen/CORE.setting:7601␤  in block  at /tmp/fY0o3SYuJ5:1␤␤»
15:20 huf masak: how do you call one half of that?
15:20 huf masak: the most basic building block of knots
15:20 masak huf: no idea. :)
15:21 huf cause yeah, they taught us this to tie our sails on the boom
15:21 colomon r: my $a = [].shift; say 42; say $a ~~ Failure
15:21 p6eval rakudo 018b73: OUTPUT«42␤True␤»
15:22 colomon r: my $a = [].shift; say 42; say $a !~~ Failure
15:22 p6eval rakudo 018b73: OUTPUT«42␤False␤»
15:22 nwc10 I had thought that the anger about lateness is sort of http://www.corsinet.com/braincandy/hlife.html
15:22 nwc10 but I'm not so sure
15:23 Ovidius I don't see it as anger so much as being tired of waiting and giving up.
15:23 nwc10 there's this feeling that "something should be done to improve Perl 5" "Preferably yesterday" "without changing the stuff that I like"
15:23 nwc10 without, I feel, most people who want it (quite legitimately, I agree)
15:24 arnsholt To me, chromatic seems inordinately concerned with what other people spend their time on, as well
15:24 nwc10 really having a good feeling for how hard it is to do.
15:24 nwc10 Do too little, and you ship, but are as popular as Python 3
15:24 nwc10 do too much, and you don't ship (yet)
15:25 arnsholt Although, to be fair, I'm not really familiar with the history (of which there seems to be a fair amount) of that particular story
15:25 nwc10 There are a lot of things I'm not going to say
15:25 nwc10 but I will say that chromatic gave a lot of his own time fixing hard, nonfun bugs in Parrot which no-one else wanted to get their hands dirty with.
15:26 nwc10 which has defineately helped Rakudo get where it is today
15:26 arnsholt That's good at least
15:26 nwc10 and, that I don't think that there is anyone now doing that unfun job that he used to do
15:27 masak indeed.
15:27 colomon r: my $a = [].shift; say 42; say $a.defined
15:27 arnsholt Probably not, yeah
15:27 p6eval rakudo 018b73: OUTPUT«42␤False␤»
15:32 PerlJam good $localtime all
15:32 masak PerlJam! \o/
15:32 PerlJam masak!
15:32 PerlJam :)
15:32 pmurias nwc10: "re do little" there were a couple implementations compiling Perl 6 to Perl 5 (sacrificing some of the harder features), that were relatively usable but there was little interest in them
15:34 sftp joined #perl6
15:36 colomon moritz: when you get a chance, can you look at the test failures in List::Utils?  The code works fine in Niecza, I believe it used to work fine in Rakudo, but something weird is happening with exceptions (?) with the current Rakudo.
15:37 colomon r: my $a = [].iterator.list.shift; say 42; say $a.defined
15:37 p6eval rakudo 018b73: OUTPUT«42␤False␤»
15:37 tokuhiro_ joined #perl6
15:39 crab2313 joined #perl6
15:39 thou joined #perl6
15:41 sftp joined #perl6
15:42 rindolf joined #perl6
15:44 moritz n: my $a = [].iterator.list.shift; say 42; say $a.defined
15:44 p6eval niecza v24-23-g0520c7c: OUTPUT«42␤False␤»
15:44 moritz colomon: I'll try
15:44 colomon moritz: danke
15:44 moritz though tuits are stretched thin, and will be for quite a while :(
15:45 dalek rakudo-js: 8854e88 | pawel++ | runtime.js:
15:45 dalek rakudo-js: Bring our implementation of 6model closer to nqp-jvm.
15:45 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/8854e8827d
15:45 dalek rakudo-js: 4f7e3dd | (Pawel Murias)++ | runtime.js:
15:45 dalek rakudo-js: Remove *loads* of dead code from before the serialization refactor.
15:45 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/4f7e3dd99b
15:49 skids joined #perl6
15:50 kaare_ joined #perl6
15:57 kivutar joined #perl6
16:11 census joined #perl6
16:15 PerlJam Queen has taught me a couple of things this morning ... fat bottom girls make the rockin' world go 'round  ... Queen will rock you ... and ... we are the champions.
16:15 PerlJam :-)
16:15 masak "Queen" will rock you, but "we" are the champions?
16:15 masak that sounds rather inconsistent :)
16:16 PerlJam masak: beware the hobgoblins of foolish consistency    ;)
16:17 colomon n: sub postfix:<!>($n) { [*] 1..$n; }; say 10! / (4! * 6!)
16:17 p6eval niecza v24-23-g0520c7c: OUTPUT«210␤»
16:17 masak PerlJam: heh :)
16:17 PerlJam (also, I said "a couple of things", but I listed 3.  It's poetic license or something ;)
16:18 masak that one is fine. the formal definiton of "a couple" is 2..3
16:18 colomon n: sub postfix:<!>($n) { [*] 1..$n; }; say 10! / (5! * 5!)
16:18 p6eval niecza v24-23-g0520c7c: OUTPUT«252␤»
16:19 jnthn .oO( Beware the Hobgoblins? But they taste so good! )
16:19 PerlJam masak: I've never seen anyone go "oh, what a cute couple!" when they see three people holding hands going down the street.
16:19 jnthn PerlJam: hah, I was thinking the same :)
16:20 moritz PerlJam: that's why German has the distinction between "paar" and "Paar"
16:20 moritz :-)
16:21 * colomon remembers having the "3 is a couple" debate with his father back in elementary school.
16:22 PerlJam masak: and how many is "a few" ? :)
16:23 FROGGS at least two, that's all I know
16:29 kresike bye folks
16:30 PerlJam I think something is defective in my brain ... everytime I see "kresike", I think of West Side Story and Officer Krupke
16:31 huf i think of a very small crash
16:31 huf but i have inside information
16:32 huf a ... crashling?
16:33 * skids prefers the trollish counting system.  It has only three numbers: one, two, and "yes, definitely two".
16:36 masak :)
16:43 pmurias jnthn: what's the difference between isnull and isnull_s?
16:43 * colomon is a bit puzzled why his combinations routine is so painfully slow on, say 10 choose 5
16:44 masak colomon: maybe it's generating big lists of things eagerly.
16:44 jnthn pmurias: Object vs. native string
16:45 colomon masak: nope, it's lazy
16:45 jnthn pmurias: On the JVM they go down to the same op
16:45 colomon well, I guess my test for it is not lazy.  hmm.
16:45 pmurias jnthn: the distinction makes sense on Parrot?
16:46 jnthn pmurias: And anywhere else we need to keep native strings and objects distinct.
16:46 jnthn We only get away with it on the JVM because it can't tell one null from amother :)
16:46 jnthn uh, another
16:47 * masak .oO( a Freudian slip is meaning one thing but saying your mother )
16:47 pmurias jnthn: is null a valid native string?
16:48 jnthn pmurias: I guess it's more the absence of a string :)
16:48 pmurias but a native string variable can store those?
16:48 jnthn Yes
16:49 pmurias on parrot we have both a null and string null?
16:49 jnthn Correct.
16:49 colomon masak: aha, appears a lot of the slow is in my tests to verify the combine returned is correct.  :)
16:49 jnthn On the JVM they're both just a NULL.
16:50 jnthn uh, null
16:50 jnthn aconst_null
16:50 jnthn :)
16:50 colomon r: say +("a" .. "m")
16:50 p6eval rakudo 018b73: OUTPUT«13␤»
16:51 colomon n: sub postfix:<!>($n) { [*] 1..$n; }; say 13! / (5! * 8!)
16:51 p6eval niecza v24-23-g0520c7c: OUTPUT«1287␤»
16:51 colomon oh
16:51 colomon r: say +("a" .. "h")
16:51 p6eval rakudo 018b73: OUTPUT«8␤»
16:51 pmurias jnthn: do we have docs on nqp ops somewhere?
16:52 jnthn nqp-opcode.txt is the closest to that
16:53 jnthn pmurias: They need documenting much better, it's just getting around to it... :)
16:59 FROGGS moritz / jnthn: can you help me with this? https://gist.github.com/FR​OGGS/d704ce02283dfdde53df
16:59 TimToady masak: nah, it just means you're getting father from the truth
16:59 FROGGS I dont know where the error comes from
17:00 * FROGGS .oO( Truth, I am your father! )
17:01 pmurias I'll start documenting the more tricky opcodes soon
17:04 jnthn <.unset_SEQ>
17:04 jnthn That doesn't return a Cursor
17:04 jnthn { self.unseq_SEQ }
17:04 jnthn But why not just { $*SEQ := 0 } :)
17:04 * FROGGS tries
17:05 jnthn But...how will that ever actually match? :)
17:05 jnthn It can't be before a || *and* before a sigil :)
17:06 jnthn I think you'd have much better look setting a contextual in termaltseq and termalt
17:06 jnthn *luck
17:07 jnthn Or maybe nibbler
17:07 masak nibbler! \o/
17:07 jnthn om nom nom nom nom regex!
17:13 pmichaud jnthn: (MARKED/MARKER)  feel free to adjust them however you wish
17:14 pmichaud ParseShared is indeed where I expected it to end up
17:15 jnthn pmichaud: OK, if it feels right to you too, I'm happy to go ahead and do it.
17:15 pmichaud yeah, this week is going to be a little hectic for me :-/
17:16 jnthn I'm gonna be fairly tied up tomorrow/Wednesday, but Thursday looks tuitful.
17:16 jnthn Maybe get some time this evening...depends how my slide writing godes :)
17:16 jnthn uh, goes
17:17 Chillance joined #perl6
17:20 b1rkh0ff joined #perl6
17:28 SmokeMachine joined #perl6
17:36 Chillance joined #perl6
17:36 mberends joined #perl6
17:36 fgomez joined #perl6
17:36 avar joined #perl6
17:36 sorear joined #perl6
17:36 kshannon joined #perl6
17:40 masak "tuitful", what a delightful neologism.
17:40 TimToady well, that's just using a productive suffix
17:41 TimToady round tuition is more like a neologism
17:41 TimToady not to mention a pun...
17:42 TimToady I suppose a real linguist might consider "round tuition" to be a portmanteau
17:43 * TimToady tries to visualize an airportmanteau
17:43 huf ow
17:44 nwc10 milimetre backscatter?
17:44 nwc10 at least, would that be the form that it takes?
17:44 TimToady backscattergun?
17:46 FROGGS jnthn: by "setting a contextual" you mean that I should add stuff to the AST that declares a var that I'll check in INTERPOLATE?
17:47 TimToady a new word from Indonesia might be a Borneologism?
17:47 jnthn FROGGS: I think you'd pass it as a parameter to interpolate
17:47 FROGGS I like INTERPOLITE though, always wanna type that instead...
17:48 jnthn FROGGS: But track the need to do so using the contextual
17:48 jnthn A little like we do with the case-insensitive flag
17:50 FROGGS so you mean like a global $*THING variable? then I must make sure to reset it right, in case of /[ 1 || @a] @b /
17:50 not_gerd joined #perl6
17:50 not_gerd o/
17:51 jnthn Well, it's not really global, it's dynamic. The important thing is that you're looking for being directly lexically nested in such an alternation, and dynamics at compile time represent the lexical shape of the program.
17:51 not_gerd oO( s/expixit/explicit/ - the keys are like... right next to each other )
17:55 Targen joined #perl6
18:03 TimToady hmm, http://www.gossamer-threads.com/​lists/perl/porters/283392#283392 seems just a bit revisionist to me; paraphrasing: "the initial four revisions of MOP weren't for Perl 6, they were for pugs."  Right...
18:06 rjbs That's weird.
18:07 rjbs sure is interesting times in perl, this month.
18:07 rjbs (although I see that's pretty old)
18:08 PerlJam 2013 is shaping up to be a watershed year for Perl (both 5 and 6)
18:08 rjbs watershed meaning that I'm shedding water from my eyes?
18:08 PerlJam I can't wait  to see what happens in March and April!  :)
18:08 rjbs Seems like the same old sound and fury to me.
18:09 rjbs Significand yet to be determined.
18:20 japhb mmcleric, re: http://irclog.perlgeek.de/​perl6/2013-02-18#i_6466917 , I'd simply say two things: 1) What coke said -- the work lists would have to be shared, since (as predicted) they ended up being rather extensive, and 2) p6mw moved to https://github.com/perl6/perl6-most-wanted , where you can see the size and scope of the current lists
18:22 japhb Also, while I accept the necessity of using github to work with the Perl 6 ecosystem, I chafe at having to use Twitter for ... well, anything, but in particular just to use Play Perl.
18:23 mmcleric auth with github is already in works, and auth with one-time email tokens is not far away too
18:23 mmcleric I know that's a popular demand
18:23 mmcleric those lists are huge
18:23 mmcleric are they prioritized? do we have to import everything, or can we start with a most important subset?
18:24 japhb Yay, glad to hear about the new auth methods
18:24 mmcleric (I jus treplied to coke here: http://play-perl.org/quest​/512203d8e05a54a63a000022)
18:24 japhb Yup, I told you the lists were big.  ;-)
18:24 colomon woah, mmcleric is right.  What's the point of having a most-wanted list if everything under the sun is on it?
18:24 cotto How much do people care about Parrot's current profiling tools?
18:24 cotto keep them?  Nuke them?  Fix them?
18:25 PerlJam cotto: I typically want to profile at a level above Parrot, so ...
18:25 japhb colomon: Here's the problem -- we need both small and large things for people to work on; and clearly, a lot of people have been getting to work over the last couple years.
18:25 jnthn cotto: The sub-level profiler is useful
18:26 cotto jnthn: thanks
18:26 japhb But I think people were kidding themselves about how ready Star was for people to be using it heavily in the wild.  There's just so much that people expect to do easily in Perl that isn't there yet.
18:26 jnthn perl6 --profile x.p6 2> foo.callgrind # I've used this kinda thing quite a bit. The output is often helpful.
18:26 japhb So I threw some effort into figuring out (and detailing) just how much was left to do.
18:27 cotto jnthn: is that the only one you personally care about?
18:27 colomon japhb: if the list is just "things it would be nice if someone worked on sometime", isn't that just the "wanted" list?
18:28 jnthn cotto: I'm pretty sure --profile is doing the sub level profiling. I don't know that I've used (or found useful) anything else. In fact, I'm not aware of what else is out there ;)
18:28 colomon japhb: ie I was expecting "most wanted" to be, OMG, we need this ASAP.
18:28 SamuraiJack joined #perl6
18:29 jnthn colomon: I think that the "everything that's wanted" list would be a lot longer. :)
18:29 TimToady just use a level of indirection and call it "CPAN"
18:29 PerlJam TimToady: heh, I was just thinking that
18:30 cotto jnthn: thanks.  That's a useful data point.
18:30 japhb colomon, Yes, I certainly see your point with that.  However, I can't provide that prioritization by myself -- I basically took a collection of what different communities and people saw as important to their daily work, applied a modicum of sanity to it, and categorized it.  But everything on there is important in some way.  I'm not qualified without community input to judge *most* important.
18:30 japhb Though I guess that's the reasoning behind trying to port it to Play Perl.
18:30 japhb Because then people can actually vote it around and bubble the real key stuff to the top.
18:30 mmcleric exactly, PP can help you to crowdsourse prioritization
18:31 [Coke] which is going to give us much better answers than #perl6 is.
18:31 [Coke] s/is/can/
18:31 japhb heh
18:31 PerlJam mmcleric: so ... does PP have quests for others to take on?
18:32 mmcleric PerlJam: http://play-perl.org/quest​/512203d8e05a54a63a000022 - read this and links from this
18:32 mmcleric tl;dr: not yet, but it's my priority this week
18:32 PerlJam mmcleric++ :)
18:33 mmcleric note that my vacation is over, so I'll be a bit slower from now on than last week… but I still think it'll be ready in a few days
18:34 TimToady we need an abbreviation for tl;dr
18:34 mmcleric TimToady: new unicode character?
18:35 japhb .oO( A little square box with tl at the top and dr at the bottom )
18:35 TimToady or just use ⏏
18:35 TimToady your program was too long, and I didn't read it...
18:37 TimToady std: your program was too long, and I didn't read it...
18:37 p6eval std 7551b8f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Bogus term at /tmp/Ascza9dlyL line 1 (EOF):â�¤------> [32mam was too long, and I didn't read it...[33mâ��[31m<EOL>[0mâ�¤Undeclared routines:â�¤  'it' used at line 1â�¤    'long' used at line 1â�¤Parse failedâ�¤FAILED 00:00 43mâ�¤Â»
18:37 TimToady hmm, in this case, it did read it all
18:38 TimToady I guess it "didn't read" the <EOL>
18:47 colomon mmcleric++ japhb++
19:10 jac50 joined #perl6
19:17 alester joined #perl6
19:31 Harzilein what's are example for crazy internal dsls that work with niecza and rakudo right now?
19:32 Harzilein what*
19:32 Harzilein examples*
19:33 TimToady that would depend on how you define "crazy", "internal", and "dsl"
19:33 PerlJam Harzilein: Perl 6  ;)
19:33 TimToady but quotes and regex are the main ones
19:34 Harzilein i mean "programmer-defined"
19:34 PacoAir joined #perl6
19:34 PerlJam Harzilein: I believe ABC is a dsl that works on both R and N
19:34 TimToady nr: say Q:s/ { my pid == $*PID } /
19:34 p6eval rakudo 018b73: OUTPUT« { my pid == 2919 } ␤»
19:34 p6eval ..niecza v24-23-g0520c7c: OUTPUT«Use of uninitialized value in string context␤  at /home/p6eval/niecza/lib/CORE.setting line 1290 (warn @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 266 (Mu.Str @ 15) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /tmp/kMgbioCqLW line 1 (mainline @ …
19:35 masak Harzilein: you can get pretty far by defining subs which use dynamic variables.
19:35 TimToady Q:s is a user-defined quote
19:35 masak Harzilein: the really crazy stuff will need macros and/or slangs.
19:35 PerlJam Harzilein: https://github.com/colomon/ABC  (but ask colomon about it)
19:35 TimToady to me, user-defined != internal
19:36 PerlJam Harzilein: maybe git://github.com/tadzik/Bailador.git fits your criteria too?
19:36 TimToady or do you mean "defined by using Perl 6"?
19:36 masak right, the "internal" in "internal DSL" means "using the programming language itself to do the DSL".
19:37 masak ABC would be very much an external DSL.
19:37 masak that's Fowler's terminology, by the way.
19:37 Harzilein masak: i meant that with internal, right.
19:37 masak then I agree that Bailador is the best we have.
19:37 masak Harzilein: you might also want to check out my advent post on the topic.
19:38 dvj I wrote a module to strip HTML tags using grammar. It turned out to be *very* slow. I'm new to Perl6, so could anyone give me pointers on what I'm doing wrong?
19:38 masak but the *really* crazy stuff will come when we have sufficiently advanced macros and slangs.
19:38 PerlJam Harzilein: why do you ask anyway?  Looking for something to work on?  or just curious?
19:38 dvj module: https://github.com/dagurval/HTML-St​rip/blob/master/lib/HTML/Strip.pm6
19:38 masak Harzilein: here: http://perl6advent.wordpress.com/2012/12/20​/day-20-dynamic-variables-and-dsl-y-things/
19:40 PerlJam dvj: what makes you think it's *you* that's done something wrong?  ;)
19:40 masak dvj: looks good to me -- I don't see any obvious slowdowns.
19:41 TimToady you might try it with niecza, which might run it faster than rakudo, if it runs
19:41 masak dvj: of course, if all you want to do is strip HTML tags, then probably you could get away with .split(&html_tag_regex).join() :)
19:42 dvj good to hear :) Documents were taking up to 15min to parse so I thought it must be me
19:42 PerlJam dvj: Maybe it's IO that's causing your grief?  How big are the HTML files you're throwing at it?
19:42 dvj masak: Then I wouldn't learn grammar ;)
19:43 FROGGS 15minutes? wow
19:43 PerlJam dvj: you can try https://github.com/perlpil​ot/Grammar-Profiler-Simple to see if there are any bottle-necks in your grammar.
19:44 TimToady dvj: currently grammars are designed for maximum flexibility, not maximum speed; the speed will come later (we hope) when we figure out how to optimize our grammars better
19:44 dvj PerlJam: http://doc.perl6.org/ <-- takes several minutes
19:44 dvj TimToady: that sounds good to me. I'm just glad I'm using them right hehe
19:45 TimToady for instance, right now all method calls in our grammars are virtual
19:45 dvj PerlJam: I'll try out that module
19:45 TimToady but de-virtualizing method calls will tend to take whole-program analysis
19:45 TimToady and a certain amount of type inferencing
19:47 TimToady but also, pretty much everything runs slow on rakudo/parrot so far.  hoping this changes some when we get rakudo/JVM, but we'll see
19:47 colomon Harzilein: masak++ is right, ABC is about processing external ABC files, not making your p6 code look like ABC.
19:52 alester masak: I haven't forogtten about our article.
19:53 masak colomon: would be kinda cool to have it as an internal DSL, I guess :)
19:53 masak but Perl 6 does not stop at the limits that, say, Ruby does.
19:54 masak we mean to do internal DSL for realz. :)
19:54 masak alester: oh, cool. PerlJam++ has supplied some starting material for when you're ready.
19:55 colomon masak: it's kind of a cool idea as a toy, but since the entire point of the project is to processing external files...
19:58 dalek ecosystem: f773b23 | Dagur++ | META.list:
19:58 dalek ecosystem: Added HTML-Strip
19:58 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/f773b23dcb
19:58 dalek ecosystem: 70539c4 | colomon++ | META.list:
19:58 dalek ecosystem: Merge pull request #18 from dagurval/patch-1
19:58 dalek ecosystem:
19:58 dalek ecosystem: Added HTML-Strip
19:58 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/70539c4e95
19:58 alester masak: Can you drop it in mail to me please?
20:01 benabik joined #perl6
20:06 masak alester: will do.
20:07 masak colomon: ah, ok. perhaps not so worthwhile, then :)
20:08 masak alester: sent.
20:08 benabik_ joined #perl6
20:23 brrt joined #perl6
20:24 benabik joined #perl6
20:26 zamolxes joined #perl6
20:31 ingy jnthn: are you going to .tw this osdc?
20:31 ingy jnthn: and/or do you know anyone else who is?
20:32 TimToady r: 1+2
20:32 p6eval rakudo 018b73:  ( no output )
20:32 TimToady r: 1+2; 42
20:32 p6eval rakudo 018b73: OUTPUT«WARNINGS:␤Useless use of constant expression "1+2" in sink context (line 1)␤»
20:32 TimToady r: $_ + 2; 42
20:32 p6eval rakudo 018b73: OUTPUT«use of uninitialized variable $_ of type Any in numeric context  in block  at /tmp/98pvsVH2_P:1␤␤»
20:32 TimToady that should warn about useless use of + in sink context
20:33 TimToady r: my $x = 1, 2; 42
20:33 p6eval rakudo 018b73:  ( no output )
20:33 TimToady and that should warn about useless use of , in sink context, unless it distributes, in which case it's useless use of 2
20:33 jnthn ingy: No, not this year I'm afraid.
20:33 colomon joined #perl6
20:34 TimToady moritz: ^^
20:35 ingy jnthn: thx
20:35 TimToady (I'm inclined to say that the sink context distributes to its list members)
20:35 brrt left #perl6
20:36 TimToady otherwise we'll get warnings on loop(my $i = 1, my $j = 2; ...; ...)
20:36 TimToady which should be perfectly fine
20:37 jnthn Space before paren :P
20:37 TimToady except for that
20:37 TimToady it's missing a block too :P
20:38 TimToady std: loop(my $i = 1, my $j = 2; ...; ...)  # curious
20:38 p6eval std 7551b8f: OUTPUT«[31m===[0mSORRY![31m===[0m�Undeclared routine:� 'loop' used at line 1�Check failed�FAILED 00:00 44m�»
20:38 TimToady std: sub loop {...}; loop(my $i = 1, my $j = 2; ...; ...)  # curious
20:38 p6eval std 7551b8f: OUTPUT«ok 00:00 45m␤»
20:38 TimToady (wasn't sure whether an arglist allowed ; or not
20:39 TimToady )
20:39 FROGGS for Undeclared routine: '<built-in>' it might suggest to add a space to avoid function call syntax
20:39 TimToady std: if(42) {...}
20:39 p6eval std 7551b8f: OUTPUT«[31m===[0mSORRY![31m===[0m�Word 'if' interpreted as 'if()' function call; please use whitespace instead of parens at /tmp/wdpUkhsxpG line 1:�------> [32mif[33m�[31m(42) {...}[0m�Unexpected block in infix position (two terms in a row) at /tmp/wdpUkhsxpG line 1…
20:39 TimToady does for that one
20:40 TimToady std: loop(my $i = 1, my $j = 2; ...; ...) {...}
20:40 p6eval std 7551b8f: OUTPUT«[31m===[0mSORRY![31m===[0m�Word 'loop' interpreted as 'loop()' function call; please use whitespace around the parens at /tmp/aqITgBAQXS line 1:�------> [32mloop[33m�[31m(my $i = 1, my $j = 2; ...; ...) {...}[0m�Unexpected block in infix position (two terms i…
20:40 TimToady does for that one too
20:40 TimToady but it needs the block to trigger it
20:40 TimToady it's really yet another ttiar error
20:41 FROGGS right, but that's perfectly fine I guess
20:41 FROGGS (that it needs a block)
20:41 TimToady if there isn't a block, then they obviously wanted to call it as a function :)
20:42 FROGGS I did: "if( bla bla );␤{ more bla }" years and years ago in php and was searching at least 30minutes for the error -.-
20:43 FROGGS and then I found the problem sitting on my chair
20:44 rindolf joined #perl6
20:50 moritz TimToady: I intentionally don't warn about stuff in sink context that warns or throws exceptions
20:51 moritz because of things like ~$failure
20:51 moritz which blows up, and might be intentional
20:52 FROGGS \o/ locally:
20:52 FROGGS ./perl6 -e 'my @a = <x xxxxxxx xxx>; say "xxxxxxxxx" ~~ /1 | @a/'  ==> 「xxxxxxx」
20:52 FROGGS ./perl6 -e 'my @a = <x xxxxxxx xxx>; say "xxxxxxxxx" ~~ /1 || @a/' ==> 「x」
20:52 FROGGS though it needs something before || and |
20:52 FROGGS but I'll get around that
20:52 jnthn \o/
20:54 jac50 joined #perl6
20:56 TimToady moritz: the warning is still more useful; I'd suggest some other way to suppress the warning if that's what they intended
20:58 moritz TimToady: I can experiment with it
21:01 adu joined #perl6
21:03 lue std: say#`[]42; # I'm curious as to how it's I<this> syntax error
21:03 p6eval std 7551b8f: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/EBTn6Y1j2f line 1:�------> [32msay[33m�[31m#`[]42; # I'm curious as to how it's I<t[0m�Two terms in a row (lis…
21:12 nik joined #perl6
21:13 Guest29967 left #perl6
21:17 benabik joined #perl6
21:19 alec__ joined #perl6
21:29 domidumont joined #perl6
21:34 spider-mario joined #perl6
21:50 domidumont joined #perl6
21:51 PacoAir joined #perl6
21:53 jac50 joined #perl6
21:54 dalek rakudo/nom: 5101a54 | moritz++ | src/Perl6/Optimizer.pm:
21:54 dalek rakudo/nom: add some type annotations to the Optimizer code
21:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5101a54623
22:00 donaldh joined #perl6
22:03 alec__ joined #perl6
22:27 proller joined #perl6
22:42 lue What is a [...] composer? (I'm sure I've seen it, but don't know what the name means)
22:43 lue (from the top of S02, btw)
22:43 masak r: say [1, 2, 3]
22:43 p6eval rakudo 5101a5: OUTPUT«1 2 3␤»
22:43 masak lue: it's when the [] create an Array object, like that.
22:43 masak r: say [+] 1, 2, 3
22:43 p6eval rakudo 5101a5: OUTPUT«6␤»
22:44 lue See, I knew I've already seen it :)
22:44 masak lue: the parser has to keep these two cases (array composer, reduce metaop) apart.
22:44 masak and that means doing a bit of lookahead.
22:48 dalek nqp/target-pbc: 6840a47 | (Gerhard R)++ | src/HLL/Compiler.pm:
22:48 dalek nqp/target-pbc: Restore old semantics of HLL::Compiler.compile()
22:48 dalek nqp/target-pbc:
22:48 dalek nqp/target-pbc: Returning the main sub would have worked, but is conceptionally wrong
22:48 dalek nqp/target-pbc: For now, just add a note about the proper solution
22:48 dalek nqp/target-pbc: review: https://github.com/perl6/nqp/commit/6840a47110
22:54 pmurias joined #perl6
22:59 pmurias masak: re DSLs isn't that something to be afraid of. That is libraries being created as DSL sacrificing composability to gain cuteness?
23:00 masak I'm not sure why that should be feared more for DSLs than for any modification of the current language. (adding global subs, or types)
23:00 masak DSLs are just that, but... more.
23:05 * rjbs wants a zero-qualification form of orelse.
23:05 rjbs .commit orelse;
23:06 rjbs As usual, I have a remedial question about a basic concept.
23:07 rjbs infex:<orelse> returns the left argument if defined, otherwise, the right.  Great, I get it.
23:07 rjbs It says it is for "the first argument that evaluates successfully" (in S03).  I understand "first" because it's showing a chain of orelse clauses.
23:07 labster joined #perl6
23:08 rjbs Is "evaluates successfully" related to the concept that I understand only vaguely, of returning failures that seem undef, but are fatal if touched just so?
23:11 labster lue: I was thinking about playing around with Lingua::EN::Numbers::Ordinal, can you accept GlitchMr++'s commit to make it panda compatible?
23:11 * rjbs is now reading S04/Exceptions.
23:11 labster *pull request
23:11 lue ah, let me look it over.
23:12 adu joined #perl6
23:13 lue done. :)
23:13 masak rjbs: I believe so.
23:14 masak rjbs: I tend to read "evaluates successfully" as "returns something defined", though. not sure that's an approximation that holds up.
23:14 * rjbs sees that orelse-ing a Failure marks it handling like any other defined() test.
23:14 lue .oO(I need to finish the "17th" form in Ordinal, IIRC)
23:14 rjbs I think it has to hold up for this to be useful, most of the time.
23:15 rjbs perl6++
23:18 labster thanks lue++.  I have this strange idea that I'd go through the ecosystem, find things that don't work, and see if I can bring it up to spec.
23:19 masak labster++
23:19 jnthn labster++ # that's certainly a good hing
23:19 jnthn *thing
23:20 masak 'night, #perl6
23:21 labster night, masak
23:22 labster I just got tired of waiting for Perl 6 to just happen, so I figure I should just contribute some code.  There needs to be some sort of working ecosystem to attract developers, and I don't want people to get frustrated when things don't work and go to a different language.
23:22 geekosaur joined #perl6
23:22 rjbs I often find it useful to throw "__END__" in a Perl 5 program to block off my pseudocode yet to be converted to real code.
23:23 rjbs Is there something to use for that in p6?
23:24 jnthn =END I think
23:25 colomon joined #perl6
23:25 rjbs S16 tells me to use q:p{filename} but :p is unrecognized adverb for Rakudo.  Just drop it?"
23:26 geekosaur I think most of that stuff is unimplemented as yet
23:27 jnthn rjbs: Yes, though then you'll get a string, not a...path, whatever that should produce
23:27 * rjbs produced a file of 0xF000 nuls, so that's a start!
23:32 rjbs How do I get a one-byte buffer containing (say) 0x01?
23:34 jnthn my $b = Buf.new(0x01);
23:34 jnthn my $b = Buf.new(0x01); my $fh = open('foo', :w, :bin); $fh.write($b); $fh.close # gets me a 1 byte file
23:34 rjbs Thanks.  I was about to use pack.
23:37 donaldh jnthn: are findcclass and findnotcclass needed for nqp-jvm ?
23:38 colomon > use List::Utils
23:38 colomon > combinations("a".."d").perl
23:38 colomon ([], ["a"], ["b"], ["c"], ["d"], ["a", "b"], ["a", "c"], ["a", "d"], ["b", "c"], ["b", "d"], ["c", "d"], ["a", "b", "c"], ["a", "b", "d"], ["a", "c", "d"], ["b", "c", "d"], ["a", "b", "c", "d"]).list
23:38 jnthn donaldh: Yes, I did iscclass already so they should not be hard to add
23:38 rjbs I'm sorry, please tell me if you need me to shut up with simple questions, but next I'm looking for docs on how I can concisely make a buffer from a(n all-ASCII) Str.
23:38 jnthn donaldh: Once you add them, some code that needs them in nqp-src/QRegex.nqp can be uncommented.
23:39 donaldh jnthn: Okay, I have started. Need to build some tests.
23:39 rjbs Ah, Str.encode?
23:39 rjbs Great.
23:39 jnthn r: my $s = 'omgz'; say $s.encode('ascii')
23:39 p6eval rakudo 5101a5: OUTPUT«Buf:0x<6f 6d 67 7a>␤»
23:40 rjbs Yeah, got it... on to my next failure. :)
23:40 * jnthn should sleep...gotta get up at sensible time tomorrow :)
23:41 skids joined #perl6
23:45 rjbs https://gist.github.com/rjbs/4981789
23:45 rjbs In this program, the first write-at succeeds.  The second one fails, "seek failed: -1"
23:46 [Coke] so, I have a branch to kill pasm. NQP requires some generated pasm files (even in the setting); suggestions on how to deal with this? The best I have so far is that if someone asks for "foo.pasm" in that parrot branch, give them "foo.pir" instead.
23:46 rjbs Am I doing something wrong, or is seek broken, or?
23:48 * rjbs just added a second file with a simpler demonstration.
23:48 [Coke] er, s/setting/stage0/
23:53 * rjbs gives up for now, back to the old grind.
23:59 benabik joined #perl6
23:59 rjbs Aha!
23:59 rjbs method seek(IO:D: Int:D $whence, Int:D $offset) {

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

Perl 6 | Reference Documentation | Rakudo