»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! | YAPC::NA talk submissions due end of Month. Have you submitted your talk? Set by toddr_ on 18 March 2013. |
|||
00:00
Maddingue joined
00:01
fgomez_ left,
raiph joined,
fgomez joined
00:02
jtpalmer_ joined,
risou joined
00:03
genehack joined,
krunen joined,
awwaiid joined,
clkao joined
00:04
ingy joined,
prammer_ joined,
leprevost joined,
Exodist joined,
pmichaud joined,
Ayiko joined,
Tene joined,
simcop2387 joined
00:08
pmichaud left,
pmichaud_ joined,
Exodist left,
Tene left
00:10
Tene joined,
raiph left
00:13
Ayiko left,
Exodist joined,
_sri joined,
Ayiko joined
00:14
TimToady_ joined,
__sri left
00:15
pjcj joined,
rom1504 left,
rom1504 joined
00:16
raiph joined
00:17
simcop2387_ joined
00:18
bonsaikitten joined
00:20
arnsholt_ joined
00:21
nebuchad` joined
00:22
nebuchad` is now known as nebuchadnezzar,
krunen left,
awwaiid left
00:23
awwaiid joined,
krunen joined
00:24
clkao left,
simcop2387 left,
Yappo______ left,
rking left,
mangala_ left,
BinGOs left,
simcop2387_ is now known as simcop2387
00:27
PerlJam joined
00:28
s0rear joined
00:29
integral joined,
integral left,
integral joined,
Patterner left,
BinGOs joined,
clkao joined,
rjbs joined
00:30
jaldhar joined,
genehack_ joined,
Psyche^ joined,
Psyche^ is now known as Patterner
00:31
raiph_ joined
00:33
GlitchMr- joined
00:34
integral left,
Chillance left,
integral_ joined,
integral_ left,
integral_ joined,
raiph left,
Exodist left,
genehack left,
Gothmog_ joined
00:35
xinming left
00:36
robinsmidsrod joined,
breinbaas joined,
xinming joined,
prammer_ left,
mtk left
00:37
prammer_ joined,
leprevost left
00:38
dalek left
00:39
dalek joined,
ChanServ sets mode: +v dalek,
sivoais joined
00:41
s0rear is now known as sorear,
Exodist joined,
mangala joined,
avar joined,
avar left,
avar joined,
salv0 joined
00:42
Chillance joined,
thou_ left
00:43
Yappo______ joined,
jfried joined,
mj41 joined
00:45
p6eval joined,
tadzik joined,
cameron.freenode.net sets mode: +v p6eval,
leprevost joined
00:47
jerome_ joined
00:48
Gruber joined
00:49
mtk joined
00:50
Chillance left,
Exodist left
00:51
salv0 left,
salv0 joined,
lustlife joined,
Exodist joined
|
|||
diakopter | . | 00:59 | |
01:03
Exodist left,
anuby joined,
exodist_ joined
01:05
GlitchMr joined
01:07
rking joined,
Trey joined,
GlitchMr- left,
Gruber left
01:08
groky left,
colomon joined
01:09
gcole joined,
groky joined
01:10
Trey is now known as TreyRust,
TreyRust left
01:13
Grrrr joined
01:16
gcole_ joined
01:19
gcole left
01:21
lustlife1 joined,
raiph_ left
01:25
preflex left
01:26
jtpalmer_ left
01:27
dayangkun left,
GlitchMr- joined,
eiro_ joined
01:28
GlitchMr left,
lustlife left,
mtk left,
ingy left
01:29
raiph joined
01:30
leprevost left
01:31
exodist_ left,
eiro left,
preflex joined
01:32
Exodist joined,
ingyfoo joined,
Exodist left
01:33
gcole_ left
01:39
leprevost joined,
jfried_ joined
01:41
jtpalmer joined,
jtpalmer left,
jfried left,
jfried_ is now known as jfried,
mtk joined
01:42
raiph left
01:43
vaelxon joined
01:44
Yappo______ left,
mj41 left
01:45
gcole joined,
mj41 joined
01:48
Yappo______ joined
01:50
jtpalmer joined,
lustlife joined,
rking left,
Exodist joined
01:53
raiph joined
01:55
sitaktif1 joined
01:57
jtpalmer_ joined
02:00
anuby left,
lustlife2 joined,
anuby joined
02:02
Exodist left
02:07
mtk left,
leprevost left
02:09
Exodist joined,
salv0 left,
lustlife1 left,
leprevost joined
02:10
salv0 joined
02:11
lustlife left
02:12
mtk joined,
jtpalmer left
02:16
pmurias left
02:18
anuby_ joined
02:21
jtpalmer_ left
02:23
salv01 joined
02:24
mtk left,
salv0 left
02:26
raiph left
02:27
salv01 left
02:28
loops joined
02:31
raiph joined
02:33
anuby__ joined,
Exodist left,
Yappo______ left,
lustlife joined,
loops left,
TimToady_ is now known as TimToady
02:34
Exodist joined,
TimToady left,
TimToady joined,
anuby left,
Yappo______ joined
02:35
salv01 joined,
mtk0 joined,
anuby_ left
02:36
lustlife2 left
02:38
jtpalmer joined
02:41
baest joined,
Exodist left
02:42
lustlife left
02:43
baest_ left
02:44
FROGGS_ joined
02:45
baest left
02:46
baest joined,
FROGGS left,
Pleiades` joined
02:49
Exodist joined,
lustlife joined
02:59
baest_ joined
03:05
baest left
03:08
orafu left,
orafu joined
03:12
skyheights joined
|
|||
skyheights offers www.destroyallsoftware.com/talks/wat to masak++ and moritz++ to cheer them up after yesterday's #parrot episode | 03:15 | ||
03:16
skyheights left
03:17
dwoldrich joined
03:24
preflex left,
preflex_ joined,
preflex_ is now known as preflex
03:31
raiph left
03:37
raiph joined
03:40
preflex left,
raiph left,
preflex_ joined
03:41
preflex_ is now known as preflex
03:46
preflex left,
raiph joined,
sevin joined
|
|||
sevin | t | 03:46 | |
03:47
rking joined
03:51
skids left
|
|||
raiph | sevin: ? | 04:03 | |
04:03
preflex joined
|
|||
sevin | had my cursor on the wrong window, my bad | 04:05 | |
04:08
preflex left
04:15
colomon left
04:18
thou joined
04:20
sevin left
04:23
drbean left
04:25
drbean joined
04:30
loops joined
04:37
preflex joined
04:42
preflex left,
colomon joined
04:44
leprevost left
04:51
SamuraiJack joined
05:04
raiph left
05:14
raiph joined
05:16
preflex joined
|
|||
moritz_ | \o | 05:17 | |
05:25
preflex left
05:30
crab2313 joined
05:41
BinGOs_ joined,
atrodo_ joined
05:42
preflex joined,
markov1 joined,
dmol joined
05:43
nebuchad` joined,
apejens_ joined
05:44
jlaire_ joined,
LoRe_ joined
05:46
swarley-freenode joined,
yeltzooo6 joined,
BinGOs left,
benabik left,
jlaire left,
atrodo_ is now known as atrodo,
yeltzooo left,
nebuchadnezzar left,
sunnavy_ left,
crazedpsyc joined
05:47
jlaire_ is now known as jlaire,
sunnavy joined
05:49
dmol left
|
|||
moritz_ | fwiw ilbot6 ran through the night without problems | 05:50 | |
05:56
kurahaupo left
05:57
vishaltaware joined
05:59
vishaltaware left
06:04
kaleem joined
06:10
cognominal left
06:24
lue joined
|
|||
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 | |
diakopter: I thought about an extra bot that reads the db and reports karma when asked for | |||
06:26
dwoldrich left
|
|||
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:27 | |
seems you're implying you're the only one who could do it | 06:28 | ||
moritz_ | not at all | 06:30 | |
it's open source | |||
06:31
kaare_ joined
06:42
apejens_ is now known as apejens
06:55
domidumont joined
07:02
FROGGS_ left
07:09
domidumont left
07:10
domidumont joined
07:17
FROGGS_ joined
07:20
renormalist joined
07:22
domidumont left
|
|||
GlitchMr- | while '' ne my $answer = prompt 'Temperature: ' { | 07:24 | |
I like that one | |||
07:25
kaare_ left
|
|||
moritz_ | while chars(my $answer = prompt 'Temperature: ') { } #also an option | 07:43 | |
07:46
preflex left
07:47
nebuchad` is now known as nebuchadnezzar
|
|||
dalek | : ff7d3c3 | (Tobias Leich)++ | t/v5/ (12 files): added "use perl5" where it was missing |
07:48 | |
07:49
domidumont joined
08:02
preflex joined
08:07
cognominal joined
08:11
Beltechs joined
08:14
wk left
08:19
cognominal__ joined
08:20
cognominal left
|
|||
dalek | ecs: eac99e2 | (Stéphane Payrard)++ | S12-objects.pod: Twigil in a BUILD call must be '!' |
08:22 | |
08:23
preflex left,
cognominal joined
08:24
cognominal__ left
08:31
nebuchad` joined
08:33
cognominal left,
jlaire_ joined
08:35
nebuchadnezzar left,
nebuchad` is now known as nebuchadnezzar,
kaare_ joined,
SamuraiJack left,
crab2313 left
08:36
__rnddim__ joined
08:37
markov joined
08:38
daxim joined
08:39
atrodo left,
SamuraiJack_ joined,
colomon left
08:40
renormalist left,
jlaire left,
markov1 left,
lue left,
mj41 left,
eiro_ left,
eiro joined
08:41
kaleem left,
ingyfoo left
08:42
atrodo joined,
SamuraiJack_ left
08:43
SamuraiJack_ joined,
renormalist joined
08:44
cognominal joined,
kaleem joined
08:45
colomon joined
08:46
ingy joined,
preflex joined
|
|||
dalek | : 302e259 | (Tobias Leich)++ | lib/Perl6/P5 (2 files): dispatch dot infix to concat operation |
08:47 | |
08:48
mj41 joined
08:52
preflex left
08:54
colomon left,
kresike joined
|
|||
kresike | hello all you happy or unhappy perl6 people | 08:55 | |
08:56
Heather joined
|
|||
Heather is removing KDE | 08:57 | ||
bonsaikitten | Heather: heretic! | 08:59 | |
Heather | bonsaikitten I need something lighter, xmonad now | 09:00 | |
bonsaikitten i.imgur.com/IbKnZqc.png | |||
bonsaikitten | pff. just disable whatever you don't need | ||
09:00
hoelzro_ is now known as hoelzro
|
|||
Heather | bonsaikitten I don't need kdelibs | 09:01 | |
09:01
fhelmberger joined
09:02
kaare_ left
|
|||
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. | ||
sorear | xmonad eh. do the docs still mention me? | ||
Heather | sorear huh? | 09:03 | |
bonsaikitten funniest thing is that I don't know how to remove KDE now, I afraid to affect KDevelop | |||
sorear | Heather: i was one of the 3 members of the original xmonad team | 09:04 | |
it's _weird_ seeing how much it took off since I left (0.3-ish) | |||
Heather | sorear why left? | 09:05 | |
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 -__-' | ||
bonsaikitten | daxim: amusing how people invent package names unrelated to upstream | 09:08 | |
Heather | daxim but I need to clean other things ) | ||
daxim | yeah, I hate it when debian does that. can't they follow LSB/RPM naming conventions like everyone else? | 09:09 | |
bonsaikitten | "everyone" ? | ||
Heather | I need to remove meta package but I afraid that some fonts / icons etc... let call it unnecessary things, will be removed too | ||
bonsaikitten | Heather: try it and see | 09:10 | |
Heather | bonsaikitten just emerge -C xxx-meta ? | ||
bonsaikitten | Heather: yes | ||
or add -a if you're a scared cat | 09:11 | ||
09:11
cognominal left
|
|||
Heather | bonsaikitten though I need -a for next depclean | 09:13 | |
09:14
Beltechs left
|
|||
sorear | sleep& | 09:15 | |
09:16
sqirrel joined
09:18
cognominal joined
09:30
cognominal__ joined,
cognominal left
09:31
sqirrel left
|
|||
tadzik | hello #perl6 | 09:33 | |
Heather | tadzik hey | ||
FROGGS_ | hi tadzik | ||
09:33
dakkar joined
|
|||
masak | good forenoon, #perl6 | 09:36 | |
moritz_ | good am, masak :-) | 09:37 | |
tadzik | hi masak | ||
tadzik is teaching Perl today | |||
masak | \o/ | 09:38 | |
loops is learning Perl today | |||
masak | tadzik: powodzenia! | ||
Heather | ... | ||
moritz_ | !!! | ||
masak | ??? | ||
moritz_ | r: say WHAT do { ... } | 09:39 | |
loops | \@$ | ||
p6eval | rakudo b972ca: OUTPUT«Stub code executedcurrent 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) … | ||
Heather | it's polish ! | ||
moritz_ | huh, where did that 'sink' come from? | ||
looks like a bug to me | |||
masak! you are needed here! | |||
FROGGS_ pokes masakbot | 09:41 | ||
masak | huh! huh! | ||
FROGGS_ | tadzik: polish perl workshop? | ||
masak | I looked at that and didn't see anything odd. | ||
what's the bug with 'sink'? | |||
tadzik | FROGGS_: nah, not yet | ||
just an Advanced Perl class in spare time | |||
FROGGS_ | tadzik++ # cool! | 09:42 | |
tadzik | I'm almost as frightened as excited :) | ||
masak | tadzik++ # uses his spare time to teach Perl :) | ||
tadzik | okay, I'm not that frightened once I started | ||
cognominal__ | Advanced Perl, that's Perl6 ? :) | ||
tadzik | haha, I wish :) | ||
FROGGS_ | tadzik: tell them that you can write Peril5 in Peril6 now :o) | 09:43 | |
well, at least almost | 09:44 | ||
Heather | what about open courses? | ||
but not courseria... | |||
tadzik | perl6maven, mayhaps? | ||
Heather hates courseria with weirdo reasons | |||
tadzik is off again | |||
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 | |
09:49
snearch joined
10:02
BinGOs_ is now known as BinGOs,
BinGOs left,
BinGOs joined,
preflex joined
|
|||
Heather | courseria ! :) | 10:05 | |
hoelzro | coursera? | 10:07 | |
hoelzro starts his coursera course today | |||
(also, goede morgen #perl6) | |||
Heather | hoelzro link? | 10:12 | |
hoelzro | to the course? | 10:13 | |
Heather | hoelzro yep | ||
hoelzro | Heather: www.coursera.org/course/algs4partII | ||
10:22
snearch left
|
|||
Heather | I want this www.coursera.org/course/mentalhealth but it's closed | 10:24 | |
hoelzro | interesting | 10:26 | |
10:30
nwc10_ is now known as nwc10
10:32
anuby__ left
10:33
rindolf joined
10:36
thou left
|
|||
dalek | : 9b86017 | (Tobias Leich)++ | lib/Perl6/P5 (2 files): remove tokens which are methods or subs |
10:42 | |
10:49
erkan joined,
erkan left,
erkan joined
10:54
wk joined
|
|||
daxim | tadzik, status plpw2013? post some /news or something | 11:04 | |
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 | |
ex. package Foo::Bar; is now illegal | 11:09 | ||
(I'm not considering -> { ... } or { ... } atm) | |||
11:10
betterworld joined
|
|||
FROGGS_ | hoelzro: I think so, yes | 11:11 | |
hoelzro | cool | ||
FROGGS_ | std: package FooBar; | ||
p6eval | std 86b102f: OUTPUT«===SORRY!===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:------> package FooBar⏏; expecting any of: name traitPar… | ||
FROGGS_ | std: grammar FooBar; | ||
p6eval | std 86b102f: OUTPUT«ok 00:00 41m» | ||
FROGGS_ | std: class FooBar; | ||
p6eval | std 86b102f: OUTPUT«ok 00:00 41m» | ||
FROGGS_ | right | ||
hoelzro | cool | 11:12 | |
11:12
betterworld left
|
|||
masak | STD is the only parser I know to use the wording "unfortunately" :) | 11:14 | |
FROGGS_ | masak: and the sentence after that is pretty wrong | 11:15 | |
std: use v5; package FooBar; | |||
p6eval | std 86b102f: OUTPUT«ok 00:00 52m» | ||
masak | std: use v5; my $foo; $foo->method(); print $foo . "bar" | 11:27 | |
p6eval | std 86b102f: OUTPUT«ok 00:01 53m» | ||
masak | huh. wow. :) | ||
11:29
betterworld joined,
betterworld left
|
|||
FROGGS_ | masak: that is STD_P5.pm6, I use this grammar | 11:32 | |
11:40
betterworld joined
|
|||
masak | I don't know about you, but I'm every so slightly awestruck. | 11:41 | |
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. :) | |||
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 | |
but twiddling a bit so that the action methods fit the grammar rules is a job I can do within time :o) | |||
diakopter | std: use v5 { }; | 11:52 | |
p6eval | std 86b102f: OUTPUT«===SORRY!===Cannot locate module v5 at /tmp/PEOjPBaicE line 1:------> use v5 { }⏏;Check failedFAILED 00:00 50m» | ||
diakopter | p5eval: use v5 { }; | ||
p5eval | diakopter: ERROR: syntax error at (eval 7) line 1, near "use v5 { " | ||
FROGGS_ | the v5.pm might be a preset for other languages like cobol some day, but I won't dare to write the grammar | ||
diakopter | p5eval: use v5 qw(); | 11:53 | |
p5eval | diakopter: ERROR: syntax error at (eval 7) line 1, near "use v5 qw()" | ||
diakopter slow | |||
FROGGS_ | diakopter: use v5 takes no params | ||
masak: do you know cobol? | 11:54 | ||
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) | ||
daxim | make it so | ||
tadzik | I saw your talk submissions too, good stuff | 11:56 | |
masak | FROGGS_: I've never used COBOL. only seen enough of it. | ||
tadzik | there was supposed to be an update last week, it's just that $life got in a way | ||
FROGGS_ | r: $life | ||
p6eval | rakudo b972ca: OUTPUT«===SORRY!===Variable '$life' is not declaredat /tmp/znUry6ZClg:1------> $life⏏<EOL> expecting any of: postfix» | ||
FROGGS_ | hmmm, what's that? | ||
masak | tadzik: how does one submit a talk for the Polish Perl Workshop? | 11:57 | |
tadzik | masak: through a talk submission link, I suppose : | ||
isn't there one? | |||
masak | let's just pretend my fingers are glued together and I can't search for it :) | ||
tadzik | act.yapc.eu/plpw2013/newtalk | ||
there we go :) | |||
masak | \o/ | ||
tadzik | oh yes, please submit | ||
++masak | |||
tadzik food & | |||
diakopter | r: my $a = './'; require $a x 1000; | 11:58 | |
p6eval | rakudo b972ca: OUTPUT«Could not find ./././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././… | ||
diakopter | r: my $a = '../'; require $a x 1000; | ||
p6eval | rakudo b972ca: OUTPUT«Could not find ../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.… | ||
diakopter | r: my $a = ';'; require $a x 1000; | ||
p6eval | rakudo b972ca: OUTPUT«Could not find ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;… | ||
diakopter | r: my $a = ' '; require $a x 1000; | 11:59 | |
p6eval | rakudo b972ca: OUTPUT«Could not find … | ||
masak | there should be a "this is an insane usage -- diakopter, is that you?" error message. :P | ||
"Witaj na stronie Polskiego Perl Workshopu 2013!" | |||
"Workshopu"! :D | |||
sounds almost Japanese... | |||
FROGGS_ :op('callmethod'), :name('&lunch'), :node(self) | 12:00 | ||
diakopter | r: my $a = '.0'; require "v6{$a x 1000}"; | ||
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… | ||
masak | diakopter: I think we should release the frozen spec with that version number. | 12:01 | |
diakopter | r: my $a = '0'; require "v6{$a x 1000}"; | ||
p6eval | rakudo b972ca: OUTPUT«Could not find v600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000… | ||
diakopter | masak: yes. | ||
masak | by the time Perl 6{'0' x 1000} is out, sorear and I will already have absorbed a few stars. | ||
diakopter | r: require "v5"; | 12:02 | |
p6eval | rakudo b972ca: OUTPUT«Could not find v5 in any of: /home/p6eval/nom-inst/lib/parrot/4.10.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… | ||
diakopter | r: require "your mom"; | ||
p6eval | rakudo b972ca: OUTPUT«Could not find your mom in any of: /home/p6eval/nom-inst/lib/parrot/4.10.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… | ||
diakopter | r: require "anything"; | 12:05 | |
p6eval | rakudo b972ca: OUTPUT«Could not find anything in any of: /home/p6eval/nom-inst/lib/parrot/4.10.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… | ||
diakopter | r: require "jack"; | ||
p6eval | rakudo b972ca: OUTPUT«Could not find jack in any of: /home/p6eval/nom-inst/lib/parrot/4.10.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… | ||
masak | r: require "diakopter"; | 12:06 | |
p6eval | rakudo b972ca: OUTPUT«Could not find diakopter in any of: /home/p6eval/nom-inst/lib/parrot/4.10.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"; | ||
p6eval | rakudo b972ca: OUTPUT«===SORRY!===Undeclared routine: requires used at line 1» | ||
masak | r: requires "sense or even intelligence"; | ||
p6eval | rakudo b972ca: OUTPUT«===SORRY!===Undeclared routine: requires used at line 1» | ||
masak | ugh | ||
r: require "sense or even intelligence"; | |||
p6eval | rakudo b972ca: OUTPUT«Could not find sense or even intelligence in any of: /home/p6eval/nom-inst/lib/parrot/4.10.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,… | ||
diakopter | hee | ||
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
12:13
preflex left
|
|||
diakopter | r: my (&nique, &ta, &mère) = ({;},{;},{;}); nique ta mère | 12:14 | |
p6eval | rakudo b972ca: ( no output ) | ||
diakopter | r: my (&nique, &ta, &mère) = {;} xx 3; nique ta mère | ||
p6eval | rakudo b972ca: ( no output ) | ||
12:17
preflex joined
12:25
preflex left
12:27
preflex joined
12:40
Heather left
12:41
snearch joined
12:42
SmokeMachine joined
12:44
sqirrel joined,
SmokeMachine left
|
|||
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.10.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… | ||
FROGGS_ | should be "your keys" then | 12:49 | |
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 | |
heck. Probably a third reason is that the language is designed/intended to be lexically extendible | |||
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:53 | ||
12:55
cognominal joined,
cognominal__ left
|
|||
moritz_ | having everything lexically (like imports etc.) is really great | 12:59 | |
nwc10 | having the ability to change the grammar lexically should help future-proofing | 13:00 | |
hoelzro | +1 | ||
(lexical stuff)++ | |||
nwc10 | likely that one is key in the long term | ||
lexical imports is useful in the medium term | 13:01 | ||
jnthn | Lexical stuff also works out very nicely implementation wise. | 13:02 | |
To the degree that I find anything that doesn't work lexically mostly a nuisance to have to deal with. :) | |||
Leading example: packages :) | 13:03 | ||
moritz_ | this is kinda amusing, because Back In The Days, lexical classes din't work at all :-) | 13:04 | |
(when we still put methods into parrot namespaces) | 13:05 | ||
13:06
shlomif joined,
cognominal left
|
|||
jnthn | moritz_: Yeah, one of the biggest things that we've changed over time is making the toolchain good at lexical stuff | 13:06 | |
13:06
cognominal joined,
moritz_ is now known as moritz
|
|||
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 | ||
jnthn | *nod* | ||
13:07
rindolf left
|
|||
nwc10 | actually, heck, that's another useful thing - proper compilation, and linking | 13:07 | |
jnthn: nqp-jvm-prep still works (apart from the two cross-compile known problems) | 13:10 | ||
arnsholt_ | jnthn! o/ | 13:11 | |
jnthn | nwc10: OK :) | ||
Will look more at that after vacation :) | |||
arnsholt_: o/ | |||
arnsholt_: How's things going? | |||
13:14
snearch left
13:15
arnsholt_ is now known as arnsholt
|
|||
arnsholt | Pretty good | 13:15 | |
I pushed some commits yesterday (I think) | |||
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 | ||
I'll take a closer look and probably contribute some in a week or so | |||
masak | jnthn! \o/ | ||
arnsholt | Had to tweak the regex codegen stuff a bit. That was a bit scary, I must admit | ||
jnthn | Since getting that right will also be a Rakudo porting blocker | ||
arnsholt: oh, where ooc? | 13:17 | ||
o/ masak | |||
arnsholt | jnthn: github.com/perl6/nqp/commit/95084d...c2e023b366 | 13:19 | |
13:19
SamuraiJack_ left
|
|||
arnsholt | Essentially, the code tried to fetch from an nqp::list directly into S and I registers | 13:20 | |
13:20
sahadev joined
|
|||
jnthn | arnsholt: which nqp::list out of curiosity? | 13:20 | |
If it's the bstack it's explicitly meant to be a list_i | |||
arnsholt: oh, no, it's just the cursor start thing | 13:22 | ||
arnsholt: yes, that's fine | |||
13:24
bluescreen10 joined
|
|||
arnsholt | jnthn: Excellent. I was a bit wary, but it seemed like the only option | 13:25 | |
I also added a set_elems to REPROps_Positional (and dispatch to that from set_integer_native in sixmodelobject.pmc) | |||
Loosely based on what I found in the JVM stuff | |||
jnthn | *nod* | ||
Need an nqp:: op for that | |||
arnsholt | Troo | 13:26 | |
jnthn | (has been on my todo list...didn't work out what to call it... :)) | ||
arnsholt | Hehe | ||
13:27
shlomif is now known as rindolf
|
|||
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. | ||
But nqp::setelems would wfm | |||
arnsholt | Oh, right | 13:28 | |
Now I see why the Parrot ops and NQP ops differ like that =D | |||
But I can implement that | |||
Should I remove the set_integer_native VTABLE as well? (I guess I should) | |||
jnthn | I think you'll fidn a couple of places in Cusror.nqp that do the assign op on an array | 13:29 | |
And htat'd turn into an nqp::setelems too | |||
arnsholt | Yup | ||
jnthn | Yeah, no need to introduce more v-table things. | ||
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 :) | ||
Feel free to update things there too, if you have interest. :) | 13:31 | ||
OK, back to afk vacation mode :) | |||
arnsholt | Really? I thought I found a call to set_elems in the same place in the JVM stuff | ||
Enjoy! | |||
13:35
baest_ is now known as baest,
cognominal__ joined,
jlaire_ is now known as jlaire
13:36
cognominal left
|
|||
FROGGS_ | use perl5; my $x = (1, 2); say %{ $x }; | 13:36 | |
("1" => 2).hash | |||
\o/ | |||
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:39 | |
FROGGS_ | damn | ||
huf | my $x = (1, 2); is my $x = 2; ()-s do nothing and , is the scalar comma | ||
moritz | p5eval: my $x = (1, 2); %{ $x } | ||
p5eval | moritz: 0 | ||
FROGGS_ | I'm currently on the way to support scalar/array/hash dereferencing | ||
moritz | p5eval: my $x = (1, 2); [ %{ $x } ] | ||
p5eval | moritz: [] | ||
moritz | huh, it doesn't error out? | ||
huf | p5eval: use strict; use warnings; my $x = (1, 2); [ %{ $x } ] | 13:40 | |
p5eval | huf: ERROR: Can't use string ("2") as a HASH ref while "strict refs" in use at (eval 7) line 1. | ||
moritz | ah, strict. | ||
huf | i was assuming sanity :) | ||
moritz | not an entirely bad assumption | ||
FROGGS_ | huf: right now I have no hash-/arrayrefs, so it is just half-true | ||
but at least @{ } calls .list | 13:41 | ||
13:43
rindolf left
13:46
kaleem left
13:50
census joined
|
|||
dalek | : 5b9b18e | (Tobias Leich)++ | lib/Perl6/P5 (2 files): added scalar-/hash-/array-dereferencing and removed debug cruft |
13:51 | |
13:52
drbean left
13:53
cognominal__ left
13:54
drbean joined,
cognominal__ joined
|
|||
FROGGS_ | I guess one of the important modules for Perl 5 is Exporter? | 13:58 | |
nwc10 | what Exporter does is very important. But it could have a lot better interface | 13:59 | |
that it does it in pure Perl is also nice | |||
FROGGS_ | nwc10: I dont want to improve all modules that are on cpan, I just want to make a few of them work | ||
nwc10 | ah OK. Have fun with typeglobs then :-) | 14:00 | |
FROGGS_ | hehe | ||
>.< | |||
daxim | that better interface is p3rl.org/Sub::Exporter - if you want to apply it to an existing Exporter module, use p3rl.org/Sub::Import | 14:01 | |
14:01
skids joined,
xalbo_ is now known as xalbo
14:05
PacoAir joined
14:23
Psyche^ joined
14:24
Patterner left,
Psyche^ is now known as Patterner
14:31
xilo joined
14:37
cognominal__ left
|
|||
masak | just suddenly had an idea for a game: gist.github.com/masak/5237570 | 14:41 | |
discuss. ;) | |||
(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.) | |||
FROGGS_ | masak: a 300-point-bonus when you already win with 200 points? | 14:43 | |
14:43
cognominal joined
|
|||
masak | yes. | 14:43 | |
better get consensus to change that rule... :) | 14:44 | ||
or someone will win just by showing up and voting early. | |||
FROGGS_ | masak: so, the game is about playing and modifying the game? | 14:45 | |
masak | indeed. | ||
FROGGS_ | so there is no 3d-gfx at all? | ||
:P | |||
masak | heh. | ||
the patches voted on determine what slightly different variant will be played in the next round. | |||
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 | ||
masak | more like an API. written in Perl 6. | 14:47 | |
I don't see why patches couldn't conceptually be git commits. | |||
the game could be backed by a git repo somewhere. | |||
moritz | ah, haven't read to the end yet | ||
masak | proposing a patch would be comitting in a newly-created branch. | ||
winning a vote would merge the branch. (always a fast-forward) | 14:48 | ||
moritz | sounds geeky :-) | ||
FROGGS_ | moritz: -10 points! | ||
masak | oh, it is. | ||
FROGGS_ | # read to the end | ||
:o) | |||
moritz | btw I'm against making stuff immutable | 14:49 | |
FROGGS_ | do I loose points for being sarcastic? | ||
moritz | FROGGS_: not at all! | ||
FROGGS_ | \o/ | ||
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. | ||
moritz: yeah, "against immutable" is my feeling too. ooc, why are you against it? | |||
FROGGS_ | I'm in btw | 14:50 | |
moritz | masak: because the reviewing process should decide whether stuff can be changed or not | ||
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. :) | ||
moritz | masak: all the power to the players! | ||
masak | :) | ||
I think trying without an immutable layer makes a lot of sense. | |||
now, given what you know about the game, how would a session of this game play out? | 14:51 | ||
how would someone win? | |||
as I said, I've been in two live games, so I know a bit about what happens. | |||
14:51
cognominal left
|
|||
moritz | probably by others growing tired of monitoring everybody's score | 14:51 | |
masak | heh. | 14:52 | |
no, assume sufficiently interested players. that isn't always the case, but the assumption makes the question more interesting. | |||
I almost said "sufficiently rational players", but that's not quite it. | |||
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. | ||
basically "divide and conquer" / "pit everyone against each other". | |||
anything else come to mind? :) | 14:54 | ||
moritz | I also wonder if there should be a bonus/malus for accepted/rejected patches | ||
masak | ooh. yes. | ||
masak adds that | |||
moritz | well, somebody could also add it as a patch :-) | ||
that would have been my first patch, fwiw :-) | |||
oh, and I'm in. | |||
14:54
wingfold joined
|
|||
masak | hah. :) | 14:55 | |
dang, now I have to build this ;) | |||
three players is kind of a minimum. | |||
masak adds "Perl 6 Nomic" to his growing TODO list | 14:56 | ||
I think I could codify the *rules* as Perl 6 code in an evening or so. | 14:57 | ||
no more guesses for how to win? I know two more player types that I've seen in the wild. | |||
moritz | well, there can be aliances | ||
there can be harakiri | |||
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 | ||
masak | I thought about that. | ||
decided not to add it, and to make it an exploitable problem in the game. | 14:59 | ||
moritz | ok | ||
masak | a two-player alliance could easily vote through anything at 23:50 on a Sunday. | ||
moritz | that would make it kinda time consuming on Sunday nights | ||
masak | heh. maybe make it mid-day some better day... :) | 15:00 | |
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 | |
15:03
cognominal joined
|
|||
masak | yep. | 15:03 | |
moritz | *force | ||
masak | no, I won't fix that one. | ||
moritz | masak++ "the yudkowsky" | ||
well, there can always be patches that try to fix that. | 15:04 | ||
also interesting questions: can submitted patches be refined? | |||
(ie push more patches the same branch/pull request) | 15:05 | ||
15:05
dwoldrich joined
|
|||
FROGGS_ | I'd say yes, as long as there is no vote | 15:05 | |
masak | not in the initial ruleset. | ||
but I guess I should make it easy to add such logic. | |||
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 edge.org/conversation/what-is-life | ||
masak | cognominal: :P | 15:06 | |
cognominal | s/more// | ||
15:06
xantamoc joined
|
|||
FROGGS_ | hehe | 15:07 | |
I'd be out | |||
masak | the challenge in Nomic is making the game "take off", giving it a personality that makes people interested in the game's evolution. | ||
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 | ||
FROGGS_ .oO( R.I.P. Perl 6 devs. They all died on a fast killing virus they self created ) | 15:11 | ||
15:13
cognominal left
|
|||
geekosaur | latest incarnation of core wars? | 15:14 | |
15:14
cognominal joined
|
|||
masak | geekosaur: Nomic and core wars definitely have commonalities. but I'd say Nomic is more loopy than core wars. | 15:15 | |
anyone know what's going with Philippe's 'is export' problem on p6l? | |||
geekosaur | aside from the typo? | 15:17 | |
(if there has been a followup, it hasn't reached me yet) | 15:18 | ||
masak | oh, there was a typo? | ||
geekosaur | SalesReportGram called, SalesExportGram exported | 15:19 | |
masak | yes, how about that. | ||
if no-one has replied that, I could do so. | |||
geekosaur | I did already | ||
masak | oki | ||
geekosaur++ | |||
geekosaur | maybe the list is slow | ||
masak | yes. it is. | ||
geekosaur | ok, they fixed that, now get another error I wouldn't know about (missing parsefile method) | 15:23 | |
moritz | r: say dir | 15:25 | |
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… | ||
moritz | r: grammar A { token TOP { .* } }; say A.parsefile('.bashrc') | ||
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.… | ||
moritz | sounds like he's calling the method on the module, not on the grammar | 15:26 | |
masak | yes. | 15:27 | |
hoelzro | are IO::Socket and friends guaranteed to be provided by a conforming Perl 6 implementation? | ||
15:29
rindolf joined
|
|||
hoelzro | ah, nvm | 15:30 | |
15:31
cognominal left
15:35
dwoldrich left
15:37
cognominal joined
15:50
lichtkind joined
|
|||
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 | |
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) | |||
masak | r: 007 | ||
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 ------> 007⏏<EOL> Leading 0 does not indicate octal in Perl 6; please use 0o07 if you mean that at /tmp… | ||
moritz | so, if that's not what you want, use / and % instead | ||
masak | why do I get the warning twice? :) | 15:56 | |
moritz | masak: once for every 0? | ||
r: 0007 | |||
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 ------> 0007⏏<EOL> Leading 0 does not indicate octal in Perl 6; please use 0o007 if you mean that at /… | ||
moritz | afk | ||
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:59 | |
s/C/D | |||
cognominal | arnsholt, what does you new NQP? | ||
arnsholt makes test and sees what falls out | |||
I'm working on making nqp::list be a sixmodel object, rather than a ResizablePMCArray | 16:00 | ||
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 | |||
Lots of failed tests, though =) | 16:01 | ||
FROGGS_ | arnsholt++ | 16:02 | |
16:04
cognominal left
16:05
FROGGS_ left
|
|||
masak | _sri++ posted, in the middle of yesterday's failed discussion on #parrot, 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
|
|||
hoelzro | masak++ | 16:05 | |
I had an idea for the REPL yesterday | 16:06 | ||
masak | also, | ||
<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 | |||
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). | ||
hoelzro | masak: I echo that concern | ||
however | |||
that's not a problem if others (like myself) are willing and able to polish the stdlib | |||
which is why I want to write a POSIX module | 16:07 | ||
masak | oh, it's still a problem :) | ||
it's a thing which lots of people have to spend lots of time solving. | |||
and awareness of the specifics of the problem, and its magnitude, is a necessary first step. | |||
PerlJam | masak: did you notice how many of the things in the nodejs api relate to IO? | ||
hoelzro | s/not/not as much of/ | ||
perigrin | as PHP has shown you can simply make the stdlib part of the core language. | 16:08 | |
perigrin hides. | |||
masak | PerlJam: and we're very weak on IO. | ||
PerlJam | yep :( | ||
16:08
cognominal joined
|
|||
masak | we got DateTime/Temporal settled. it works. it's a success. | 16:08 | |
next up: IO. | |||
let's do this, people. | |||
sahadev | PerlJam: that ("easy way to tell the difference") would be useful. | 16:09 | |
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 | ||
(which ties into my earlier question on IO::Socket and friends) | |||
arnsholt | hoelzro++ # stdlib | 16:11 | |
16:11
jeffreykegler joined
|
|||
hoelzro | do we have a "Perl 6 production readiness" clock yet? | 16:11 | |
if so, I think we should start documenting what parts of the stdlib need work | |||
ex. LWP::Simple is...nice, but far too rudimentary for real world usage | |||
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 | ||
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. | ||
hoelzro | s/clock/checklist/ then =) | ||
masak | maybe we'd be better off presenting a few orthogonal dimensions. | 16:13 | |
jeffreykegler | The result serves the reader well, though I imagine it was painful for participants | ||
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. | ||
perigrin | masak: two dimentions ... a clock is a vector no? | ||
masak | jeffreykegler: oh, it was failed. neither one got through to the other, and all that was created was blood pressure. | ||
perigrin | people are expecting you to boil it down to one dimension already .... a boolean. | ||
masak | jeffreykegler: I have more things to add to that discussion, but I'm consciously staying out of re-opening it. | ||
PerlJam | perigrin++ indeed | ||
masak | PerlJam: yeah, that's the goal. | 16:14 | |
hoelzro | masak: didn't you post a gist of "to dos" for production readiness? | ||
masak | I was going to :/ | ||
others did. | |||
it's in the backlog somewhere. | |||
jeffreykegler | Sometimes agreement is not the best outcome. Differing approaches can serve the community. | ||
16:14
domidumont left
|
|||
PerlJam | jeffreykegler: YOU'RE WRONG! ;-) | 16:15 | |
masak | autopun ;) | ||
jeffreykegler: I'm the guy who wrote strangelyconsistent.org/blog/perl6-...ld-as-perl -- that blog has been described as "sad but hopeful". I believe I am not "in denial" about anything. | |||
hoelzro | ugh, backlog searching =/ | ||
masak | hoelzro: I could find it for you. | ||
hoelzro | already grepping =) | 16:16 | |
16:16
colomon joined
|
|||
hoelzro | aw, twas moritz | 16:18 | |
16:18
cognominal left
|
|||
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 :) | ||
hoelzro: vice versa too | |||
masak | or tadzik. | ||
hoelzro | PerlJam: my thoughts exactly =) | ||
its because all(<masak moritz>) ~~ /^m/ | 16:19 | ||
masak | hoelzro: I had this idea for a site: github.com/masak/production-readiness | ||
hoelzro | I forked moritz' gist: gist.github.com/hoelzro/5238329 | ||
masak | hoelzro++ | ||
tadzik | tadzik what? | ||
oversimplifies and uses old data? | |||
ah | 16:20 | ||
masak | no, realizes my ideas :) | ||
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 | ||
16:22
simcop2387 left
|
|||
arnsholt | masak: Do they make up statistics on the spot as well, by any chance? =D | 16:22 | |
masak | only about 77% | ||
arnsholt | ^_^ | 16:23 | |
masak | and the remaining 43% are really bad at match. | ||
math*, g'ah | |||
PerlJam | that was an autopun of sorts | 16:24 | |
tadzik | :D | ||
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 | |
that, or play (Star|Mine)craft | |||
kresike | bye folks | ||
16:25
kresike left
16:30
simcop2387 joined
|
|||
census | hi masak! someone say census? :) | 16:30 | |
16:30
cognominal joined
|
|||
masak | haha :) | 16:31 | |
census: hi :) nice to see you. | |||
rurban | masak: diakopter submitted a YAPC::US talk for you. Cannot you login by yourself? www.yapcna.org/yn2013/talk/4697 Zero to Perl 6 [3 hour training] | 16:33 | |
And more for you and TimToady as well | 16:34 | ||
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:37 | |
p6eval | rakudo b972ca: OUTPUT«(A)» | ||
16:38
cognominal left,
cognominal joined
|
|||
PerlJam | raiph: look at it's HOW maybe? | 16:38 | |
s/it's/its/ | |||
raiph | d'oh. thanks | 16:39 | |
masak | rurban: I'm aware of the talk. I haven't gotten around to filling it in yet. | ||
rurban: I learned on Friday that I'm going, and have been busy/distracted since. | |||
rurban | good | ||
masak | rurban: is your criticism limited to my ability to log in? because I can log in. ;) | ||
(I have the talk edit page open in a tab, waiting for me to get to it) | 16:40 | ||
PerlJam | .oO( criticism? ) |
||
masak | "Cannot you login by yourself?" | ||
rurban | no criticism. diakopter submitted a whole bunch of p6 talks so I wasn't sure. | ||
masak | yeah, I'm fine with delegating the handling of our track to him. | ||
diakopter++ | |||
rurban | 19 p6 all on diakopter talks I believe | 16:41 | |
19 p6 talks all by diakopter | |||
masak | I wasn't aware that they showed up as being "by diakopter". | ||
mine seems to have the right speaker -- me. | 16:42 | ||
so not sure what you mean. | |||
rurban | The problem is only the verification. the author should verify, not the submitter | ||
good, all fixed. so it seems. thanks for checking | 16:43 | ||
masak | ok. | ||
moritz | ashleyde1: if div and mod were coercive, they'd be / and % | ||
ashleyde1: so they were designed to be different, to give you options | |||
16:43
thou joined
|
|||
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 | |
moritz: (or read docs, or perform test, or ... ) | |||
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 | ||
masak | anocelot++ # :) | 16:46 | |
16:46
SamuraiJack_ joined
|
|||
masak | anocelot: nice snowclone you've got there. would be a shame if something were to... happen to it. | 16:46 | |
anocelot | masak: XD | 16:48 | |
masak .oO( nice Y combinator you've got there. would be a shame is something were to &?ROUTINE() # nooooooo ) | 16:53 | ||
suck in an endless tailcall of mobster intimidation. | 16:54 | ||
stuck* | |||
my "spell correctly" key is broken today, it seems. | 16:55 | ||
arnsholt | Sigh. GCC's handling of undeclared types is bad | 17:02 | |
17:04
jeffreykegler left
|
|||
moritz | develop with clang instead? | 17:05 | |
17:06
FROGGS joined
|
|||
arnsholt | I should probably look into that | 17:09 | |
pmichaud_ | good afternoon, #perl6 | ||
moritz | good pm, pm | ||
masak | pmichaud_! \o/ | ||
17:09
pmichaud_ is now known as pmichaud
|
|||
pmichaud | ooh, looks like interesting backscroll to read. reading. | 17:12 | |
moritz | and, interestingly enough, I've discovered two sink-related bugs ince our last longer discussion | 17:13 | |
though neither related to emptying arrays | |||
FROGGS | hi pmichaud | ||
moritz | (one in Net::IRC::Bot, one in rakudo) | ||
pmichaud | oops, I have to leave. bbiaw | ||
arnsholt | Remind me, what're the proper Perl 6 semantics for deleting the last element of an array/list? | 17:17 | |
I know Perl 5 shrinks the array in that case, but ISTR Perl 6 not having that special case... | |||
moritz | nr: my @a = <a b c>; @a.delete(2); say @a.elems | ||
masak | r: my @a = 1..10; @a.pop; say @a | ||
p6eval | rakudo b972ca, niecza v24-35-g5c06e28: OUTPUT«2» | ||
rakudo b972ca: OUTPUT«1 2 3 4 5 6 7 8 9» | |||
moritz | ashleyde1: it seems that Perl 6 shrinks too, in imitation of perl 5. | ||
sorry, meant arnsholt | |||
masak | it seems I misunderstood the question ;) | 17:18 | |
moritz++ # didn't | |||
arnsholt | Right. Thanks! | ||
17:20
Targen_ left
17:25
wk left
17:27
fhelmberger left
17:33
xantamoc left
17:35
spider-mario joined
|
|||
arnsholt | Three more test files to go! | 17:38 | |
17:39
xantamoc joined
|
|||
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:45 | |
FROGGS | arnsholt: well, if it really resize the allocated memory area is another story (if your questions was about that) | 17:46 | |
17:47
cognominal left
|
|||
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:48 | |
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:51 | |
pmichaud | back again | 17:53 | |
17:54
cognominal joined
|
|||
PerlJam | arnsholt: I don't think Perl 5 does any kind of optimization there either. | 17:55 | |
huf | arnsholt: delete how? | 17:56 | |
pmichaud | ...delete should resize? | ||
PerlJam | well ... what did you mean by "delete"? | ||
moritz | nr: my @a = <a b c>; @a.delete(2); say @a.elems | ||
p6eval | rakudo b972ca, niecza v24-35-g5c06e28: OUTPUT«2» | ||
pmichaud | I don't think delete resizes for elements removed from the middle. | ||
moritz | only at the end | ||
huf | and even that feels a bit bonusy to me :) | ||
arnsholt | pmichaud: Then t/nqp/59-nqpop.t is wrong | 17:57 | |
huf | but then, delete on arrays feels bonusy to me :) | ||
moritz | it feels like taking the Perl 5 semantics without thinking about it | ||
17:57
kaleem joined
|
|||
arnsholt | This is in NQP mind, not real Perl 6 | 17:57 | |
pmichaud | I mean in Perl 5. Checking. | ||
arnsholt | Oh, right. Sorry | ||
Yeah, I'm pretty sure Perl 5 doesn't resize when you delete in the middle | 17:58 | ||
moritz | p5eval: my @a = <a b c>; delete $a[1]; \@a | ||
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. | ||
moritz | p5eval: my @a = qw<a b c>; delete $a[1]; \@a | ||
p5eval | moritz: ["a",undef,"c"] | ||
arnsholt | You'd have to splice to do that | ||
moritz | aye | ||
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 | ||
moritz | OTOH, on the NQP level, what would be the point of having a delete opteration that doesn't shrink? | ||
pmichaud | Hope I'm not the one that wrote it. | ||
arnsholt | Hehe | ||
pmichaud | moritz: it can result in a shrink of it's the last element. | ||
*if | 18:02 | ||
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 | ||
moritz | after all you can implement Perl 6 level deletion (resetting) with simple element assignment | ||
pmichaud | and jnthn and I were discussing that deletepos might not be needed (but that wasn't ever resolved) | 18:03 | |
oh, and nwc10, also. | |||
arnsholt | Oh, I see. So that's why the JVM code doesn't have a delete_pos =) | ||
pmichaud | okay, I'm not the one who wrote those tests. phew. | 18:04 | |
now, the question is, why does it pass? | |||
diakopter | elven magic | 18:05 | |
arnsholt | I'm assuming that's what RPA does | ||
Gimme a sec, and I'll check the code | |||
18:05
daxim left
|
|||
arnsholt | Yup. RPA's delete_keyed_int copies all the elements above the deleted element down a slot | 18:06 | |
And since nqp::list historically was just an RPA in disguise, the tests are like that | 18:07 | ||
18:07
dmol joined
|
|||
pmichaud | yeah, apparently that's what RPA does. | 18:08 | |
PerlJam | do those semantics blead through to rakudo? (I would guess so) | 18:09 | |
pmichaud | well, not really. | 18:10 | |
arnsholt | AFAICT, there's no code in NQP (apart from the tests) or Rakudo that uses deletepos | ||
pmichaud | right. | ||
and I'm not sure what QRPA does. | |||
arnsholt | And nqp-jvm-prep has no mentions of deletepos anywhere that I can find | ||
QRPA doesn't implement delete =) | 18:11 | ||
pmichaud | anyway, deletepos, when/if it exists, will have the p5/p6 semantics and not the parrot ones. | ||
arnsholt | Right, right | ||
pmichaud returns to reading backscroll. | |||
18:15
dakkar left
|
|||
pmichaud | looks like I need to read "yesterday's #parrot episode", too. | 18:17 | |
moritz | not much to gain there, IMHO | ||
diakopter | yeah, nothing novel there | ||
18:18
SamuraiJack_ left,
SamuraiJack__ joined
|
|||
PerlJam | you'll just end up frustrated like masak I'd warrent | 18:19 | |
er, warrant | |||
18:19
cognominal left
18:20
kaleem left
18:21
Chillance joined
18:24
cognominal joined,
Targen joined
|
|||
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 | |
er, 13 | 18:26 | ||
arnsholt | Last test file! | 18:27 | |
rurban | diakopter: no prob, just wanted to crosscheck :) | ||
pmichaud | PerlJam: no, I'm not frustrated by it, because I've already explored the inconsistencies in allison's statements before. :) | 18:28 | |
arnsholt | All green! \o/ | 18:30 | |
Apart from the ones that are skipped. Best check those first | |||
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. | ||
masak | aye. | 18:36 | |
I guess I'm a latecomer learning about allison's stance. :/ | 18:37 | ||
pmichaud | but yes, some of the comments on #parrot are really.... bizarre. | 18:39 | |
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:43 | |
diakopter | masak: I detect a certain amount of semantics in the fact that you're quoting. :) | ||
geekosaur | "semantics" does not mean "doesn't agree with me" | ||
sorear | good * #perl6 | ||
masak | sorear! \o/ | ||
sorear | pmichaud: what's up, down, and sideways today? o_O | ||
masak | I guess the real conclusion to draw is that we should get that production-readiness page up, and soon. | ||
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. | ||
moritz | geekosaur: after that exchange I left #parrot to cool down | 18:44 | |
[Coke] | I think a target goal of "MOAR USERS" is a good thing we can all agree on. | ||
moritz | [Coke]: no doubt | ||
pmichaud | [Coke]: I agree that "more users" is important. But that has to be translated into smaller milestones. | ||
masak | pmichaud: yes. | ||
moritz | also "more possible use cases", which is nearly the same | ||
masak | pmichaud: (to treating epsilon as zero) | ||
moritz | which is where speed, modules, stability and IO come in again | ||
pmichaud | and so far the smaller milestones I hear are "faster, more stable, more libraries" | ||
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. | ||
hoelzro | (moar users)++ | ||
masak | (moar everything)++ | ||
pmichaud | masak: I suggest not doing that. :) | ||
masak | noted. | ||
FROGGS | well, I am working on the "more libs" with v5 | ||
moritz | FROGGS++ | ||
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 | |||
masak | pmichaud: yes, and I see that too. | ||
pmichaud: and I agree. I want to hold us to a higher standard than that, too. | |||
FROGGS | jnthn does the speed thing (JVM), who does the more users? | ||
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 | ||
moritz | FROGGS: it's a mixture of providing the prerequisites, and of motivating people to try out Perl 6 | ||
FROGGS | moritz: well, I made two, and you at least one from what I know :o) | ||
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
|
|||
sorear | i think the operant phrase here is "tough act to follow" | 18:49 | |
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
Liz is now known as Guest66032
|
|||
FROGGS | brb | 18:49 | |
18:49
Guest66032 is now known as lizmat
|
|||
masak | pmichaud: fair point. | 18:51 | |
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:53 | |
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:56 | |
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 | ||
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". | |||
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 | ||
18:59
GlitchMr- is now known as GlitchMr
|
|||
pmichaud | being able to declare a 6.0.0 spec would probably help in that respect. | 18:59 | |
moritz | pmichaud: re stability story, I'm currently exploring doing the IRC logging through Perl 6 | 19:00 | |
pmichaud: having a continuous production setting will force me to react to stability issues with my stuff more directly | |||
pmichaud | agreed. | ||
moritz | pmichaud: say hello to ilbot6 | 19:01 | |
:-) | |||
it logs into a dev database | |||
19:01
cognominal left
|
|||
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:03
wingfold left
|
|||
timotimo_ | i'm considering doing a perl6 talk at the GulaschProgrammierNacht this year, but i don't know about what exactly | 19:06 | |
19:06
cognominal joined
|
|||
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 | |
bbl | |||
19:11
Gruu_ joined
|
|||
pmichaud | alas, I have to disappear for a while again -- bbl | 19:11 | |
moritz | GPN++ | ||
moritz wants to discuss a completely unrelated topic | 19:12 | ||
one of my favorites: Error messages! | |||
hoelzro | *sigh* | ||
I haven't read the transcript of the parrot talk | |||
but now chromatic has referenced it on Twitter =/ | |||
19:13
cognominal left
|
|||
moritz | one of the things that have always bothered me is that most error messages don't give the user enough context | 19:13 | |
like they say "Cannot open ~/.somepipe: permission denied" | |||
now the user wonders: why the </$!#@@!> did the program try to open that pipe? | 19:14 | ||
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 | |||
of course that's way too much text to burden the lazy programmer with | 19:15 | ||
19:15
cognominal joined
|
|||
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:16
SamuraiJack__ left
|
|||
hoelzro | how does the module inject definitions into the calling context? | 19:16 | |
moritz | (phone, bbiab) | ||
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. | ||
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 | ||
moritz | so, maybe we should give our routines :dba adverbs | 19:18 | |
lizmat | :dba ? | ||
moritz | which could appear in user-readable backtraces | ||
hoelzro | moritz: that's a neat idea | 19:19 | |
moritz | lizmat: "do business as", a feature we have in the regex engine | ||
lizmat knows about database administrators, but wonders how they would become an adverb | |||
aha | |||
ok | |||
19:19
Gruu_ left
|
|||
lizmat has a backlog of catching up on synopses :-( | 19:19 | ||
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:21 | |
(I think I like :dba better) | |||
pmichaud | gone again | ||
19:25
cognominal left
|
|||
lizmat | $*DOING ? | 19:26 | |
moritz | (back from phone) | 19:27 | |
lizmat | dba seems too much like a job description to me | ||
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 | ||
lizmat: naming is up for discussion, as always :-) | 19:28 | ||
lizmat | but that could well be my mind needs reprogramming in that respect | ||
moritz | but first I want to get more general feedback on the idea | ||
lizmat | I like the idea | ||
to an extent, this could replace at least partly internal documentation | |||
moritz | so, that's 2 +1s | ||
lizmat | I don't think my plusses count as 1 yet | 19:29 | |
more like 0.01 :-) | |||
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 | ||
hoelzro | so this "general dba" extension isn't just for compiler authors, right? you could do it in regular code? | ||
moritz | hoelzro: sure | 19:31 | |
hoelzro | so what would that look like? | ||
moritz | something like sub write-config($config, $file) dba('Safing user config file') { # code here } | ||
*saving | |||
timotimo_ | i like the idea fwiw | ||
moritz | and then if that sub dies, the backtrace would read | ||
sorear | .oO( not my $*BUSINESS ) |
19:32 | |
moritz | "Error while opening file $file for writing: permission deninend\nWhile saving user config file") | ||
hoelzro | ok, neat | ||
that's an excellent idea | |||
moritz++ | |||
19:32
census left
19:33
domidumont joined,
sahadev left
19:35
sqirrel left
|
|||
lizmat wonders how to handle multiple DBA's | 19:35 | ||
moritz | arrays exist | ||
hoelzro | looking at make $<pairlist>.ast.hash in JSON::Tiny...where does that .hash method come from? | 19:36 | |
Any? | |||
19:36
cognominal joined
|
|||
timotimo_ | multiple DBA's would probably be more like a stack actually | 19:36 | |
moritz | hoelzro: $<pairlist>.ast is a List | ||
hoelzro | ahhhh | ||
moritz | hoelzro: so likely from class List | ||
timotimo_ | how about assigning dba's to blocks inside fucniots,too? | ||
hoelzro | understood | ||
moritz | timotimo_: seems like overkill | ||
timotimo_ | fair enough | ||
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): | ||
nqp/vmarray-list: Add the set_elems method to the Positional REPR table. | |||
nqp/vmarray-list: | |||
nqp/vmarray-list: Also implements that method in VMarray and dispatches the set_integer_native | |||
nqp/vmarray-list: VTABLE to set_elems. | |||
19:37
dalek left
|
|||
arnsholt | Yeah, I was afraid that was going to happen | 19:37 | |
19:38
dalek joined,
ChanServ sets mode: +v dalek
|
|||
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 :-) | ||
hoelzro | ;) | ||
timotimo_ subscribed to p6u | |||
hoelzro | could it perhaps be defined in a module? | 19:39 | |
timotimo_ | moritz: yes, that's a good argument | ||
moritz | hoelzro: that's what I'm working on :-) | ||
hoelzro | \o/ | ||
moritz++ | |||
moritz | I don't touch the compiler when modules work fine | ||
hoelzro | amen | ||
moritz | because it takes so long to compile | ||
lizmat wonders whether :dba shouldn't be in nqp | |||
arnsholt | Which repository does dalek live in? | 19:40 | |
:dba is probably best suited to be implemented in Perl 6 | |||
Or, the Perl 6 compiler | 19:41 | ||
moritz | arnsholt: iirc there's a "botnix-plugins" repo somewhere | ||
lizmat | I was wondering whether :dba could be helpful in debugging NQP problems | ||
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"? | ||
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 | |
timotimo_: so I have to hijack 'is' or 'does' or 'handles' or whatever | |||
skids wonders at the etymology of dba (aside from the acronym meaning) | |||
hoelzro | $/ is lexical, right? | ||
skids | Does it hail from an old language? | ||
arnsholt | github.com/Infinoid/dalek-plugins perhaps? | ||
hoelzro | I can't address function a's $/ from b if a calls b? | 19:44 | |
arnsholt | $/ is lexical, yeah | ||
hoelzro | hmm | ||
arnsholt | So if you want to use it from something your function calls, pass it as an argument | ||
hoelzro is still trying to figure out how the heck to create his own EXPORT | 19:45 | ||
arnsholt | Or put it in a dynamically scoped var, I guess | ||
moritz | gist.github.com/moritz/5240038 | ||
hoelzro: through CALLER::<$/> maybe | |||
but you shouldn't, if it can be avoided | |||
[Coke] | PERL 6 SCRIpT | 19:46 | |
arnsholt | moritz: Cool! | ||
moritz | anyway, gist.github.com/moritz/5240038 is the first user-level backtraces prototype | ||
hoelzro | moritz: well, if I'm implementing EXPORT, how do I inject values into the calling context? | ||
CALLER::<fork> = ⋔ ? | |||
19:47
FROGGS left
|
|||
moritz | hoelzro: by merging the EXPORT_hash branch from [email@hidden.address] 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:48
FROGGS joined
|
|||
hoelzro | oh | 19:48 | |
timotimo_ | last time i checked, it only works well for types (or was that subs?) | ||
hoelzro | that's handy | ||
moritz | timotimo_: only for subs | ||
and I'm supposed to work on it | |||
hoelzro | is it possible to do in mainline rakudo? | ||
timotimo_ | :) | ||
moritz | instead I prototype dba for routines | ||
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
|
|||
timotimo_ | at least I don't mind | 19:49 | |
hoelzro | I prefer the return hash | 19:50 | |
but I want this damn POSIX module to start working! | |||
moritz | hoelzro: the problem with the CALLER appraoch is that the lexical scope you're in isn't strictly the caller of EXPORT | ||
hoelzro | ah, good point | ||
moritz | it's called from within the compiler for that scope | 19:51 | |
19:51
myname_ joined
|
|||
hoelzro | so my current EXPORT looks like this: sub EXPORT(*@imports) { for @imports -> $import { say "importing $import"; } } | 19:51 | |
and the printing never happens | |||
I'm guessing that for does some sort of lazy magic? | |||
or...? | |||
moritz | needs to be our sub EXPORT | ||
and yes, add a 1; or so after it, just to be sure | |||
hoelzro | our sub EXPORT fails | 19:52 | |
moritz | how? | ||
hoelzro | moritz: is that the reason, though? laziness? | ||
Merging GLOBAL symbols failed: duplicate definition of symbol &EXPORT | |||
moritz confused | |||
hoelzro too | |||
moritz | oh | ||
are you using 'lib' ? | |||
hoelzro | CALLER::<CALLER><fork> = &fork | 19:53 | |
? | |||
moritz | eg use lib 'some path';? | ||
hoelzro | from the importing script, yes | ||
moritz | ah | ||
we need a better solution for EXPORT | |||
hoelzro | agreed =/ | ||
this is actually pretty painful | |||
moritz | I'd like to discuss this with jnthn++ soon | ||
r: module A { method x() { } }; A.x | 19:55 | ||
p6eval | rakudo b972ca: OUTPUT«Useless declaration of a has-scoped method in moduleNo such method 'x' for invocant of type 'A' in block at /tmp/BqgbWp_mFD:1» | ||
moritz | that's why we can't make EXPORT a method | ||
FROGGS | timotimo_: GPN sounds nice | ||
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. :-/ | ||
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:57 | |
pmichaud | anyway, we need to come up with some publishable measure of stability. | ||
hoelzro has never heard of CodeMirror =( | |||
timotimo_ | no problem then | ||
hoelzro | heh | ||
diakopter heads to twitter | |||
timotimo_ | (it's a javascript based code editor used in many, many places) | ||
pmichaud | also, I'm struck that "small stable core" and "get p5 folks to switch to p6" are mutually incompatible somehow. | ||
[Coke] | pmichaud: I think we have to focus our limited tuits on things we think will have an effect, yes. | ||
hoelzro | timotimo_: pygments was step 1 | 19:58 | |
timotimo_ | oh, i know this meme! step 4 is profit, right? :D | ||
hoelzro | step 2 is vim-perl | ||
19:58
cognominal left
|
|||
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 | |
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. :) | |||
diakopter | you mean a user of rakudo is a user of parrot..? he means project users | ||
[I think] | |||
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 | |
not that any of this makes sense. | |||
moritz | .oO( we've tried it with sense. It was frustrating. ) |
||
hoelzro | so...there's no way of injecting things from EXPORT into the calling context yet? | 20:01 | |
if so, I'll have to just grin and bear it | |||
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. | ||
hoelzro | but I really want to write this POSIX module =) | ||
nwc10 | Catalyst was? | ||
pmichaud | well, perhaps not Catalyst. | 20:02 | |
Although I'm sure there are some p6 influencers there. | |||
20:02
census joined
|
|||
pmichaud | my point being simply that p5 evolution hasn't taken place divorced from p6 | 20:02 | |
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:05 | |
20:07
philroc joined
20:08
philroc left
|
|||
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 | |
so Perl 5 also benefitted a lot from that | |||
20:09
cognominal joined
|
|||
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 | |
Perl 6 was very useful for Perl 5 | 20:11 | ||
20:13
domidumont left
|
|||
masak | "was"? :P | 20:13 | |
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 :) | ||
looking at you, ~~ | |||
masak | yeah. | 20:15 | |
geekosaur | why tf did they do that, anyway? | 20:16 | |
huf | *shrug* | ||
i think p5's switch is cursed | |||
first we had Switch.pm, and what a load of fuckup that was | |||
then ~~ and given/when and ... yeah | |||
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 | ||
yes, $*W is a rakudo detail | |||
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. | ||
cognominal | oops, his prostate? | 20:20 | |
pmichaud | anocelot: yay!!! | ||
anocelot: thank you for the update, I had been thinking of him all day. | 20:21 | ||
lizmat thinks healing thoughts for TimToady | |||
sorear | is that even public? | ||
diakopter | .oO( "it is now..." ) (yes, it was) |
||
cognominal | lizmat++ # so do I | ||
diakopter | sorear: like all his other surgeries, afaik | 20:24 | |
FROGGS | anocelot++ # thanks for the update | 20:26 | |
20:26
__rnddim__ is now known as lue
|
|||
lue | hello o/ | 20:27 | |
timotimo_ | hoelzro: i thought github uses it, but i can't find any indication that that's actually true | ||
FROGGS | hi lue | ||
anocelot | FROGGS: My guess is *most* of us have been anxious all day, so yeah. | ||
hoelzro | timotimo_: github uses pygments | 20:28 | |
FROGGS | anocelot: well, I know it should happen these days, but I wasnt sure it was today | ||
timotimo_ | hoelzro: for the code editor i mean | 20:29 | |
hoelzro | oh, for that | 20:30 | |
20:31
cognominal left
20:32
kurahaupo joined
20:33
cognominal joined
|
|||
[Coke] | anocelot++ | 20:34 | |
20:34
Targen left
|
|||
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:38 | |
masak .oO( anocer of that lot ) | 20:39 | ||
[Coke] | *groan* | ||
20:40
Targen joined
|
|||
FROGGS .oO( timotimo_s leave Wall's kids alove... ) | 20:40 | ||
FROGGS skipped that "we don't need no ..." line | 20:41 | ||
*alone | |||
-.- | |||
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... | ||
FROGGS | I thought there was diakopter and his son on it... | ||
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. | ||
PerlJam | FROGGS: aye, it was. | 20:45 | |
lue | .oO(must... resist... can't...) So, I guess you're someone who could say "Anocelot about the Walls." |
||
lizmat | s/lie/fabrication/ ? | ||
PerlJam | anocelot: if you happen to see TimToady or his family before us, relay #perl6's best wishes :) | ||
lizmat has gotten sensitive about calling things lies after a recent discussion on p5p | |||
PerlJam | lue: heh | 20:46 | |
moritz seconds that (best wishes) | |||
masak thirds that | 20:47 | ||
FROGGS | best wishes from all of us I'd say | 20:48 | |
lizmat | FROGGS++ | ||
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? | ||
PerlJam | anocelot: Is that a confession? ;> | 20:51 | |
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. | ||
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. | ||
FROGGS | hehe | ||
anocelot | ... wait. | ||
Crap. | |||
PerlJam | .oO( illformed? malformed? ) |
||
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:55 | ||
pmichaud | anocelot: I didn't hear anything. I did read something on IRC, though... :-P | ||
lizmat has been considering implementing some version of BASIC as an excercise to start implementing Perl 5 in Rakudo | |||
PerlJam | anocelot: that's what makes it interesting--no one knows if it's a joke. | ||
lizmat | is that bad? | ||
PerlJam | lizmat: no. | ||
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 | |||
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
bruges left
|
|||
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 | ||
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 | |
20:58
bruges joined
|
|||
timotimo_ | which ideas were those? | 20:59 | |
pmichaud | "statement modifiers and maybe formats" | 21:00 | |
(it's in the footnote at the bottom of the page) | |||
21:00
dmol left
|
|||
PerlJam | pmichaud: you still have your pink camel? | 21:00 | |
21:00
myname_ left
21:01
dmol joined
|
|||
pmichaud | PerlJam: that's a book I will never willingly give up. | 21:02 | |
(so yes) | |||
PerlJam boggles | |||
sorear | lizmat: all cakes are fabrications :) | 21:03 | |
pmichaud | the glossary alone is special. | 21:04 | |
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:06 | |
sorear | PerlJam: you want one? | ||
moritz | PerlJam: they are in the mu repo somewhere, in PseudoPod format | ||
21:06
skids left
|
|||
PerlJam | sorear: no, I have mine somewhere too, I'm just not sure of the location :) | 21:06 | |
sorear | HAH | ||
PerlJam | moritz: really? | ||
PerlJam looks | |||
sorear | (that's exactly how things work around here too) | 21:07 | |
(OTOH, I know I don't have a camel of any color, only a llama) | |||
pmichaud | I have the P6PE book here also :-) | ||
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 | ||
anocelot | FROGGS: If I can't be of use helping with PHP->Perl6, I can at least help test stuff. | 21:09 | |
lizmat | late dinner& | 21:10 | |
masak | moritz: ping | 21:11 | |
moritz | masak: pong(ish) | ||
masak | moritz: check this out. gist.github.com/masak/5237570 -- it turned out *much* better than I had hoped. | 21:12 | |
FROGGS: you check it out too :) | |||
FROGGS | anocelot: well, in case of PHP I guess there is not even a spectest suite :o) | 21:13 | |
masak | it's un-run, untested code without any of the dependencies implemented. | ||
but it reads really well. | |||
observers++ | |||
FROGGS | masak++ | ||
PerlJam | masak: looks ruby-ish. | ||
21:14
spider-mario left
|
|||
masak | yeah, a method-y DSL will do that to code. | 21:14 | |
moritz | masak++ | 21:15 | |
masak | some would probably say that it looks JavaScript-ish or jQuery-ish. | ||
PerlJam | "whenever.a(Vote).changes('state').to(Finished).do" reminds me of cucumber :) | ||
masak | moritz: I'm amazed at how *well* this abstraction works. only the last couple rules even gave me pause. | ||
moritz | masak: it's about the length that I'd have expected :-) | ||
lue | masak: nitpicky line 60: "the the vote" (but otherwise masak++) | ||
masak | lue: thanks. | ||
I realize now that we have to build this thing, if only so we can play it once :) | 21:16 | ||
but I can't give a time line yet. too many other important things going on. | |||
sorear | where do we stand on "use COBOL;" ? | 21:17 | |
FROGGS | sorear: go ahead :o) | ||
masak | heh, I found a bug :) at line 58. | 21:18 | |
it's a bit subtle. | |||
21:18
census_ joined
|
|||
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 | ||
21:18
census left,
census_ left
|
|||
arnsholt tries to build Rakudo on his NQP branch | 21:19 | ||
21:19
census joined
|
|||
geekosaur | aaaa, cobol | 21:19 | |
masak | sorear: looks lovely. | ||
census | geekosaur++ | ||
masak | what a difference 50 years make. | 21:20 | |
geekosaur | the sad part is I still understood it immediately... | ||
lue | Is this referring to that wayward use COBOL comment in S02 in any way? | ||
pmichaud | and here I thought the point of COBOL was to have a language that one could read like english. :-P | ||
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 :( | ||
PerlJam | geekosaur: is ZZZZ99V99 leading zeros, and the V is the decimal point? | ||
geekosaur | virtual decimal point | ||
PerlJam | right | 21:21 | |
arnsholt | Virtual decimal point? | ||
pmichaud | I'm frightened that I remember that. | ||
geekosaur | meaning, there isn't an actual decimal point printed, it's implied | ||
21:21
sftp left
|
|||
PerlJam | arnsholt: fixed point arithmetic. | 21:21 | |
geekosaur | like storing a money value in cents | ||
arnsholt | Ah, right | ||
21:21
sftp joined
|
|||
lue | .oO(With implied decimal points, how can I resist checking out COBOL?) |
21:21 | |
arnsholt | Digitale ferdigheter | 21:22 | |
Whoops | |||
21:23
pmurias joined
|
|||
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:25 | |
21:25
cognominal left
|
|||
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 | ||
masak | then the pun is less funny, I suppose. | ||
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 | |
hehe | |||
pmurias | what's the point of roast5? | 21:30 | |
FROGGS | I need to put the perl 5 tests somewhere and I need to be able to fudge them | 21:32 | |
otherwise I can't track regressions | |||
nor recognize them | |||
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:33 | |
masak | lue: think so. | 21:34 | |
lue: that sounds like a slang-y thing. | |||
21:35
cognominal joined
|
|||
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:36 | |
sorear | .oO( no strict 'subs' ) |
||
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 | |
21:37
rindolf left
|
|||
masak | lue: ask pointed, curious questions. get a map of the territory. | 21:37 | |
diakopter | also, more questions | ||
sorear | #1 problem is that the spec has a gaping hole in it | ||
lue | Sounds like a nice way to spend the week :) /me can't wait to make this line reality: say "hello' ~~ ☃hello☄; | 21:38 | |
sorear | the spec lets you define the syntax of slangs. ok | ||
diakopter listens to sorear | |||
sorear | there's no specced way to define semantics though! | ||
lue: did you ever get to see C/2011 L4 | |||
lue | I don't believe I know what that is. | 21:39 | |
21:39
kaare_ joined
|
|||
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:40 | |
sorear did | |||
PerlJam | sorear: pics or it didn't happen! ;) | ||
pmichaud | I missed it... too many things happening here at sunset for me to see it. | ||
people I know got pics, though :) | |||
masak | yeah, 'slangs' need to be grammar+action, not just grammar. | ||
actions* | |||
PerlJam | pmichaud: Grady Blount got his on TV (kiiitv.com) | 21:41 | |
sorear | PerlJam: if I wanted pics I would just have gone online | ||
pmichaud | PerlJam: ah, that's the pics I saw :) | ||
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! | ||
pmichaud | lue: hahahahahahahahahahahah | ||
masak | :D | 21:42 | |
sorear | it was of course very cloudy most of the relevant week | ||
pmichaud wonders about photoshop. | |||
lue | I had the idea way back in 2010 (evidenced in a December blog post, but no reason to link to it) | 21:43 | |
C/2012 S1 may be the next chance | |||
diakopter | sorear: I still want the general termish:<| regex blah { some_pattern } |> (*@matches) { semantics } | 21:44 | |
'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...? | ||
tadzik | lichtkind, I guess | ||
anocelot | Or, alternately, who do I talk to for fixit-yerself rights? | 21:46 | |
lichtkind | tadzik What what? missed i something? | ||
masak | like, four lines of backlog :) | ||
diakopter | anocelot: I'll add you | ||
e | 21:47 | ||
anocelot | diakopter: kk | ||
diakopter | er | ||
yeah; sec | |||
sorear | favorite take on the cloud problem: twitter.com/BadPhysics/status/3127...7021126657 | ||
anocelot is expection "anocelot++" or some other addition joke. XD | |||
diakopter | what's your github ID | 21:48 | |
anocelot no existy | |||
BUT you are on github: github.com/throughnothing/dotfiles...ors#L12304 | 21:49 | ||
lichtkind | anocelot: where is it? | ||
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 | ||
lichtkind | thanks a lot | ||
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. | ||
lue: but we *do*, as sorear pointed out, need a way to hook actions into a slang, not just a grammar. | |||
lue | yeah. Probably just need to clarify the actions side of it. | 21:53 | |
masak | that would be a great start. | ||
anocelot | diakopter: (DM'd.) | 21:55 | |
21:55
Targen left
|
|||
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. | ||
lizmat | sorry to have kept you waiting | ||
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 | ||
lizmat: the two alternatives you suggest wouldn't trigger the proper reactions in listeners. | |||
in other words, it's the syntactic/API price one pays for having observables. | |||
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... | ||
geekosaur would comment such thing | |||
masak | and that would definitely look nicer. | ||
lizmat: you're right. I'll change it to be easier. | 21:59 | ||
diakopter | anocelot: I need a github id, not an email address | ||
masak | I believe I can have my cake and eat it here. | ||
it is, after all, Perl 6. :) | |||
lizmat | that would be nice! | ||
lichtkind | ancelot there are all sorts of broken links | ||
i currently fix them all | |||
masak | lizmat: updated: gist.github.com/masak/5237570 | 22:02 | |
lizmat | masak: are "observables" documented anywhere? | 22:03 | |
diakopter | anocelot: added | ||
22:03
bluescreen10 left,
leprevost joined,
lustlife left
|
|||
lue | awful first pass at slangs: gist.github.com/lue/5241230 | 22:03 | |
masak | lizmat: no, but the tutorial at knockoutjs.com/ is very elucidating. | 22:04 | |
lizmat looks | |||
masak | lue: nope. doesn't work. :) | 22:05 | |
good try though. | |||
anocelot | lichtkind: Do you mind if I fix this one? | ||
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 :) | ||
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:07 | |
example* | |||
22:07
xilo left
|
|||
anocelot | ... so I shouldn't fix this one...? (He asks, nervously.) | 22:07 | |
lichtkind | i make a push in 10 min | 22:08 | |
if its still there please do | |||
diakopter | anocelot: you can now design/specify Perl 6, too | ||
anocelot | diakopter: I noticed that. | ||
dalek | blets: 47fa454 | (Kevin Metcalf)++ | docs/tablet-3-variables.txt: Update tablet-3-variables.txt Link fix: [are listed their table](ap-b-lookup.html#special-variables). To understand their secondary sigil [go to the twigil chapter of this tablet](variables.html#twigils). *** becomes *** [are listed their table](ap-b-lookup.html#special-variables). To understand their secondary sigil [go to the twigil chapter of this tablet](tablet-3-variables.html#twigils). |
22:10 | |
anocelot | OH my. Sorry. >.> | ||
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. >.< | ||
lue | does augment allow you to replace methods (e.g. augment Str { method new() { } } would replace Str's current new) | ||
anocelot | Didn't know the entire update extended description would get dalek'd. | 22:12 | |
lichtkind | anocelot: dont worry i merge | 22:13 | |
masak | lue: not that I know. | 22:14 | |
lue: feels to me there's a 'method' keyword missing there. but even besides that, I don't think it's accepted syntax. :) | |||
lue | what missing 'method' ? | ||
anocelot | lichtkind: Thanks. *sees another typo and wanders off* | ||
dalek | blets: 1e9b5d9 | (Kevin Metcalf)++ | README.md: Update README.md your -> you're |
22:15 | |
22:15
ashleyde1 left
|
|||
lichtkind | just a second i push | 22:15 | |
masak | lue: oh, sorry, I read your example wrong. | ||
lichtkind | but you can see results when server does refresh | 22:16 | |
masak | lue: I thought you meant to do something like 'augment method new { ... }' | ||
lue: now that I understand your question: yes, 'augment' on a class would replace old methods in the class. | |||
lichtkind | anocelot: only every hour html will be compiled so please see if you bug is still in 5 min in git | ||
masak | rn: use MONKEY_TYPING; class A { method foo { say "OH HAI" } }; augment class A { method foo { say "OH replaced!" } }; A.new.foo | 22:17 | |
p6eval | rakudo b972ca: OUTPUT«===SORRY!===Package 'A' already has a method 'foo' (did you mean to declare a multi-method?)at /tmp/PtxnBumBj0:1------> » | ||
..niecza v24-35-g5c06e28: OUTPUT«OH replaced!» | |||
lue | OK. That makes your "smiley identifier" example work. | ||
anocelot | lichtkind: Ah. OK. Will do. | ||
masak | lue: no, I meant using subclassing, not augmentation. | ||
lue: overwriting the existing grammar considered antisocial. | |||
lue: because we want the slang to be lexically scoped. | |||
lue | But, that's the only way slangs are used in the spec: 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 | : 8a71fa1 | (Tobias Leich)++ | / (4 files): added roast-alike tests |
||
: a14d3f9 | (Tobias Leich)++ | .gitignore: added gitignore |
|||
FROGGS | is there a way to tell t/harness to prepend something to every test file? | ||
lichtkind | anocelot: that was not nice i did merge and you pushed next change | 22:20 | |
now i have to merge yet again | |||
masak | lue: ah. you're right. | 22:21 | |
lichtkind | sorry its in differen file | ||
lue | so... slang HappyMAIN is MAIN { } ? Then { $~MAIN = HappyMAIN; } ? | ||
dalek | blets: 317fa2d | (Herbert Breunung)++ | docs/ (2 files): fixed links in 3 |
||
blets: 9837181 | (Herbert Breunung)++ | /: merged with my head |
|||
blets: 39d1361 | (Herbert Breunung)++ | README.md: Merge branch 'master' of github.com:perl6/tablets |
|||
lichtkind | its all fine | ||
masak | lue: seems to me 'augment' in that case would be a handy shortcut for 'subclass and replace in this scope'. | ||
FROGGS | [Coke]: ping | ||
masak | lue: whereas the 'augment' for classes augments once and for all, and you can't go back. | ||
lue | Changing the definition of 'augment' for slangs though almost feels DWIMmy, but also indescribably... weird? | 22:22 | |
lichtkind | anocelot: as you see in github.com/perl6/tablets/commit/31...bc616ce4fa you dont need full url to link to same page | 22:23 | |
lue | (updated gist: gist.github.com/lue/5241230) | ||
masak | lue++ # thinking about how to get actions in there | ||
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? | ||
timotimo_ | swagger | ||
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. | ||
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 | ||
anocelot | lichtkind: For the .dm file it's OK? Sorry; I'm probably not as familiar with Git as I should be. | ||
lichtkind | i dont know which link it was and i have to leave soon | ||
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. | ||
timotimo_ | a random question: "augment class" is a lexical or global change? | 22:26 | |
lichtkind | there are no .dm files to edit as far as i know | ||
masak | timotimo_: global. | ||
timotimo_: because classes are global. | |||
lichtkind | oh readme | ||
haha | |||
anocelot | lichtkind: md. Sorry. | 22:27 | |
22:27
xilo joined
|
|||
lichtkind | tsall good | 22:27 | |
just leave me message have really other stuff todo now | |||
22:27
ashleydev joined,
kaare_ left
|
|||
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? | ||
lue | timotimo_: except currently augmenting a class changes it everywhere until the End of Time™. | 22:29 | |
while augment slang is using a special definition of "augment". | |||
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:30 | |
lue | .oO(can action methods accept anything other than $/ as a parameter?) |
||
masak | r: class A { method foo { say "outer!" } }; { my class A { method foo { say "inner!" } }; A.new.foo }; A.new.foo | ||
p6eval | rakudo b972ca: OUTPUT«inner!outer!» | ||
timotimo_ | lue: not that i know, but the actions classes make use of $* and friends a lot | ||
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!» | ||
timotimo_ | hm, or maybe there is a way | ||
lue would like changing the actions of a language separated from normal class augmentation, like slang for grammars | 22:34 | ||
22:38
xorp left
|
|||
lue would also like to know what the original author thought a slang encompassed | 22:38 | ||
22:39
xorp joined
|
|||
dalek | : f64b510 | (Tobias Leich)++ | Makefile: pass --add_use_stmt=perl5 to fudge script |
22:39 | |
22:42
wingfold joined
|
|||
FROGGS | current status of rakudo v5.pm: it passes one of the 485 perl 5 test files | 22:43 | |
pmurias: --------^ | |||
lue | FROGGS++ | 22:44 | |
huf | you're planning to reimplement all of the weird quirks of p5? | 22:45 | |
FROGGS | now I "just" need to fudge the failing tests | ||
huf: well, I need to do as most as possible to get cpan modules working | |||
huf | wow. | ||
FROGGS | I'm not sure what exactly that means atm | 22:46 | |
huf | which one? the "wow" or what you said? :) | ||
FROGGS | what I said :o) | ||
huf | ah. i dont think anyone knows :) | 22:47 | |
FROGGS | because it can't support XS, and maybe many other things | ||
huf | yes, XS is out, things that rely on p5's gc are out (or at least difficult) | ||
and things that use weeeeird features of p5 are probably not worth it ;) | |||
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 | :) | ||
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 | ||
FROGGS | ya, I hope so :o) | 22:51 | |
but now my bed is the next thing on my todo | |||
gnight! | |||
22:51
skids joined
22:53
jeffreykegler joined
|
|||
lue | Some initial slang action ideas: gist.github.com/lue/5241230 | 22:54 | |
masak | lue: well, you've put your finger on something interesting here. | 22:56 | |
lue: 'augment slang' means lexiaclly replace some grammar in the current scope. (or dynamically replace, from the perspective of the parser.) | 22:57 | ||
but 'augment class', which one would use for an actions class, would have a global, irreversible effect. | |||
lue | I wonder if augment grammar is closer to class or to slang... | 22:58 | |
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. | ||
so there's kind of a tension there. | |||
lue | Like I said earlier, I'd like to know what the original author (likely TimToady) thought a slang was. | ||
timotimo_ | is it even possible to sensibly expand only the grammar, but keep "api compatibility" to the previous grammar's actions? | 23:00 | |
23:00
Khisanth joined
|
|||
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:00 | |
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:02 | |
masak | timotimo_: re api compatibility, that's a really good question too. essentially we're into the usual problems with classes and inheritance. | ||
cognominal | that's really two independent questions | ||
lue | timotimo_: changing Perl 6 from within is weeeeeeiird too :) | ||
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. | ||
timotimo_ | i mean we have that for s{...}{...} already, but that's ... different | ||
lue | good ♞, cognominal o/ | ||
23:03
PacoAir left
|
|||
cognominal | thx, lue, but I prefer go to chess. :) | 23:04 | |
lue | but, there's no kNight pun in Go :) | ||
cognominal | mask, is there a full implementation of macro forthcoming? :) | 23:05 | |
lue, yes I know. :) | |||
lue | updated gist with the two braces option: gist.github.com/lue/5241230 | 23:06 | |
masak | cognominal: yes. | 23:08 | |
'night, #perl6 | |||
lue | good ♞, masak o/ | 23:09 | |
23:09
cognominal left
|
|||
timotimo_ | lue: oh, the eskimo kiss operator is back :P | 23:10 | |
23:10
cognominal joined
|
|||
lue | with new meaning :) | 23:10 | |
cognominal | masak: how? | 23:11 | |
bonsoir les ♗ de Perl 6, réellement cette fois :) | 23:12 | ||
lue | .u ♗ | 23:13 | |
yoleaux | U+2657 WHITE CHESS BISHOP [So] (♗) | ||
cognominal | fou en Français :) | ||
… et non évêque | 23:14 | ||
lue | :) [nous ne sommes pas les fous!] | ||
lue is starting to like the double brace idea because it's -Ofun to him. | 23:19 | ||
23:27
jeffreykegler left
23:36
cognominal__ joined
23:37
cognominal left
23:40
FROGGS left,
FROGGS joined
|
|||
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 | |
also, consider that the }{ may be separated by lots and lots of lines from the beginning and end of the whole construct | 23:53 | ||
lue | yeah. I was thinking of maybe a different brace for the second set. | ||
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 | ||
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 ...) | 23:55 |