Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-03-25

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 Maddingue joined #perl6
00:01 raiph joined #perl6
00:01 fgomez joined #perl6
00:02 jtpalmer_ joined #perl6
00:02 risou joined #perl6
00:03 genehack joined #perl6
00:03 krunen joined #perl6
00:03 awwaiid joined #perl6
00:03 clkao joined #perl6
00:03 ingy joined #perl6
00:03 prammer_ joined #perl6
00:03 leprevost joined #perl6
00:03 Exodist joined #perl6
00:03 pmichaud joined #perl6
00:03 Ayiko joined #perl6
00:03 Tene joined #perl6
00:04 simcop2387 joined #perl6
00:08 pmichaud_ joined #perl6
00:09 Tene joined #perl6
00:13 Exodist joined #perl6
00:13 _sri joined #perl6
00:13 Ayiko joined #perl6
00:14 TimToady_ joined #perl6
00:14 pjcj joined #perl6
00:15 rom1504 joined #perl6
00:16 raiph joined #perl6
00:17 simcop2387_ joined #perl6
00:18 bonsaikitten joined #perl6
00:20 arnsholt_ joined #perl6
00:21 nebuchad` joined #perl6
00:22 awwaiid joined #perl6
00:23 krunen joined #perl6
00:26 PerlJam joined #perl6
00:28 s0rear joined #perl6
00:28 integral joined #perl6
00:28 integral joined #perl6
00:29 BinGOs joined #perl6
00:29 clkao joined #perl6
00:29 rjbs joined #perl6
00:30 jaldhar joined #perl6
00:30 genehack_ joined #perl6
00:30 Psyche^ joined #perl6
00:31 raiph_ joined #perl6
00:33 GlitchMr- joined #perl6
00:33 integral_ joined #perl6
00:33 integral_ joined #perl6
00:34 Gothmog_ joined #perl6
00:35 robinsmidsrod joined #perl6
00:35 breinbaas joined #perl6
00:36 xinming joined #perl6
00:36 prammer_ joined #perl6
00:38 dalek joined #perl6
00:39 sivoais joined #perl6
00:41 Exodist joined #perl6
00:41 mangala joined #perl6
00:41 avar joined #perl6
00:41 avar joined #perl6
00:41 salv0 joined #perl6
00:42 Chillance joined #perl6
00:42 Yappo______ joined #perl6
00:42 jfried joined #perl6
00:42 mj41 joined #perl6
00:45 p6eval joined #perl6
00:45 tadzik joined #perl6
00:45 leprevost joined #perl6
00:47 jerome_ joined #perl6
00:48 Gruber joined #perl6
00:49 mtk joined #perl6
00:50 salv0 joined #perl6
00:51 lustlife joined #perl6
00:51 Exodist joined #perl6
00:59 diakopter .
01:03 anuby joined #perl6
01:03 exodist_ joined #perl6
01:04 GlitchMr joined #perl6
01:07 rking joined #perl6
01:07 Trey joined #perl6
01:08 colomon joined #perl6
01:09 gcole joined #perl6
01:09 groky joined #perl6
01:13 Grrrr joined #perl6
01:16 gcole_ joined #perl6
01:21 lustlife1 joined #perl6
01:26 GlitchMr- joined #perl6
01:27 eiro_ joined #perl6
01:28 raiph joined #perl6
01:31 preflex joined #perl6
01:31 Exodist joined #perl6
01:32 ingyfoo joined #perl6
01:38 leprevost joined #perl6
01:39 jfried_ joined #perl6
01:40 jtpalmer joined #perl6
01:41 mtk joined #perl6
01:43 vaelxon joined #perl6
01:44 gcole joined #perl6
01:45 mj41 joined #perl6
01:47 Yappo______ joined #perl6
01:49 jtpalmer joined #perl6
01:50 lustlife joined #perl6
01:50 Exodist joined #perl6
01:53 raiph joined #perl6
01:55 sitaktif1 joined #perl6
01:56 jtpalmer_ joined #perl6
02:00 lustlife2 joined #perl6
02:00 anuby joined #perl6
02:08 Exodist joined #perl6
02:09 leprevost joined #perl6
02:10 salv0 joined #perl6
02:11 mtk joined #perl6
02:18 anuby_ joined #perl6
02:23 salv01 joined #perl6
02:27 loops joined #perl6
02:31 raiph joined #perl6
02:32 anuby__ joined #perl6
02:33 lustlife joined #perl6
02:33 Exodist joined #perl6
02:33 TimToady joined #perl6
02:34 Yappo______ joined #perl6
02:34 salv01 joined #perl6
02:35 mtk0 joined #perl6
02:38 jtpalmer joined #perl6
02:41 baest joined #perl6
02:44 FROGGS_ joined #perl6
02:46 baest joined #perl6
02:46 Pleiades` joined #perl6
02:48 Exodist joined #perl6
02:48 lustlife joined #perl6
02:59 baest_ joined #perl6
03:07 orafu joined #perl6
03:12 skyheights joined #perl6
03:15 * skyheights offers https://www.destroyallsoftware.com/talks/wat to masak++ and moritz++ to cheer them up after yesterday's #parrot episode
03:17 dwoldrich joined #perl6
03:24 preflex_ joined #perl6
03:37 raiph joined #perl6
03:40 preflex_ joined #perl6
03:46 raiph joined #perl6
03:46 sevin joined #perl6
03:46 sevin t
03:47 rking joined #perl6
04:02 raiph sevin: ?
04:02 preflex joined #perl6
04:05 sevin had my cursor on the wrong window, my bad
04:17 thou joined #perl6
04:25 drbean joined #perl6
04:30 loops joined #perl6
04:37 preflex joined #perl6
04:42 colomon joined #perl6
04:51 SamuraiJack joined #perl6
05:14 raiph joined #perl6
05:15 preflex joined #perl6
05:17 moritz_ \o
05:30 crab2313 joined #perl6
05:40 BinGOs_ joined #perl6
05:40 atrodo_ joined #perl6
05:42 preflex joined #perl6
05:42 markov1 joined #perl6
05:42 dmol joined #perl6
05:43 nebuchad` joined #perl6
05:43 apejens_ joined #perl6
05:44 jlaire_ joined #perl6
05:44 LoRe_ joined #perl6
05:45 swarley-freenode joined #perl6
05:46 yeltzooo6 joined #perl6
05:46 crazedpsyc joined #perl6
05:46 sunnavy joined #perl6
05:50 moritz_ fwiw ilbot6 ran through the night without problems
05:57 vishaltaware joined #perl6
05:59 vishaltaware left #perl6
06:03 kaleem joined #perl6
06:23 lue joined #perl6
06:24 diakopter moritz_: did you see my idea about ilbot counting karma from your db? :)
06:25 moritz_ diakopter: yes, it's not new
06:26 moritz_ diakopter: I thought about an extra bot that reads the db and reports karma when asked for
06:26 moritz_ but so far it's just idle pondering, no real plans to do anything
06:26 diakopter ok... I really didn't care whether it was new or not
06:28 diakopter seems you're implying you're the only one who could do it
06:30 moritz_ not at all
06:30 moritz_ it's open source
06:30 kaare_ joined #perl6
06:54 domidumont joined #perl6
07:09 domidumont joined #perl6
07:17 FROGGS_ joined #perl6
07:20 renormalist joined #perl6
07:23 GlitchMr- while '' ne my $answer = prompt 'Temperature: ' {
07:23 GlitchMr- I like that one
07:43 moritz_ while chars(my $answer = prompt 'Temperature: ') { } #also an option
07:47 dalek v5: ff7d3c3 | (Tobias Leich)++ | t/v5/ (12 files):
07:47 dalek v5: added "use perl5" where it was missing
07:47 dalek v5: review: https://github.com/rakudo-p5/v5/commit/ff7d3c39d0
07:48 domidumont joined #perl6
08:02 preflex joined #perl6
08:07 cognominal joined #perl6
08:11 Beltechs joined #perl6
08:19 cognominal__ joined #perl6
08:22 dalek specs: eac99e2 | (Stéphane Payrard)++ | S12-objects.pod:
08:22 dalek specs: Twigil in a BUILD call must be '!'
08:22 dalek specs: review: https://github.com/perl6/specs/commit/eac99e23ec
08:22 cognominal joined #perl6
08:31 nebuchad` joined #perl6
08:33 jlaire_ joined #perl6
08:35 kaare_ joined #perl6
08:35 __rnddim__ joined #perl6
08:37 markov joined #perl6
08:38 daxim joined #perl6
08:39 SamuraiJack_ joined #perl6
08:40 eiro joined #perl6
08:41 atrodo joined #perl6
08:42 SamuraiJack_ joined #perl6
08:43 renormalist joined #perl6
08:44 cognominal joined #perl6
08:44 kaleem joined #perl6
08:45 colomon joined #perl6
08:46 ingy joined #perl6
08:46 preflex joined #perl6
08:47 dalek v5: 302e259 | (Tobias Leich)++ | lib/Perl6/P5 (2 files):
08:47 dalek v5: dispatch dot infix to concat operation
08:47 dalek v5: review: https://github.com/rakudo-p5/v5/commit/302e259e2c
08:48 mj41 joined #perl6
08:54 kresike joined #perl6
08:54 kresike hello all you happy or unhappy perl6 people
08:56 Heather joined #perl6
08:56 * Heather is removing KDE
08:59 bonsaikitten Heather: heretic!
08:59 Heather bonsaikitten I need something lighter, xmonad now
08:59 Heather bonsaikitten http://i.imgur.com/IbKnZqc.png
09:00 bonsaikitten pff. just disable whatever you don't need
09:00 Heather bonsaikitten I don't need kdelibs
09:01 fhelmberger joined #perl6
09:02 Heather bonsaikitten to be honest I need KDE libs -__-' I still use KDevelop but I don't need plasma, for example
09:02 bonsaikitten pfff.
09:02 sorear xmonad eh.  do the docs still mention me?
09:02 Heather sorear huh?
09:03 Heather bonsaikitten funniest thing is that I don't know how to remove KDE now, I afraid to affect KDevelop
09:04 sorear Heather: i was one of the 3 members of the original xmonad team
09:04 sorear it's _weird_ seeing how much it took off since I left (0.3-ish)
09:04 Heather sorear why left?
09:07 daxim `rpm -q --requires kdevelop4` says it depends on kdebase4-runtime.  it's not possible to remove KDE and keep KDevelop
09:07 Heather daxim cool -__-'
09:08 bonsaikitten daxim: amusing how people invent package names unrelated to upstream
09:08 Heather daxim but I need to clean other things )
09:08 daxim yeah, I hate it when debian does that.  can't they follow LSB/RPM naming conventions like everyone else?
09:09 bonsaikitten "everyone" ?
09:09 Heather I need to remove meta package but I afraid that some fonts / icons etc... let call it unnecessary things, will be removed too
09:09 bonsaikitten Heather: try it and see
09:10 Heather bonsaikitten just emerge -C xxx-meta ?
09:10 bonsaikitten Heather: yes
09:10 bonsaikitten or add -a if you're a scared cat
09:12 Heather bonsaikitten though I need -a for next depclean
09:15 sorear sleep&
09:16 sqirrel joined #perl6
09:18 cognominal joined #perl6
09:30 cognominal__ joined #perl6
09:32 tadzik hello #perl6
09:32 Heather tadzik hey
09:33 FROGGS_ hi tadzik
09:33 dakkar joined #perl6
09:36 masak good forenoon, #perl6
09:37 moritz_ good am, masak :-)
09:37 tadzik hi masak
09:37 * tadzik is teaching Perl today
09:37 masak \o/
09:38 * loops is learning Perl today
09:38 masak tadzik: powodzenia!
09:38 Heather ...
09:38 moritz_ !!!
09:38 masak ???
09:38 moritz_ r: say WHAT do { ... }
09:38 loops \@$
09:38 p6eval rakudo b972ca: OUTPUT«Stub code executed␤current instr.: 'throw' pc 350303 (src/gen/CORE.setting.pir:152936) (src/gen/CORE.setting:9353)␤called from Sub 'sink' pc 381956 (src/gen/CORE.setting.pir:165283) (src/gen/CORE.setting:10618)␤called from Sub 'MAIN' pc 381 (src/gen/perl6.pir:147) …
09:39 Heather it's polish !
09:39 moritz_ huh, where did that 'sink' come from?
09:39 moritz_ looks like a bug to me
09:39 moritz_ masak! you are needed here!
09:40 * FROGGS_ pokes masakbot
09:41 masak huh! huh!
09:41 FROGGS_ tadzik: polish perl workshop?
09:41 masak I looked at that and didn't see anything odd.
09:41 masak what's the bug with 'sink'?
09:41 tadzik FROGGS_: nah, not yet
09:41 tadzik just an Advanced Perl class in spare time
09:41 FROGGS_ tadzik++ # cool!
09:42 tadzik I'm almost as frightened as excited :)
09:42 masak tadzik++ # uses his spare time to teach Perl :)
09:42 tadzik okay, I'm not that frightened once I started
09:42 cognominal__ Advanced Perl, that's Perl6 ? :)
09:42 tadzik haha, I wish :)
09:43 FROGGS_ tadzik: tell them that you can write Peril5 in Peril6 now :o)
09:43 FROGGS_ well, at least almost
09:43 Heather what about open courses?
09:43 Heather but not courseria...
09:44 tadzik perl6maven, mayhaps?
09:44 * Heather hates courseria with weirdo reasons
09:44 * tadzik is off again
09:47 masak Heather: dude, you were the one who brought up this "courseria" thing... :P
09:47 * masak is off for some errands
09:48 cognominal__ coursera?
09:49 snearch joined #perl6
10:02 BinGOs joined #perl6
10:02 preflex joined #perl6
10:05 Heather courseria ! :)
10:06 hoelzro coursera?
10:06 * hoelzro starts his coursera course today
10:07 hoelzro (also, goede morgen #perl6)
10:12 Heather hoelzro link?
10:12 hoelzro to the course?
10:12 Heather hoelzro yep
10:13 hoelzro Heather: https://www.coursera.org/course/algs4partII
10:24 Heather I want this https://www.coursera.org/course/mentalhealth but it's closed
10:26 hoelzro interesting
10:32 rindolf joined #perl6
10:41 dalek v5: 9b86017 | (Tobias Leich)++ | lib/Perl6/P5 (2 files):
10:41 dalek v5: remove tokens which are methods or subs
10:41 dalek v5: review: https://github.com/rakudo-p5/v5/commit/9b86017d3c
10:48 erkan joined #perl6
10:48 erkan joined #perl6
10:54 wk joined #perl6
11:03 daxim tadzik, status plpw2013?  post some /news or something
11:08 hoelzro of the keywords that can introduce a new scope (ex. grammar, module, etc), is package the only one that *must* be followed by a block?
11:08 hoelzro ex. package Foo::Bar; is now illegal
11:09 hoelzro (I'm not considering -> { ... } or { ... } atm)
11:09 betterworld joined #perl6
11:10 FROGGS_ hoelzro: I think so, yes
11:10 hoelzro cool
11:11 FROGGS_ std: package FooBar;
11:11 p6eval std 86b102f: OUTPUT«[31m===[0mSORRY!​[31m===[0m�Semicolon form of package definition indicates a Perl 5 module; unfortunately,�  STD doesn't know how to parse Perl 5 code yet at /tmp/4xSPjXCqb4 line 1:�------> [32mpackage FooBar[33m�[31m;[0m�    expecting any of:� name�   trait�Par…
11:11 FROGGS_ std: grammar FooBar;
11:11 p6eval std 86b102f: OUTPUT«ok 00:00 41m␤»
11:11 FROGGS_ std: class FooBar;
11:11 p6eval std 86b102f: OUTPUT«ok 00:00 41m␤»
11:11 FROGGS_ right
11:12 hoelzro cool
11:12 betterworld left #perl6
11:14 masak STD is the only parser I know to use the wording "unfortunately" :)
11:15 FROGGS_ masak: and the sentence after that is pretty wrong
11:15 FROGGS_ std: use v5; package FooBar;
11:15 p6eval std 86b102f: OUTPUT«ok 00:00 52m␤»
11:27 masak std: use v5; my $foo; $foo->method(); print $foo . "bar"
11:27 p6eval std 86b102f: OUTPUT«ok 00:01 53m␤»
11:27 masak huh. wow. :)
11:29 betterworld joined #perl6
11:31 FROGGS_ masak: that is STD_P5.pm6, I use this grammar
11:40 betterworld joined #perl6
11:40 masak I don't know about you, but I'm every so slightly awestruck.
11:41 masak it's like, I know where the Perl 6 grammars thing is heading, and has been heading all along. but seeing it actually get there step by step is... very fulfilling. :)
11:51 FROGGS_ well, I'm just happy that there already is a Perl 5 grammar, writing one from scratch might be a lifetime job for me
11:51 FROGGS_ but twiddling a bit so that the action methods fit the grammar rules is a job I can do within time :o)
11:52 diakopter std: use v5 { };
11:52 p6eval std 86b102f: OUTPUT«[31m===[0mSORRY![31m===[0m�Cannot locate module v5 at /tmp/PEOjPBaicE line 1:�------> [32muse v5 { }[33m�[31m;[0m�Check failed�FAILED 00:00 50m�»
11:52 diakopter p5eval: use v5 { };
11:52 p5eval diakopter: ERROR: syntax error at (eval 7) line 1, near "use v5 { "
11:52 FROGGS_ the v5.pm might be a preset for other languages like cobol some day, but I won't dare to write the grammar
11:52 diakopter p5eval: use v5 qw();
11:52 p5eval diakopter: ERROR: syntax error at (eval 7) line 1, near "use v5 qw()"
11:52 * diakopter slow
11:53 FROGGS_ diakopter: use v5 takes no params
11:53 FROGGS_ masak: do you know cobol?
11:55 tadzik daxim: ayes, there will be updates this week
11:55 FROGGS_ well, I guess such an old language has not that kind of perlish syntax (perlish =:= hard to implement)
11:55 daxim make it so
11:55 tadzik I saw your talk submissions too, good stuff
11:55 masak FROGGS_: I've never used COBOL. only seen enough of it.
11:56 tadzik there was supposed to be an update last week, it's just that $life got in a way
11:56 FROGGS_ r: $life
11:56 p6eval rakudo b972ca: OUTPUT«[31m===[0mSORRY!​[31m===[0m�Variable '$life' is not declared�at /tmp/znUry6ZClg:1�------> [32m$life[33m�[31m<EOL>[0m�    expecting any of:�        postfix�»
11:56 FROGGS_ hmmm, what's that?
11:56 masak tadzik: how does one submit a talk for the Polish Perl Workshop?
11:57 tadzik masak: through a talk submission link, I suppose :
11:57 tadzik isn't there one?
11:57 masak let's just pretend my fingers are glued together and I can't search for it :)
11:57 tadzik http://act.yapc.eu/plpw2013/newtalk
11:57 tadzik there we go :)
11:57 masak \o/
11:57 tadzik oh yes, please submit
11:57 tadzik ++masak
11:57 * tadzik food &
11:57 diakopter r: my $a = './'; require $a x 1000;
11:57 p6eval rakudo b972ca: OUTPUT«Could not find ./././././././././././././././././././././.​/./././././././././././././././././././././​./././././././././././././././././././././.​/./././././././././././././././././././././​./././././././././././././././././././././.​/./././././././././././././././././…
11:58 diakopter r: my $a = '../'; require $a x 1000;
11:58 p6eval rakudo b972ca: OUTPUT«Could not find ../../../../../../../../../../../../../../.​./../../../../../../../../../../../../../..​/../../../../../../../../../../../../../../​../../../../../../../../../../../../../../.​./../../../../../../../../../../../../../..​/../../../../../../../../../../../.…
11:58 diakopter r: my $a = ';'; require $a x 1000;
11:58 p6eval rakudo b972ca: OUTPUT«Could not find ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;​;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;​;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;​;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;​;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;​;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;…
11:58 diakopter r: my $a = ' '; require $a x 1000;
11:58 p6eval rakudo b972ca: OUTPUT«Could not find                                                                                                                                                                                                                                                           …
11:58 masak there should be a "this is an insane usage -- diakopter, is that you?" error message. :P
11:59 masak "Witaj na stronie Polskiego Perl Workshopu 2013!"
11:59 masak "Workshopu"! :D
11:59 masak sounds almost Japanese...
12:00 * FROGGS_ :op('callmethod'), :name('&lunch'), :node(self)
12:00 diakopter r: my $a = '.0'; require "v6{$a x 1000}";
12:00 p6eval rakudo b972ca: OUTPUT«Could not find v6.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.​0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0​.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.​0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0​.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.​0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0…
12:00 masak diakopter: I think we should release the frozen spec with that version number.
12:00 diakopter r: my $a = '0'; require "v6{$a x 1000}";
12:00 p6eval rakudo b972ca: OUTPUT«Could not find v600000000000000000000000000000000000000000​0000000000000000000000000000000000000000000​0000000000000000000000000000000000000000000​0000000000000000000000000000000000000000000​0000000000000000000000000000000000000000000​00000000000000000000000000000000000…
12:01 diakopter masak: yes.
12:01 masak by the time Perl 6{'0' x 1000} is out, sorear and I will already have absorbed a few stars.
12:01 diakopter r: require "v5";
12:02 p6eval rakudo b972ca: OUTPUT«Could not find v5 in any of: /home/p6eval/nom-inst/lib/parrot/4.1​0.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/4.10​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​4.10.0-devel/languages/perl6/lib, /home/p6eval/.perl6/201…
12:02 diakopter r: require "your mom";
12:02 p6eval rakudo b972ca: OUTPUT«Could not find your mom in any of: /home/p6eval/nom-inst/lib/parrot/4.1​0.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/4.10​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​4.10.0-devel/languages/perl6/lib, /home/p6eval/.per…
12:04 diakopter r: require "anything";
12:04 p6eval rakudo b972ca: OUTPUT«Could not find anything in any of: /home/p6eval/nom-inst/lib/parrot/4.1​0.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/4.10​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​4.10.0-devel/languages/perl6/lib, /home/p6eval/.per…
12:04 diakopter r: require "jack";
12:04 p6eval rakudo b972ca: OUTPUT«Could not find jack in any of: /home/p6eval/nom-inst/lib/parrot/4.1​0.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/4.10​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​4.10.0-devel/languages/perl6/lib, /home/p6eval/.perl6/2…
12:06 masak r: require "diakopter";
12:06 p6eval rakudo b972ca: OUTPUT«Could not find diakopter in any of: /home/p6eval/nom-inst/lib/parrot/4.1​0.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/4.10​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​4.10.0-devel/languages/perl6/lib, /home/p6eval/.pe…
12:07 masak r: requires "sense or even intelligence";
12:07 p6eval rakudo b972ca: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared routine:�    requires used at line 1��»
12:07 masak r: requires "sense or even intelligence";
12:07 p6eval rakudo b972ca: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared routine:�    requires used at line 1��»
12:07 masak ugh
12:07 masak r: require "sense or even intelligence";
12:07 p6eval rakudo b972ca: OUTPUT«Could not find sense or even intelligence in any of: /home/p6eval/nom-inst/lib/parrot/4.1​0.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/4.10​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/4.​10.0-devel/languages/perl6/lib,…
12:07 diakopter hee
12:08 cognominal__ r: my (&nique, &ta, &mère); nique ta mère
12:09 p6eval rakudo b972ca: OUTPUT«No such method 'Any' for invocant of type 'Parcel'␤  in block  at /tmp/72HX4mW0RB:1␤␤»
12:09 daniel-s_ joined #perl6
12:13 diakopter r: my (&nique, &ta, &mère) = ({;},{;},{;}); nique ta mère
12:13 p6eval rakudo b972ca:  ( no output )
12:14 diakopter r: my (&nique, &ta, &mère) = {;} xx 3; nique ta mère
12:14 p6eval rakudo b972ca:  ( no output )
12:17 preflex joined #perl6
12:26 preflex joined #perl6
12:41 snearch joined #perl6
12:42 SmokeMachine joined #perl6
12:43 sqirrel joined #perl6
12:48 FROGGS_ r: require "my keys"
12:48 p6eval rakudo b972ca: OUTPUT«Could not find my keys in any of: /home/p6eval/nom-inst/lib/parrot/4.1​0.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/4.10​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​4.10.0-devel/languages/perl6/lib, /home/p6eval/.perl…
12:48 FROGGS_ should be "your keys" then
12:51 nwc10 masak: I'm probably biased, but the reasons I like perl 6 are the gradual typing and the first class grammars. And the additional reason I like Rakudo is that it's self hosting
12:52 nwc10 heck. Probably a third reason is that the language is designed/intended to be lexically extendible
12:53 nwc10 there are things that I don't like, which will probably remain even after the principal dislike is resolved (I have plenty of snow, but it's not Christmas)
12:54 cognominal joined #perl6
12:59 moritz_ having everything lexically (like imports etc.) is really great
13:00 nwc10 having the ability to change the grammar lexically should help future-proofing
13:00 hoelzro +1
13:00 hoelzro (lexical stuff)++
13:00 nwc10 likely that one is key in the long term
13:00 nwc10 lexical imports is useful in the medium term
13:02 jnthn Lexical stuff also works out very nicely implementation wise.
13:02 jnthn To the degree that I find anything that doesn't work lexically mostly a nuisance to have to deal with. :)
13:02 jnthn Leading example: packages :)
13:04 moritz_ this is kinda amusing, because Back In The Days, lexical classes din't work at all :-)
13:04 moritz_ (when we still put methods into parrot namespaces)
13:05 shlomif joined #perl6
13:06 jnthn moritz_: Yeah, one of the biggest things that we've changed over time is making the toolchain good at lexical stuff
13:06 cognominal joined #perl6
13:06 jnthn OTOH, we didn't actally get namespace stuff very right back then...since we didn't have the ability to do the separate compilation bits properly.
13:07 moritz which is kinda connected to the invention of Perl6::World
13:07 jnthn *nod*
13:07 nwc10 actually, heck, that's another useful thing - proper compilation, and linking
13:10 nwc10 jnthn: nqp-jvm-prep still works (apart from the two cross-compile known problems)
13:10 arnsholt_ jnthn! o/
13:10 jnthn nwc10: OK :)
13:11 jnthn Will look more at that after vacation :)
13:11 jnthn arnsholt_: o/
13:11 jnthn arnsholt_: How's things going?
13:15 arnsholt Pretty good
13:15 arnsholt I pushed some commits yesterday (I think)
13:15 arnsholt Think I've gotten the most important parts of the HLL config stuff in
13:16 jnthn I see you've been plugging away at that, yes
13:16 jnthn I'll take a closer look and probably contribute some in a week or so
13:16 masak jnthn! \o/
13:16 arnsholt Had to tweak the regex codegen stuff a bit. That was a bit scary, I must admit
13:16 jnthn Since getting that right will also be a Rakudo porting blocker
13:16 jnthn arnsholt: oh, where ooc?
13:17 jnthn o/ masak
13:18 arnsholt jnthn: https://github.com/perl6/nqp/commit/95​084d2b14da487bbd7b6cc427d436c2e023b366
13:19 arnsholt Essentially, the code tried to fetch from an nqp::list directly into S and I registers
13:20 sahadev joined #perl6
13:20 jnthn arnsholt: which nqp::list out of curiosity?
13:20 jnthn If it's the bstack it's explicitly meant to be a list_i
13:22 jnthn arnsholt: oh, no, it's just the cursor start thing
13:22 jnthn arnsholt: yes, that's fine
13:23 bluescreen10 joined #perl6
13:24 arnsholt jnthn: Excellent. I was a bit wary, but it seemed like the only option
13:25 arnsholt I also added a set_elems to REPROps_Positional (and dispatch to that from set_integer_native in sixmodelobject.pmc)
13:25 arnsholt Loosely based on what I found in the JVM stuff
13:25 jnthn *nod*
13:25 jnthn Need an nqp:: op for that
13:26 arnsholt Troo
13:26 jnthn (has been on my todo list...didn't work out what to call it... :))
13:26 arnsholt Hehe
13:27 arnsholt I could do that. Why not nqp::set_elems, since that's what the REPR method is called?
13:27 jnthn We never put _ in nqp op names ither than the _i, _s, _n suffixes.
13:27 jnthn But nqp::setelems would wfm
13:27 arnsholt Oh, right
13:28 arnsholt Now I see why the Parrot ops and NQP ops differ like that =D
13:28 arnsholt But I can implement that
13:28 arnsholt Should I remove the set_integer_native VTABLE as well? (I guess I should)
13:29 jnthn I think you'll fidn a couple of places in Cusror.nqp that do the assign op on an array
13:29 jnthn And htat'd turn into an nqp::setelems too
13:29 arnsholt Yup
13:29 jnthn Yeah, no need to introduce more v-table things.
13:29 arnsholt Yeah, it was an assign in Cursor that made me implement it
13:30 jnthn yeah, I still have those commant out in nqp-jvm :)
13:30 jnthn Feel free to update things there too, if you have interest. :)
13:30 jnthn OK, back to afk vacation mode :)
13:31 arnsholt Really? I thought I found a call to set_elems in the same place in the JVM stuff
13:31 arnsholt Enjoy!
13:35 cognominal__ joined #perl6
13:36 FROGGS_ use perl5; my $x = (1, 2); say %{ $x };
13:36 FROGGS_ ("1" => 2).hash
13:36 FROGGS_ \o/
13:38 arnsholt It's not supposed to do that in Perl 5, though, is it?
13:38 huf no, that should error out in p5
13:38 FROGGS_ damn
13:39 huf my $x = (1, 2); is my $x = 2; ()-s do nothing and , is the scalar comma
13:39 moritz p5eval: my $x = (1, 2); %{ $x }
13:39 p5eval moritz: 0
13:39 FROGGS_ I'm currently on the way to support scalar/array/hash dereferencing
13:39 moritz p5eval: my $x = (1, 2); [ %{ $x } ]
13:39 p5eval moritz: []
13:39 moritz huh, it doesn't error out?
13:39 huf p5eval: use strict; use warnings; my $x = (1, 2); [ %{ $x } ]
13:39 p5eval huf: ERROR: Can't use string ("2") as a HASH ref while "strict refs" in use at (eval 7) line 1.
13:39 moritz ah, strict.
13:40 huf i was assuming sanity :)
13:40 moritz not an entirely bad assumption
13:40 FROGGS_ huf: right now I have no hash-/arrayrefs, so it is just half-true
13:41 FROGGS_ but at least @{ } calls .list
13:50 census joined #perl6
13:51 dalek v5: 5b9b18e | (Tobias Leich)++ | lib/Perl6/P5 (2 files):
13:51 dalek v5: added scalar-/hash-/array-dereferencing and removed debug cruft
13:51 dalek v5: review: https://github.com/rakudo-p5/v5/commit/5b9b18ed9d
13:53 drbean joined #perl6
13:54 cognominal__ joined #perl6
13:58 FROGGS_ I guess one of the important modules for Perl 5 is Exporter?
13:59 nwc10 what Exporter does is very important. But it could have a lot better interface
13:59 nwc10 that it does it in pure Perl is also nice
13:59 FROGGS_ nwc10: I dont want to improve all modules that are on cpan, I just want to make a few of them work
13:59 nwc10 ah OK. Have fun with typeglobs then :-)
13:59 FROGGS_ hehe
14:00 FROGGS_ >.<
14:00 daxim that better interface is http://p3rl.org/Sub::Exporter - if you want to apply it to an existing Exporter module, use http://p3rl.org/Sub::Import
14:00 skids joined #perl6
14:05 PacoAir joined #perl6
14:22 Psyche^ joined #perl6
14:30 xilo joined #perl6
14:40 masak just suddenly had an idea for a game: https://gist.github.com/masak/5237570
14:41 masak discuss. ;)
14:41 masak (I've played Nomic twice in my life. it has made me interested enough in the game to come back to it now and then.)
14:43 FROGGS_ masak: a 300-point-bonus when you already win with 200 points?
14:43 cognominal joined #perl6
14:43 masak yes.
14:43 masak better get consensus to change that rule... :)
14:44 masak or someone will win just by showing up and voting early.
14:44 FROGGS_ masak: so, the game is about playing and modifying the game?
14:44 masak indeed.
14:45 FROGGS_ so there is no 3d-gfx at all?
14:45 FROGGS_ :P
14:45 masak heh.
14:45 masak the patches voted on determine what slightly different variant will be played in the next round.
14:46 FROGGS_ do I get extra points for being the first participant?
14:46 moritz so there will be a language that describes the game rules and patches to the rules
14:46 masak more like an API. written in Perl 6.
14:47 masak I don't see why patches couldn't conceptually be git commits.
14:47 masak the game could be backed by a git repo somewhere.
14:47 moritz ah, haven't read to the end yet
14:47 masak proposing a patch would be comitting in a newly-created branch.
14:47 masak winning a vote would merge the branch. (always a fast-forward)
14:48 moritz sounds geeky :-)
14:48 FROGGS_ moritz: -10 points!
14:48 masak oh, it is.
14:48 FROGGS_ # read to the end
14:48 FROGGS_ :o)
14:48 moritz btw I'm against making stuff immutable
14:48 FROGGS_ do I loose points for being sarcastic?
14:49 moritz FROGGS_: not at all!
14:49 FROGGS_ \o/
14:49 masak the original Nomic had the problem of inexactitude of language. so it had a complicated-ish judging process. a Perl 6 nomic, running the rules, wouldn't have that problem or the need for such a process.
14:49 masak moritz: yeah, "against immutable" is my feeling too. ooc, why are you against it?
14:49 FROGGS_ I'm in btw
14:50 moritz masak: because the reviewing process should decide whether stuff can be changed or not
14:50 masak FROGGS_: good to know. it's just a glint in my eye so far. but would be a nice stress-test for Perl 6. :)
14:50 moritz masak: all the power to the players!
14:50 masak :)
14:50 masak I think trying without an immutable layer makes a lot of sense.
14:50 masak now, given what you know about the game, how would a session of this game play out?
14:50 masak how would someone win?
14:51 masak as I said, I've been in two live games, so I know a bit about what happens.
14:51 moritz probably by others growing tired of monitoring everybody's score
14:51 masak heh.
14:52 masak no, assume sufficiently interested players. that isn't always the case, but the assumption makes the question more interesting.
14:52 masak I almost said "sufficiently rational players", but that's not quite it.
14:53 moritz well, one option to win is to slowly accumulate points, and have all the others dead-lock each other so that they can't reach an agreement to stop you
14:53 masak yup.
14:53 masak basically "divide and conquer" / "pit everyone against each other".
14:53 masak anything else come to mind? :)
14:53 moritz I also wonder if there should be a bonus/malus for accepted/rejected patches
14:54 masak ooh. yes.
14:54 * masak adds that
14:54 moritz well, somebody could also add it as a patch :-)
14:54 moritz that would have been my first patch, fwiw :-)
14:54 moritz oh, and I'm in.
14:54 wingfold joined #perl6
14:55 masak hah. :)
14:55 masak dang, now I have to build this ;)
14:55 masak three players is kind of a minimum.
14:56 * masak adds "Perl 6 Nomic" to his growing TODO list
14:56 masak I think I could codify the *rules* as Perl 6 code in an evening or so.
14:57 masak no more guesses for how to win? I know two more player types that I've seen in the wild.
14:57 moritz well, there can be aliances
14:57 moritz there can be harakiri
14:57 masak yes, but I've yet to see a winning strategy emerge out of an alliance or a harakiri.
14:58 moritz oh, and one more thing (not quite related to winning): there needs to be a deadline for patch proposal too
14:58 masak I thought about that.
14:58 masak decided not to add it, and to make it an exploitable problem in the game.
14:59 moritz ok
14:59 masak a two-player alliance could easily vote through anything at 23:50 on a Sunday.
14:59 moritz that would make it kinda time consuming on Sunday nights
14:59 masak heh. maybe make it mid-day some better day... :)
15:02 masak anyway... the two remaining strategies I know of are: (1) gradually increase the complexity of the game, hoping to win by out-complexifying everyone else (let's call this strategy "the yudkowsky"), and (2) playing just for lulz, intentionally proposing/approving things that are more amusing than strategic, hoping to get people off-balance ("chaotic")
15:02 moritz submit patches too late for anybody to vote on, for the not-voted penalty on them
15:03 cognominal joined #perl6
15:03 masak yep.
15:03 moritz *force
15:03 masak no, I won't fix that one.
15:03 moritz masak++ "the yudkowsky"
15:03 moritz well, there can always be patches that try to fix that.
15:04 moritz also interesting questions: can submitted patches be refined?
15:04 moritz (ie push more patches the same branch/pull request)
15:04 dwoldrich joined #perl6
15:05 FROGGS_ I'd say yes, as long as there is no vote
15:05 masak not in the initial ruleset.
15:05 masak but I guess I should make it easy to add such logic.
15:05 cognominal masak, you game is more funnier if you patch the RNA code of a virus, use the Venter's "digital to biological converter" and inoculate the result to another player.  the winner is the last player alive http://edge.org/conversation/what-is-life
15:05 masak cognominal: :P
15:05 cognominal s/more//
15:06 xantamoc joined #perl6
15:07 FROGGS_ hehe
15:07 FROGGS_ I'd be out
15:07 masak the challenge in Nomic is making the game "take off", giving it a personality that makes people interested in the game's evolution.
15:07 cognominal real world virus are slow to act because it is bad to kill the host before infecting others. In this game you want fast acting viruses
15:11 * FROGGS_ .oO( R.I.P. Perl 6 devs. They all died on a fast killing virus they self created )
15:14 geekosaur latest incarnation of core wars?
15:14 cognominal joined #perl6
15:14 masak geekosaur: Nomic and core wars definitely have commonalities. but I'd say Nomic is more loopy than core wars.
15:15 masak anyone know what's going with Philippe's 'is export' problem on p6l?
15:17 geekosaur aside from the typo?
15:17 geekosaur (if there has been a followup, it hasn't reached me yet)
15:18 masak oh, there was a typo?
15:18 geekosaur SalesReportGram called, SalesExportGram exported
15:18 masak yes, how about that.
15:19 masak if no-one has replied that, I could do so.
15:19 geekosaur I did already
15:19 masak oki
15:19 masak geekosaur++
15:19 geekosaur maybe the list is slow
15:19 masak yes. it is.
15:23 geekosaur ok, they fixed that, now get another error I wouldn't know about (missing parsefile method)
15:24 moritz r: say dir
15:24 p6eval rakudo b972ca: OUTPUT«star src .bashrc nom-inst1 toqast test3.pl .profile t nom-inst2 nom-inst toqast-inst toqast-inst2 examples Makefile .gitignore lib test2.pl .local bin rakudo p1 VERSION simple-tests .perlbrew std obj main.pl .lesshst nom niecza test.pl .cpanm log .bash_logout run T…
15:25 moritz r: grammar A { token TOP { .* } }; say A.parsefile('.bashrc')
15:25 p6eval rakudo b972ca: OUTPUT«「# ~/.bashrc: executed by bash(1) for non-login shells.␤# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)␤# for examples␤␤# If not running interactively, don't do anything␤[ -z "$PS1" ] && return␤␤# don't put duplicate lines in the history.…
15:25 moritz sounds like he's calling the method on the module, not on the grammar
15:27 masak yes.
15:27 hoelzro are IO::Socket and friends guaranteed to be provided by a conforming Perl 6 implementation?
15:29 rindolf joined #perl6
15:29 hoelzro ah, nvm
15:37 cognominal joined #perl6
15:50 lichtkind joined #perl6
15:53 sahadev hello #perl6. i have a question about implicit coercion (of Str to Int) in case of arithmetic operators. In case of most operators the coercion does take place, but div and mod seem to be exceptions. ("42" + "2" is ok, but "42" div "2" errors). why were these two operators designed as such? especially considering their symbolic counterparts (/ and %) seem to DWIM?
15:54 moritz sahadev: Perl 6 has two types of operators. Most (like % and +) coerce their arguments
15:55 moritz sahadev: and then there are a few operators that always take input of the same type, and produce output of the same time (div and mod, for example)
15:55 masak r: 007
15:55 p6eval rakudo b972ca: OUTPUT«Potential difficulties:�    Leading 0 does not indicate octal in Perl 6; please use 0o07 if you mean that�    at /tmp/fASOXE1sUd:1�    ------> [32m007[33m�[31m<EOL>[0m�    Leading 0 does not indicate octal in Perl 6; please use 0o07 if you mean that�    at /tmp…
15:55 moritz so, if that's not what you want, use / and % instead
15:55 masak why do I get the warning twice? :)
15:56 moritz masak: once for every 0?
15:56 moritz r: 0007
15:56 p6eval rakudo b972ca: OUTPUT«Potential difficulties:�    Leading 0 does not indicate octal in Perl 6; please use 0o007 if you mean that�    at /tmp/JqbucXY9nL:1�    ------> [32m0007[33m�[31m<EOL>[0m�    Leading 0 does not indicate octal in Perl 6; please use 0o007 if you mean that�    at /…
15:56 moritz afk
15:58 sahadev moritz: i have observed the same. i am curious about the reason why div and mod were designed to be non-coercive.
15:58 arnsholt Whoa. My NQP compiled itself! =C
15:58 arnsholt s/C/D
15:59 cognominal arnsholt, what does you new NQP?
15:59 * arnsholt makes test and sees what falls out
15:59 arnsholt I'm working on making nqp::list be a sixmodel object, rather than a ResizablePMCArray
16:00 arnsholt Bringing the Parrot side of things more in alignment with how things look on the JVM side, as it turns out. Although my reasons for working on it are not actually related to that
16:00 arnsholt Lots of failed tests, though =)
16:02 FROGGS_ arnsholt++
16:05 masak _sri++ posted, in the middle of yesterday's failed discussion on #parrot, http://nodejs.org/api/ -- a possible goal-post for Perl 6 to reach in terms of "production-ready" features. just thought I'd repost it here so it doesn't get lost in the noise.
16:05 tadzik hello hello
16:05 arlinius joined #perl6
16:05 hoelzro masak++
16:05 hoelzro I had an idea for the REPL yesterday
16:06 masak also,
16:06 masak <sri> speaking as an outsider... i get the impression rakudo development is too focused on polishing the core language, and doesn't pay enough attention to the stdlib
16:06 PerlJam sahadev: whenever I notice things like that, I always wonder if there's some easy way to tell the difference a priori (without creating a test case).
16:06 hoelzro masak: I echo that concern
16:06 hoelzro however
16:06 hoelzro that's not a problem if others (like myself) are willing and able to polish the stdlib
16:06 hoelzro which is why I want to write a POSIX module
16:06 masak oh, it's still a problem :)
16:07 masak it's a thing which lots of people have to spend lots of time solving.
16:07 masak and awareness of the specifics of the problem, and its magnitude, is a necessary first step.
16:07 PerlJam masak: did you notice how many of the things in the nodejs api relate to IO?
16:07 hoelzro s/not/not as much of/
16:07 perigrin as PHP has shown you can simply make the stdlib part of the core language.
16:07 * perigrin hides.
16:07 masak PerlJam: and we're very weak on IO.
16:08 PerlJam yep :(
16:08 cognominal joined #perl6
16:08 masak we got DateTime/Temporal settled. it works. it's a success.
16:08 masak next up: IO.
16:08 masak let's do this, people.
16:09 sahadev PerlJam: that ("easy way to tell the difference") would be useful.
16:10 PerlJam sahadev: yeah ... I don't have an answer in this partcular case because I don't think I ever noticed that quality of div/mod
16:10 hoelzro I'm also working on IO::Socket::SSL
16:10 hoelzro (which ties into my earlier question on IO::Socket and friends)
16:10 arnsholt hoelzro++ # stdlib
16:10 jeffreykegler joined #perl6
16:11 hoelzro do we have a "Perl 6 production readiness" clock yet?
16:11 hoelzro if so, I think we should start documenting what parts of the stdlib need work
16:11 hoelzro ex. LWP::Simple is...nice, but far too rudimentary for real world usage
16:12 masak my first thought is that a clock would be nice. my second thought is that it may do everyone a disservice to project production readiness down into one dimension.
16:12 hoelzro ok
16:12 jeffreykegler masak, moritz: I do not think it correct to call yesterday's #parrot exchange "failed".  You and allison stuck to technical issues, and stated them clearly.
16:12 hoelzro s/clock/checklist/ then =)
16:12 masak maybe we'd be better off presenting a few orthogonal dimensions.
16:12 jeffreykegler The result serves the reader well, though I imagine it was painful for participants
16:13 PerlJam masak: as long as we have a clear definition from our perspective what "production readiness" means and can articulate that to others, I think it will still be a win.
16:13 perigrin masak: two dimentions ... a clock is a vector no?
16:13 masak jeffreykegler: oh, it was failed. neither one got through to the other, and all that was created was blood pressure.
16:13 perigrin people are expecting you to boil it down to one dimension already .... a boolean.
16:13 masak jeffreykegler: I have more things to add to that discussion, but I'm consciously staying out of re-opening it.
16:13 PerlJam perigrin++ indeed
16:13 masak PerlJam: yeah, that's the goal.
16:14 hoelzro masak: didn't you post a gist of "to dos" for production readiness?
16:14 masak I was going to :/
16:14 masak others did.
16:14 masak it's in the backlog somewhere.
16:14 jeffreykegler Sometimes agreement is not the best outcome.  Differing approaches can serve the community.
16:14 PerlJam jeffreykegler: YOU'RE WRONG!  ;-)
16:14 masak autopun ;)
16:15 masak jeffreykegler: I'm the guy who wrote http://strangelyconsistent.org/blo​g/perl6-is-now-half-as-old-as-perl -- that blog has been described as "sad but hopeful". I believe I am not "in denial" about anything.
16:15 hoelzro ugh, backlog searching =/
16:15 masak hoelzro: I could find it for you.
16:15 hoelzro already grepping =)
16:15 colomon joined #perl6
16:17 hoelzro aw, twas moritz
16:17 masak jeffreykegler: allison tries to take a pragmatic approach to the state of Perl 6. in doing so, she oversimplifies and uses old data in a way that misses what we've accomplished already. which isn't a lot, but it's something.
16:18 PerlJam hoelzro: you can almost guarantee that if you think masak did something but it wasn't him, it was probably moritz :)
16:18 PerlJam hoelzro: vice versa too
16:18 masak or tadzik.
16:18 hoelzro PerlJam: my thoughts exactly =)
16:18 hoelzro its because all(<masak moritz>) ~~ /^m/
16:18 masak hoelzro: I had this idea for a site: https://github.com/masak/production-readiness
16:19 hoelzro I forked moritz' gist: https://gist.github.com/hoelzro/5238329
16:19 masak hoelzro++
16:19 tadzik tadzik what?
16:19 tadzik oversimplifies and uses old data?
16:20 tadzik ah
16:20 masak no, realizes my ideas :)
16:20 masak tadzik: but for all I know, you oversimplify and use old data, too. you inconsiderate clod! :P
16:21 * masak .oO( by a 2004 census, virtually everyone oversimplifies and uses old data )
16:22 arnsholt masak: Do they make up statistics on the spot as well, by any chance? =D
16:22 masak only about 77%
16:22 arnsholt ^_^
16:23 masak and the remaining 43% are really bad at match.
16:23 masak math*, g'ah
16:23 PerlJam that was an autopun of sorts
16:23 tadzik :D
16:25 hoelzro fortunately, I'm going on a two week vacation in the US tomorrow, so I'll have to work on stuff to stay sane =)
16:25 hoelzro that, or play (Star|Mine)craft
16:25 kresike bye folks
16:29 simcop2387 joined #perl6
16:29 census hi masak!  someone say census? :)
16:29 cognominal joined #perl6
16:31 masak haha :)
16:31 masak census: hi :) nice to see you.
16:33 rurban masak: diakopter submitted a YAPC::US talk for you. Cannot you login by yourself? http://www.yapcna.org/yn2013/talk/4697 Zero to Perl 6 [3 hour training]
16:33 rurban And more for you and TimToady as well
16:36 raiph r: module A { grammar A {} }; say A # (A) -- what's best way to find out if A is a module or a grammar?
16:36 p6eval rakudo b972ca: OUTPUT«(A)␤»
16:38 cognominal joined #perl6
16:38 PerlJam raiph: look at it's HOW maybe?
16:38 PerlJam s/it's/its/
16:38 raiph d'oh. thanks
16:39 masak rurban: I'm aware of the talk. I haven't gotten around to filling it in yet.
16:39 masak rurban: I learned on Friday that I'm going, and have been busy/distracted since.
16:39 rurban good
16:39 masak rurban: is your criticism limited to my ability to log in? because I can log in. ;)
16:39 masak (I have the talk edit page open in a tab, waiting for me to get to it)
16:39 PerlJam .oO( criticism? )
16:40 masak "Cannot you login by yourself?"
16:40 rurban no criticism. diakopter submitted a whole bunch of p6 talks so I wasn't sure.
16:40 masak yeah, I'm fine with delegating the handling of our track to him.
16:40 masak diakopter++
16:40 rurban 19 p6 all on diakopter talks I believe
16:41 rurban 19 p6 talks all by diakopter
16:41 masak I wasn't aware that they showed up as being "by diakopter".
16:42 masak mine seems to have the right speaker -- me.
16:42 masak so not sure what you mean.
16:42 rurban The problem is only the verification. the author should verify, not the submitter
16:42 rurban good, all fixed. so it seems. thanks for checking
16:42 masak ok.
16:42 moritz ashleyde1: if div and mod were coercive, they'd be / and %
16:43 moritz ashleyde1: so they were designed to be different, to give you options
16:43 thou joined #perl6
16:44 PerlJam moritz: so ... how can you tell the coercive ops from the non-coercive ones?  Do you just have to memorize a list?
16:44 PerlJam moritz: (or read docs, or perform test, or ... )
16:44 anocelot PerlJam: They're the ones that have the optional "That's some nice code you have there; it would be a shame if something were to happen to it" clause.
16:45 moritz PerlJam: there are heuristics, but it boils down to memorizing
16:45 masak anocelot++ # :)
16:45 SamuraiJack_ joined #perl6
16:46 masak anocelot: nice snowclone you've got there. would be a shame if something were to... happen to it.
16:48 anocelot masak: XD
16:53 * masak .oO( nice Y combinator you've got there. would be a shame is something were to &?ROUTINE() # nooooooo )
16:54 masak suck in an endless tailcall of mobster intimidation.
16:54 masak stuck*
16:54 masak my "spell correctly" key is broken today, it seems.
17:02 arnsholt Sigh. GCC's handling of undeclared types is bad
17:05 moritz develop with clang instead?
17:06 FROGGS joined #perl6
17:08 arnsholt I should probably look into that
17:09 pmichaud_ good afternoon, #perl6
17:09 moritz good pm, pm
17:09 masak pmichaud_! \o/
17:12 pmichaud ooh, looks like interesting backscroll to read.  reading.
17:13 moritz and, interestingly enough, I've discovered two sink-related bugs ince our last longer discussion
17:13 moritz though neither related to emptying arrays
17:13 FROGGS hi pmichaud
17:13 moritz (one in Net::IRC::Bot, one in rakudo)
17:13 pmichaud oops, I have to leave.  bbiaw
17:16 arnsholt Remind me, what're the proper Perl 6 semantics for deleting the last element of an array/list?
17:17 arnsholt I know Perl 5 shrinks the array in that case, but ISTR Perl 6 not having that special case...
17:17 moritz nr: my @a = <a b c>; @a.delete(2); say @a.elems
17:17 masak r: my @a = 1..10; @a.pop; say @a
17:17 p6eval rakudo b972ca, niecza v24-35-g5c06e28: OUTPUT«2␤»
17:17 p6eval rakudo b972ca: OUTPUT«1 2 3 4 5 6 7 8 9␤»
17:17 moritz ashleyde1: it seems that Perl 6 shrinks too, in imitation of perl 5.
17:17 moritz sorry, meant arnsholt
17:17 masak it seems I misunderstood the question ;)
17:17 masak moritz++ # didn't
17:18 arnsholt Right. Thanks!
17:33 xantamoc left #perl6
17:35 spider-mario joined #perl6
17:38 arnsholt Three more test files to go!
17:39 xantamoc joined #perl6
17:44 FROGGS Is here somebody who would volunteer to add the test-fudge-mechanism to v5?
17:44 arnsholt Oh. The NQP test suite reveals that delete should actually resize in any case!
17:46 FROGGS arnsholt: well, if it really resize the allocated memory area is another story (if your questions was about that)
17:47 PerlJam Perl 5 doesn't resize the allocated memory when you shrink an array, so I don't think he was talking about that.
17:51 arnsholt No, not the allocated area. After deleting at index 1 in an array with 4 elements, it expects the number of elements to be 3
17:53 pmichaud back again
17:54 cognominal joined #perl6
17:55 PerlJam arnsholt: I don't think Perl 5 does any kind of optimization there either.
17:56 huf arnsholt: delete how?
17:56 pmichaud ...delete should resize?
17:56 PerlJam well ... what did you mean by "delete"?
17:56 moritz nr: my @a = <a b c>; @a.delete(2); say @a.elems
17:56 p6eval rakudo b972ca, niecza v24-35-g5c06e28: OUTPUT«2␤»
17:56 pmichaud I don't think delete resizes for elements removed from the middle.
17:56 moritz only at the end
17:56 huf and even that feels a bit bonusy to me :)
17:56 arnsholt pmichaud: Then t/nqp/59-nqpop.t is wrong
17:56 huf but then, delete on arrays feels bonusy to me :)
17:56 moritz it feels like taking the Perl 5 semantics without thinking about it
17:56 kaleem joined #perl6
17:57 arnsholt This is in NQP mind, not real Perl 6
17:57 pmichaud I mean in Perl 5.  Checking.
17:57 arnsholt Oh, right. Sorry
17:57 arnsholt Yeah, I'm pretty sure Perl 5 doesn't resize when you delete in the middle
17:57 moritz p5eval: my @a = <a b c>; delete $a[1]; \@a
17:57 p5eval moritz: ERROR: Can't locate File/Glob.pm in @INC (@INC contains: /lib) at (eval 7) line 1.BEGIN failed--compilation aborted at (eval 7) line 1.
17:57 moritz p5eval: my @a = qw<a b c>; delete $a[1]; \@a
17:57 p5eval moritz: ["a",undef,"c"]
17:58 arnsholt You'd have to splice to do that
17:58 moritz aye
18:00 PerlJam I wonder why Perl 5 doesn't shrink the array from both ends since either way it's just a pointer move
18:00 pmichaud I agree that the nqp test looks wrong to me.
18:01 huf PerlJam: because shrinking from the end doesnt disturb the other elements
18:01 moritz OTOH, on the NQP level, what would be the point of having a delete opteration that doesn't shrink?
18:01 pmichaud Hope I'm not the one that wrote it.
18:01 arnsholt Hehe
18:01 pmichaud moritz: it can result in a shrink of it's the last element.
18:01 pmichaud *if
18:01 arnsholt To be fair, when that test was written, it expected the list to be backed by an RPA, which I assume has those semantics
18:01 moritz after all you can implement Perl 6 level deletion (resetting) with simple element assignment
18:02 pmichaud and jnthn and I were discussing that deletepos might not be needed (but that wasn't ever resolved)
18:03 pmichaud oh, and nwc10, also.
18:03 arnsholt Oh, I see. So that's why the JVM code doesn't have a delete_pos =)
18:04 pmichaud okay, I'm not the one who wrote those tests.  phew.
18:04 pmichaud now, the question is, why does it pass?
18:04 diakopter elven magic
18:04 arnsholt I'm assuming that's what RPA does
18:05 arnsholt Gimme a sec, and I'll check the code
18:05 arnsholt Yup. RPA's delete_keyed_int copies all the elements above the deleted element down a slot
18:06 arnsholt And since nqp::list historically was just an RPA in disguise, the tests are like that
18:07 dmol joined #perl6
18:08 pmichaud yeah, apparently that's what RPA does.
18:09 PerlJam do those semantics blead through to rakudo?  (I would guess so)
18:09 pmichaud well, not really.
18:09 arnsholt AFAICT, there's no code in NQP (apart from the tests) or Rakudo that uses deletepos
18:10 pmichaud right.
18:10 pmichaud and I'm not sure what QRPA does.
18:10 arnsholt And nqp-jvm-prep has no mentions of deletepos anywhere that I can find
18:10 arnsholt QRPA doesn't implement delete =)
18:10 pmichaud anyway, deletepos, when/if it exists, will have the p5/p6 semantics and not the parrot ones.
18:11 arnsholt Right, right
18:11 * pmichaud returns to reading backscroll.
18:16 pmichaud looks like I need to read "yesterday's #parrot episode", too.
18:17 moritz not much to gain there, IMHO
18:17 diakopter yeah, nothing novel there
18:18 SamuraiJack__ joined #perl6
18:18 PerlJam you'll just end up frustrated like masak I'd warrent
18:18 PerlJam er, warrant
18:21 Chillance joined #perl6
18:24 cognominal joined #perl6
18:24 Targen joined #perl6
18:25 diakopter rurban: :P to be fair, I submitted only 14, and 4 of them are just lightning talks, another is an official scheduled training, and 2 of them aren't really about Perl 6 (masak's non-training ones) and only 2 of the rest are with me as speaker... sorry it's odd-looking; hopefully it's cleared up now
18:25 diakopter er, 13
18:27 arnsholt Last test file!
18:27 rurban diakopter: no prob, just wanted to crosscheck :)
18:28 pmichaud PerlJam: no, I'm not frustrated by it, because I've already explored the inconsistencies in allison's statements before.  :)
18:29 arnsholt All green! \o/
18:29 arnsholt Apart from the ones that are skipped. Best check those first
18:30 pmichaud whenever I ask people "What is missing from Rakudo (Perl 6) to become 'production usable'?"  I get back the answers "speed, stabilility, libraries, and a transition path from p5".  We've definitely focused on the first two or three of these over the past 2.5 years.
18:36 masak aye.
18:36 masak I guess I'm a latecomer learning about allison's stance. :/
18:38 pmichaud but yes, some of the comments on #parrot are really.... bizarre.
18:42 masak tl;dr: "Perl 6 has no users" -- "yes, it does" -- "let's not argue semantics. Perl 6 doesn't ship" -- "yes, it does!" -- "you're arguing semantics again"
18:42 geekosaur wat
18:42 diakopter masak: I detect a certain amount of semantics in the fact that you're quoting. :)
18:43 geekosaur "semantics" does not mean "doesn't agree with me"
18:43 sorear good * #perl6
18:43 masak sorear! \o/
18:43 sorear pmichaud: what's up, down, and sideways today? o_O
18:43 masak I guess the real conclusion to draw is that we should get that production-readiness page up, and soon.
18:43 pmichaud the "Perl 6 has no users" and "Perl 6 doesn't ship" arguments come from        come from wanting to judge p6 by p5 standards of success.  That's not necessarily wrong, however there's also a tendency in those quotes to want to treat epsilon the same as zero.
18:43 moritz geekosaur: after that exchange I left #parrot to cool down
18:43 [Coke] I think a target goal of "MOAR USERS" is a good thing we can all agree on.
18:44 moritz [Coke]: no doubt
18:44 pmichaud [Coke]: I agree that "more users" is important.  But that has to be translated into smaller milestones.
18:44 masak pmichaud: yes.
18:44 moritz also "more possible use cases", which is nearly the same
18:44 masak pmichaud: (to treating epsilon as zero)
18:44 moritz which is where speed, modules, stability and IO come in again
18:44 pmichaud and so far the smaller milestones I hear are "faster, more stable, more libraries"
18:44 diakopter [Coke]: I think I can agree on "MOAR USERS"
18:45 masak pmichaud: I see what allison is doing there, and the point she wants to make. I just keep holding her to higher standards than a rounding-down of epsilon.
18:45 hoelzro (moar users)++
18:45 masak (moar everything)++
18:45 pmichaud masak: I suggest not doing that.  :)
18:45 masak noted.
18:45 FROGGS well, I am working on the "more libs" with v5
18:45 moritz FROGGS++
18:45 pmichaud to look at it from the other side, they're wanting to hold us to a higher standard than "we're making progress".
18:46 * moritz currently writes an article for a German perl magazine
18:46 masak pmichaud: yes, and I see that too.
18:46 masak pmichaud: and I agree. I want to hold us to a higher standard than that, too.
18:46 FROGGS jnthn does the speed thing (JVM), who does the more users?
18:46 moritz FROGGS: it's not something you can tackle directly
18:47 pmichaud FROGGS: there are marketing things that can be done to increase users, but until you solve some of the other basic hurdles any marketing efforts will tend to backfire
18:47 moritz FROGGS: it's a mixture of providing the prerequisites, and of motivating people to try out Perl 6
18:47 FROGGS moritz: well, I made two, and you at least one from what I know :o)
18:48 FROGGS ya right, what was that quote again? "If you build it, they will come."
18:48 * moritz 's goal is more like 1e5
18:48 Liz joined #perl6
18:48 sorear i think the operant phrase here is "tough act to follow"
18:48 pmichaud it's also to important to remember that for those of us working on Rakudo, we're not (yet?) at a stage where we feel our investments are likely to be lost.  Parrot has a bit more of an existential crisis than Perl 6 and Rakudo do.
18:49 FROGGS brb
18:51 masak pmichaud: fair point.
18:52 masak I bet when the Roman empire was crumbling, senators went around muttering "well, I really wish those Greek dudes would own up to their part of the problems, too"
18:52 pmichaud :)
18:55 sorear pmichaud: you've already thrown away everything twice, you're just more used to starting over with a better plan?
18:55 pmichaud sorear: I think I'm out of the "starting over" phases, finally.  :)
18:57 pmichaud that said, I'm absolutely convinced that the places where we did "start over" it was absolutely best to go ahead and "start over".  Maybe that cost us some users for the short-and-medium term, but long-term it was the right thing to do.  (more)
18:57 pmichaud sticking with what we had before would've been a recipe for "you have to start lines with a TAB in Makefiles because we already have a userbase that expects it".
18:59 pmichaud I think we have a reasonable story these days on speed improvements.  Where we fall short, story-wise, is something that demonstrates the "stability" (to end-users) of the language and implementations.
18:59 pmichaud being able to declare a 6.0.0 spec would probably help in that respect.
19:00 moritz pmichaud: re stability story, I'm currently exploring doing the IRC logging through Perl 6
19:00 moritz pmichaud: having a continuous production setting will force me to react to stability issues with my stuff more directly
19:00 pmichaud agreed.
19:00 moritz pmichaud: say hello to ilbot6
19:00 moritz :-)
19:00 moritz it logs into a dev database
19:01 moritz and once I fix some minor issues, and it has run stable for a week, I'll use it for production
19:01 pmichaud +1
19:05 timotimo_ i'm considering doing a perl6 talk at the GulaschProgrammierNacht this year, but i don't know about what exactly
19:06 cognominal joined #perl6
19:06 timotimo_ but it would be fantastic, if i could get tthe iperl6kernel project going until then so that i can present using the ipython notebook
19:06 timotimo_ bbl
19:10 Gruu_ joined #perl6
19:11 pmichaud alas, I have to disappear for a while again -- bbl
19:11 moritz GPN++
19:11 * moritz wants to discuss a completely unrelated topic
19:11 moritz one of my favorites: Error messages!
19:12 hoelzro *sigh*
19:12 hoelzro I haven't read the transcript of the parrot talk
19:12 hoelzro but now chromatic has referenced it on Twitter =/
19:12 moritz one of the things that have always bothered me is that most error messages don't give the user enough context
19:13 moritz like they say "Cannot open ~/.somepipe: permission denied"
19:13 moritz now the user wonders: why the </$!#@@!> did the program try to open that pipe?
19:14 moritz I'd want to know "I tried to open that pipe, and failed with "permission denied". I tried that because I want to talk to DCOP to get some configuration data from gnome" or something along these lines
19:15 moritz of course that's way too much text to burden the lazy programmer with
19:15 cognominal joined #perl6
19:15 hoelzro how does the "default" EXPORT for a UNIT work?
19:15 moritz now if a programmer gets the same error, he reads the backtrace, and can roughly deduce what happens (if he happens to know the program)
19:15 hoelzro how does the module inject definitions into the calling context?
19:16 moritz (phone, bbiab)
19:16 arnsholt moritz: I think I agree. Compiler/runtime diagnostics should be as helpful as possible
19:17 pmichaud (just read chromatic's tweets).... it would be far more helpful if chromatic and allison could point out the specific "unstable" features, rather than simply carping about them generically.
19:17 arnsholt I'm quite used to deciphering cryptic diagnostics from GCC (and don't get me started about TeX/LaTeX), but not having retarded diagnostics is definitely a plus IMO
19:17 moritz so, maybe we should give our routines :dba adverbs
19:18 lizmat :dba ?
19:18 moritz which could appear in user-readable backtraces
19:18 hoelzro moritz: that's a neat idea
19:18 moritz lizmat: "do business as", a feature we have in the regex engine
19:18 * lizmat knows about database administrators, but wonders how they would become an adverb
19:18 lizmat aha
19:18 lizmat ok
19:19 * lizmat has a backlog of catching up on synopses :-(
19:20 arnsholt moritz: That's actually a very neat idea. I like it!
19:20 moritz (me previous idea was to use contextuals, like  my $*BUSINESS = 'reading config file')
19:20 moritz (I think I like :dba better)
19:21 pmichaud gone again
19:26 lizmat $*DOING ?
19:27 moritz (back from phone)
19:27 lizmat dba seems too much like a job description to me
19:27 moritz so, the idea is to have an end user's view on backtraces, which only considers routines marked in some way as being of interest to the user
19:27 moritz lizmat: naming is up for discussion, as always :-)
19:27 lizmat but that could well be my mind needs reprogramming in that respect
19:28 moritz but first I want to get more general feedback on the idea
19:28 lizmat I like the idea
19:28 lizmat to an extent, this could replace at least partly internal documentation
19:28 moritz so, that's 2 +1s
19:28 lizmat I don't think my plusses count as 1 yet
19:29 lizmat more like 0.01  :-)
19:29 moritz good that we round up to the next integer :-)
19:30 timotimo_ i wonder if perl6 parsing could be made faster by either estimating the right path better to backtrack less often or make it cheaper to throw away data that was generated as side-effects of parsing
19:30 hoelzro so this "general dba" extension isn't just for compiler authors, right? you could do it in regular code?
19:30 moritz hoelzro: sure
19:30 hoelzro so what would that look like?
19:31 moritz something like   sub write-config($config, $file) dba('Safing user config file') { # code here }
19:31 moritz *saving
19:31 timotimo_ i like the idea fwiw
19:31 moritz and then if that sub dies, the backtrace would read
19:31 sorear .oO( not my $*BUSINESS )
19:32 moritz "Error while opening file $file for writing: permission deninend\nWhile saving user config file")
19:32 hoelzro ok, neat
19:32 hoelzro that's an excellent idea
19:32 hoelzro moritz++
19:33 domidumont joined #perl6
19:35 * lizmat wonders how to handle multiple DBA's
19:35 moritz arrays exist
19:35 hoelzro looking at make $<pairlist>.ast.hash in JSON::Tiny...where does that .hash method come from?
19:35 hoelzro Any?
19:36 cognominal joined #perl6
19:36 moritz hoelzro: $<pairlist>.ast is a List
19:36 timotimo_ multiple DBA's would probably be more like a stack actually
19:36 hoelzro ahhhh
19:36 moritz hoelzro: so likely from class List
19:36 timotimo_ how about assigning dba's to blocks inside fucniots,too?
19:36 hoelzro understood
19:36 moritz timotimo_: seems like overkill
19:36 timotimo_ fair enough
19:36 moritz timotimo_: considering that we usually don't want blocks to show up in backtraces
19:37 dalek nqp/vmarray-list: b754127 | (Arne Skjærholt)++ | src/ (3 files):
19:37 dalek nqp/vmarray-list: Add the set_elems method to the Positional REPR table.
19:37 dalek nqp/vmarray-list:
19:37 dalek nqp/vmarray-list: Also implements that method in VMarray and dispatches the set_integer_native
19:37 dalek nqp/vmarray-list: VTABLE to set_elems.
19:37 arnsholt Yeah, I was afraid that was going to happen
19:37 dalek joined #perl6
19:38 hoelzro can we get generic dba in Rakudo before 2013.04? I want to use it already =)
19:38 moritz hoelzro: I'm working on a prototype :-)
19:38 hoelzro ;)
19:38 * timotimo_ subscribed to p6u
19:38 hoelzro could it perhaps be defined in a module?
19:38 timotimo_ moritz: yes, that's a good argument
19:38 moritz hoelzro: that's what I'm working on :-)
19:39 hoelzro \o/
19:39 hoelzro moritz++
19:39 moritz I don't touch the compiler when modules work fine
19:39 hoelzro amen
19:39 moritz because it takes so long to compile
19:39 * lizmat wonders whether :dba shouldn't be in nqp
19:40 arnsholt Which repository does dalek live in?
19:40 arnsholt :dba is probably best suited to be implemented in Perl 6
19:40 arnsholt Or, the Perl 6 compiler
19:40 moritz arnsholt: iirc there's a "botnix-plugins" repo somewhere
19:41 lizmat I was wondering whether :dba  could be helpful in debugging NQP problems
19:41 timotimo_ moritz: can you just define a sub trait_mod:<dba> and it'll work like that or how is that done without relying on "is"?
19:41 diakopter dalek could easily be reimplemented in something else, since sorear++ simplified it so all it does is send lines from a file to channels
19:42 moritz timotimo_: iirc rakudo doesn't do user-defined trait_mod's yet
19:43 moritz timotimo_: so I have to hijack 'is' or 'does' or 'handles' or whatever
19:43 * skids wonders at the etymology of dba (aside from the acronym meaning)
19:43 hoelzro $/ is lexical, right?
19:43 skids Does it hail from an old language?
19:43 arnsholt https://github.com/Infinoid/dalek-plugins perhaps?
19:43 hoelzro I can't address function a's $/ from b if a calls b?
19:44 arnsholt $/ is lexical, yeah
19:44 hoelzro hmm
19:44 arnsholt So if you want to use it from something your function calls, pass it as an argument
19:44 * hoelzro is still trying to figure out how the heck to create his own EXPORT
19:44 arnsholt Or put it in a dynamically scoped var, I guess
19:44 moritz https://gist.github.com/moritz/5240038
19:45 moritz hoelzro: through CALLER::<$/> maybe
19:45 moritz but you shouldn't, if it can be avoided
19:45 [Coke] PERL 6 SCRIpT
19:45 arnsholt moritz: Cool!
19:45 moritz anyway, https://gist.github.com/moritz/5240038 is the first user-level backtraces prototype
19:46 hoelzro moritz: well, if I'm implementing EXPORT, how do I inject values into the calling context?
19:46 hoelzro CALLER::<fork> = &fork; ?
19:47 moritz hoelzro: by merging the EXPORT_hash branch from git@github.com:timo/rakudo.git into nom, and then returning a hash of (symbol_name => $symbol) pairs
19:47 timotimo_ hoelzro: there's a branch that makes (is supposed to make) EXPORT able to return a hash of symbols that will be installed
19:47 FROGGS joined #perl6
19:47 hoelzro oh
19:47 timotimo_ last time i checked, it only works well for types (or was that subs?)
19:47 hoelzro that's handy
19:47 moritz timotimo_: only for subs
19:48 moritz and I'm supposed to work on it
19:48 hoelzro is it possible to do in mainline rakudo?
19:48 timotimo_ :)
19:48 moritz instead I prototype dba for routines
19:48 * moritz must resist putting the hacking into the article he's writing just now
19:49 timotimo_ as long as you get both to work for the next rakudo compiler release ... ;)
19:49 japhb_ joined #perl6
19:49 timotimo_ at least I don't mind
19:49 hoelzro I prefer the return hash
19:49 hoelzro but I want this damn POSIX module to start working!
19:50 moritz hoelzro: the problem with the CALLER appraoch is that the lexical scope you're in isn't strictly the caller of EXPORT
19:50 hoelzro ah, good point
19:50 moritz it's called from within the compiler for that scope
19:50 myname_ joined #perl6
19:51 hoelzro so my current EXPORT looks like this: sub EXPORT(*@imports) { for @imports -> $import { say "importing $import"; } }
19:51 hoelzro and the printing never happens
19:51 hoelzro I'm guessing that for does some sort of lazy magic?
19:51 hoelzro or...?
19:51 moritz needs to be our sub EXPORT
19:51 moritz and yes, add a 1; or so after it, just to be sure
19:51 hoelzro our sub EXPORT fails
19:51 moritz how?
19:52 hoelzro moritz: is that the reason, though? laziness?
19:52 hoelzro Merging GLOBAL symbols failed: duplicate definition of symbol &EXPORT
19:52 * moritz confused
19:52 * hoelzro too
19:52 moritz oh
19:52 moritz are you using 'lib' ?
19:52 hoelzro CALLER::<CALLER><fork> = &fork
19:52 hoelzro ?
19:52 moritz eg use lib 'some path';?
19:52 hoelzro from the importing script, yes
19:52 moritz ah
19:53 moritz we need a better solution for EXPORT
19:53 hoelzro agreed =/
19:53 hoelzro this is actually pretty painful
19:53 moritz I'd like to discuss this with jnthn++ soon
19:55 moritz r: module A { method x() { } }; A.x
19:55 p6eval rakudo b972ca: OUTPUT«Useless declaration of a has-scoped method in module␤No such method 'x' for invocant of type 'A'␤  in block  at /tmp/BqgbWp_mFD:1␤␤»
19:55 moritz that's why we can't make EXPORT a method
19:55 FROGGS timotimo_: GPN sounds nice
19:56 timotimo_ it's an excellent event, indeed
19:56 pmichaud I was going to attempt some troll hugging with chromatic++... but after seeing his latest tweets I'm not sure it's worth the effort.  He's still complaining about the state of things as of two years ago.  :-/
19:56 timotimo_ hoelzro: since you're the pygmens-perl6 guru; have you ever looked at CodeMirror? do you have an idea how that works? i believe it's the piece of ipython notebook that does the syntax highlighting and it probably lacks a perl6 highlighter (not asking you to do it, though. not just yet ;) )
19:56 pmichaud anyway, we need to come up with some publishable measure of stability.
19:57 * hoelzro has never heard of CodeMirror =(
19:57 timotimo_ no problem then
19:57 hoelzro heh
19:57 * diakopter heads to twitter
19:57 timotimo_ (it's a javascript based code editor used in many, many places)
19:57 pmichaud also, I'm struck that "small stable core" and "get p5 folks to switch to p6" are mutually incompatible somehow.
19:57 [Coke] pmichaud: I think we have to focus our limited tuits on things we think will have an effect, yes.
19:57 hoelzro timotimo_: pygments was step 1
19:58 timotimo_ oh, i know this meme! step 4 is profit, right? :D
19:58 hoelzro step 2 is vim-perl
19:58 pmichaud I'm also curious about:   16:21 <kid51> The weird thing about the above discussion is: Parrot has fewer users than Perl 6, but we're not in denial about it.
19:59 pmichaud my first focus was the "not in denial about it" part... but after thinking about it a bit more, it strikes me that Parrot has to have at least as many users as Rakudo does.  :)
19:59 diakopter you mean a user of rakudo is a user of parrot..? he means project users
19:59 diakopter [I think]
20:00 pmichaud diakopter: if so, I think there's an implication that he somehow expected Parrot to have more users than just Perl 6, which wouldn't make sense.
20:00 pmichaud not that any of this makes sense.
20:00 moritz .oO( we've tried it with sense. It was frustrating. )
20:01 hoelzro so...there's no way of injecting things from EXPORT into the calling context yet?
20:01 hoelzro if so, I'll have to just grin and bear it
20:01 pmichaud kid51 also repeatedly points to Moose, Catalyst, Dancer, etc. as being examples of p5 evolution within a "stable product", but doesn't recognize that those also were outgrowths of Perl 6.
20:01 hoelzro but I really want to write this POSIX module =)
20:01 nwc10 Catalyst was?
20:01 pmichaud well, perhaps not Catalyst.
20:01 pmichaud Although I'm sure there are some p6 influencers there.
20:02 census joined #perl6
20:02 pmichaud my point being simply that p5 evolution hasn't taken place divorced from p6
20:03 hoelzro timotimo_: where else is CodeMirror used?
20:04 anocelot FWIW, TimToady mentioned that the p6 movement added a lot of energy to the p5 work as well.
20:07 philroc joined #perl6
20:08 lizmat even though the PONIE project was stopped, it also still caused a lot of cleanup in the Jenga that the internals of Perl 5 are
20:08 lizmat so Perl 5 also benefitted a lot from that
20:09 cognominal joined #perl6
20:10 nwc10 not a *lot*, in absolute terms. But it revealed something specific and useful - that pretty much none of the XS code on CPAN cared about the exact binary layout of the data structures, as long as the macros kept working
20:10 nwc10 Perl 6 was very useful for Perl 5
20:13 masak "was"? :P
20:14 diakopter masak: see, that statement could go either way [or both!] on which is over...
20:14 huf still is. it was also cancer because people backported features that dont really work in p5 without _all_ of p6 :)
20:14 huf looking at you, ~~
20:15 masak yeah.
20:15 geekosaur why tf did they do that, anyway?
20:16 huf *shrug*
20:16 huf i think p5's switch is cursed
20:16 huf first we had Switch.pm, and what a load of fuckup that was
20:16 huf then ~~ and given/when and ... yeah
20:17 hoelzro $*W is Rakudo-specific, right?
20:17 sorear another big issue is that a substantial amount of real-world p5 code relies on prompt DESTROY and a reference-counting VM
20:17 sorear yes, $*W is a rakudo detail
20:18 sorear looking especially at Scope::Guard, B::Hooks::EndOfScope, namespace::autoclean, EV
20:18 anocelot Update for TimToady friends: He's out of surgery and doing well.
20:20 cognominal oops, his prostate?
20:20 pmichaud anocelot: yay!!!
20:20 pmichaud anocelot: thank you for the update, I had been thinking of him all day.
20:21 * lizmat thinks healing thoughts for TimToady
20:21 sorear is that even public?
20:21 diakopter .oO( "it is now..." )     (yes, it was)
20:21 cognominal lizmat++ # so do I
20:23 diakopter sorear: like all his other surgeries, afaik
20:26 FROGGS anocelot++ # thanks for the update
20:26 lue hello o/
20:27 timotimo_ hoelzro: i thought github uses it, but i can't find any indication that that's actually true
20:27 FROGGS hi lue
20:27 anocelot FROGGS: My guess is *most* of us have been anxious all day, so yeah.
20:27 hoelzro timotimo_: github uses pygments
20:28 FROGGS anocelot: well, I know it should happen these days, but I wasnt sure it was today
20:29 timotimo_ hoelzro: for the code editor i mean
20:30 hoelzro oh, for that
20:31 kurahaupo joined #perl6
20:33 cognominal joined #perl6
20:33 [Coke] anocelot++
20:36 * sorear wonders if anocelot is another of the wall kids
20:37 timotimo_ .o(all in all he's just a- nother kid from the walls)
20:39 * masak .oO( anocer of that lot )
20:39 [Coke] *groan*
20:39 Targen joined #perl6
20:40 * FROGGS .oO( timotimo_s leave Wall's kids alove... )
20:41 * FROGGS skipped that "we don't need no ..." line
20:41 FROGGS *alone
20:41 FROGGS -.-
20:43 anocelot Oy.  That was as bad as one of my jokes.  :D  But to answer your question, I am not.  I'm a fellow Perl geek that happens to attend the same church.  So I had some of the wall kids in my Sunday School class, if that counts.  I teach Perl at the local community college.
20:43 moritz anocelot: did you happen to be on the picture with the '25 years Perl' cake?
20:44 geekosaur ...that's a bit off the Wall...
20:44 FROGGS I thought there was diakopter and his son on it...
20:44 anocelot moritz: Not that I know of.  I know of the cake, but having not acually seen it, I assumed the cake was a lie.
20:44 PerlJam FROGGS: aye, it was.
20:44 lue .oO(must... resist... can't...) So, I guess you're someone who could say "Anocelot about the Walls."
20:45 lizmat s/lie/fabrication/ ?
20:45 PerlJam anocelot: if you happen to see TimToady or his family before us, relay #perl6's best wishes  :)
20:45 * lizmat has gotten sensitive about calling things lies after a recent discussion on p5p
20:45 PerlJam lue: heh
20:46 * moritz seconds that (best wishes)
20:47 * masak thirds that
20:47 FROGGS best wishes from all of us I'd say
20:48 lizmat FROGGS++
20:49 anocelot That is certainly how I would phrase it.  As opposed to "the following users were online and did not do any well-wishing, so you can think they are terrible: ..."  :)
20:49 pmichaud TimToady already knows which of us are terrible anyway.  :)
20:50 anocelot pmichaud: Isn't everyone terrible in their own special way?
20:51 PerlJam anocelot: Is that a confession?  ;>
20:52 * FROGGS .oO( There is more than one way to be terrible? )
20:52 anocelot PerlJam: Sure.  I'm a reformed PHP programmer.  There but for the grace of Perl go I, or something.
20:52 pmichaud I'm not yet reformed.
20:53 anocelot pmichaud: Well, me either, technically, but you won't hear my saying that in public, that's for sure.
20:53 FROGGS hehe
20:53 anocelot ...  wait.
20:53 anocelot Crap.
20:53 PerlJam .oO( illformed?  malformed? )
20:53 * FROGGS takes notes about the devs who will willingly help with 'use PHP'
20:54 * anocelot doesn't know if that's a joke.
20:54 pmichaud anocelot: I didn't hear anything.  I did read something on IRC, though... :-P
20:55 * lizmat has been considering implementing some version of BASIC as an excercise to start implementing Perl 5 in Rakudo
20:55 PerlJam anocelot: that's what makes it interesting--no one knows if it's a joke.
20:55 lizmat is that bad?
20:55 PerlJam lizmat: no.
20:55 pmichaud well, since BASIC was one of the core languages used to develop Perl.... it's probably a good start :)
20:56 * lizmat wonders about GOTO
20:56 anocelot If we're going to consider the 'abuse v5' keyword, I think we can add some PHP capability there, too.  Maybe as an Easter egg.
20:56 anocelot lizmat: "GOTO is a four-letter word."
20:56 lizmat I knew I was bad :-)
20:57 FROGGS anocelot: 'use PHP' not really meant a joke
20:57 pmichaud From Programming Perl (the pink camel)....    "BASIC/PLUS: Another ancient language (reminiscent of Indo-European) from which Perl derived exactly one idea.  Well, OK, maybe two..."
20:58 bruges joined #perl6
20:59 timotimo_ which ideas were those?
20:59 pmichaud "statement modifiers and maybe formats"
21:00 pmichaud (it's in the footnote at the bottom of the page)
21:00 PerlJam pmichaud: you still have your pink camel?
21:01 dmol joined #perl6
21:01 pmichaud PerlJam: that's a book I will never willingly give up.
21:02 pmichaud (so yes)
21:02 * PerlJam boggles
21:02 sorear lizmat: all cakes are fabrications :)
21:04 pmichaud the glossary alone is special.
21:05 sorear *looks up the pink camel*
21:05 PerlJam So ... does anyone remember the book "Perl 6 and Parrot Essentials"?   I wonder if we could get the Perl 6 chapters of that (about 70ish pages I think), and reform them into a "Learning Perl"-style book (or some other early Perl 6 book)
21:05 sorear PerlJam: you want one?
21:06 moritz PerlJam: they are in the mu repo somewhere, in PseudoPod format
21:06 PerlJam sorear: no, I have mine somewhere too, I'm just not sure of the location :)
21:06 sorear HAH
21:06 PerlJam moritz: really?
21:06 * PerlJam looks
21:06 sorear (that's exactly how things work around here too)
21:07 sorear (OTOH, I know I don't have a camel of any color, only a llama)
21:07 pmichaud I have the P6PE book here also :-)
21:07 moritz PerlJam: and the parrot part is in the parrot repo, I think it served as the foundation of the PIR book
21:08 pmichaud right next to "Mastering Regular Expressions", which I never really read and which explains my total ignorance of how regexes work :-P
21:09 anocelot FROGGS: If I can't be of use helping with PHP->Perl6, I can at least help test stuff.
21:10 lizmat late dinner&
21:11 masak moritz: ping
21:11 moritz masak: pong(ish)
21:11 masak moritz: check this out. https://gist.github.com/masak/5237570 -- it turned out *much* better than I had hoped.
21:12 masak FROGGS: you check it out too :)
21:12 FROGGS anocelot: well, in case of PHP I guess there is not even a spectest suite :o)
21:12 masak it's un-run, untested code without any of the dependencies implemented.
21:12 masak but it reads really well.
21:12 masak observers++
21:13 FROGGS masak++
21:13 PerlJam masak: looks ruby-ish.
21:14 masak yeah, a method-y DSL will do that to code.
21:14 moritz masak++
21:14 masak some would probably say that it looks JavaScript-ish or jQuery-ish.
21:14 PerlJam "whenever.a(Vote).changes(​'state').to(Finished).do"  reminds me of cucumber  :)
21:15 masak moritz: I'm amazed at how *well* this abstraction works. only the last couple rules even gave me pause.
21:15 moritz masak: it's about the length that I'd have expected :-)
21:15 lue masak: nitpicky line 60: "the the vote" (but otherwise masak++)
21:15 masak lue: thanks.
21:15 masak I realize now that we have to build this thing, if only so we can play it once :)
21:16 masak but I can't give a time line yet. too many other important things going on.
21:17 sorear where do we stand on "use COBOL;" ?
21:17 FROGGS sorear: go ahead :o)
21:17 masak heh, I found a bug :) at line 58.
21:17 masak it's a bit subtle.
21:18 census_ joined #perl6
21:18 * sorear ran into an interface spec last week which looked like "05 FOO-BAR PIC 9(3).   05 BAZ PIC ZZZZ99V99." ; had quite a bit of trouble finding documentation for that syntax
21:18 * arnsholt tries to build Rakudo on his NQP branch
21:18 census joined #perl6
21:19 geekosaur aaaa, cobol
21:19 masak sorear: looks lovely.
21:19 census geekosaur++
21:19 masak what a difference 50 years make.
21:19 geekosaur the sad part is I still understood it immediately...
21:19 lue Is this referring to that wayward use COBOL comment in S02 in any way?
21:20 pmichaud and here I thought the point of COBOL was to have a language that one could read like english.  :-P
21:20 sorear masak: PIC ZZZZ99V99 is not particularly googleable (or ddgable), especially when the document doesn't tell you in advance that you need to find a cobol manual :(
21:20 PerlJam geekosaur: is ZZZZ99V99  leading zeros, and the V is the decimal point?
21:20 geekosaur virtual decimal point
21:20 PerlJam right
21:20 arnsholt Virtual decimal point?
21:20 pmichaud I'm frightened that I remember that.
21:20 geekosaur meaning, there isn't an actual decimal point printed, it's implied
21:21 PerlJam arnsholt: fixed point arithmetic.
21:21 geekosaur like storing a money value in cents
21:21 arnsholt Ah, right
21:21 sftp joined #perl6
21:21 lue .oO(With implied decimal points, how can I resist checking out COBOL?)
21:21 arnsholt Digitale ferdigheter
21:22 arnsholt Whoops
21:22 pmurias joined #perl6
21:24 masak sorear: did you know that Hildegard von Bingen was once known as Hildegard von Googlen before Microsoft bought the rights to her? :)
21:24 pmurias FROGGS: should the simple perlito test also end up in roast5?
21:27 timotimo_ i wonder if i'll get a bit of discussion/feedback for my ADT work if i crosspost it to p6u?
21:28 sorear masak: did not know about either
21:28 masak then the pun is less funny, I suppose.
21:28 FROGGS pmurias: well, I would keep them seperate? like the simple tests are in v5 directly, and only the original perl5 tests are in t/spec
21:29 FROGGS hehe
21:30 pmurias what's the point of roast5?
21:31 FROGGS I need to put the perl 5 tests somewhere and I need to be able to fudge them
21:31 FROGGS otherwise I can't track regressions
21:31 FROGGS nor recognize them
21:32 lue I'm guessing the only way to modify how Perl 6 handles undefined barewords is through NYI slangs, correct? (Specifically, do an extra step with the bareword before throwing an undefined error)
21:34 masak lue: think so.
21:34 masak lue: that sounds like a slang-y thing.
21:34 cognominal joined #perl6
21:35 lue I wonder how painful it would be to try to implement slangs... (my guess: very, esp. with my excellent knowledge of NQP and Rakudo :) )
21:35 sorear .oO( no strict 'subs' )
21:36 masak lue: by all means, investigate what remains to get slangs at this point. I sure would like a status update of that kind.
21:37 masak lue: ask pointed, curious questions. get a map of the territory.
21:37 diakopter also, more questions
21:37 sorear #1 problem is that the spec has a gaping hole in it
21:37 lue Sounds like a nice way to spend the week :) /me can't wait to make this line reality: say "hello' ~~ ☃hello☄;
21:37 sorear the spec lets you define the syntax of slangs.  ok
21:37 * diakopter listens to sorear
21:37 sorear there's no specced way to define semantics though!
21:38 sorear lue: did you ever get to see C/2011 L4
21:38 lue I don't believe I know what that is.
21:39 kaare_ joined #perl6
21:39 lue Oh, I didn't see it. (Remember reading about the comet though.)
21:39 sorear it's a ☄ that was very visible a week or two ago.
21:39 * sorear did
21:40 PerlJam sorear: pics or it didn't happen!  ;)
21:40 pmichaud I missed it... too many things happening here at sunset for me to see it.
21:40 pmichaud people I know got pics, though :)
21:40 masak yeah, 'slangs' need to be grammar+action, not just grammar.
21:40 masak actions*
21:40 PerlJam pmichaud: Grady Blount got his on TV (kiiitv.com)
21:41 sorear PerlJam: if I wanted pics I would just have gone online
21:41 pmichaud PerlJam: ah, that's the pics I saw :)
21:41 lue If only that comet happened when there was plenty of snow (there was some during the latter part of last week, but not much). Then I'd've been able to take that snowman/comet picture!
21:41 pmichaud lue:  hahahahahahahahahahahah
21:41 masak :D
21:41 sorear it was of course very cloudy most of the relevant week
21:42 * pmichaud wonders about photoshop.
21:42 lue I had the idea way back in 2010 (evidenced in a December blog post, but no reason to link to it)
21:43 lue C/2012 S1 may be the next chance
21:43 diakopter sorear: I still want the general   termish:<| regex blah { some_pattern } |> (*@matches) { semantics }
21:44 diakopter 'course, it would need the same context/compile-time as macros
21:45 anocelot If I run across a broken link on tablets.perl6.org, to whom should it be reported...?
21:45 tadzik lichtkind, I guess
21:45 anocelot Or, alternately, who do I talk to for fixit-yerself rights?
21:46 lichtkind tadzik What what? missed i something?
21:46 masak like, four lines of backlog :)
21:46 diakopter anocelot: I'll add you
21:46 diakopter e
21:46 anocelot diakopter: kk
21:47 diakopter er
21:47 diakopter yeah; sec
21:47 sorear favorite take on the cloud problem: https://twitter.com/BadPhysi​cs/status/312710557021126657
21:47 * anocelot is expection "anocelot++" or some other addition joke.  XD
21:47 diakopter what's your github ID
21:48 diakopter anocelot no existy
21:48 diakopter BUT you are on github: https://github.com/throughnothing/dotf​iles/blob/df45fd2d6d5749986ff874ef7c56​8032e371a2de/irssi/saved_colors#L12304
21:49 lichtkind anocelot: where is it?
21:50 lue .oO(Perhaps first designing a decent syntax for slangs would be in order)
21:50 diakopter anocelot: apparently someone likes to color your nick bold red
21:51 anocelot tablet 3 toward the end is a link labeled 'go to the twigil chapter..' that doesn't include the "tablet-3-" prefix for variables.html
21:51 lichtkind thanks a lot
21:52 anocelot diakopter: Oh, right. What is my github name...?  Hang on a sec.
21:52 masak lue: not so much syntax needed. we have regexes and grammars.
21:52 masak lue: but we *do*, as sorear pointed out, need a way to hook actions into a slang, not just a grammar.
21:52 lue yeah. Probably just need to clarify the actions side of it.
21:53 masak that would be a great start.
21:54 anocelot diakopter: (DM'd.)
21:55 diakopter anocelot: see privmsg
21:55 lizmat masak: in your proposal for Nomic, why: $player.votes_made($player.votes_made() + 1); instead of $player.votes_made++ or $player.votes_made += 1; ?
21:56 masak lizmat: excellent question! I was waiting for that one.
21:56 lizmat sorry to have kept you waiting
21:56 masak :)
21:56 masak lizmat: because the way everything can hook into the changing of values is to have everything in the system be "observables", subscribable getter-setters.
21:57 masak lizmat: the two alternatives you suggest wouldn't trigger the proper reactions in listeners.
21:57 masak in other words, it's the syntactic/API price one pays for having observables.
21:58 lizmat feels like a source for WTF in the future to me
21:58 masak now, having said that, I *guess* everything can be done through Proxy and FETCH/STORE...
21:58 * geekosaur would comment such thing
21:58 masak and that would definitely look nicer.
21:58 masak lizmat: you're right. I'll change it to be easier.
21:58 diakopter anocelot: I need a github id, not an email address
21:59 masak I believe I can have my cake and eat it here.
21:59 masak it is, after all, Perl 6. :)
21:59 lizmat that would be nice!
21:59 lichtkind ancelot there are all sorts of broken links
21:59 lichtkind i currently fix them all
22:02 masak lizmat: updated: https://gist.github.com/masak/5237570
22:02 lizmat masak: are "observables" documented anywhere?
22:02 diakopter anocelot: added
22:03 leprevost joined #perl6
22:03 lue awful first pass at slangs: https://gist.github.com/lue/5241230
22:03 masak lizmat: no, but the tutorial at http://knockoutjs.com/ is very elucidating.
22:04 * lizmat looks
22:05 masak lue: nope. doesn't work. :)
22:05 masak good try though.
22:05 anocelot lichtkind: Do you mind if I fix this one?
22:05 masak lue: even besides the fact that we like keeping grammars and actions as different containers, a token is just a method, so you have a namespace conflict on hand.
22:06 lichtkind i fix all :)
22:06 masak lue: examples of modifying the grammar with slangs: derive the main Perl 6 slang. override the method 'identifier' to accept smiley symbols in it. set the main slang to the new derived class.
22:06 masak example*
22:07 anocelot ... so I shouldn't fix this one...?  (He asks, nervously.)
22:07 lichtkind i make a push in 10 min
22:07 lichtkind if its still there please do
22:08 diakopter anocelot: you can now design/specify Perl 6, too
22:08 anocelot diakopter: I noticed that.
22:10 dalek tablets: 47fa454 | (Kevin Metcalf)++ | docs/tablet-3-variables.txt:
22:10 dalek tablets: Update tablet-3-variables.txt
22:10 dalek tablets:
22:10 dalek tablets: Link fix:
22:10 dalek tablets: [are listed their
22:10 dalek tablets: table](ap-b-lookup.html#special-variables). To understand
22:10 dalek tablets: their secondary sigil [go to the twigil chapter of this
22:10 dalek tablets: tablet](variables.html#twigils).
22:10 dalek tablets:
22:10 dalek tablets: *** becomes ***
22:10 dalek tablets:
22:10 dalek tablets: [are listed their
22:10 dalek tablets: table](ap-b-lookup.html#special-variables). To understand
22:10 dalek tablets: their secondary sigil [go to the twigil chapter of this
22:10 dalek tablets: tablet](tablet-3-variables.html#twigils).
22:10 dalek tablets: review: https://github.com/perl6/tablets/commit/47fa454d91
22:10 anocelot OH my.  Sorry.  >.>
22:11 masak accidental push?
22:11 anocelot And I really have to be sure to read the whole back scroll.  Not just the "if it's still there please do" line.  >.<
22:11 lue does augment allow you to replace methods (e.g. augment Str { method new() { } } would replace Str's current new)
22:11 anocelot Didn't know the entire update extended description would get dalek'd.
22:13 lichtkind anocelot: dont worry i merge
22:13 masak lue: not that I know.
22:14 masak lue: feels to me there's a 'method' keyword missing there. but even besides that, I don't think it's accepted syntax. :)
22:14 lue what missing 'method' ?
22:14 anocelot lichtkind: Thanks.  *sees another typo and wanders off*
22:15 dalek tablets: 1e9b5d9 | (Kevin Metcalf)++ | README.md:
22:15 dalek tablets: Update README.md
22:15 dalek tablets:
22:15 dalek tablets: your -> you're
22:15 dalek tablets: review: https://github.com/perl6/tablets/commit/1e9b5d9c1a
22:15 lichtkind just a second i push
22:15 masak lue: oh, sorry, I read your example wrong.
22:15 lichtkind but you can see results when server does refresh
22:15 masak lue: I thought you meant to do something like 'augment method new { ... }'
22:16 masak lue: now that I understand your question: yes, 'augment' on a class would replace old methods in the class.
22:16 lichtkind anocelot: only every hour html will be compiled so please see if you bug is still in 5 min in git
22:16 masak rn: use MONKEY_TYPING; class A { method foo { say "OH HAI" } }; augment class A { method foo { say "OH replaced!" } }; A.new.foo
22:16 p6eval rakudo b972ca: OUTPUT«[31m===[0mSORRY![31m===[0m�Package 'A' already has a method 'foo' (did you mean to declare a multi-method?)�at /tmp/PtxnBumBj0:1�------> �»
22:16 p6eval ..niecza v24-35-g5c06e28: OUTPUT«OH replaced!␤»
22:17 lue OK. That makes your "smiley identifier" example work.
22:17 anocelot lichtkind: Ah.  OK.  Will do.
22:17 masak lue: no, I meant using subclassing, not augmentation.
22:17 masak lue: overwriting the existing grammar considered antisocial.
22:17 masak lue: because we want the slang to be lexically scoped.
22:18 lue But, that's the only way slangs are used in the spec: http://perlcabal.org/syn/S02.html#Slangs (specifically the " by lexically scoped declaration of a new sublanguage:" line before the augment slang example)
22:19 dalek v5: 8a71fa1 | (Tobias Leich)++ | / (4 files):
22:19 dalek v5: added roast-alike tests
22:19 dalek v5: review: https://github.com/rakudo-p5/v5/commit/8a71fa11d7
22:19 dalek v5: a14d3f9 | (Tobias Leich)++ | .gitignore:
22:19 dalek v5: added gitignore
22:19 dalek v5: review: https://github.com/rakudo-p5/v5/commit/a14d3f9e13
22:19 FROGGS is there a way to tell t/harness to prepend something to every test file?
22:20 lichtkind anocelot: that was not nice i did merge and you pushed next change
22:20 lichtkind now i have to merge yet again
22:20 masak lue: ah. you're right.
22:20 lichtkind sorry its in differen file
22:20 lue so... slang HappyMAIN is MAIN { } ? Then { $~MAIN = HappyMAIN; } ?
22:21 dalek tablets: 317fa2d | (Herbert Breunung)++ | docs/ (2 files):
22:21 dalek tablets: fixed links in 3
22:21 dalek tablets: review: https://github.com/perl6/tablets/commit/317fa2dae9
22:21 dalek tablets: 9837181 | (Herbert Breunung)++ | /:
22:21 dalek tablets: merged with my head
22:21 dalek tablets: review: https://github.com/perl6/tablets/commit/98371819b7
22:21 dalek tablets: 39d1361 | (Herbert Breunung)++ | README.md:
22:21 dalek tablets: Merge branch 'master' of github.com:perl6/tablets
22:21 dalek tablets: review: https://github.com/perl6/tablets/commit/39d1361dde
22:21 lichtkind its all fine
22:21 masak lue: seems to me 'augment' in that case would be a handy shortcut for 'subclass and replace in this scope'.
22:21 FROGGS [Coke]: ping
22:21 masak lue: whereas the 'augment' for classes augments once and for all, and you can't go back.
22:22 lue Changing the definition of 'augment' for slangs though almost feels DWIMmy, but also indescribably... weird?
22:22 lichtkind anocelot: as you see in https://github.com/perl6/tablets/commit/​317fa2dae92ef7f0933437fc7c3479bc616ce4fa you dont need full url to link to same page
22:22 lue (updated gist: https://gist.github.com/lue/5241230)
22:23 masak lue++ # thinking about how to get actions in there
22:23 masak lue: if you crack that nut, you will have left an indelible mark on the evolution of Perl 6. :)
22:24 lue I almost want to say slang is a shortcut for grammar [Appropriate Grammar's Name], but then what would the shortcut for actions be?
22:24 timotimo_ swagger
22:24 anocelot lichtkind: When I clicked the link on the tablets.perl5.org I got a 404 error, so I assumed it needed the full URL.
22:24 masak lue: well, you'd tend to want to define them together.
22:25 timotimo_ "actions" may not be longer than "swagger", but it amuses me to suggest it, and it's not totally wrong
22:25 anocelot lichtkind: For the .dm file it's OK?  Sorry; I'm probably not as familiar with Git as I should be.
22:25 lichtkind i dont  know which link it was and i have to leave soon
22:25 masak lue: and just as the grammar (in the 'augment' case) is a subclass of a grammar, you'd want the actions class to be a subclass of an existing actions class.
22:25 timotimo_ a random question: "augment class" is a lexical or global change?
22:25 lichtkind there are no .dm files to edit as far as i know
22:25 masak timotimo_: global.
22:26 masak timotimo_: because classes are global.
22:26 lichtkind oh readme
22:26 lichtkind haha
22:26 anocelot lichtkind: md.  Sorry.
22:27 xilo joined #perl6
22:27 lichtkind tsall good
22:27 lichtkind just leave me message have really other stuff todo now
22:27 ashleydev joined #perl6
22:27 anocelot OK.  Thanks for your help!
22:27 lue I feel the actions side of slangs would be easier if we had a separate actions construct
22:28 timotimo_ masak: the 'lexical equivalent' of "augment class" is just deriving from it, aye?
22:28 lue timotimo_: except currently augmenting a class changes it everywhere until the End of Timeâ„¢.
22:28 lue while augment slang is using a special definition of "augment".
22:29 masak timotimo_: yes, if (1) you make it a 'my class', and (2) you give it the same name, so that it lexically shadows the outer one.
22:29 lue .oO(can action methods accept anything other than $/ as a parameter?)
22:30 masak r: class A { method foo { say "outer!" } }; { my class A { method foo { say "inner!" } }; A.new.foo }; A.new.foo
22:30 p6eval rakudo b972ca: OUTPUT«inner!␤outer!␤»
22:30 timotimo_ lue: not that i know, but the actions classes make use of $* and friends a lot
22:31 masak r: class A { method foo { say "outer!" } }; my $x; { my class A { method foo { say "inner!" } }; $x = A.new }; say $x.WHAT; $x.foo
22:31 p6eval rakudo b972ca: OUTPUT«(A)␤inner!␤»
22:31 timotimo_ hm, or maybe there is a way
22:34 * lue would like changing the actions of a language separated from normal class augmentation, like slang for grammars
22:38 * lue would also like to know what the original author thought a slang encompassed
22:38 xorp joined #perl6
22:39 dalek v5: f64b510 | (Tobias Leich)++ | Makefile:
22:39 dalek v5: pass --add_use_stmt=perl5 to fudge script
22:39 dalek v5: review: https://github.com/rakudo-p5/v5/commit/f64b510f14
22:42 wingfold joined #perl6
22:43 FROGGS current status of rakudo v5.pm: it passes one of the 485 perl 5 test files
22:43 FROGGS pmurias: --------^
22:43 lue FROGGS++
22:44 huf you're planning to reimplement all of the weird quirks of p5?
22:44 FROGGS now I "just" need to fudge the failing tests
22:45 FROGGS huf: well, I need to do as most as possible to get cpan modules working
22:45 huf wow.
22:45 FROGGS I'm not sure what exactly that means atm
22:46 huf which one? the "wow" or what you said? :)
22:46 FROGGS what I said :o)
22:46 huf ah. i dont think anyone knows :)
22:46 FROGGS because it can't support XS, and maybe many other things
22:47 huf yes, XS is out, things that rely on p5's gc are out (or at least difficult)
22:47 huf and things that use weeeeird features of p5 are probably not worth it ;)
22:48 lue Don't forget (from S01): "Some platforms may restrict this to a subset of Perl 5 when it is not expedient to include a full Perl 5 interpreter."
22:48 huf :)
22:49 FROGGS :o)
22:49 huf this should be interesting, we'll find out how small that subset is, to run a large number of useful modules
22:50 FROGGS ya, I hope so :o)
22:51 FROGGS but now my bed is the next thing on my todo
22:51 FROGGS gnight!
22:51 skids joined #perl6
22:52 jeffreykegler joined #perl6
22:53 lue Some initial slang action ideas: https://gist.github.com/lue/5241230
22:56 masak lue: well, you've put your finger on something interesting here.
22:56 masak lue: 'augment slang' means lexiaclly replace some grammar in the current scope. (or dynamically replace, from the perspective of the parser.)
22:57 masak but 'augment class', which one would use for an actions class, would have a global, irreversible effect.
22:57 lue I wonder if augment grammar is closer to class or to slang...
22:57 masak on the one hand, it does kinda feel like double the work to have to augment two things just to build a new slang. on the other hand, a slang feels like just the grammar, not grammar+actions.
22:58 masak so there's kind of a tension there.
22:58 lue Like I said earlier, I'd like to know what the original author (likely TimToady) thought a slang was.
23:00 timotimo_ is it even possible to sensibly expand only the grammar, but keep "api compatibility" to the previous grammar's actions?
23:00 Khisanth joined #perl6
23:00 lue .oO(maybe slang should contain a special type of method that takes two curly braces: slang MAIN { feature token-or-something {regex}{actions};}; )
23:01 timotimo_ oh yikes, that seems  weeeeeeiird
23:01 cognominal is it possible to hide a rule in a slang or change an operator precedence?
23:01 masak timotimo_: re api compatibility, that's a really good question too. essentially we're into the usual problems with classes and inheritance.
23:02 cognominal that's really two independent questions
23:02 lue timotimo_: changing Perl 6 from within is weeeeeeiird too :)
23:03 timotimo_ not as weird as introducing such a strange concept as two curly blocks following with nothing in between
23:03 cognominal bed time. Will read the log.
23:03 timotimo_ i mean we have that for s{...}{...} already, but that's ... different
23:03 lue good ♞, cognominal o/
23:03 cognominal thx, lue, but I prefer go to chess. :)
23:04 lue but, there's no kNight pun in Go :)
23:05 cognominal mask, is there a full implementation of macro forthcoming? :)
23:05 cognominal lue, yes I know. :)
23:06 lue updated gist with the two braces option: https://gist.github.com/lue/5241230
23:08 masak cognominal: yes.
23:08 masak 'night, #perl6
23:08 lue good ♞, masak o/
23:10 timotimo_ lue: oh, the eskimo kiss operator is back :P
23:10 cognominal joined #perl6
23:10 lue with new meaning :)
23:11 cognominal masak: how?
23:12 cognominal bonsoir les ♗ de Perl 6, réellement cette fois :)
23:13 lue .u â™—
23:13 yoleaux U+2657 WHITE CHESS BISHOP [So] (â™—)
23:13 cognominal fou en Français :)
23:14 cognominal … et non évêque
23:14 lue :) [nous ne sommes pas les fous!]
23:19 * lue is starting to like the double brace idea because it's -Ofun to him.
23:35 cognominal__ joined #perl6
23:40 FROGGS joined #perl6
23:52 timotimo_ lue: my 0.2 cents is that it's nicer to have a keyword before each of the braces. it's like the difference between positional args and keyword args. the latter seems more readable to me.
23:52 timotimo_ also, consider that the }{ may be separated by lots and lots of lines from the beginning and end of the whole construct
23:52 lue yeah. I was thinking of maybe a different brace for the second set.
23:53 lue timotimo_: I just typed }{ because I prefer it. Of course a bunch of newlines inbetween the } and { is fine
23:54 timotimo_ i dunno. it may feel disconnected and look like a loose block if there's two newlines for example
23:55 lue different brace style might be the way to go, with some enforced connectedness perhaps (feature newtoken /grammar/{actions} or feature newtoken {grammar}«actions» or ...)

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

Perl 6 | Reference Documentation | Rakudo