»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by diakopter on 14 April 2013. |
|||
00:12
estrabd joined
00:14
DreamingInCode left
00:15
BenGoldberg joined
00:21
PacoAir left
00:28
berekuk left
00:31
tgt left
01:00
anuby joined
01:02
Chillance joined
|
|||
pmichaud | I'm not too surprised that using QRPA doesn't significantly change parsing speed; the big improvements are in shift/unshift, which the grammar engine doesn't do a lot of. | 01:04 | |
01:05
fgomez joined
|
|||
japhb_ | pmichaud, mostly just push/pop? | 01:07 | |
pmichaud | yup. | 01:09 | |
and those aren't significantly different from RPA | |||
github.com/perl6/nqp/commit/b13610905d # ouch, PLEASE don't give QRPA any METHODS! | |||
better is to find the places that are using .push and get them to do nqp::push instead. | 01:10 | ||
japhb_ | I get the feeling there is some miscommunication happening. There seems to be some confusion throughout the day about .push versus nqp::push, and when each is used. | 01:11 | |
(That may be an incorrect impression.) | |||
pmichaud | one does .push on higher-level sixmodel-based structures. | 01:12 | |
one does nqp::push on low-level vm-specific stuff | |||
so, on a QAST node, use .push | 01:13 | ||
on a QRPA PMC, use nqp::push | |||
RPA provided both .push method and nqp::push (vtable) forms, which was okay at the time, but now we really need to be more strict about usage I think. Also, the vtable form is incredibly slow. | 01:14 | ||
sorry | |||
the vtable form is okay, the method form on a (Q)RPA is incredibly slow. | |||
because it creates an inferior runloop | |||
japhb_ wonders if there is some slow in NQP or Rakudo because of .push used on (Q)RPAs | 01:15 | ||
pmichaud | I don't mind if QPRA keeps the METHODS on a very temporary basis to assist with converting, but I don't want them there for long. | ||
(and yes, I see that they were added in a branch, not the master, but I just wanted to point out that they're heading in the wrong direction :) | 01:16 | ||
I don't know if there's some slow in NQP/Rakudo because of .push on (Q)RPAs... I've been trying to eliminate them as much as possible over time. | 01:17 | ||
Obviously they're not all gone, though, if there was a need to add them to QRPA in order to make it work. | 01:18 | ||
japhb_ | .oO( That's one of the duties of project leads: pointing out when things are headed the wrong way ... ) |
||
japhb_ is not-so-secretly hoping one of the remaining (Q)RPA .push locations turns out to have been a hot spot, and we get a visible win fixing it | 01:19 | ||
01:23
Psyche^ joined
01:27
Patterner left,
Psyche^ is now known as Patterner
01:29
dovahkin left
|
|||
[Coke] | hacking on release: ! Couldn't find module or a distribution Time::y2038 () | 01:30 | |
hurm. might be due to networking issue. | 01:32 | ||
01:32
kbenson left
|
|||
timotimo | pmichaud: thanks very much about the clarification on .push! | 01:33 | |
i'm glad i put the nqp::push changes i made thus far into a branch so that i can now (tomorrow!) salvage them | |||
is there a good way to collect places where .push has been called "wrongly"? as in source locations? but maybe not die with a stacktrace, but continue running and collect occurences, so i could fix them in bulk? | 01:34 | ||
[Coke] should nto have volunteered. | |||
timotimo | .o(also, if the .push method is incredibly slow, maybe there'll be a bit more improvements to be had still!) | 01:35 | |
pmichaud | timotimo: add a METHOD push to QRPA that throws an exception immediately. | 01:42 | |
and maybe gives a stacktrace that lets you find out where it's being called wrongly. :) | |||
or, if you want it to keep running, have METHOD push do some sort of logging w/stacktrace and then you'll have them all collected. | 01:43 | ||
there really shouldn't be that many, though. | |||
timotimo | i believe there were a whole bunch in rakudo | 01:45 | |
anyway, i'll see tomorrow. | |||
pmichaud | .push on RPA? | 01:46 | |
that'd be... interesting. | |||
anyway, again, it's not .push/.pop that are slow on RPA, it's .shift and .unshift | |||
although .push and .pop are definitely slower than nqp::push and nqp::pop | |||
I bet I could benchmark those :-) | 01:47 | ||
japhb_ | :-) | 01:48 | |
colomon has URI working again. | 01:53 | ||
japhb_ | colomon++ | 01:54 | |
01:56
FROGGS_ joined
|
|||
gtodd | Europeans - it is too late to be working !! :-) | 01:58 | |
diakopter | FROGGS_: hey it's lats | ||
late | |||
gtodd wonders if yoleaux has TZ time for bed feaures | 01:59 | ||
02:00
FROGGS left
|
|||
labster | r: gist.github.com/labster/aaa720c8659549616cd0 | 02:03 | |
camelia | rakudo 203e3a: OUTPUT«===SORRY!===Two terms in a rowat /tmp/VuMMNiyebU:1------> https⏏://gist.github.com/labster/aaa720c865954 expecting any of: argument list postfix infix stopper infix or meta-infix st… | ||
labster | camelia doesn't like to run gists now? | 02:04 | |
anyway, that bit of code is mysteriously parsefailing on me with role composition, and I don't know why. | 02:05 | ||
diakopter | labster: it never cohld run private ones I think | ||
labster | oh, right | 02:06 | |
02:06
DreamingInCode joined,
lustlife joined
|
|||
labster | r: gist.github.com/labster/5417609 | 02:07 | |
camelia | rakudo 203e3a: OUTPUT«===SORRY!===Unable to parse class definitionat /tmp/COCPCaaRlw:7------> my class IO::Path is Cool does IO::⏏FileTestable { expecting any of: scoped declarator generic role» | ||
[Coke] | are we still creating an NQP release at the same time as the rakudo release? | 02:08 | |
diakopter | have to if it's needed | 02:10 | |
er | |||
is that a tautology or a truism | 02:11 | ||
[Coke] | ah, just because we tag a release of nqp doesn't mean we have to require it. | ||
diakopter | yeah, but why bother; nobody uses nqp releases except rakudo downloaders | 02:13 | |
labster | class nqp::release { has $to if need Ed; } | ||
Okay, if I swap the location of the last two classes in my gist, it works, but neither depends on each other. | 02:15 | ||
labster is confused | |||
diakopter wonders how many end up using --gen-nqp anyway | |||
labster | I used it once, but then I needed to gen a new parrot anyway. | ||
02:16
fgomez left
|
|||
diakopter | would hou mail me the gist url i can't click links here now | 02:17 | |
nm | 02:18 | ||
I can use the log | |||
02:18
fgomez joined
|
|||
pmichaud | [Coke]: standard is to create a release of nqp and use it for the rakudo release, yes. | 02:19 | |
thus the 2013.04 rakudo release should be using the 2013.04 nqp release. | |||
[Coke] | ok. | 02:21 | |
pmichaud | gist.github.com/pmichaud/5417664 # timings, RPA vs QRPA, and native calls versus METHOD calls | 02:26 | |
using .push and .pop for RPA is 20x-50x slower than using nqp::push or nqp::pop | 02:27 | ||
02:32
daniel-s_ joined
|
|||
[Coke] | "Surely someone has written a script to automate cutting a release". :P | 02:35 | |
02:35
gdey joined
|
|||
colomon | another proto question: is there a way to specify that a parameter may be @ or %? | 02:42 | |
[Coke] | but not other things that would fit in $ ? | 02:43 | |
colomon | well, I think anything that allowed those two choices would be okay. | 02:44 | |
[Coke]++ # that did it. | 02:49 | ||
I'm starting to have serious doubts that Algorithm::Diff ever worked... | |||
japhb_ | pmichaud, that level of timing difference is ... scary | 02:53 | |
Some of the modules seem to have been written speculatively. | |||
02:55
preflex_ joined
02:56
preflex left,
preflex_ is now known as preflex
|
|||
colomon | does if (&keyGen eq &default_keyGen) have a chance of working correctly? | 02:57 | |
r: my &a = -> $a { say $a; }; say ~&a; | |||
camelia | rakudo 203e3a: OUTPUT«» | ||
03:02
Chillance left
03:03
dayangkun joined
03:04
dayangkun left
03:08
dayangkun joined
03:10
xinming left
|
|||
[Coke] | I do not have permission to upload files to rakudo.org | 03:10 | |
03:12
xinming joined
03:13
fgomez left
03:14
Chillance joined
03:15
fgomez joined
|
|||
dalek | kudo/nom: c984cfe | coke++ | docs/ChangeLog: Updating changelog for release prep |
03:16 | |
kudo/nom: 9dadcf2 | coke++ | docs/release_guide.pod: label release |
|||
kudo/nom: c06a447 | coke++ | docs/announce/2013.04.md: add new release announcement |
|||
kudo/nom: 5566844 | coke++ | tools/build/NQP_REVISION: [release] bump NQP revision |
|||
rakudo/nom: 88221cf | coke++ | VERSION: | |||
rakudo/nom: [release] bump VERSION | |||
japhb_ | [Coke], shouldn't the release guide say to push to nqp before rakudo ...? | 03:17 | |
dalek | p: 891075b | coke++ | VERSION: bump VERSION to 2013.04 |
||
03:19
jaldhar joined
|
|||
[Coke] | it was stuck due to git branch silliness. | 03:19 | |
japhb_ | ah | ||
[Coke]++ # April releases! | 03:20 | ||
Who volunteered for Rakudo Star? | |||
(Or am I imagining that?) | |||
[Coke] | no one volunteered for star that I recall. | 03:23 | |
tangentstorm | so do you need someone to do it? | 03:26 | |
[Coke] | we don't always do a star release. | ||
tangentstorm | I will do it if you tell me how :D | ||
oh | |||
[Coke] | tangentstorm: I'm pretty sure it'll be in teh sar repo under something like docs/release_guide.pod | ||
japhb_ | Although there have been enough module fixes in the last couple days that it seems like a good idea, *assuming* we haven't regressed on any. | 03:27 | |
03:29
fgomez left
|
|||
tangentstorm | so it's supposed to release in 2 days? | 03:32 | |
pmichaud | anytime between now and end-of-april, but only if there aren't any module failures. | 03:36 | |
however, it would be good to find/fix the module failures. | |||
I was on the hook for the March Star, and would like to do April, but I'm unreliable for any specific tasks at the moment. :-( | 03:37 | ||
tangentstorm | 2013-04-18 Rakudo #63 "Albany" (Coke) | ||
did you just put your name there by default, [Coke] ? | |||
pmichaud | that's for the compiler, not Star | ||
star's release instructions are at github.com/rakudo/star/blob/master...-guide.pod | 03:38 | ||
japhb_ | tangentstorm, he just did that one. :-) | ||
[Coke] kicks of a test/build... on OSX which has known test failures on spectest. coke starts over on feather. | |||
tangentstorm | oh i missparsed the "star repo" part. :) | 03:39 | |
pmichaud | Albany++ | ||
japhb_ has been building the new Rakudo on linux/x86-32 | 03:40 | ||
Parrot and NQP built so far, working on CORE.setting | 03:41 | ||
pmichaud | I think I want "Austin" for the 2013.05 release. | 03:42 | |
in honor of yapc::na 2013, which has a *ton* of Perl 6 related talks, hackathons, and the like. | 03:43 | ||
[Coke]: let me know when it's safe to modify release_guide.pod for that. | |||
tangentstorm | Okay I will volunteer. | ||
For Star I mean. | 03:44 | ||
pmichaud | [Coke]: did you get permission to rakudo.org yet? | 03:45 | |
03:46
fgomez joined
|
|||
tangentstorm | is it okay if i use emacs instead of vi though? ;D | 03:46 | |
labster | heresy! | ||
pmichaud | tangentstorm: as long as we don't know about it, yes. :D | ||
tangentstorm | i'll keep it on the down low | 03:47 | |
japhb_ | Rakudo built fine, rebootstrapping panda | 03:48 | |
Nom- | emacs? pfft ... I use Textmate : | 03:51 | |
:P | |||
vim when I have nothing but a terminal | 03:52 | ||
pmichaud | I sometimes use cat(1) as my editor. :-P | ||
japhb_ considers App::EDLIN | 03:53 | ||
... but only for a moment | |||
panda and my usual modules all installed fine | 03:54 | ||
labster | reinstall and repanda works fine here too. | 03:56 | |
[Coke] | pmichaud: nope | 03:57 | |
pmichaud | [Coke]: do you have a public ssh key? | 04:00 | |
(that I can use to enable login to rakudo.org) | |||
one used with github is fine, fwiw | |||
tangentstorm is writing a new kind of editor but will stick with ema--... whatever he's using now... for the time being :) | |||
04:06
DreamingInCode left
04:07
gdey left
04:11
fgomez left
04:14
BenGoldberg left
|
|||
pmichaud | afk # sleep | 04:17 | |
04:19
fgomez joined
|
|||
pmichaud | gist.github.com/pmichaud/5418133 # slightly better benchmark of RPA vs QRPA and native vs METHOD | 04:22 | |
labster managed to break RESTRICTED.setting while CORE.setting works fine: Null attribute map for P6opaque in class 'IO' | 04:27 | ||
[Coke] | arglebargle, feather so slooooow | ||
(for spectesting) | |||
04:31
Heather joined
|
|||
Heather | hi | 04:32 | |
labster | hi | 04:34 | |
04:51
SamuraiJack joined
|
|||
[Coke] | WTF is make stresstest? | 04:51 | |
ah, runs 2 more tests, thank goodness, I can run those 2 by hand. | 04:53 | ||
04:53
japhb_ left
|
|||
moritz | spectest + a few files that are known to take very long | 04:53 | |
05:02
kurahaupo left
05:04
DreamingInCode joined
05:06
kurahaupo joined
|
|||
Heather | how to regex string in % % ? | 05:10 | |
r: say '%a%' ~~ /%/w+%/ | |||
camelia | rakudo 88221c: OUTPUT«===SORRY!===Non-declarative sigil is missing its nameat /tmp/Tl1AmXJcAG:1------> say '%a%' ~~ /%⏏/w+%/ expecting any of: postfix infix stopper infix or meta-infix prefix or term pre… | ||
05:10
rindolf joined
|
|||
Heather | r: say '%a%' ~~ /%/ | 05:11 | |
camelia | rakudo 88221c: OUTPUT«===SORRY!===Unrecognized regex metacharacter % (must be quoted to match literally)at /tmp/T3rpWFrrrG:1------> say '%a%' ~~ /⏏%/ expecting any of: postfix infix stopper infix or meta-infix p… | ||
Heather | r: say '%a%' ~~ /\%/ | ||
camelia | rakudo 88221c: OUTPUT«「%」» | ||
05:11
gtodd joined
|
|||
Heather | r: say '%a%' ~~ /\%/w+/ | 05:11 | |
camelia | rakudo 88221c: OUTPUT«===SORRY!===Two terms in a rowat /tmp/5TRHZQ82Wo:1------> say '%a%' ~~ /\%/⏏w+/ expecting any of: postfix infix stopper infix or meta-infix statement end statement modifier … | ||
sorear | r: say "this is my %foo%".comb(/\%<(\S+)>\%/) | ||
camelia | rakudo 88221c: OUTPUT«foo» | ||
Heather | sorear thank you ) | 05:12 | |
sorear but what's comb ? | |||
r: say '%a%' ~~ /\%<(\S+)>\%/ | |||
camelia | rakudo 88221c: OUTPUT«「a」» | ||
sorear | Heather: Extracts all matches, returns them as list of strings | 05:13 | |
05:13
raiph_ joined
|
|||
Heather | sorear I've got it as given pattern when /\%<(\S+)>\%/ | 05:13 | |
sorear how can I use it there? | 05:14 | ||
05:15
raiph left,
raiph_ left
|
|||
Heather | I see, as "$/" | 05:15 | |
05:16
raiph joined
|
|||
Heather | sorear but what if there is a list... | 05:16 | |
then @/ ? | |||
labster | still $/ | ||
it would have a list in $/[0] | 05:17 | ||
Heather | labster I need to subst all this matches | ||
labster isn't [0] a first element? | |||
labster | that's a different matter entirely... | ||
why not just run a substitution, like $pattern ~~ s:g/'%' (\S+) '%'/{ foo(~$0) }/ | 05:22 | ||
Heather | labster what... | ||
is it | |||
r: say $pattern ~~ s:g/'%' (\S+) '%'/{ foo(~$0) }/ | |||
camelia | rakudo 88221c: OUTPUT«===SORRY!===Variable '$pattern' is not declaredat /tmp/nTolrB5eav:1------> say $pattern⏏ ~~ s:g/'%' (\S+) '%'/{ foo(~$0) }/ expecting any of: postfix» | ||
Heather | r: say '%a%' ~~ s:g/'%' (\S+) '%'/{ foo(~$0) }/ | ||
camelia | rakudo 88221c: OUTPUT«===SORRY!===Undeclared routine: foo used at line 1» | ||
Heather | r: '%a%' ~~ s:g/'%' (\S+) '%'/{ say (~$0) }/ | 05:23 | |
labster | you can't substitute unless it's a container, like $var... raw strings are immutable | ||
camelia | rakudo 88221c: OUTPUT«aCannot modify an immutable value in sub infix:<=> at src/gen/CORE.setting:12888 in block at /tmp/KRosAE5Diq:1» | ||
labster | tx camelia :) | ||
Heather | r: my $x = '%a%'; x ~~ s:g/'%' (\S+) '%'/{ say (~$0) }/ | ||
camelia | rakudo 88221c: OUTPUT«===SORRY!===Undeclared routine: x used at line 1» | ||
Heather | r: my $x = '%a%'; $x ~~ s:g/'%' (\S+) '%'/{ say (~$0) }/ | 05:24 | |
camelia | rakudo 88221c: OUTPUT«a» | ||
Heather | r: my $x = '%a% + %b%'; $x ~~ s:g/'%' (\S+) '%'/{ say (~$0) }/ | ||
camelia | rakudo 88221c: OUTPUT«ab» | ||
labster | r: my $x = '%a%'; $x ~~ s:g/'%' (\S+) '%'/{ uc (~$0) }/; say $x | ||
camelia | rakudo 88221c: OUTPUT«A» | ||
Heather | r: my $x = '%a% + %b%'; $x ~~ s:g/'%' (\S+) '%'/{ subst(~$0, 'zzz') }/; say $x | 05:25 | |
camelia | rakudo 88221c: OUTPUT«===SORRY!===Undeclared routine: subst used at line 1. Did you mean '&substr'?» | ||
Heather | r: my $x = '%a% + %b%'; $x ~~ s:g/'%' (\S+) '%'/{ ("-> ~$0") }/; say $x | 05:26 | |
camelia | rakudo 88221c: OUTPUT«-> ~a + -> ~b» | ||
Heather | ah | ||
Cool | |||
labster thanks ! | |||
labster | after the first slash, we have the pattern, which captures \S+ in $0. the second part is the string to substitute there. But we're using a block inside a string "{ do stuff() }", to make it do anything. | ||
[Coke] | have kicked off last run of stresstests, but it's not going to finish for another hour. I'll do the final push tomorrow. | 05:27 | |
05:29
dayangkun left
|
|||
Heather | labster it's something awesome ) | 05:31 | |
05:32
rindolf left,
rindolf joined
|
|||
Heather | labster how to say that string myst start with xxx in regex? | 05:33 | |
labster | Heather: $string ~~ /^ xxx/ | ||
Heather | labster thank you! | 05:34 | |
05:41
rindolf left,
rindolf joined
05:47
rindolf left
05:48
FROGGS_ left,
rindolf joined
|
|||
Heather | r: say dc("A") | 05:51 | |
camelia | rakudo 88221c: OUTPUT«===SORRY!===Undeclared routine: dc used at line 1. Did you mean '&lc', '&uc'?» | ||
Heather | r: say bc("A") | ||
camelia | rakudo 88221c: OUTPUT«===SORRY!===Undeclared routine: bc used at line 1. Did you mean '&lc', '&uc'?» | ||
Heather | r: say lc("A") | ||
camelia | rakudo 88221c: OUTPUT«a» | ||
05:53
DreamingInCode left
05:55
Chillance left,
rindolf left,
rindolf joined
05:59
cognominal left
06:00
cognominal joined
06:02
sqirrel joined
06:05
FROGGS_ joined
06:07
rindolf left,
rindolf joined
06:08
FROGGS_ is now known as FROGGS,
frdmn joined
06:14
sjohnson joined
06:18
rindolf left
06:19
rindolf joined
06:25
rindolf left,
rindolf joined
|
|||
FROGGS | morning | 06:31 | |
[Coke]++ | 06:32 | ||
06:33
rindolf left,
rindolf joined
06:34
odoacre joined,
kshannon joined
06:36
rindolf left
06:37
rindolf joined
|
|||
Heather | I want this github.com/potyl/perl-Gtk3-WebKit/...browser.pl in perl6 ) | 06:44 | |
sorear | Heather: start with github.com/sorear/niecza/blob/mast...browser.pl | 06:45 | |
06:45
TreyRust left
|
|||
Heather | sorear it's CLR ... | 06:46 | |
sorear I mean I can write it 10 times faster and beautier in F# :D | |||
06:48
rking joined
|
|||
Heather | I know I will try servo :D | 06:50 | |
06:50
awwaiid joined
06:52
rindolf left,
sjn joined,
rindolf joined
06:54
TreyRust joined
|
|||
FROGGS | .ask jnthn Any objections about giving nqp a bunch of install directories like nqp/vendor/site/home ? | 06:55 | |
yoleaux | FROGGS: I'll pass your message to jnthn. | ||
hoelzro | haha, yoleaux? | ||
that's hilarious | |||
(also, good morning) | |||
06:59
pupoque joined
|
|||
FROGGS | what does it mean? | 07:00 | |
(also, good morning :o) | |||
07:01
domidumont joined,
rindolf left,
rindolf joined
|
|||
mst | it's a pun You Only Live Once | 07:01 | |
s/pun/pun on/ | |||
FROGGS | ahh, thanks mst | 07:02 | |
just thought it might be more than yolo | 07:03 | ||
07:13
rindolf left
07:14
rindolf joined
07:15
TreyRust left
07:23
rindolf left,
rindolf joined
07:28
rindolf left,
rindolf joined
07:29
anuby_ joined
07:32
anuby left
07:34
daxim joined
07:35
domidumont left
07:36
domidumont joined
07:41
lizmat joined,
rindolf left
07:42
rindolf joined
|
|||
lizmat | morning #perl6 | 07:44 | |
diakopter | 'marn | 07:45 | |
hoelzro | morning | 07:46 | |
07:47
pupoque left
07:53
Heather is now known as perl6
07:54
perl6 is now known as Heather
|
|||
diakopter | heh | 07:54 | |
07:54
fgomez left
07:55
rindolf left,
rindolf joined
08:06
sqirrel left
08:08
rhr joined
08:09
rindolf left,
rindolf joined
|
|||
tadzik | hello | 08:13 | |
08:18
rindolf left,
rindolf joined
08:21
dpk joined,
yoleaux joined
08:32
skids left
|
|||
Heather | tadzik hi | 08:35 | |
08:35
kurahaupo left
08:37
kresike joined
|
|||
kresike | hello all you happy perl6 people | 08:37 | |
lizmat is glad that there aren't any unhappy perl6 people around | 08:39 | ||
08:42
skids joined
|
|||
FROGGS | *g* | 08:42 | |
hi all | |||
labster | hi FROGGS | ||
kresike | FROGGS, o/ | 08:44 | |
FROGGS | hi labster, kresike | 08:45 | |
lizmat | rn: say (a => 1) | 08:46 | |
camelia | rakudo 88221c, niecza v24-37-gf9c8fc2: OUTPUT«"a" => 1» | ||
lizmat | rn: say :a<1> | ||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Excess arguments to gistcat, unused named a at /home/p6eval/niecza/lib/CORE.setting line 0 (gistcat @ 1)  at /home/p6eval/niecza/lib/CORE.setting line 1366 (say @ 7)  at /tmp/9inWGs7rd2 line 1 (mainline @ 3)  at /home/p6eval/ni… | ||
..rakudo 88221c: OUTPUT«» | |||
FROGGS | rn: say :a(1) | 08:47 | |
camelia | niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Excess arguments to gistcat, unused named a at /home/p6eval/niecza/lib/CORE.setting line 0 (gistcat @ 1)  at /home/p6eval/niecza/lib/CORE.setting line 1366 (say @ 7)  at /tmp/6cLimTmHeE line 1 (mainline @ 3)  at /home/p6eval/ni… | ||
..rakudo 88221c: OUTPUT«» | |||
lizmat | I feel that the error in Niecza is correct, and silentness of rakudo in this case is not helpful for beginning Perl 6 rogrammers | ||
FROGGS | hmmm | ||
r: say :a(1).WHAT | 08:48 | ||
camelia | rakudo 88221c: OUTPUT«(Pair)» | ||
FROGGS | r: say :a(1).key | ||
camelia | rakudo 88221c: OUTPUT«a» | ||
FROGGS | r: say :a(1).kv | ||
camelia | rakudo 88221c: OUTPUT«a 1» | ||
08:49
kaleem joined
|
|||
Heather | rn: CLR::("System.Console").Write("hi"); | 08:49 | |
camelia | niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: CLR objects may not be used directly in safe mode at /tmp/wbJnhbz1BX line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583)  at… | ||
..rakudo 88221c: OUTPUT«===SORRY!===Combination of indirect name lookup and call not (yet?) allowedat /tmp/RIRCuVBC1p:1------> CLR::("System.Console")⏏.Write("hi"); expecting any of: argument list» | |||
lizmat | (found this while preparing a lightning talk about Perl 5's fat comma to Perl6' pairs | ||
Heather can't use CLR :( | 08:50 | ||
FROGGS | Heather: safe mode | 08:51 | |
Heather | I see | ||
but I wonder why CLR ~~ unsafe | |||
diakopter | just because it's too hard to filter out all the possibly destructive ones | ||
Heather | diakopter well, I guess not much harder than in perl | 08:52 | |
08:52
spider-mario joined
|
|||
FROGGS | is somebody aware of nqp's dynamic variables for runtime? I mean, are there any yet available? | 08:53 | |
arnsholt | NQP has dynamic variables, yes | ||
FROGGS | arnsholt: I know that much :o) | ||
arnsholt | Not sure what you mean by "for runtime" | 08:54 | |
FROGGS | nqp: say($*OS); | ||
camelia | nqp: OUTPUT«» | ||
FROGGS | are there any "installed" ? | ||
nqp: say($?FILES); | 08:55 | ||
camelia | nqp: OUTPUT«Null PMC access in get_string()current instr.: '' pc 768 (src/stage2/gen/NQPCORE.setting.pir:355) (src/stage2/NQPCORE.setting:645)» | ||
FROGGS | nqp: say($?LINE); | 08:56 | |
camelia | nqp: OUTPUT«Null PMC access in get_string()current instr.: '' pc 768 (src/stage2/gen/NQPCORE.setting.pir:355) (src/stage2/NQPCORE.setting:645)» | ||
FROGGS | nqp: say(%*COMPILING<%?OPTIONS>); | ||
camelia | nqp: OUTPUT«» | ||
diakopter | nqp-jvm: say($?LINE); | ||
camelia | nqp-jvm: OUTPUT«Lexical '$?LINE' not found in <anon> in <anon> in eval in evalfiles in command_eval in command_line in MAIN in <anon> in <anon>» | ||
08:57
skids left
|
|||
jnthn | %*COMPILING exists while things are compiling | 09:19 | |
yoleaux | 06:53Z <FROGGS> jnthn: Any objections about giving nqp a bunch of install directories like nqp/vendor/site/home ? | ||
FROGGS | hmmm | ||
09:20
skids joined
|
|||
FROGGS | jnthn: what I want to do is make v5 installable via panda, and for that it would be handy if there was a nqp-home, which panda could install to | 09:20 | |
since nqp won't ever load modules from perl6 land | 09:21 | ||
09:27
rindolf left,
berekuk joined
|
|||
jnthn | FROGGS: Is there anything that stops you installing things to the place that Rakudo itself gets installed to? | 09:27 | |
Perl6::Grammar etc. are NQP modules. | 09:28 | ||
09:28
berekuk left
|
|||
FROGGS | jnthn: that is what I do currently, v5's make install does that for example | 09:29 | |
but I'm not sure how panda chooses the install path | |||
09:33
berekuk joined
|
|||
jnthn | FROGGS: Maybe see how perl6-debug gets installed? It must figure out a path not too differently from how you need to... | 09:37 | |
tadzik | perl6-debug installs to a regular locatin | 09:38 | |
09:38
Heather left
|
|||
tadzik | it's just altering the build process, not the install process | 09:38 | |
altering the install process is not currently possible with panda :( | |||
FROGGS | right: github.com/jnthn/rakudo-debugger/b...r/Build.pm | ||
and since you use a custom binary, it is not the same like use'ing a module from perl6, which loads nqp-modules | 09:39 | ||
*same as | |||
jnthn | Oh, and panda already knows where to put a binary? | 09:40 | |
FROGGS | I mean, it is not ideal anyway if a module-author could tell panda that it wants to be installed in a specific location | ||
well, it gets locally made into bin/..., and panda puts all from bin/* into home/bin for example | 09:41 | ||
jnthn | Well, Panda's job is to install Perl 6 modules really, so it's not so surprising installing NQP with it doesn't quite work out... | ||
FROGGS | ya, but I guess we'll need that anyway | 09:42 | |
tadzik | wouldn't v5 want to be a core-core thing eventually? | ||
FROGGS | there will be other modules which are directly ontop nqp | ||
tadzik: no idea | |||
tadzik | as the last resort we can make panda respect Makefiles again | ||
it used to do that. "If there's a makefile, 'make test install' and we're done here" | 09:43 | ||
FROGGS | possible, but not ideal | ||
tadzik | aye | 09:44 | |
FROGGS | I'd like to see that if I'm not rootish, that panda installs modules to [nqp|perl]/home | ||
tadzik | explain: [nqp|perl]/home? | ||
09:44
berekuk left
|
|||
lizmat thinks that v5 is a core core thing now already :-) | 09:44 | ||
FROGGS | but I dont know how to tell panda that a module (a file) is an nqp module rather than an perl6 one | ||
tadzik | there's no way to tell panda that | 09:45 | |
but! | |||
you could adjust CUSTOM_LIB somehow | |||
that's what panda uses as an install location | |||
but how to do that from inside the installation process, I don't know | |||
FROGGS | subclassing? | ||
tadzik | subclassing what? | 09:46 | |
FROGGS | the installer class, and overwrite method install, set custom lib, call SUPER... | ||
moritz | EVERYTHING | ||
tadzik | that's one of the ideas | ||
FROGGS | *override | ||
tadzik | that's how Build.pm works I think | ||
FROGGS | ya | ||
jnthn | Well, a .nqp file extension is a good "this is NQP" hint :) | 09:47 | |
tadzik | "is there a Build.pm? Is it a Panda::Builder? Good, load it and use it instead" | ||
haha | |||
FROGGS | and having nqp recognizing nqp/vendor/site/home is not a big deal | ||
09:47
berekuk joined
|
|||
tadzik | I'd like to ship panda2 soon | 09:47 | |
jnthn | I've already changed all the NQP files in the jvm-support branch to be Foo.nqp. | ||
lizmat | nr: say $_:p for 11..20 | ||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«===SORRY!===Variable $_:p is not predeclared at /tmp/zm6ZJV_zQt line 1:------> say ⏏$_:p for 11..20Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5)  at /home/p… | ||
..rakudo 88221c: OUTPUT«11121314151617181920» | |||
FROGGS | jnthn: hmmm, but it compiles to bpc anyway, no? | 09:48 | |
*pbc | |||
tadzik | it's not complete, but maybe someone can either fix the remaining bits, or at least plan ahead for a new architecture | ||
(or tell me that the new one is very wrong) | |||
it's a least a lot less painful to reuse | |||
lizmat | nr: say $_ :p for 11..20 | ||
camelia | rakudo 88221c: OUTPUT«===SORRY!===You can't adverb thatat /tmp/fAmrvfd7eE:1------> say $_ :p⏏ for 11..20 expecting any of: pair value» | ||
..niecza v24-37-gf9c8fc2: OUTPUT«===SORRY!===You can't adverb that at /tmp/MZUDT_IvnT line 1:------> say $_ :p⏏ for 11..20Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5)  at /home/p6eval/niec… | |||
FROGGS | tadzik: is there a roadmap, or at least some doc that tells what's missing? | ||
09:48
berekuk left
|
|||
tadzik | FROGGS: no, there's just a 90%-working code on my laptop | 09:48 | |
FROGGS | k | ||
09:49
tgt joined
|
|||
tadzik | I think only the bootstrap is not working | 09:49 | |
or maybe the installer itself too ;) | |||
FROGGS | tadzik: just spit it out to github :o) | ||
and lizmat, don't use smilies in code :P | |||
jnthn | FROGGS: Yes, true. | 09:50 | |
FROGGS | jnthn: and I installed these, not the nqp's | ||
jnthn | FROGGS: May want both so the .pbc can be re-created in the future, just as we do with Perl 6 modules | 09:51 | |
FROGGS | jnthn: ya, good point | ||
so if panda would decide about the install location depending of the filename *before* compilation, it would work | 09:52 | ||
or we have to create special module-subdirs like nqp-blib and perl6-blib :o) | 09:53 | ||
10:16
anuby_ left
|
|||
lizmat suddently notices that S02 talks about "fatarrow" rather than "fat comma" | 10:20 | ||
fat comma seems to be a more common term than fatarrow. | 10:21 | ||
Does anybody know why TimToady used "fatarrow" rather than "fat comma" ? | |||
moritz | it's not a comma anymore in Perl 6 | 10:22 | |
FROGGS | r: my %h = 1, 2; say %h | ||
camelia | rakudo 88221c: OUTPUT«("1" => 2).hash» | ||
FROGGS | r: my %h = 1 => 2; say %h | ||
camelia | rakudo 88221c: OUTPUT«("1" => 2).hash» | ||
FROGGS | looks like it is still commaish | 10:23 | |
at least when assigning to a hash | |||
Timbus | :I thats because it is a hash. which contains pairs | 10:24 | |
moritz | but not in other contexts | ||
foo(a => 1) is totally different from foo('a', 1) | 10:25 | ||
FROGGS | well, that is the same in perl5 | ||
you need to assign %var = @_ to get a hash | |||
moritz | in p5 it's the same, but in p6 it's totally different | 10:26 | |
and afaict lizmat asked about S02 | |||
lizmat | indeed… this is not about functionality, but nomenclature | ||
so: consensus is that "fat comma" is Perl 5, whereas "fatarrow" is Perl 6? | 10:27 | ||
jnthn | The semantics/meaning are different, and imho highlighting that through a different name is a good idea. | ||
tadzik | I think fat arrow makes more sense, because fat comma... isn't a comma | ||
FROGGS | and => doesnt look like a comma at all :o) | 10:28 | |
tadzik | my point exactly :) | ||
huf | it does if you're high on perl5 :) | ||
lizmat | well, that's what "=>" is called in Perl 5 | ||
huf | but yeah, dont call it that ;) | ||
tadzik | .u comma | ||
yoleaux | U+002C COMMA [Po] (,) | ||
10:30
kaleem left
|
|||
lizmat | .u arrow | 10:30 | |
yoleaux | U+02C2 MODIFIER LETTER LEFT ARROWHEAD [Sk] (˂) | ||
U+02C3 MODIFIER LETTER RIGHT ARROWHEAD [Sk] (˃) | |||
U+02C4 MODIFIER LETTER UP ARROWHEAD [Sk] (˄) | |||
lizmat | no fatarrow yet | ||
tadzik | .u front-facing baby chick | 10:31 | |
yoleaux | U+1F425 FRONT-FACING BABY CHICK [So] (🐥) | ||
huf | dammit, not another one | ||
lizmat | .u camel | ||
yoleaux | U+1F42A DROMEDARY CAMEL [So] (🐪) | ||
U+1F42B BACTRIAN CAMEL [So] (🐫) | |||
tadzik | .u side-facing baby chick | ||
yoleaux | No characters found | ||
lizmat | no camelia :-( | ||
tadzik | .u back-facing baby chick | 10:32 | |
yoleaux | No characters found | ||
diakopter | .u onion | ||
tadzik | stupid. Why is there front-facing then | ||
yoleaux | No characters found | ||
tadzik | perhaps PILE OF POO was more necessary | ||
10:33
cxreg left
10:34
cxreg joined
|
|||
FROGGS | hehe | 10:34 | |
tadzik | I mean, onions? Eww, gross. | 10:36 | |
10:38
sqirrel joined
|
|||
FROGGS | .u Peril | 10:41 | |
yoleaux | No characters found | ||
FROGGS | .u Geek | ||
yoleaux | No characters found | ||
FROGGS | had expected 'U+04FC OILY HAIRED FAT GEEK [Po]' | 10:42 | |
.u chick | 10:43 | ||
yoleaux | U+1F414 CHICKEN [So] (🐔) | ||
U+1F423 HATCHING CHICK [So] (🐣) | |||
U+1F424 BABY CHICK [So] (🐤) | |||
10:45
SamuraiJack_ joined
10:46
SamuraiJack left
10:51
FROGGS left
11:02
PacoAir joined
11:03
SamuraiJack_ left,
SamuraiJack__ joined
11:17
FROGGS joined
11:18
woosley joined
11:24
tgt left
11:26
shinobicl joined
11:30
SamuraiJack joined
11:33
SamuraiJack__ left
11:38
tgt joined
11:52
drbean joined
|
|||
FROGGS | .ask TimToady Should the grammar switch to Peril5 too if it detects a 'use 5.10', rather just for a 'use v5' ? | 11:54 | |
yoleaux | FROGGS: I'll pass your message to TimToady. | ||
nwc10 | Peril 5 :-) | 11:57 | |
mst dons his Peril Sensitive Sunglasses | 11:59 | ||
lizmat | it's just the German's way of pronouncing Perl | 12:00 | |
12:00
amkrankruleuen joined,
amkrankruleuen left,
amkrankruleuen joined
|
|||
timotimo | personally, i pronounce it "pörl" | 12:01 | |
12:01
drbean left
|
|||
lizmat says purl | 12:02 | ||
which in Dutch is the same as pörl in German (or close to it, anyway) | |||
timotimo | i'm convinced they end up sounding the same, yeah | 12:03 | |
12:06
drbean joined
12:08
frdmn left,
frdmn joined
12:10
LylePerl joined
|
|||
Patterner | germans shout "PÖRL!" | 12:12 | |
lizmat | unless they live in Perl, we found out | ||
timotimo | is there documentation on how to manipulate stage0? | 12:14 | |
moritz | make bootstrap-files | 12:16 | |
timotimo | is it that easy? :) | ||
lizmat | rn: my $a= 'foo'; my $b= :$a; say $b.WHAT | ||
camelia | rakudo 88221c, niecza v24-37-gf9c8fc2: OUTPUT«(Pair)» | ||
timotimo | moritz: either i'm not doing it right or i miscommunicated what i wanted to do | 12:17 | |
lizmat | rn: my $a= 'foo'; my $b= :$a; say $b | ||
camelia | rakudo 88221c, niecza v24-37-gf9c8fc2: OUTPUT«"a" => "foo"» | ||
timotimo | in my source code for nqp i removed the method versions of the QRPA push and friends, but it's still being used in the stage0 | ||
i suppose i'll have to put the methods back, compile a full nqp and then recreate the bootstrap files to not use the method forms any more? | |||
jnthn | Correct. | 12:18 | |
moritz | unless you want to edit several dozen thounds lines of PIR code :-) | ||
timotimo | i would prefer not to have to do that :) | 12:19 | |
jnthn | Another thing maybe worth checking: that you can build Rakudo on Parrot with the latest jvm-support branch. It works for me; I'd apprecaite a check of it from a non-Windows platform. | 12:21 | |
nwc10 | NQP revision 2013.04 required (currently 2013.03-77-g635e421). | 12:26 | |
last I checked earlier today | |||
jnthn | grr | ||
nwc10 | IIRC before that the spectest was exploding quite spectacularly | ||
moritz | echo 2013.03-77-g635e421 > nqp/tools/build/NQP_REVISION # to shut up the version check | 12:27 | |
nwc10 | I didn't say - I assumed it was in hand, or a spurious thing to say | ||
jnthn | Odd, I got a working Rakudo out of it. | ||
nwc10 | me repeats | 12:28 | |
^/ | |||
jnthn | I guess an NQP release has been tagged now, though, so I'm keen to merge it soon. | ||
12:28
tgt left
|
|||
[Coke] | tagged. need privs to upload to rakudo.org | 12:28 | |
jnthn | (Though gotta do $dayjob stuff for the next hours...) | ||
nwc10 | moritz: it's not that | ||
moritz | [Coke]: need a public SSH key for that | ||
nwc10 | hell Pm | 12:29 | |
moritz | [Coke]: I can give you access when I know your pubkey | ||
nwc10 | moritz: s!nqp/! | ||
gah | |||
moritz: s!nqp/!! I think | |||
nwc10 blames the network | 12:30 | ||
moritz | nwc10: depends on your directory layout | ||
nwc10 | it can't be the beer :-) | ||
12:32
amkrankruleuen left,
shinobicl left,
amkrankruleuen joined
12:33
skids left
|
|||
[Coke] | moritz++ | 12:34 | |
release files uploaded. | |||
pmichaud | Coke++ | 12:36 | |
good morning, #perl6 | |||
moritz | good am, pm | ||
jnthn | o/ pmichaud | ||
pmichaud: On the .push thing, NQP on JVM actually supports it by declaring an NQPArray type with the VMArray REPR. | 12:37 | ||
pmichaud: It has a method push($x) { nqp::push(self, $x) } | |||
dalek | kudo/nom: de2080d | pmichaud++ | docs/release_guide.pod: Propose "Austin" for the 2013.05 release name. |
||
jnthn | pmichaud: So no nested runloop. | ||
pmichaud: Anyway, that's why I didn't end up removing all of them in the porting work. | 12:38 | ||
12:38
SamuraiJack left
|
|||
[Coke] | email sent. | 12:38 | |
(ah, much easier to *announce* compiler releases, anyway.) | 12:39 | ||
pmichaud | jnthn: no problem. do you agree that we'd still be better of with nqp::push for the vm-level objects, though? | 12:40 | |
[Coke] snickers at his tired self from last night. | |||
"* various optimizations in the optimizer and the runtime | |||
optimizations!? in the OPTIMIZER!? WHAT IS GOING ON!? | |||
pmichaud | in other words, the note about optimizations to the optimizer is sub-optimal. | 12:41 | |
:-) | |||
jnthn | pmichaud: Well, it'll be faster to use nqp::push | ||
pmichaud | jnthn: right. | ||
jnthn | pmichaud: Other thing we need to be careful with these days: the nqp::push_[sin] | ||
pmichaud | and in parrot's case, a lot faster :-) | ||
jnthn | pmichaud: Parrot's QRPA has coercive semantics. | 12:42 | |
pmichaud: 6model semantics are constraining. That is, you can do nqp::push_s on an nqp::list_s, not on an nqp::list. | |||
pmichaud | I don't think there's much code where we use push/unshift to coerce a native value. | 12:43 | |
most of the stuff written with nqp::push pre-dates the natives work | |||
moritz | .oO( push'in now is a [sin] ) |
||
12:43
frdmn left
|
|||
jnthn | pmichaud: Yeah, it's not a huge issue, just one of those places where you can write code that works on the Parrot backend at the moment, but that will fail in JVM land. | 12:44 | |
There's plenty of stuff you can do the other way round, mind... | |||
nqp: say(42.HOW.name(42)) | |||
camelia | nqp: OUTPUT«Can only use get_how on a SixModelObjectcurrent instr.: '' pc 43 ((file unknown):40) (/tmp/DsDfb0thPj:1)» | ||
jnthn | nqp-jvm: say(42.HOW.name(42)) | ||
camelia | nqp-jvm: OUTPUT«BOOTInt» | ||
jnthn | :) | ||
pmichaud | eventually I suspect we'll be able to tighten these things up a fair bit. | ||
jnthn | *nod* | ||
nwc10 | jnthn: pasta.test-smoke.org/484 | 12:45 | |
jnthn | wtf... | ||
moritz | [Coke]++ # rakudo release | 12:46 | |
jnthn | nwc10: Thanks, will see if I can reproduce this evening :) | ||
nwc10 | jnthn: exmaple pasta.test-smoke.org/485 | 12:47 | |
pmichaud | I'm building nqp-parrot from the jvm branch now, will test rakudo on it in a bit. | 12:48 | |
(have to wait to clone the gargantuan parrot repo first) | |||
12:48
SamuraiJack joined
|
|||
nwc10 | jnthn: also pasta.test-smoke.org/486 | 12:48 | |
surely you already have a clone of that? | 12:49 | ||
jnthn | nwc10: Curious. I don't have an immediate guess of what that's about... | ||
nwc10 | me neither :-) | 12:50 | |
tadzik | oh, apparently I contributed to Rakudo this month :) | ||
pmichaud | oh, apparently I didn't. :) | 12:51 | |
12:51
mtk left
|
|||
jnthn | Both Carl Masak *and* Carl Mäsak contributed too... :) | 12:51 | |
lizmat thinks an honorary mention would be in place | |||
jnthn | .oO( But we all know they's a bunch of clones... ) |
||
pmichaud | perhaps masak++ has also been upgraded to an entangled form of existence? | 12:52 | |
bbiab | 12:53 | ||
12:54
LylePerl left,
mtk joined
|
|||
moritz | of six clones one two have contributed to rakudo? :-) | 12:55 | |
diakopter read that as clowns | |||
12:56
LylePerl joined
|
|||
colomon | far more than two clowns have contributed to rakudo! | 12:56 | |
12:56
tgt joined
|
|||
lizmat | some of them even twitter | 12:57 | |
pmichaud | pmiclown, clownomon, carlown masak, moritz clownenz, and jnthn | ||
moritz | I mean masak clones, of course :-) | 12:59 | |
lizmat | n: my %foo = (:a<1>,:b<2>); say %foo.val("a") | ||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Unable to resolve method val in type Hash at /tmp/otiOJ1cOfB line 1 (mainline @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583)  at /home/p… | ||
lizmat wonders what %foo<a> desugars to for instructional purposes | 13:00 | ||
moritz | at_key in rakudo | ||
pmichaud | %foo<a> is %foo.{'a'} | ||
jnthn | %foo.postcircumfix:<{ }>('a') | ||
lizmat | thanks! | 13:01 | |
moritz | and for a single key, the postcircumfix then re-dispatches to at_key | ||
13:01
kaleem joined
|
|||
[Coke] | jnthn: we need to update the toolto fold carl back into a single person. | 13:02 | |
... because who is in their right mind when cutting a release to check that. Grumblefutz. | 13:03 | ||
pmichaud | release_guide, item 5: Please check the result manually for duplicates and other errors. | ||
13:03
kaare_ joined
|
|||
pmichaud | :-P | 13:04 | |
13:04
LylePerl_ joined
|
|||
lizmat | for instructional purposes, I was hoping this would have worked: | 13:04 | |
rn: my %foo = (:a<1>,:b<2>); say %foo.at_key("a", p => 1) | |||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Excess arguments to Hash.at_key, unused named p at /home/p6eval/niecza/lib/CORE.setting line 0 (Hash.at_key @ 1)  at /tmp/DRhg3WkuPS line 1 (mainline @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3)  at /home/… | ||
..rakudo 88221c: OUTPUT«1» | |||
[Coke] | pmichaud: in my defense, I feel asleep accidentally at least twice while trying to cut the release last night. :| | 13:05 | |
lizmat | I think I'll use that nonetheles, for instructional purposes (lightning talk about adverbial pairs coming up at DPW) | ||
jnthn | lizmat: :p is an argument to postcircumfix:<{ }>. at_key is specifically for getting *one* key. | ||
lizmat | I get that | ||
jnthn | lizmat: The idea is that if you're implementing your own hashish types, you only need implement at_key | 13:06 | |
lizmat | but for Perl 5 people, postcircumfix:<{ }> is very scary | ||
aha, ok, good to know | |||
timotimo | so many invocations to replace ... :| | ||
moritz | hashish types? :-) | ||
lizmat | plenty of those in Amsterdam :-) | ||
jnthn | *lol* | ||
lizmat | and don't even start about hashish pipes! | ||
jnthn | Didn't mean *that* :P | ||
lizmat: But it's very general syntax | 13:07 | ||
13:07
LylePerl left
|
|||
jnthn | lizmat: But yeah, you don't normally ever write that. | 13:07 | |
LylePerl_ | hi | 13:11 | |
lizmat | agree, but Perl 5 people need to hang something to hang new concepts on | ||
LylePerl_ | Some of you are probably aware that jnthn and masak come to Bristol last year to give a Perl6 talk and workshop | 13:12 | |
timotimo | hang some hooks on the wall | ||
LylePerl_ | this year our event clashes with YAPC::NA | ||
and so masak and jnthn aren't available | |||
would anyone else be interested? | 13:13 | ||
details of the event are here: bristol.itmegameet.co.uk | |||
13:14
snearch joined
13:15
SamuraiJack left
|
|||
timotimo | oh, damnit | 13:17 | |
lizmat | alas, I have the same clash :-( otherwise I certainly would have come, potentiallly even to give a (beginners) Perl 6 presentation | ||
timotimo | i made some change that causes rakudo to use up all of my ram when trying to parse the core setting | ||
and i can't tell what's wrong >_< | |||
my diff looks sane, i.E. never turned a shift into an unshift by accident or anything like that | |||
jnthn had a nice time at LylePerl_++'s event last year. :) | 13:18 | ||
pmichaud | might be caught in an exception loop | ||
timotimo | oh, damn, that could be | ||
how do i figure out such a thing? :( | |||
jnthn | timotimo: Try --ll-exception | ||
timotimo | will that trigger a backtrace if perl6 gets killed by oom? :| | 13:20 | |
moritz | no, but the reason might be an exception from within the exception handler | ||
also, exceeding a certain stack frame depth causes an exception | 13:21 | ||
and then the exception handler needs a call frame | |||
causing parrot to throw the original exception again | |||
LylePerl_ | we had an open bar after the event last year ;) | 13:22 | |
pmichaud | gist.github.com/pmichaud/5420322 # jnthn, I also get large number of spectest fails when using jvm-support version of Rakudo on Parrot | 13:23 | |
jnthn | pmichaud: Looks like same set nwc10++ got, give or take | 13:24 | |
pmichaud | likely. | ||
diakopter | what do you guys think about 2 alc drink tickets per person at the yapc banquet - and those who want to drink more can get tickets from those who have extra | 13:26 | |
[seems to work well at some business events I've been to] | 13:27 | ||
timotimo | jnthn: i'm at 1gb of parrot in my swap now, when will i actually get an exception? >_< | 13:28 | |
pmichaud | timotimo: I said it *might* be an exception loop. :-) | 13:29 | |
diakopter | er, to be clear, "guys" means guy-ettes, too | 13:30 | |
jnthn | diakopter: Depends, is the alc all like Bud Light? :P | ||
.oO( Sir, my water tastes funny... ) |
|||
timotimo | that's quite a few that fail, but amazingly also a bunch that seem to pass :D | 13:31 | |
diakopter | www.utexas.edu/cee/tcc/downloadzone...ervice.pdf | ||
all our drinks are $6, so includes cocktails, it seems | |||
note the "premium" beer | |||
timotimo | is list.push(%foo) somehow special for rpa? | ||
jnthn | oh ffs Bud Lite actually is on the list :P | ||
I WAS JOKING!! | |||
diakopter | don't worry, I'll bring some Natural Light for you | ||
diakopter nudges pmichaud | 13:32 | ||
jnthn | diakopter: Anyway, it sounds sensible. | ||
diakopter | Natural Light is several steps below Bud Light | ||
moritz agrees | |||
13:33
jaldhar left
|
|||
pmichaud | diakopter: am I being nudged about the alc question? I don't know if it'll work or not; I tend to be one that doesn't always use my tickets. :) | 13:33 | |
diakopter | unfortunately we are clearly prohibited from bringing ANY outside food/drink... | ||
to that venue | |||
pmichaud: no, the Natural Light reference :) | |||
diakopter has never used a ticket... | 13:34 | ||
pmichaud: I was just hoping you could back me up on Nat Light's reputation, even if you hadn't had it yourself | |||
13:34
bloonix joined
|
|||
pmichaud | diakopter: I don't think I'd ever heard of Natural Light, tbh. But sure, I suspect its reputation isn't very high. | 13:35 | |
diakopter | hahaa | ||
13:36
raiph left
|
|||
LylePerl_ | timotimo: thanks for considering it | 13:36 | |
pmichaud | 13:31 <timotimo> is list.push(%foo) somehow special for rpa? | ||
shouldn't be special, should be the same as nqp::push(list, %foo) | 13:37 | ||
just be sure that 'list' is really an RPA. :-) | |||
(or QRPA) | |||
13:41
raiph joined
|
|||
timotimo | hm. my @params := $block<placeholder_sig> || ($block<placeholder_sig> := []); - seems so | 13:45 | |
13:45
kbenson joined
13:46
raiph left
|
|||
nwc10 | diakopter: suggest asking the Frankfurt lot what they budgeted, as the paid-for didn't *quite* run out, but it wasn't beer | 13:47 | |
diakopter | this is cocktails, beer, and wine | ||
nwc10 | that was apfelwein | ||
colomon | cider! | 13:49 | |
colomon starts fantasizing about cracking open that bottle of JK's Scrumpy.... | |||
timotimo | --trace doesn't work, does it? | 13:50 | |
probably since the problem occurs before parsing is even finished, so i'd need --meta-trace | |||
nwc10 | aye, cidah! | ||
13:51
frdmn joined
13:54
rindolf joined
13:58
raiph joined
|
|||
nwc10 finds that menu troubing. Heineken has positioned itself as "premium" | 13:59 | ||
jnthn | nwc10: I think premium here means "in a blind test, you would not confuse it with water" :P | 14:00 | |
diakopter | yeah, probably | ||
nwc10 | mmm yes, I would not fonuse Heineken with water. | 14:01 | |
I think I'd prefer the water. | |||
assuming that it's potable. | |||
14:01
woosley left
|
|||
nwc10 | (we're back to that one) | 14:02 | |
while we're flogging dead memes, lunch today had tentacles. Chance of contamination with horsemeat - pretty much zilch :-) | |||
sergot | Hi! o/ | 14:03 | |
Is there any way to fix "failed to load libpcre" problem? | |||
moritz | configure parrot --without-pcre | ||
sergot | Other than --without-pcre (or somelike) | ||
:) | |||
moritz | fix pcre lookup in parrot :-) | 14:04 | |
sergot | Oh.. That's not for me I think. :( | ||
PerlJam | sergot: why do you want pcre? | ||
sergot | PerlJam: What is it really for? :P | ||
PerlJam: I just don't wanted to have any errors like that. :P | 14:05 | ||
moritz | I think deinstalling pcre headers could also make the error go away | 14:06 | |
PerlJam | then --without-pcre gets rid of that error :) | ||
14:06
skids joined
|
|||
PerlJam | sergot: but pcre isn't needed for NQP or Rakudo to my knowledge, which is why I was asking. | 14:06 | |
sergot | PerlJam++ | 14:07 | |
moritz++ | |||
thanks! :) | |||
14:12
xilo left,
LylePerl_ left
14:15
kborer joined
|
|||
kresike | bye folks | 14:17 | |
14:17
kresike left
|
|||
PerlJam never sees kresike say anything other than "bye" | 14:20 | ||
moritz | PerlJam: there's a roughly corresponding number of "hello"s :-) | ||
PerlJam | moritz: any other correspondence? | 14:21 | |
moritz | a bit | ||
daxim | I switched my unicode dingus from fileformat.info to codepoints.net, example page: codepoints.net/U+1F63B | 14:22 | |
tell me what you think about it | |||
moritz kinda likes it | 14:23 | ||
pmichaud | daxim: first glance -- looks very nice | ||
lots of good detail there | |||
moritz | just misses "follow this character on twitter", and "people who liked this character also liked ..." :-) | 14:27 | |
daxim | "also mentioned on G+ Fake Unicode Consortium" | 14:31 | |
14:31
xilo joined
14:40
kborer left
14:41
kborer joined
|
|||
lizmat just finished two lightning talks at DPW: "Fat Comma to Adverbial Pairs" and "Is Perl 6 'Perl'?" | 14:42 | ||
14:48
kaleem left
|
|||
PerlJam | lizmat: Is Perl 6 'Perl'? ;) | 14:49 | |
moritz | PerlJam: any(True, False) | ||
lizmat | True | ||
moritz | nr: say so any(True, False) | ||
camelia | rakudo de2080, niecza v24-37-gf9c8fc2: OUTPUT«True» | 14:50 | |
moritz | lizmat, rakudo, niecza and me agree :-) | ||
lizmat | BTW, this also goes for Perl 4..5 | ||
not sure whether Perl 1..3 would be considered Perl nowadays | |||
14:52
domidumont left
14:53
snearch left
|
|||
[Coke] | r: say "{1..6.pick} is the best perl." | 14:55 | |
camelia | rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.» | ||
[Coke] | r: say "{1..6.pick(1)} is the best perl." | ||
camelia | rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.» | ||
PerlJam | heh | ||
[Coke] | O_o. | ||
geekosaur | parens? | ||
lizmat | rn: say "{(1..6).pick} is the best perl." | 14:58 | |
camelia | niecza v24-37-gf9c8fc2: OUTPUT«1 is the best perl.» | ||
..rakudo de2080: OUTPUT«3 is the best perl.» | |||
lizmat submits bug | |||
:-) | |||
n: say "{1..6.pick} is the best perl." | 14:59 | ||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«1 2 3 4 5 6 is the best perl.» | ||
lizmat | so why are the parens needed? | 15:00 | |
PerlJam | to listify the range looks like | 15:03 | |
(or is that parcelify?) | |||
[Coke] | oh, it's picking -the range- and then stringifying the whole thing. | 15:04 | |
duh. perljam++ | |||
PerlJam | yep | ||
[Coke] | r: say "{1..6.flat.pick(1)} is the best perl." | ||
camelia | rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.» | ||
[Coke] | r: say "{1..6.list.pick(1)} is the best perl." | ||
camelia | rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.» | ||
[Coke] | now explain that. ;P | ||
PerlJam | flat may suffer the same problem with ranges. | ||
r: say (1..6.flat).WHAT; | 15:05 | ||
camelia | rakudo de2080: OUTPUT«(Range)» | ||
jnthn | 1..6.pick is 1 .. 6.pick | 15:06 | |
PerlJam | oh, precedence | 15:07 | |
jnthn | Method calls bind tight. | ||
PerlJam | indeed | ||
jnthn | I find it helpful to always imagine infixes as having spaces around them, even if I don't actually type them. | ||
PerlJam | jnthn++ | 15:08 | |
r: say 1..6.flat | 15:09 | ||
camelia | rakudo de2080: OUTPUT«1..1» | ||
PerlJam | I don't get that one. | ||
Nom- | Alrighty... back to seeing what I can do about this rbx nqp compiler :) | ||
PerlJam | r: say 1 .. 6.flat | ||
camelia | rakudo de2080: OUTPUT«1..1» | ||
PerlJam | r: say 6.flat | ||
camelia | rakudo de2080: OUTPUT«6» | ||
15:09
takadonet joined
|
|||
flussence | r: say 6.flat.perl | 15:11 | |
camelia | rakudo de2080: OUTPUT«(6,).list» | ||
flussence | it's effectively 1..(+[6]) | ||
PerlJam | ah. interesting. | 15:13 | |
15:14
tgt left
|
|||
flussence | that one trips me up a lot... maybe the parser should warn if it sees .. and . consecutively with no punctuation inbetween | 15:14 | |
lizmat | something that just tripped me up: | 15:15 | |
rn: (say (1..6).pick), " is the best perl." | |||
camelia | rakudo de2080: OUTPUT«2» | ||
..niecza v24-37-gf9c8fc2: OUTPUT«5» | |||
15:16
awwaiid left
|
|||
lizmat | just a parentheses open at the wrong place, but no warning that there is a value that just drops on the floor | 15:16 | |
daxim | .u bottle | ||
yoleaux | U+1F376 SAKE BOTTLE AND CUP [So] (🍶) | ||
U+1F37C BABY BOTTLE [So] (🍼) | |||
daxim | needs moar coke bottle | 15:17 | |
lizmat | .u coke | ||
yoleaux | No characters found | ||
daxim | .u cola | ||
yoleaux | No characters found | ||
daxim | ☹ | ||
www.catb.org/~esr/jargon/html/C/cokebottle.html | 15:18 | ||
lizmat | true, having a character for it, would make it a commodity, and thus useless as a trademark | ||
.u camel | |||
yoleaux | U+1F42A DROMEDARY CAMEL [So] (🐪) | ||
U+1F42B BACTRIAN CAMEL [So] (🐫) | |||
lizmat | too bad for O'Reilly :-) | ||
daxim | PHOTOSHOPPED MONKEY | 15:19 | |
15:20
tgt joined
15:21
mattp__ left
15:22
frdmn left,
LylePerl joined
15:23
awwaiid joined
|
|||
Nom- | So correct me if I'm wrong here... NQP compiles into QAST... which the JVM modifications then convert into a string stream which can be parsed by a Java class to create bytecode? | 15:23 | |
PerlJam | "string stream"? | 15:24 | |
Nom- | Well, yes... found the java class which parses input which appears to be simple strings... things like "+ class" | 15:25 | |
colomon | r: say (0..10)[(1, 2, 3, 5, 6, 7).list.item] | ||
camelia | rakudo de2080: OUTPUT«6» | ||
colomon | r: say (0..10)[(1, 2, 3, 7).list.item] | ||
camelia | rakudo de2080: OUTPUT«4» | ||
PerlJam | Nom-: that doesn't jibe with my mental model, but then I also haven't looked into the details of how things work either :) | 15:26 | |
Nom- | fair enough :) | 15:27 | |
15:27
mattp__ joined
|
|||
Nom- | It looks like, based on what I've toyed with so far, I can pretty easily start creating an AST in rbx using the Rubinius::Compiler classes | 15:28 | |
How closely things match is a bit unknown... the compilers are very Ruby centric, but it might be 'close enough' | |||
masak | oh hai, #perl6 | 15:29 | |
hoelzro | ahoy masak | 15:30 | |
PerlJam | greetings masak \o/ | ||
masak | Juerd++ # photoshopped monkey | ||
so, I'm kinda stoked about github.com/perl6/mu/wiki/perl6-wor...p-may-2013 -- I hope y'all are, too. | |||
I want to spend parts of the weekend drawing up a more exact agenda for the thing. | 15:31 | ||
PerlJam | photoshopmonkeys.com/ | ||
hoelzro | I'm pretty excited | ||
what kind of stuff will be covered? | |||
masak | hoelzro: things I know how to explain about programming that I consider worth knowing, filtered through the lens of Perl 6 / Perl 5. | 15:32 | |
hoelzro | hmm | ||
masak | I expect there to be interesting, deep discussion during those hours, of concepts that we all care about but don't often put into words. | 15:33 | |
jnthn | Nom-: It's a textual format 'cus text is the easiest thing to throw over a boundary. When I have time, I'll probably get rid of it. | ||
masak | kind of like a live c2.com | ||
jnthn | Nom-: During the cross-comp phase you have a process boundary. Once you self host, that goes away | 15:34 | |
Nom- | jnthn: Yeah, figured... I wouldn't mind seeing the raw output to see if it's close enough to what I can parse, but i'll be damned if I can work out something that can do that ... scouring makefiles now | 15:35 | |
15:36
awwaiid left
|
|||
jnthn | Nom-: Yeah, I didn't want the epic hassle of generating the bytecode format itself. | 15:37 | |
Nom- | Is there anything still in that branch which will generate the output which runtime/.../JASTToJVMByecode.java ? | 15:39 | |
masak | hoelzro: could you elaborate a bit on your "hmm"? it felt like a bit of a drop from "I'm pretty excited". :P | 15:40 | |
timotimo | here come some embarassing commits | 15:41 | |
dalek | p/qrpa_experiment: af36e92 | (Timo Paulssen)++ | src/ (12 files): search&replace nqp::list -> nqp::qlist; change .push to nqp::push etc |
||
nqp/qrpa_experiment: 491eec9 | (Timo Paulssen)++ | src/ (6 files): | |||
nqp/qrpa_experiment: so many search and replace. probably too many. | |||
hoelzro | well, I'm just hoping to learn some of the neat Perl 6 tricks I occasionally see here =) | ||
timotimo | oh, saved by the bell :D | ||
PerlJam | masak: I'm pretty excited! | ||
masak: hmm! | |||
;-) | |||
hoelzro | masak: an example of a "thing you know about programming" would be welcome =) | ||
Juerd | masak: :) | ||
15:41
dalek joined,
ChanServ sets mode: +v dalek
|
|||
FROGGS | timotimo: does it still compile? | 15:43 | |
masak | hoelzro: <masak> I want to spend parts of the weekend drawing up a more exact agenda for the thing. | ||
FROGGS | (and work?) | ||
masak | hoelzro: could you maybe ask me on Sunday? :) | ||
timotimo | FROGGS: nqp compiles, perl6 compiles, but it can't compile the setting (it will spend all its time eating up memory before parsing has finished) | ||
hoelzro | if I remember =) | ||
masak | hoelzro: I have a pretty good idea myself, but I don't want to pre-commit on a bad representation of anything. | ||
hoelzro | fair enough | ||
timotimo | if you're able to figure out where it infiniloops, that would be splendid. | ||
15:43
tgt left
|
|||
timotimo | and some time in the future, i shall squash all those useless revert commits and friends | 15:43 | |
FROGGS | timotimo: need to get 'require' done for v5 :/ | 15:44 | |
timotimo | sure. | ||
15:45
sqirrel left
|
|||
masak | that said, I'm really happy/flattered that 11 people have signed up just to come to hear me blabber about something unannounced. | 15:51 | |
if there's something you'd *like* to hear about/discuss/go through, it's definitely not too late to request stuff. | |||
when I teach, I tend to do less of features/syntax, and more of concepts. or rather, the concepts drive the features/syntax. | 15:52 | ||
lizmat | maybe there is a set of Synopses that all people should be familiar with, other than (All) ? | 15:53 | |
15:53
sitaktif1 left
|
|||
PerlJam | masak: Could you do a complete GEB-esque treament of programming? ;) | 15:54 | |
masak | lizmat: I'd say so. S01-S06, and S12. basically all the ones with Apocalypses. | ||
lizmat | ack | 15:55 | |
masak | PerlJam: even though I have no idea what you mean, that sounds like a nice goal for the day. :) | ||
15:55
rom1504 joined
|
|||
masak | PerlJam: are we meant to dress up as Greek demigods and turtles? | 15:55 | |
PerlJam | that's okay, I'm not sure what I mean either ;) | ||
15:55
frdmn joined
|
|||
masak | or will we alternate between academic treatment of recursion and silly prose? | 15:56 | |
PerlJam | isn't that what we do everyday anyway? | ||
lizmat | dinner at DPW& | ||
15:56
lizmat left
|
|||
masak .oO( with Perl 6, every day is Christmas. with #perl6, every day is GEB. ) | 15:56 | ||
15:56
dmol joined
|
|||
[Coke] | .u lizmat | 15:58 | |
yoleaux | No characters found | ||
masak | .u les_miserables | 15:59 | |
yoleaux | U+005F LOW LINE [Pc] (_) | ||
U+0061 LATIN SMALL LETTER A [Ll] (a) | |||
U+0062 LATIN SMALL LETTER B [Ll] (b) | 16:00 | ||
16:00
sitaktif1 joined
16:02
takadonet left
16:03
daxim left
|
|||
[Coke] | .meow | 16:05 | |
yoleaux | edgecats.net/cats/catselfscare.gif | ||
masak | the bottle noise was an inside job! | 16:10 | |
16:12
kborer left
16:24
baest left
16:28
gdey joined
16:32
awwaiid joined
16:37
awwaiid left,
Chillance joined
16:38
awwaiid joined
|
|||
Nom- | blah i'm lost... will look again in the morning :( | 16:44 | |
pmichaud | timotimo: now that I've had a chance to see the diff, I'm not so sure I want to switch all $rpa.push(...) to be nqp::push($rpa, ...), at least not in the NQP sources. It doesn't read as well. | 16:49 | |
16:50
dmol left
|
|||
pmichaud | I think I might live with the .push overhead for non-hotpaths, if only to make the code more p6-ish | 16:50 | |
16:54
awwaiid left
17:00
awwaiid joined
|
|||
[Coke] | r: raw.github.com/coke/p6-lingua-en-s...yllable.pm | 17:08 | |
camelia | rakudo de2080: OUTPUT«===SORRY!===Two terms in a rowat /tmp/4Sfco1fWCD:1------> https⏏://raw.github.com/coke/p6-lingua-en-syll expecting any of: argument list postfix infix stopper infix or meta-infix st… | ||
[Coke] | (should we allow that to work?) | ||
17:13
tgt joined
17:14
awwaiid left
|
|||
FROGGS | why not? | 17:15 | |
17:22
tgt left
|
|||
moritz | maybe we should allow any URLs that return text/plain content type | 17:22 | |
17:23
japhb_ joined
|
|||
FROGGS | and do not exceed X MB | 17:27 | |
[Coke] | that seems dangerously reasonable. | ||
dalek | : 7ae7577 | (Tobias Leich)++ | lib/Perl6/P5 (2 files): steal `require`-mechanism from rakudo |
17:36 | |
17:46
cognominal left,
cognominal joined
17:52
awwaiid joined
17:56
awwaiid left
18:06
SamuraiJack joined
|
|||
labster | r: class Foo::One { }; my class Foo is Foo::One { }; class Foo::Two is Foo::One { }; | 18:28 | |
camelia | rakudo de2080: OUTPUT«===SORRY!==='Foo::Two' cannot inherit from 'Foo::One' because it is unknown.at /tmp/TZ9M7g2JKq:1------> » | ||
labster | is that supposed to happen? | ||
18:30
SamuraiJack left
|
|||
moritz | no. | 18:30 | |
colomon | r: class Foo::One { }; class Foo::Two is Foo::One { }; | 18:34 | |
camelia | rakudo de2080: ( no output ) | ||
18:34
awwaiid joined
|
|||
colomon | oooo, funky | 18:34 | |
masak | what's so oooo funky? :) | 18:35 | |
sorear | injecting Foo as a class makes rakudo lose the package of the same name | 18:36 | |
colomon | that. though I hadn't figured out what was going on with it. sorear++ | 18:37 | |
[Coke] | r: class Foo::One { }; class Foo is Foo::One { }; class Foo::Two is Foo::One { }; | ||
camelia | rakudo de2080: ( no output ) | ||
masak | <hoelzro> well, I'm just hoping to learn some of the neat Perl 6 tricks I occasionally see here =) | ||
[Coke] | even better, it's the 'my'. | ||
masak | hoelzro: oh, I wouldn't rule that out. | ||
hoelzro: "things I know about programming" is fairly tied to "some of the neat Perl 6 tricks you occasionally see here" :) | 18:38 | ||
colomon | oh, does that actually make sense? | ||
n: class Foo::One { }; my class Foo is Foo::One { }; class Foo::Two is Foo::One { }; | |||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«===SORRY!===Unhandled trait Foo::One for this context at /tmp/FN3PuYDsfX line 1:------> oo::One { }; class Foo::Two is Foo::One ⏏{ };Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting… | ||
colomon | n: class Foo::One { }; class Foo is Foo::One { }; class Foo::Two is Foo::One { }; | ||
camelia | niecza v24-37-gf9c8fc2: ( no output ) | ||
colomon | it's not a bug, it's a feature. | ||
[Coke]++ | 18:39 | ||
18:40
DreamingInCode joined
18:43
awwaiid left
|
|||
masak | hoelzro: it's just that... even Perl 6, cool as it is, is just a substrate. I program in order to make the computer do useful things. and I wouldn't attend an evening course in French "hoping to hear some of the cool French sounds I occasionally hear". :) I would do so in order to be able to talk to the waiter in his own tongue. | 18:46 | |
if you see what I mean. | |||
labster | Yeah, it's definitely the 'my'. I was trying to figure out why src/core/IO.pm doesn't compile with perl -c, when the setting builds (ignoring the stub classes, of course). | ||
r: gist.github.com/labster/5417609 | 18:48 | ||
camelia | rakudo de2080: OUTPUT«===SORRY!===Unable to parse class definitionat /tmp/ENJUV2W32I:7------> my class IO::Path is Cool does IO::⏏FileTestable { expecting any of: scoped declarator generic role» | ||
labster | the same bug happens in reverse here. | ||
colomon | n: gist.github.com/labster/5417609 | 18:51 | |
camelia | niecza v24-37-gf9c8fc2: OUTPUT«===SORRY!===Pathed definitions require our scope at /tmp/VlaOJPYP_u line 1:------> my role IO::FileTestable ⏏{ }Pathed definitions require our scope at /tmp/VlaOJPYP_u line 3:------> class IO::Handle does IO… | ||
masak | heh, "Pathed". | ||
18:55
awwaiid joined
|
|||
japhb_ | .tell daxim re: irclog.perlgeek.de/perl6/2013-04-19#i_6723489 , it's strange that when you mouse over a small glyph image, it zooms without improving resolution (I end up looking at a blur of large pixels). Otherwise, very nice indeed. | 18:55 | |
yoleaux | japhb_: I'll pass your message to daxim. | ||
18:57
fgomez joined
18:58
berekuk joined
|
|||
dalek | : 69273e3 | (Tobias Leich)++ | Makefile: added "make uninstall" |
19:02 | |
: 565c60d | (Tobias Leich)++ | STATUS.md: updated STATUS, the QRPA changes can be ignored |
|||
19:06
mattp__ left,
mattp__ joined
19:13
kaare_ left
|
|||
jnthn | If you declare a "my" something it hides anything we may otherwise find via GLOBAL | 19:14 | |
FROGGS | but is something inherit from a global, even if this something is 'my', this should not affect the global, right? | 19:15 | |
19:16
supernovus joined
|
|||
jnthn | I'm not exactly sure what's happening, or if it's right, but... | 19:16 | |
class Foo::One { }; my class Foo is Foo::One { }; | |||
The first one installs a GLOBAL::Foo::One for sure. | |||
FROGGS | r: class A { }; my class B is A { }; class C is A { } | 19:17 | |
camelia | rakudo de2080: ( no output ) | ||
jnthn | The second installs a lexical Foo that hides it | ||
FROGGS | hmmm, so it is about nested namespaces too | ||
so it might be right | |||
jnthn | When you write Foo::One it really means find Foo, .WHO it to get the Stash associated with it, then look up One in that hash. | 19:18 | |
FROGGS | labster: so doing a my class IO::Path will hide an global IO | ||
jnthn | I originally didn't support my Foo::Bar { } at all as I could see the can of worms it could open, as if packages needed any more of those. Then somebody (probably moritz++) quickly pointed out to me that if I did that, we couldn't declare things like my X::OhNoes { } in CORE.setting. | 19:21 | |
So we got it, and the semantics are that if there's no lexical X already in the declaring scope, it creates one, and then the rest of the path has the usual semantics. | 19:23 | ||
19:30
gdey_ joined
19:34
gdey left,
gdey_ left
19:36
rindolf left
19:37
awwaiid left
|
|||
FROGGS | note to myself: perl5 has an implicit namespace if there is no package declarator | 19:38 | |
so if it require-s a script, I just have to put its symbols into main::, and lookup these by default | 19:41 | ||
19:49
awwaiid joined
19:54
awwaiid left
|
|||
diakopter | posted my first ever significant-size thing on perlmonks: perlmonks.org/?node_id=1029571 | 19:55 | |
masak | diakopter: I enjoyed reading that. thanks. | 20:00 | |
Tene | diakopter: "flood algorithm"? | 20:06 | |
20:06
awwaiid joined
|
|||
masak | Tene: many people redundantly solving the same problem in different ways. | 20:08 | |
a kind of Darwinian problem solving. | |||
Tene | Ah. | ||
masak | I think "flood fill" comes from a TimToady SoTO. | ||
the one with cards describing various Perl 6 people. | |||
flussence | I've heard the term "rampaging horde syndrome" used in a similar way... :D | 20:09 | |
20:11
awwaiid left
|
|||
PerlJam | with the CPAN way you get the benefit of darwinism, but you also suffer the tyranny of choice. | 20:11 | |
it all goes back to the waterbed theory of "language" complexity :) | 20:12 | ||
masak | my personal solution to the tyranny of choice is: listen to people who know shit. in IRC channels and at conferences. use the modules they enthuse about. | 20:13 | |
after I started doing that, things got *much* simpler. | |||
but it essentially means that in order to use CPAN well, one has to be a Perl community member. | |||
PerlJam | a very active member | ||
your work-a-day coder who doesn't hang out on IRC is at a severe disadvantage. | 20:14 | ||
masak | yes. they'd have to, like, take a Perl course at Edument or something. | ||
(where I distil the required knowledge and sell it to them at a reasonable price.) | |||
I dunno, I find that a fair deal. | 20:15 | ||
(by which I think I mean, on balance I prefer the darwinism and the tyranny of choice to pre-chewed and pre-vetted) | 20:17 | ||
PerlJam | yeah, I'm pretty much the same. | ||
what would be nice would be some sort of community best practices (I don't know if I mentioned that here or on #perl the other day) that were kept up-to-date by those people who are in-the-trenches using and building stuff. | 20:21 | ||
sort of like cpan-ratings but with more of "use module X because ..." and "don't use module Y because ..." and a lot of "I use X, Y, and Z because ..." | |||
masak | yeah. | 20:22 | |
I tend to find that sort of info "between the lines", not online, but at confs, in talks, in the hallway track, and in the pub in the evening. | |||
PerlJam | exactly. I'd like to bring that out into the open where more eyes can see it :) | 20:23 | |
masak | goodspeed. | 20:24 | |
as with all derived information, the challenge will be to pump tuits into it to keep it up-to-date. | |||
but certainly not impossible; just adequately challenging ;) | |||
PerlJam | yep. | 20:25 | |
But now it's time for me to attend a talk on ocean going robots | |||
PerlJam & | |||
20:26
supernovus left
20:28
awwaiid joined
20:30
yoleaux left
20:35
awwaiid left
20:38
yoleaux joined
20:42
berekuk left
20:52
awwaiid joined
20:57
tgt joined
21:04
berekuk joined
21:05
skids left
|
|||
dalek | rl6-roast-data: 4995a5f | coke++ | / (4 files): today (automated commit) |
21:05 | |
21:06
mattp__ left
21:07
mattp__ joined
21:11
awwaiid left,
jac50 joined
21:22
awwaiid joined
|
|||
masak skims through rosettacode.org/wiki/N-queens_problem and decides he dislikes all of the solutions posted | 21:22 | ||
except perhaps the Rascal solution. | 21:23 | ||
all of the other ones contain cruft or take their eye off the ball in some way. | |||
21:25
spider-mario left
21:41
pupoque joined
21:48
grondilu_ joined
21:49
jac50 left
21:52
xilo left
21:57
zacts joined
22:01
awwaiid left
22:03
lustlife left
22:05
felipe joined
|
|||
diakopter | i.imgur.com/INVnQtp.jpg just now. ftw-doze | 22:08 | |
masak | "anything that can crash, will crash as t -> \infty" | 22:09 | |
22:10
pupoque left
22:12
awwaiid joined
22:21
awwaiid left
|
|||
FROGGS | hmmmm, I can't have several v5 scopes atm :/ | 22:26 | |
lue never understood why (La)TeX's abbreviation of infinity was infty (as opposed to inf) | 22:29 | ||
22:31
adu_ joined
22:33
awwaiid joined
|
|||
adu_ | how do I prepend to a list? | 22:33 | |
22:34
adu_ is now known as adu
|
|||
flussence | @l.unshift | 22:34 | |
adu | r: say 1 + [2, 3] | ||
camelia | rakudo de2080: OUTPUT«3» | ||
adu | r: say [1] ~ [2, 3] | 22:35 | |
camelia | rakudo de2080: OUTPUT«12 3» | ||
adu | r: say [1] _ [2, 3] | ||
camelia | rakudo de2080: OUTPUT«===SORRY!===Two terms in a rowat /tmp/EuFz3zi_Gq:1------> say [1] ⏏_ [2, 3] expecting any of: postfix infix stopper infix or meta-infix statement end statement modifier stat… | ||
FROGGS | r: say (1, 2).unshift(3) | ||
camelia | rakudo de2080: OUTPUT«Cannot call 'unshift'; none of these signatures match::(Any:U \SELF: *@values, Mu *%_) in method unshift at src/gen/CORE.setting:1461 in block at /tmp/mXJJZARmOd:1» | ||
FROGGS | r: say Array.new(1, 2).unshift(3) | ||
camelia | rakudo de2080: OUTPUT«3 1 2» | ||
adu | r: say [1, 2].unshift(3) | ||
camelia | rakudo de2080: OUTPUT«3 1 2» | ||
FROGGS | right | ||
adu | thanks :) | ||
FROGGS | <--- is slow at typing right now | 22:36 | |
adu | r: say [1, 2].cat([3, 4]) | ||
camelia | rakudo de2080: OUTPUT«No such method 'cat' for invocant of type 'Array' in block at /tmp/HCXARUed6W:1» | ||
FROGGS | r: say [1, 2] | [3, 4] | ||
camelia | rakudo de2080: OUTPUT«any(1 2, 3 4)» | ||
FROGGS | hmmmm, there is an operator for that | 22:37 | |
masak | 'night, #perl6. see you tomorrow. | ||
FROGGS | night masak | ||
adu | r:say(list([1, 2] & [3, 4])) | ||
r: say(list([1, 2] & [3, 4])) | 22:38 | ||
camelia | rakudo de2080: OUTPUT«all([1, 2], [3, 4])» | ||
FROGGS | r: say ([1, 2] | [3, 4]).flat | ||
camelia | rakudo de2080: OUTPUT«any(1, 2, 3, 4)» | ||
FROGGS | but I guess there is a nicer way | ||
and you see that this is a junction | 22:39 | ||
adu | yes | ||
FROGGS | r: say ([1, 2] | [3, 4]).flat.WHAT | ||
camelia | rakudo de2080: OUTPUT«(Junction)» | ||
adu | r: say [1, 2].push([3, 4]) | 22:40 | |
camelia | rakudo de2080: OUTPUT«1 2 3 4» | ||
adu | yey | ||
FROGGS | ahh, of course | ||
22:40
lizmat joined
|
|||
[Coke] | rnp: my $a = (1,2,3); say $a.WHAT; | 22:45 | |
camelia | rakudo de2080, niecza v24-37-gf9c8fc2: OUTPUT«(Parcel)» | ||
..pugs: OUTPUT«Array()» | |||
[Coke] | according to RT #66304, that should be a Seq. | 22:46 | |
I think that's probably a fossil. | |||
22:47
lizmat left
|
|||
sorear | r: Seq | 22:47 | |
camelia | rakudo de2080: OUTPUT«Cannot look up attributes in a type objectcurrent instr.: 'gimme' pc 284714 (src/gen/CORE.setting.pir:125032) (src/gen/CORE.setting:6046)called from Sub 'sink' pc 293821 (src/gen/CORE.setting.pir:128675) (src/gen/CORE.setting:6354)called from Sub 'MAIN' pc 381 (… | ||
sorear | wat | ||
I was going to say that I think Seq is gone, but ... this is a new bug? | 22:48 | ||
r: Sq | |||
camelia | rakudo de2080: OUTPUT«===SORRY!===Undeclared name: Sq used at line 1» | ||
FROGGS | r: my $x = Seq | ||
camelia | rakudo de2080: OUTPUT«Cannot look up attributes in a type objectcurrent instr.: 'gimme' pc 284714 (src/gen/CORE.setting.pir:125032) (src/gen/CORE.setting:6046)called from Sub 'sink' pc 293821 (src/gen/CORE.setting.pir:128675) (src/gen/CORE.setting:6354)called from Sub 'MAIN' pc 381 (… | ||
sorear | r: &x | ||
camelia | rakudo de2080: OUTPUT«===SORRY!===Undeclared name: &x used at line 1» | ||
sorear | r: &Seq | ||
camelia | rakudo de2080: OUTPUT«===SORRY!===Undeclared name: &Seq used at line 1. Did you mean 'Seq'?» | ||
sorear | ah, the Seq type object does not like being sunk | ||
FROGGS | r: Seq.new() | 22:49 | |
camelia | rakudo de2080: ( no output ) | ||
diakopter | r: &(Seq) | ||
camelia | rakudo de2080: OUTPUT«Cannot look up attributes in a type objectcurrent instr.: 'gimme' pc 284714 (src/gen/CORE.setting.pir:125032) (src/gen/CORE.setting:6046)called from Sub 'sink' pc 293821 (src/gen/CORE.setting.pir:128675) (src/gen/CORE.setting:6354)called from Sub 'MAIN' pc 381 (… | ||
22:49
lizmat joined
|
|||
timotimo | adu, FROGGS, the operator to concatenate lists is "," | 22:49 | |
r: my @a = 1, 2, 3; my @b = 100000; say (@a, @b).perl | 22:50 | ||
camelia | rakudo de2080: OUTPUT«(Array.new(1, 2, 3), Array.new(100000))» | ||
timotimo | r: my @a = 1, 2, 3; my @b = 100000; say (@a, @b).flat.perl | ||
camelia | rakudo de2080: OUTPUT«(1, 2, 3, 100000).list» | ||
diakopter | sorear: looks liks you're right | ||
timotimo | r: my @a = 1, 2, 3; my @b = 100000; my @c = (@a, @b); say @c.perl; # see how assigning to a @variable will flatten the list automatically for you | ||
camelia | rakudo de2080: OUTPUT«Array.new(1, 2, 3, 100000)» | 22:51 | |
diakopter | like | ||
22:51
skids joined
|
|||
FROGGS | timotimo: ya, and it makes sense :o) | 22:52 | |
it is just to late... | |||
timotimo | sorry :( | ||
i was watching the new doctor who episodes i missed | |||
adu | timotimo: ooooo | ||
adu <3 dr.who | 22:53 | ||
diakopter | oh oops didn't see the orig; sry | ||
adu | how do I add properties to a Match object? | 22:57 | |
22:57
ifimbres joined
|
|||
[Coke] | sorear: this is somethin b used to do. | 22:57 | |
adu | $<name> = … isn't working, I get "Cannot modify an immutable value" | ||
22:57
ifimbres left
|
|||
FROGGS | timotimo: I meant it is too late to proper use my mind... :o) | 22:58 | |
so, dont worry about missing an SLA :o) | 22:59 | ||
[Coke] | r: my $a = 1,2,3; say $a<1>.WHAT | 23:00 | |
camelia | rakudo de2080: OUTPUT«WARNINGS:Useless use of "," in expression "my $a = 1,2,3" in sink context (line 1)(Failure)» | ||
[Coke] | r: my $a = (1,2,3); say $a<1>.WHAT | ||
camelia | rakudo de2080: OUTPUT«(Failure)» | ||
jnthn | Hm, I didn't think Seq existed any more... | ||
[Coke] | r: my $a = (1,2,3); say $a[1,2].WHAT | ||
camelia | rakudo de2080: OUTPUT«(Parcel)» | ||
jnthn | Well, sleep time...should have for JVM porting tuits tomorrow. :) | ||
'night, #perl6 | 23:01 | ||
FROGGS | jnthn: sleep well!! :o) | ||
23:01
xilo joined
|
|||
[Coke] | jnthn: it's in the spec in a few places, and about a dozen tests. | 23:01 | |
23:01
census joined
|
|||
[Coke] | .ask pmichaud if we can get a spec ruling on if we should rip out Seq based on your understanding of the current list situation. | 23:02 | |
yoleaux | [Coke]: I'll pass your message to pmichaud. | ||
23:06
mattp__ left,
BenGoldberg joined
23:07
mattp__ joined
23:08
census left
23:10
lizmat left
|
|||
[Coke] | r: Coke]: I'll pass your message to pmichaud. [19:12] [[Coke]( | 23:12 | |
camelia | rakudo de2080: OUTPUT«===SORRY!===Unexpected closing bracketat /tmp/WFPZ2rYKSr:1------> Coke⏏]: I'll pass your message to pmichaud. [» | ||
[Coke] | r: $_ = 1; my $tracker = ''; for 12 -> $a { if $_ == 1 { $tracker ~= "1 : $_|"; $_ = 2; } } | ||
camelia | rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy') in block at /tmp/HWQMO6B4wa:1 in method reify at src/gen/CORE.setting:5737 in method reify at src/gen/CORE.setting:5632 in method gimme at src/gen/CORE.setting:6053 in method eager at src/gen/CORE.setting:6032 … | ||
FROGGS | r: for 12 -> $a { "$_" } | 23:13 | |
camelia | rakudo de2080: OUTPUT«use of uninitialized value of type Any in string context in block at /tmp/YZOVXI9pzj:1» | ||
FROGGS | r: $_ = 1; for 12 -> $a { "$_" } | 23:14 | |
camelia | rakudo de2080: ( no output ) | ||
FROGGS | r: $_ = 1; for 12 -> $a { my $x ~= "$_" } | ||
camelia | rakudo de2080: ( no output ) | ||
FROGGS | r: $_ = 1; for 12 -> $a { my $x ~= "$_|" } | ||
camelia | rakudo de2080: ( no output ) | ||
FROGGS | hmmm | ||
r: $_ = 1; for 12 -> $a { if 1 { my $x ~= "$_|" } } | 23:16 | ||
camelia | rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy') in block at /tmp/5WQEd1mmQC:1 in method reify at src/gen/CORE.setting:5737 in method reify at src/gen/CORE.setting:5632 in method gimme at src/gen/CORE.setting:6053 in method eager at src/gen/CORE.setting:6032 … | ||
FROGGS | r: $_ = 1; for 12 -> $a { if 1 { my $x ~= "$_" } } | ||
camelia | rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy') in block at /tmp/bHA_n88VaK:1 in method reify at src/gen/CORE.setting:5737 in method reify at src/gen/CORE.setting:5632 in method gimme at src/gen/CORE.setting:6053 in method eager at src/gen/CORE.setting:6032 … | ||
FROGGS | r: $_ = 1; if 1 { my $x ~= "$_" } | ||
camelia | rakudo de2080: ( no output ) | ||
FROGGS | r: $_ = 1; for 12 -> $a { if 1 { "$_" } } | ||
camelia | rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy') in block at /tmp/Bify_dvuSE:1 in method reify at src/gen/CORE.setting:5737 in method reify at src/gen/CORE.setting:5632 in method gimme at src/gen/CORE.setting:6053 in method eager at src/gen/CORE.setting:6032 … | ||
[Coke] | FROGGS: RT# 117677 if you golf it more. | ||
FROGGS | it only comes if there is an if within a loop | 23:17 | |
r: $_ = 1; for 12 -> $a { unless 0 { "$_" } } | |||
camelia | rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy') in block at /tmp/2A9OMuXLSv:1 in method reify at src/gen/CORE.setting:5737 in method reify at src/gen/CORE.setting:5632 in method gimme at src/gen/CORE.setting:6053 in method eager at src/gen/CORE.setting:6032 … | ||
FROGGS | r: $_ = 1; while $_++ < 2 { unless 0 { "$_" } } | ||
camelia | rakudo de2080: ( no output ) | ||
FROGGS | r: $_ = 1; until $_++ > 3 { unless 0 { "$_" } } | 23:18 | |
camelia | rakudo de2080: ( no output ) | ||
23:24
awwaiid left
|
|||
pmichaud | Coke: rip out Seq. | 23:37 | |
yoleaux | 23:02Z <[Coke]> pmichaud: if we can get a spec ruling on if we should rip out Seq based on your understanding of the current list situation. | ||
23:37
awwaiid joined
|
|||
pmichaud | If we end up needing Seq, it won't look like what's in the spec. | 23:37 | |
or I can certainly put it back. | |||
23:38
grondilu_ left
|
|||
pmichaud | I'm afk again. | 23:40 | |
23:42
awwaiid left
23:53
awwaiid joined
23:54
gdey joined
|