»ö« 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! Set by sorear on 4 February 2011. |
|||
sorear | good * #perl6 | 00:01 | |
itz: hi! | 00:03 | ||
dalek | p/bs: 9b2a92b | jnthn++ | src/6model/reprs/P6bigint.c: Seems P6bigint.copy_to passed the arguments to mp_init_copy backwards (not helped by the fact that it takes them the opposite way around to mp_copy). Sadly, this alone doesn't seem to fix the heap corruption. |
00:09 | |
00:25
att joined
|
|||
dalek | p/bs: 3553834 | jnthn++ | src/HLL/World.pm: Code-gen building of list of static code refs in a different Parrot sub, to reduce load on IMCC register allocator a little. |
00:34 | |
00:42
mattp_ left
00:45
mattp_ joined
00:49
thou left
00:52
BooK left
01:00
BooK joined
|
|||
dalek | kudo/bs: fb6bc7d | jnthn++ | src/ (5 files): Re-work the way we handle the fresh magicals flag, moving it into an int in the StaticLexPad. Saves several thousand lines of generated PIR in the fixups in CORE.setting, and probably around a thousand PCC method calls (yeah, the slow ones...) on startup. |
01:05 | |
01:08
woosley joined,
scott_ joined
01:09
scott_ is now known as Guest61033
|
|||
jnthn | sleep & | 01:15 | |
TimToady | masak: a slightly interesting monadic-ish logic toy in P6: gist.github.com/1946473 | 01:36 | |
dinner & | |||
01:38
benabik joined
01:44
wolfman2000 left
02:20
wolfman2000 joined
02:35
NamelessTee left
02:51
jaldhar joined
|
|||
colomon | ack, just realized I missed #phasers again | 02:54 | |
(and I will probably be more or less out of contact for the next three days, for good reasons. :) | 03:00 | ||
dalek | ast: d26054b | coke++ | S02-types/array.t: pugs fudge |
03:01 | |
gs.hs: 0eb2863 | coke++ | t/spectest.data: run fudged test |
|||
sorear | o/ colomon | 03:03 | |
03:17
orafu left,
orafu joined
03:23
odoacre left
03:41
sftp left
03:46
odoacre joined
04:10
noam__ left
04:21
Minthe joined
04:33
arnsholt_ joined,
arnsholt left
04:47
alester joined
04:56
birdwindupbird joined
05:12
birdwind1pbird joined
05:13
birdwind1pbird left,
birdwind1pbird joined,
birdwind1pbird left,
birdwind1pbird joined
05:37
am0c joined
05:44
birdwindupbird left
05:47
packetknife joined
05:51
thou joined
05:55
robinsmidsrod left
05:57
robins joined
06:02
alester left
06:07
havenn joined
06:11
am0c left
|
|||
moritz | \o | 06:25 | |
sorear | o/ moritz | ||
dalek | ast: 844bcb2 | moritz++ | S03-operators/buf.t: tests for Buf.subbuf |
06:26 | |
06:28
havenn left
06:29
havenn joined
06:34
kaleem joined
06:37
marmalade left
|
|||
fsergot | o/ | 06:45 | |
sorear | hello fsergot! | 06:46 | |
fsergot: until the other day I always parsed your nick as something like "This is your /home on acid" | |||
fsergot | sorear:I thought about remove the first character. :-D | 06:50 | |
06:51
takesako left
06:52
kaleem left
06:53
takesako joined
|
|||
fsergot | sorear: Where are You from? | 06:54 | |
06:54
am0c joined
|
|||
sorear | fsergot: USA, southwest | 06:56 | |
06:57
kaleem joined,
am0c left
|
|||
Teratogen | sorear, you in Arizona? | 06:57 | |
06:57
havenn left
|
|||
TimToady | sorear is elsewhere | 06:57 | |
Teratogen | hi TimToady | 06:58 | |
TimToady | I don't think sorear would want to live with that many rednecks | ||
sorear | "he prefers bluenecks" | 06:59 | |
Teratogen | Actually Arizona has a lot of wetbacks | ||
sorear | I am not familiar with that term | ||
Teratogen | Urban Dictionary to the rescue! | ||
TimToady | yes, well, it's okay for white folks to call themselves rednecks, but it's not really okay to call a different ethnic group names | 07:00 | |
07:01
kaleem left
|
|||
TimToady | in general we should try to avoid denigrating terms, and in fact I apologize for using "rednecks" that way | 07:02 | |
Teratogen | I wouldn't consider Arizona to be a redneck state, though. | 07:03 | |
Indiana is a redneck state, definitely. | 07:04 | ||
07:12
wtw joined
|
|||
fsergot | Have to go to the school. Will be back later. Have a nice day|night #perl6! :) | 07:14 | |
07:27
Kharec joined
|
|||
Kharec | hi there | 07:27 | |
07:28
autark left
|
|||
Kharec | Is this time of exec is normal? paste.debian.net/158146/ | 07:29 | |
07:38
Kharec left
07:41
packetknife left
|
|||
TimToady | my system runs in in under a second, but that's still slow; jnthn's new serializing branch should help with that | 07:44 | |
07:45
rsimoes left
|
|||
Teratogen | nom: say 1+1 | 07:45 | |
TimToady | (I'm running the most recent release, so that's probably some improvement over November) | ||
p6eval | nom 4726db: OUTPUT«2» | ||
TimToady | in general, we'd recommend p6 more for longer running processes until we get the startup time lower | 07:47 | |
oh, wait, Kharec left already, duh... | 07:48 | ||
08:01
rsimoes joined
08:09
brxue joined
08:10
TEST_ joined
|
|||
TEST_ | say 20 + 5 | 08:11 | |
rakudo: say 29*3 | |||
p6eval | rakudo 4726db: OUTPUT«87» | ||
08:12
TEST_ left
08:14
brxue left
08:23
noam joined
08:24
pat_js joined
|
|||
pat_js | hey a quick question for building rakudo: is there already a way to pass the make '-j num' option to the parrot-build? | 08:32 | |
08:35
mj41 joined
|
|||
sorear | I don't know offhand (not really a rakudo person), but you can always build Parrot separately, which is what I did back when I could build rakudo | 08:41 | |
08:41
thou left
08:42
bkolera joined
|
|||
pat_js | ah ok thanks, was just examining that Configure-script, and it doesn't seem like. | 08:44 | |
08:46
stepnem joined
|
|||
pat_js | what does .pir stand for? is this the parrot language? | 08:47 | |
09:01
Minthe left
09:09
woosley left
|
|||
sorear | pat_js: Parrot Intermediate Representation | 09:10 | |
pat_js: don't think of it as a "language", except in a very technical sense | |||
pat_js: it's more like the .s files that gcc creates in /tmp during compilations | 09:11 | ||
pat_js | ah ok | 09:14 | |
masak | hola, #perl6. | 09:16 | |
Teratogen: why do you keep doing 'say 1 + 1' on p6eval? | |||
tadzik | hello #perl6 | ||
masak | Teratogen: why not something cool, like 'class A { method foo { say "HAI" } }; class B is A { method foo { print "OH "; nextsame } }; B.new.foo'? | 09:17 | |
tadzik! \o/ | |||
tadzik | \o/ | 09:18 | |
sorear | \o/ | 09:19 | |
pat_js: I often see people talking about "Parrot" as if it were a language. | 09:20 | ||
09:21
pat_js left
|
|||
Teratogen | because if say 1 + 1 works, it is ready to ship! =) | 09:22 | |
tadzik | wow, rakudo builds pretty fast now | ||
masak | Teratogen: 'say 1 + 1' has worked since 2005. | ||
Teratogen: and we *are* shipping both Rakudo and Niecza, since 2007 and 2011, respectively. | 09:23 | ||
sorear | strike 2. | 09:25 | |
masak | sorear: um, don't do that, it's uncanny :/ | 09:27 | |
09:27
arnsholt_ is now known as arnsholt
|
|||
sorear | "suggesting the operation of supernatural influences"? | 09:29 | |
I am trying to make it clear to Teratogen that eir unfunny inanity is very, very tiring | |||
and direct words don't seem to have helped | |||
masak | sorear: I'm just expressing my uneasiness at the indirect method. | 09:30 | |
sorear | maybe I'll try super-direct. | ||
hey, Teratogen, you're making it less fun to develop Perl 6 | |||
masak | it feels more like you're justifying to yourself the right to boot him after three strikes. | ||
yes, that was better. | |||
sorear | please stop it | ||
masak | Teratogen: I agree with sorear. your views on "ship it" lately are one-sided and not constructive. | 09:31 | |
Teratogen | ok =( | 09:32 | |
masak | write something cute in Perl 6 instead. there are lots of little applications that haven't been written yet. | 09:37 | |
it was the "uncomfortably strange" meaning of "uncanny" I was after. | 09:42 | ||
jnthn | morning, #perl6 | ||
tadzik | morning jnthn | 09:43 | |
Files=616, Tests=22111, 900 wallclock secs ( 9.59 usr 1.84 sys + 1512.89 cusr 127.42 csys = 1651.74 CPU) | |||
nom: 900 / 1050 | |||
p6eval | nom 4726db: ( no output ) | ||
tadzik | nom: say 900 / 1050 | 09:44 | |
p6eval | nom 4726db: OUTPUT«0.857142857142857» | ||
tadzik | 86% of what it was yesterday | ||
09:44
noam left
|
|||
jnthn | tadzik: bs got faster since your last run? | 09:46 | |
tadzik | jnthn: si | ||
jnthn | Oh, I guess it may be thanks to fb6bc7d49e. Nice. | ||
tadzik | I was checking because of github.com/rakudo/rakudo/commit/fb6bc7d49e | ||
aye | |||
jnthn | nom: say 191 / 199 | 09:47 | |
p6eval | nom 4726db: OUTPUT«0.959798994974874» | ||
jnthn | Curious. It was a bigger difference for you than for me. | ||
I mean, proportionally | |||
Do you do a serial or parallel spectest run? | |||
tadzik | pararell, 3 jobs | 09:49 | |
masak | jnthn! \o/ | 09:50 | |
jnthn | masak! \o/ | ||
tadzik afks | 09:53 | ||
09:55
dakkar joined
09:59
tty234 left,
etneg left
|
|||
masak | TimToady: gist.github.com/1946473 -- nice | 10:02 | |
still no amb, though ;) | |||
10:09
Guest61033 left
|
|||
dalek | p/bs: 47ed8e9 | jnthn++ | src/HLL/World.pm: Don't need to natter about how much data we serialized in the build output now. :-) |
10:10 | |
10:10
noam joined
|
|||
moritz wakes up a second time today, and feels much better | 10:15 | ||
jnthn | o/ moritz | 10:16 | |
masak | good re-morning. | 10:17 | |
moritz | \o/ all tests pass on rakudo/bs | ||
spectests, that is | |||
felher | Nice :D | 10:18 | |
masak | what? that's awesome! | ||
jnthn++! | |||
felher | yeah, jnthn++ indeed | 10:19 | |
jnthn | Yeah, for once the second 80% wasn't so bad. :) | ||
moritz | :-) | ||
1083MB memory used for compiling the setting | 10:23 | ||
and 'make podtest' also passes | 10:24 | ||
jnthn | yay | ||
moritz | t/02-embed/01-load.t aborts silently after printing the paln | 10:25 | |
*plan | |||
jnthn | Does that work in master? | ||
*nom | |||
Also, is not everything in t\pmc full of it... | 10:26 | ||
moritz | not ok 1 # TODO embedding | ||
# Failed (TODO) test 'can load_bytecode perl6.pbc' | |||
# unimplemented key type 1 | |||
is the output on nom | |||
dalek | kudo/bs: ff75374 | jnthn++ | t/pmc/ (7 files): Toss a bunch of tests that test stuff that doesn't exist any more. |
10:27 | |
felher | "A try block by default has a CATCH block that handles all fatal exceptions by ignoring them." -- is that why there is a try in TimToadys gist? And if it is (hope that is not a stupid question), what happens to non-fatal exceptions? | 10:28 | |
moritz | which gist? | 10:29 | |
and about non-fatal exceptions | 10:30 | ||
masak | gist.github.com/1946473 | ||
moritz | we have fail(), which ignores try blocks, because the exception isn't thrown yet | ||
jnthn | That gist is cute | ||
10:30
cosimo joined
|
|||
moritz | and we have warnings, which don't interact with CATCH at all, because they are control exceptions | 10:30 | |
felher | So fatal exceptions are all non-controll exceptions that were thrown? | 10:32 | |
moritz | yes | 10:33 | |
felher | moritz: okay, thanks a lot :) | ||
Now that bs passes all spectests, will it be merged into nom? | 10:40 | ||
jnthn | felher: There's a few non-spectest issues to take care of first. One (which I'm looking into now) is that CORE.SETTING doesn't build with --optimize=3 | 10:44 | |
*.setting | |||
felher | jnthn: okay, great :) | ||
felher times his rakduo-build-process to be able to compare it to bs later on. | 10:46 | ||
jnthn | Got it narrowed down to a particular optimization. | ||
moritz | a2.sphotos.ak.fbcdn.net/hphotos-ak-...4111_n.jpg a nice little riddle | 10:57 | |
11:01
noam left
11:09
noam joined
11:10
ab5tract left
|
|||
felher | moritz: is there a solution i can check as soon as i think i've solved it? | 11:11 | |
s/solution/link to a solution/ | |||
moritz | felher: no. Just tell me what you think the answer is, and I'll confirm it :-) | 11:12 | |
felher | moritz: okay, great. | ||
felher prints it and runs to catch the bus | |||
bye folks | |||
11:12
ab5tract joined
|
|||
moritz | ciao | 11:13 | |
11:17
daxim joined
|
|||
dalek | kudo/bs: 4f557f8 | jnthn++ | src/Perl6/Optimizer.pm: Correct method call done in optimizer when optimizer private method calls. |
11:19 | |
kudo/bs: 13d4b0a | jnthn++ | src/Perl6/Optimizer.pm: Correct an op signature. Sadly, doens't unbust immediate block inlining optimization, though. |
|||
kudo/bs: f173558 | jnthn++ | src/Perl6/ (2 files): Take care not to attempt to inline blocks inside scopes that were dynamically compiled during BEGIN time; this reified their lexpads, and thus we should not go fiddling with them. We got away with this before, though it was probably never really right. |
|||
kudo/bs: 8af0430 | jnthn++ | tools/build/Makefile.in: Now we can compile the setting with --optimize=3 again. |
|||
11:40
awoodland joined
12:06
NamelessTee joined
|
|||
[Coke] | # 02/29/2012 - niecza++ ; pugs (29.59%); rakudo (99.27%) | 12:11 | |
"niecza", 20302, 8, 751, 1539, 22600, 23752 | |||
"pugs" , 6008, 7, 2766, 729, 9509, 23561 | |||
"rakudo", 20154, 28, 605, 1864, 22651, 23762 | |||
dalek | p/bs: bd82150 | jnthn++ | src/6model/serialization.c: Add a diagnostic message rather than segfaulting on a closure having a missing outer context pointer. |
||
12:25
Bzek joined
12:31
Trashlord joined
12:36
colomon left
12:38
bluescreen10 joined
12:43
pernatiy left
|
|||
jlaire | moritz: heh, funny puzzle | 12:57 | |
dalek | kudo/bs: 7b5784b | jnthn++ | src/Perl6/World.pm: Method to add a folded constant no longer needs to cheat epicly. |
13:00 | |
p/bs: d11dc37 | jnthn++ | t/serialization/01-basic.t: Remove a now-bogus test - it relied on an implementation detail, so was probably a bad idea anyway. |
|||
p/bs: 52bf76b | jnthn++ | src/6model/serialization.c: Seems that ignoring lack of outer_ctx serves us better. It semi-legitimately-ish comes up in some cases, and ignoring those is safe enough for the time being. This fixes pre-compilation of enums (and perhaps some other bits too), and is the last known blocker for merging bs. |
|||
moritz | \o/ | ||
jlaire: did you solve it? | |||
jnthn | moritz: Any objections to going for the merge? | 13:01 | |
jlaire | moritz: yep, and apparently I'm a pre-school child and not a programmer :| | ||
jnthn | There may be undiscovered issues, but I suspect we'll find them faster with people using it rather than it being sat in a branch. :) | ||
moritz | jnthn: -1 objections, +1 to merging :-) | 13:02 | |
jnthn | Can I hear your negative objection? ;-) | ||
OK, let's do this! | |||
dalek | p: 9ff82b3 | jnthn++ | / (36 files): Merge branch 'master' into bs |
13:04 | |
p: 00c5509 | jnthn++ | src/6model/serialization.c: Patch from tadzik++ to get bs building on bleed Parrot. |
|||
p: 9b2a92b | jnthn++ | src/6model/reprs/P6bigint.c: Seems P6bigint.copy_to passed the arguments to mp_init_copy backwards (not helped by the fact that it takes them the opposite way around to mp_copy). Sadly, this alone doesn't seem to fix the heap corruption. |
|||
p: 3553834 | jnthn++ | src/HLL/World.pm: Code-gen building of list of static code refs in a different Parrot sub, to reduce load on IMCC register allocator a little. |
|||
p: 47ed8e9 | jnthn++ | src/HLL/World.pm: Don't need to natter about how much data we serialized in the build output now. :-) |
|||
p: bd82150 | jnthn++ | src/6model/serialization.c: Add a diagnostic message rather than segfaulting on a closure having a missing outer context pointer. |
|||
p: d11dc37 | jnthn++ | t/serialization/01-basic.t: Remove a now-bogus test - it relied on an implementation detail, so was probably a bad idea anyway. |
|||
p: 52bf76b | jnthn++ | src/6model/serialization.c: Seems that ignoring lack of outer_ctx serves us better. It semi-legitimately-ish comes up in some cases, and ignoring those is safe enough for the time being. This fixes pre-compilation of enums (and perhaps some other bits too), and is the last known blocker for merging bs. |
|||
jnthn | hm, little noisy... :) | ||
dalek | kudo/nom: c077570 | jnthn++ | / (20 files): Merge branch 'nom' into bs |
13:06 | |
kudo/nom: 136ef41 | jnthn++ | tools/build/NQP_REVISION: Update NQP_REVISION to one in the NQP bs branch, to ease trying out the bs branch a bit. Remove a completed ROADMAP item. |
|||
13:06
dalek left,
Trashlord left
|
|||
jnthn | huh, it got it the wrong way around... :) | 13:06 | |
masak | moritz: I solved the riddle in 10 seconds. ;) | ||
13:06
dalek joined,
ChanServ sets mode: +v dalek
|
|||
jnthn | masak: You're SO childish :) | 13:06 | |
masak | but I feel I was lucky, because the header made me switch to lateral mode first thing I did. | ||
jlaire | it took me several minutes | 13:07 | |
moritz | jnthn: I think your merge was correct-ish | ||
jnthn: you merged nom into bs, and then bs into nom. The latter was a fast-forward merge, so no merge commit was made for it | |||
jnthn | moritz: It was, it looks fine. | ||
kudo/nom: 4536120 | jnthn++ | docs/ChangeLog: A couple of ChangeLog notes about the effects of bs. |
13:10 | ||
au | hmm it took me a full six minutes :) | 13:13 | |
(solving the puzzle algebraically in a decidedly non-childish way) | |||
13:13
Trashlord joined
|
|||
moritz | fwiw I stared at it for a minute or two, then did something else, and after a minutes not thinking about I knew the answer :-) | 13:17 | |
au finally "gets" the lateral reference right after solving it | |||
heh. nice puzzle indeed :) | |||
moritz | *a few minutes | 13:18 | |
[Coke] | moritz: perlgeek.de/en/imprint is stuck in historic pumpking times. | 13:20 | |
moritz | jnthn: so, constant declarators should now be easy to do, right? | ||
[Coke]: "historic pumpking times"? | 13:21 | ||
[Coke] rants about irc again. I should be able to ignore dalek sends to #foo that i've already seen in #bar | |||
daxim | who is the current pumpking? | ||
[Coke] | moritz: Rafael Garcia-Suarez ? | ||
moritz | [Coke]: oh, you mean the copyright date in the footer? | 13:22 | |
daxim | grep for pumpking on the page. | ||
moritz | oh, that too | ||
thanks | |||
13:23
Nalla joined,
Nalla left
|
|||
moritz | fixing now | 13:24 | |
13:24
conntrack left
13:25
Bzek left
13:32
grondilu joined
|
|||
grondilu | perl6: package Foo { our multi sub talk { say "hi" } }; Foo::talk; | 13:32 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«Potential difficulties: &talk is declared but not used at /tmp/StirSsDcvR line 1:------> package Foo { our multi sub talk ⏏{ say "hi" } }; Foo::talk;hi» | ||
..rakudo 453612: OUTPUT«Missing or wrong version of dependency 'src/gen/CORE.setting'current instr.: '' pc 1312 (src/gen/SAFE.setting.pir:499) (src/SAFE.setting:1)» | |||
..pugs b927740: OUTPUT«hi» | |||
13:32
sisar joined
|
|||
sisar | o/ | 13:33 | |
grondilu | niecza--, rakudo--, pugs++ :) | ||
jnthn | heh, that looks like a Rakudo build fail. | ||
Or something... | |||
grondilu | perl6: package Foo { our sub talk { say "hi" } }; Foo::talk; | 13:34 | |
p6eval | rakudo 453612: OUTPUT«Missing or wrong version of dependency 'src/gen/CORE.setting'current instr.: '' pc 1312 (src/gen/SAFE.setting.pir:499) (src/SAFE.setting:1)» | ||
..pugs b927740, niecza v15-2-gd19c478: OUTPUT«hi» | |||
sisar is installing rakudo from scratch, coz he screwed up something and was unable to merge conflict | |||
jnthn: build fails? huh, i'm cloning into rakudo now and will build soon, so will be able to confirm if build fails | 13:35 | ||
grondilu | nom: say "hello" | 13:36 | |
p6eval | nom 453612: OUTPUT«Missing or wrong version of dependency 'src/gen/CORE.setting'current instr.: '' pc 1312 (src/gen/SAFE.setting.pir:499) (src/SAFE.setting:1)» | ||
grondilu | fail builed confirmed :) | ||
sisar | grondilu++ | ||
so maybe i should wait before it is resolved | 13:37 | ||
grondilu | indeed | ||
sisar has been without rakudo for 24hrs now :( | 13:38 | ||
jnthn | I think it may only be SAFE.setting with issues. | ||
sisar | .o.O( time to use niecza more) | ||
jnthn | sisar: The build issue only affects SAFE.setting, which is used by p6eval. | 13:39 | |
sisar: It's highly unlikely you'll be using that locally | 13:40 | ||
sisar: So go ahead and build. | |||
sisar | moritz: +1 #wish for UI designers... | ||
jnthn | Plus the bs branch just landed so the build should be faster than before :) | ||
sisar | jnthn: oh. great ! :) | ||
13:41
conntrack joined
|
|||
dalek | kudo/nom: 2aa69ed | jnthn++ | src/Perl6/ (2 files): Enable use of BEGIN phasers as r-values. |
13:42 | |
kudo/nom: 455035f | jnthn++ | src/Perl6/Actions.pm: Quick crack at non-literal constants. |
|||
sisar | have been hearing about bs for a long time. It used to take almost 20min on my *very* slow machine to build, so lets see now... jnthn++ | ||
dalek | ast: f25bc31 | jnthn++ | S04-phasers/begin.t: Unfudge a couple of spectests for BEGIN in r-value context. |
||
ast: a84a160 | jnthn++ | S04-declarations/constant.t: Unskip some tests for non-literal constants. |
|||
jnthn | moritz: Seems so... :) | ||
moritz | \o/ | 13:43 | |
dalek | atures: 7dd72b9 | jnthn++ | features.json: Rakudo now more fully supports the constant declarator. |
13:44 | |
grondilu | nom: constant C = <13 42> | ||
p6eval | nom 453612: OUTPUT«Missing or wrong version of dependency 'src/gen/CORE.setting'current instr.: '' pc 1312 (src/gen/SAFE.setting.pir:499) (src/SAFE.setting:1)» | ||
grondilu | niecza: constant C = <13 42> | 13:45 | |
p6eval | niecza v15-2-gd19c478: ( no output ) | ||
grondilu | niecza: say constant C = <13 42> | ||
p6eval | niecza v15-2-gd19c478: OUTPUT«13 42» | ||
13:45
conntrack left
|
|||
grondilu | It really seems to me that niecza is much more advanced than rakudo, isn't it? | 13:45 | |
13:46
noam left
|
|||
dalek | atures: 03a13f2 | jnthn++ | features.json: A couple more features tweaks for Rakudo. |
13:46 | |
jnthn | grondilu: No. | ||
grondilu: It is in some areas, and not in others. | |||
13:47
noam joined
|
|||
jnthn | > say constant C = <13 42> | 13:47 | |
13 42 | |||
Works locally. | |||
grondilu | what's « > » ? | ||
moritz | grondilu: for example rakudo's object and meta-object model is more advanced, whereas niecza's grammar/rules engine is better | ||
« » is a quoting construct | |||
much like qw//, but more magical, and interpolates stuff etc. | 13:48 | ||
grondilu | no I mean: "> perlcode" here on this chan | ||
oh hang on. I understand | |||
moritz | it's from the REPL | ||
jnthn | Just copy-paste from repl | ||
13:49
pernatiy joined
|
|||
grondilu | Ok. Silly of me. | 13:49 | |
moritz | jnthn: should I update the feature matrix? | ||
grondilu | It's good that these type of constants work now. I've been waiting for that for a while. | ||
jnthn | moritz: Already did. | 13:50 | |
moritz | oh right | ||
jnthn | moritz: Oh, I updated features.json...the rest is automated, no | ||
? | |||
13:50
bkolera left
|
|||
moritz | jnthn: yes, it's updated hourly or so | 13:50 | |
jnthn | ok | ||
Think I see what's up with SAFE.setting. | 13:53 | ||
13:53
mtk left
|
|||
jnthn | oh noes, I forgot to lunch... :) | 13:53 | |
dalek | atures: 588fab1 | moritz++ | template.html: note that the feature matrix is about development versions, not releases |
||
13:53
mtk joined
|
|||
tadzik | sniff sniff, do I smell a branch merge? :) | 13:54 | |
13:54
Trashlord left
|
|||
jnthn | tadzik: Yes, it happened. :) | 13:54 | |
tadzik | lol! | ||
grondilu | Is this feature matrix somewhere in the git directory (I don't have regular internet access so I'd like to look at it offline) ? | 13:55 | |
moritz | grondilu: well, the HTML page at perl6.org/compilers/features is generated from features.json and template.html inside the perl6/features repo | ||
dalek | kudo/nom: 28f3d64 | jnthn++ | src/Perl6/World.pm: Settings are load dependencies, not fixups. Seems to fix --setting=SAFE usage (and thus p6eval). |
13:56 | |
jnthn | evalbot rebuild nom | ||
p6eval | NOT OK (maybe a rebuild is already in progress?) | ||
jnthn | evalbot rebuild rakudo | ||
p6eval | OK (started asynchronously) | ||
dalek | Rebuild of rakudo complete. | ||
jnthn | Uh. :) | ||
I know I sped up the build but... P | |||
:P | |||
moritz | grondilu: you just need Perl 5 with JSON and HTML::TEmplate::Compiled to generate it locally | ||
jnthn | evalbot rebuild rakudo | ||
p6eval | OK (started asynchronously) | ||
dalek | Rebuild of rakudo complete. | ||
masak | o.O | ||
moritz | jnthn: 'rakudo' is the 'b' branch | ||
masak | oh! | ||
jnthn | oh? | ||
but | 13:57 | ||
rakudo: say 42 | |||
moritz | jnthn: and it checks for updates, and doesn't do a recompile unless necessary | ||
p6eval | rakudo 453612: OUTPUT«Missing or wrong version of dependency 'src/gen/CORE.setting'current instr.: '' pc 1312 (src/gen/SAFE.setting.pir:499) (src/SAFE.setting:1)» | ||
jnthn | moritz: ah, ok | ||
[Coke] | make: *** [src/stage2/nqpmo.pbc] Segmentation fault | ||
jnthn | So is it nom? | ||
moritz | jnthn: yes, the mappings in p6eval and of the build system have diverged a bit | ||
jnthn | ok | ||
[Coke] tries a realclean and rebuild. | |||
jnthn | [Coke]: Suggest realclean et al. | 13:58 | |
13:58
grondilu left
|
|||
jnthn | [Coke]: It was a 200+ commit merge...quite a bit changed. :) | 13:58 | |
evalbot: rebuild nom | |||
evalbot rebuild nom | |||
p6eval | NOT OK (maybe a rebuild is already in progress?) | ||
jnthn | Hmpfh. | 13:59 | |
Seems it musta started just before I did the commit to fix things... | |||
moritz | jnthn: patience :-) | 14:00 | |
[Coke] | jnthn: same failure building nqp after removing npq/ and parrot/ | ||
(on feather) | 14:01 | ||
jnthn | Is p6eval not on feather? | ||
It seems to have got rather further than that... | |||
moritz | no | 14:02 | |
[Coke] | (so, rm -rf nqp/ parrot/; make realclean; perl Configure.pl --gen--parrot .... segfault.) | ||
moritz | it's hosted on a machine provided by diakopter++ | ||
jnthn | ah, ok | ||
moritz | [Coke]: I'll try to reproduce | 14:03 | |
jnthn | Curious. Backtrace most welcome. | ||
I thought I had a feather account somewhere too... | |||
moritz | [Coke]: fwiw 'git clean -xdf' is usually more effective than 'make relclean' (deletes all files that are not under version control) | ||
[Coke] | gist.github.com/1950017 - backtrace | 14:05 | |
moritz: yes, but I have test scripts and other things about that I don't want to remove. (also, this failure is happening in nqp, which I cleaned pretty effectively) | |||
moritz | [Coke]: ok | 14:06 | |
sisar | jnthn: build took 10 min. Almost a redution of 50% in build time for me :) | 14:07 | |
[Coke] tries a straight nqp build outside of rakudo. | |||
tadzik | now that the build time isn't annoying I could maybe hack something up :) | ||
jnthn | tadzik: Set! KeyBag :) | 14:08 | |
moritz | steal them from niecza :-) | ||
jnthn | aye :) | ||
14:09
agentzh joined
|
|||
jnthn | [Coke]: Hm...curious backtrace. 32-bit or 64-bit? | 14:09 | |
14:09
benabik left
|
|||
[Coke] | jnthn: feather is 32, I believe. | 14:09 | |
jnthn | OK | ||
bbiab, need food | 14:10 | ||
moritz too gets a segfault on feather while building nqp | 14:12 | ||
Linux feather 2.6.32-5-amd64 #1 SMP Mon Mar 7 21:35:22 UTC 2011 x86_64 GNU/Linux | |||
looks like 64bit | |||
14:15
havenn joined
|
|||
flussence | you can have a 32-bit userspace even with a x86-64 kernel, though it's pretty rare | 14:16 | |
14:17
conntrack joined
14:18
Ulti joined
|
|||
Ulti | irclog.perlgeek.de/perl6/2010-09-24 <rjbs> I've been waiting for someone to write a PILE OF POO operator for p6... | 14:19 | |
[Coke] | (32/64) whoops. | ||
Ulti | I hate that I did this independetly blog.mattoates.co.uk/2012/02/perl6-...ators.html | 14:20 | |
took 2 years for operating systems to catch up I guess | |||
14:21
tokuhirom joined
|
|||
[Coke] | Ulti++ | 14:21 | |
masak | Util: Y U shuffle manually and not just .pick(*) ? | 14:23 | |
tadzik | jnthn: exactly :) | 14:25 | |
Ulti | masak: because I don't know any perl6 ;) | 14:27 | |
14:29
att left
|
|||
Ulti | there is also an out by one error on that shuffle iirc | 14:29 | |
but its not like it was a serious program :) | 14:30 | ||
masak just saw that "Ulti" ne "Util"... | |||
Ulti | erk that's quite confusing, sorry | 14:31 | |
[Coke] should run the daily tests now, as pugs would beat rakudo! | |||
Ulti | I've had this nick a long while though | ||
flussence | nom: 'iltu'.comb.pick(*).join.ucfirst.say | ||
p6eval | nom 28f3d6: OUTPUT«Ulti» | ||
14:31
Ulti is now known as Ultima
14:32
Trashlord joined,
Ultima is now known as Ulti
|
|||
flussence | wait, that was... abnormally quick | 14:32 | |
nom: 'iltu'.comb.pick(*).join.ucfirst.say | |||
[Coke] | nom: 'anagram'.comb.pick(*).join.say | ||
p6eval | nom 28f3d6: OUTPUT«Util» | ||
nom 28f3d6: OUTPUT«arngama» | |||
masak | Ulti: that's fine, keep "Ulti" :) | ||
[Coke] | perl6: 'anagram'.comb.pick(*).join.say | ||
p6eval | pugs b927740: OUTPUT«anagram» | ||
..niecza v15-2-gd19c478: OUTPUT«anagamr» | |||
..rakudo 28f3d6: OUTPUT«anagarm» | |||
Ulti | so long in fact nickserv doesn't have me registered on anything else | ||
masak | nod | 14:33 | |
Util, Ulti: I apologize in advance for all the mis-tabs and mis-attributions I will make :) | |||
Ulti | so is there a comprehensive place to get all the methods you can use on the various Perl6 types? | 14:34 | |
javadoc style (dare I say) | |||
masak | nom: say Array.^methods | ||
p6eval | nom 28f3d6: OUTPUT«new bind_pos delete flattens REIFY STORE_AT_POS STORE PARAMETERIZE_TYPE at_pos perl new Bool Int end fmt flat list flattens tree Capture Parcel at_pos eager elems exists gimme infinite iterator munch pick pop push roll reverse rotate shift unshift splice sort classify… | ||
masak | Ulti: you can check out S32, which is a good start. | ||
Ulti | heh ok | ||
you need somewhere to know you can do .methods | |||
masak | perlcabal.org/syn/ | ||
note .^methods with a ^ | 14:35 | ||
it's because .^methods sits not on an ordinary object, but on the metaclass object. | |||
14:36
sftp joined
|
|||
Ulti | I think its probably worth me passively hanging out in here | 14:36 | |
jnthn | nom: say "Do I respond quickly now?" | 14:37 | |
p6eval | nom 28f3d6: OUTPUT«Do I respond quickly now?» | ||
[Coke] | nom: say ?"Do I respond quickly now?" | 14:40 | |
p6eval | nom 28f3d6: OUTPUT«True» | ||
masak | Ulti: it is. welcome. | 14:41 | |
14:41
att joined
|
|||
Ulti | thanks, is it too late to request a language feature? ;) | 14:41 | |
moritz | depends on the feature | 14:42 | |
jnthn | Hmm...I just did a build on: Linux Debian-50-lenny-64-LAMP 2.6.26-2-amd64 #1 SMP Fri Aug 14 07:12:04 UTC 2009 x86_64 GNU/Linux | ||
And it worked | |||
Ulti | can we get some goal evaluated generators and co-expressions just-like Icon/Unicon has just to stick it to Python people who dont have real generators | ||
14:42
JimmyZ joined
|
|||
[Coke] | Ulti: it's probably already in. | 14:42 | |
jnthn | That looks...remarkably like what's on feather... | ||
Ulti | [Coke]: lol | ||
moritz | if you propose we morph Perl 6 into a pure, functional language that requires monads to do IO... too late :-) | ||
Ulti | heh | 14:43 | |
JimmyZ | perl6: constant @primes = 2, 3, -> $p { ($p+2, $p+4 ... -> $n { $n %% none @primes ... * >= sqrt $n })[*-1] } ... *; my @x.plan: @primes; say @x[^20]; | ||
p6eval | rakudo 28f3d6: OUTPUT«===SORRY!===Variable @primes is not declaredat /tmp/4gQ95rKH2V:1» | ||
..niecza v15-2-gd19c478: OUTPUT«2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71» | |||
..pugs b927740: OUTPUT«***  Unexpected "@primes" expecting "=", operator, ")", context, ":" or "(" at /tmp/DkSiDMgPgq line 1, column 10» | |||
Ulti | the inclusion of reduce as a first class method on perl6 is something I'm looking forward to | ||
moritz | Ulti: what are "goal evaluated generators"? | ||
nom: say (1..10).reduce(&[+]) | 14:44 | ||
p6eval | nom 28f3d6: OUTPUT«55» | ||
jnthn | nom: my @a = @a; | ||
p6eval | nom 28f3d6: ( no output ) | ||
Ulti | basically its a generator that has some sense of a failed or successful output | ||
jnthn | JimmyZ: Thanks...guess we never had the opportunity for that one to fail before :) | ||
JimmyZ | nom: constant @primes = 2, 3 | ||
p6eval | nom 28f3d6: ( no output ) | ||
Ulti | so you want numbers from a range that meet a criteria so you just give an expression of the criteria to get the generator rather than expressing your yield on that criteria | 14:45 | |
moritz | nom: say (1..10).grep: * %% 3 | ||
p6eval | nom 28f3d6: OUTPUT«3 6 9» | ||
moritz | like that? | ||
nom: say (1..10).map: * * 3 | |||
p6eval | nom 28f3d6: OUTPUT«3 6 9 12 15 18 21 24 27 30» | ||
JimmyZ just can't understand constant @primes = .... @primes .... ; which likes my @primes = @primes; | 14:46 | ||
Ulti | the modulo one would be goal oriented if 1 to 10 wasn't actually generated at any point | ||
at least this is how I assume the internals of Icon work | |||
also there is a fail state which is generated and either ignored or something can act on that | 14:47 | ||
but the fail doesn't get put in any output | |||
kind of like an exception I guess | |||
moritz | Ulti: so the generator can't be Turing complete, but is restricted to a subset that the goal analyzer can undertsand? | ||
*understand | |||
nom: say 0, *+3 ... ^ * > 10; | 14:48 | ||
p6eval | nom 28f3d6: OUTPUT«No applicable candidates found to dispatch to for 'Numeric'. Available candidates are::(Mu:U \$v, Mu %_!) in method Numeric at src/gen/CORE.setting:659 in sub prefix:<^> at src/gen/CORE.setting:4417 in block <anon> at /tmp/vNXUVDwXxU:1» | ||
Ulti | if by not turing complete you dont know if it will halt? then yes | ||
moritz | nom: say 0, *+3 ...^ * > 10; | ||
p6eval | nom 28f3d6: OUTPUT«0 3 6 9» | ||
moritz | then we don't have such a thing, afaict | ||
Ulti | there are lots of examples on rosettacode that probably do this sort of thing | 14:49 | |
does perl6 have the concept of 'by' some interval? | |||
this is a recent beef with perl5 I've had | |||
nom: say 1.0,1.5 ... 10.0; | 14:51 | ||
p6eval | nom 28f3d6: OUTPUT«1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5 8 8.5 9 9.5 10» | ||
Ulti | YAY | ||
Ulti hugs all perl6 people | 14:52 | ||
man that's natural too | |||
mikemol | nom: say 1.0,1.3 ... 10.0; | ||
p6eval | nom 28f3d6: OUTPUT«1 1.3 1.6 1.9 2.2 2.5 2.8 3.1 3.4 3.7 4 4.3 4.6 4.9 5.2 5.5 5.8 6.1 6.4 6.7 7 7.3 7.6 7.9 8.2 8.5 8.8 9.1 9.4 9.7 10» | ||
mikemol | Neat | ||
mikemol likes | |||
Ulti | so moritz's example of *+3 is kind of like the operation you want to go to the next state in the sequence | 14:53 | |
masak | nom: say 10.0, 9.7 ... 1.0 | ||
p6eval | nom 28f3d6: OUTPUT«10 9.7 9.4 9.1 8.8 8.5 8.2 7.9 7.6 7.3 7 6.7 6.4 6.1 5.8 5.5 5.2 4.9 4.6 4.3 4 3.7 3.4 3.1 2.8 2.5 2.2 1.9 1.6 1.3 1» | ||
tadzik | std: my $s = set <foo bar baz>; my $s | 14:54 | |
p6eval | std a540d4e: OUTPUT«Potential difficulties: Useless redeclaration of variable $s (see line 1) at /tmp/FMk1lzAXgs line 1:------> my $s = set <foo bar baz>; my $s⏏<EOL>ok 00:01 110m» | ||
masak | infix:<...> basically does most of the things people feel are lacking from infix:<..> :) | ||
tadzik | Useless redeclaration, hmm | ||
JimmyZ | nom: say "1.0.jpg","1.3.jpg" ... "10.0.jpg"; | ||
p6eval | nom 28f3d6: OUTPUT«No applicable candidates found to dispatch to for 'Numeric'. Available candidates are::(Mu:U \$v, Mu %_!) in method Numeric at src/gen/CORE.setting:659 in sub infix:<-> at src/gen/CORE.setting:2257 in sub infix:<-> at src/gen/CORE.setting:2257 in block <anon… | ||
JimmyZ | nom: say "1.0.jpg" ... "10.0.jpg"; | ||
p6eval | nom 28f3d6: OUTPUT«1.0.jpg 2.0.jpg 3.0.jpg 4.0.jpg 5.0.jpg 6.0.jpg 7.0.jpg 8.0.jpg 9.0.jpg 10.0.jpg» | ||
masak | tadzik: yeah, because you declare it twice :P | ||
Ulti | nom: say 1, *+(*+1)/* ... 5 | ||
p6eval | nom 28f3d6: OUTPUT«Not enough positional parameters passed; got 1 but expected 3 in block <anon> at /tmp/b5p663tgC7:1» | ||
masak | tadzik: duh. | ||
14:54
agentzh left
|
|||
tadzik | masak: github.com/perl6/roast/blob/master...set.t#L134 | 14:54 | |
I'm wondering why does the test use it | |||
masak | tadzik: looks like a thinko. | 14:55 | |
tadzik | I'm curious what was the correct thinko-ing :) | ||
mikemol | nom: say 1.0,1.7 ... 3.0; | ||
JimmyZ | nom: say "1.1.jpg" ... "10.0.jpg"; # timeout | ||
p6eval | nom 28f3d6: OUTPUT«(timeout)» | 14:56 | |
moritz | nom: say '1.1.jpg'.succ | ||
p6eval | nom 28f3d6: OUTPUT«2.1.jpg» | ||
moritz | nom: say '9.1.jpg'.succ | ||
p6eval | nom 28f3d6: OUTPUT«10.1.jpg» | ||
moritz | so it never reaches 10.0.jpg | 14:57 | |
which is why it times out | |||
if you want fuzzy conditions, provide a fuzzy condition | |||
JimmyZ | nom: say "1.0.jpg","1.3.jpg" ... "10.0.jpg"; | 14:58 | |
p6eval | nom 28f3d6: OUTPUT«No applicable candidates found to dispatch to for 'Numeric'. Available candidates are::(Mu:U \$v, Mu %_!) in method Numeric at src/gen/CORE.setting:659 in sub infix:<-> at src/gen/CORE.setting:2257 in sub infix:<-> at src/gen/CORE.setting:2257 in block <anon… | ||
JimmyZ | and this one ? is it expected? | ||
moritz | JimmyZ: well, maybe not the failure mode, but it's expected that it doesn't work | ||
flussence | nom: say (1.0, 1.3 ... 10.0) X~ '.jpg' # :) | 14:59 | |
moritz | I mean, we have no primitive that tells us the difference between '1.0.jpg' and '1.3.jpg' | ||
p6eval | nom 28f3d6: OUTPUT«1.jpg 1.3.jpg 1.6.jpg 1.9.jpg 2.2.jpg 2.5.jpg 2.8.jpg 3.1.jpg 3.4.jpg 3.7.jpg 4.jpg 4.3.jpg 4.6.jpg 4.9.jpg 5.2.jpg 5.5.jpg 5.8.jpg 6.1.jpg 6.4.jpg 6.7.jpg 7.jpg 7.3.jpg 7.6.jpg 7.9.jpg 8.2.jpg 8.5.jpg 8.8.jpg 9.1.jpg 9.4.jpg 9.7.jpg 10.jpg» | ||
JimmyZ | nom: say 1.0,1.3 ... 10.0; | ||
p6eval | nom 28f3d6: OUTPUT«1 1.3 1.6 1.9 2.2 2.5 2.8 3.1 3.4 3.7 4 4.3 4.6 4.9 5.2 5.5 5.8 6.1 6.4 6.7 7 7.3 7.6 7.9 8.2 8.5 8.8 9.1 9.4 9.7 10» | ||
14:59
thou joined
|
|||
moritz | flussence++ | 14:59 | |
flussence | nom: say '1.3.jpg'.Numeric | ||
p6eval | nom 28f3d6: OUTPUT«Failure.new(exception => X::AdHoc.new(payload => "trailing characters after number in conversion"))» | ||
flussence | I'm not entirely sure how the numification works myself | 15:00 | |
moritz | well, it tries to parse it as a number | ||
and gets tup to '1.3' | |||
and then it finds another period, and can't make any sense of it | |||
JimmyZ | nom: say "1.0.jpg" ... "10.0.jpg"; # I likes this one | ||
p6eval | nom 28f3d6: OUTPUT«1.0.jpg 2.0.jpg 3.0.jpg 4.0.jpg 5.0.jpg 6.0.jpg 7.0.jpg 8.0.jpg 9.0.jpg 10.0.jpg» | ||
flussence | (also, X~ seems like the sort of thing I can imagine using *a lot* - "say $html-tr-start X~ @contents X~ $html-tr-end"...) | 15:02 | |
15:03
benabik joined
15:04
wtw left
15:07
havenn left,
havenn joined
15:08
kaare_ joined
|
|||
moritz | flussence: yes, it's a very useful meta op | 15:10 | |
15:10
Kharec joined
|
|||
Kharec | I've rakudo 2011.07 on a debian GNU/Linux Sid. I've got 4s for any command in perl6, even perl6 -v. What do you think? It's normal? | 15:13 | |
moritz | Kharec: it sounds excessive even for such an old version | 15:14 | |
Kharec: the last development version takes 0.3s for startup on my machine | |||
15:14
thou left
|
|||
moritz | and perl6 -v runs in about 0.1s | 15:14 | |
benabik | Did bs get merged? | 15:15 | |
tadzik | yet | ||
yes | |||
Kharec | I try to compile the last version, so. | ||
thanks. | |||
benabik | That explains it. I have a script that pulls the latest changes and displays them to me. Was wondering why it was so long. | 15:16 | |
Are there any regressions? | 15:18 | ||
15:19
Patterner left
|
|||
moritz | benabik: the nqp build is busted on feather. We don't know why :/ | 15:19 | |
benabik | moritz: That's a bad regression. | ||
moritz | other than that, we aren't aware of any regressions | ||
benabik | \o/ jnthn++ | 15:20 | |
tadzik | are there any circumstances under which .WHAT would call .gist? :/ | 15:21 | |
15:21
Kharec left
15:22
Psyche^ joined,
Psyche^ is now known as Patterner
15:23
JimmyZ left
|
|||
moritz | tadzik: erm, .WHAT returns the type object. It doesn't call .gist | 15:23 | |
say() calls .gist | |||
tadzik | yeah, that was my thinking | ||
masak | nom: say Int.^name | 15:26 | |
p6eval | nom 28f3d6: OUTPUT«Int» | ||
benabik | nom: say Int.WHAT.^parents(:all)>>.name | 15:28 | |
p6eval | nom 28f3d6: OUTPUT«Method 'name' not found for invocant of class 'Real' in method dispatch:<hyper> at src/gen/CORE.setting:840 in block <anon> at /tmp/Oko_yaKy6r:1» | ||
benabik | Probably worded that wrong. Whichever. | ||
tadzik | Type check failed in assignment to '$s'; expected 'Set' but got 'Set' | 15:30 | |
excellent :) | |||
benabik | ... That's not the word I'd use. ;) | 15:31 | |
15:33
tokuhirom left
|
|||
masak | benabik: it's .^name, not .name | 15:34 | |
benabik | masak++ | ||
masak | tadzik: could you golf it and show it here? | ||
benabik | nom: say Int.WHAT.^parents(:all)>>.^name | ||
p6eval | nom 28f3d6: OUTPUT«Real Cool Any Mu» | ||
masak | tadzik: I can imagine at least one way that might happen. | ||
moritz | fwiw Int.WHAT === Int | ||
masak | nom: my Set $a = set 1, 2, 3; say $a | ||
p6eval | nom 28f3d6: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&set' called (line 1)» | 15:35 | |
tadzik | $s.^mro returns Set() Any() Mu() | ||
masak | nom: my Set $a = Set.new(1, 2, 3); say $a | ||
p6eval | nom 28f3d6: OUTPUT«Default constructor only takes named arguments in method new at src/gen/CORE.setting:571 in block <anon> at /tmp/jzrjSuBk23:1» | ||
moritz | nom: my class A { }; sub f(A $) { }; { my class A { }; f(A) } | ||
p6eval | nom 28f3d6: OUTPUT«Nominal type check failed for parameter ''; expected A but got A instead in sub f at /tmp/dqCS255pSs:1 in block <anon> at /tmp/dqCS255pSs:1» | ||
masak | nom: my Set $a = Set.new(); say $a | ||
p6eval | nom 28f3d6: OUTPUT«Set.new()» | ||
benabik | nom: say Int; say Int.WHAT | ||
p6eval | nom 28f3d6: OUTPUT«Int()Int()» | ||
masak | nom: my Set $a; { class Set {}; $a = Set.new }; say "alive" | ||
benabik | Ah, Int isa Int. I forgot that. | ||
p6eval | nom 28f3d6: OUTPUT«Type check failed in assignment to '$a'; expected 'Set' but got 'Set' in block <anon> at /tmp/XrNINNxW8m:1» | ||
tadzik | moritz: that's interesting | ||
masak | tadzik: ^^ | ||
moritz | masak: I was faster :-) | ||
tadzik | I also don't get it :) | 15:36 | |
masak | moritz: dang :) | ||
moritz | Set is stubbed in src/core/stubs.pm | 15:37 | |
tadzik | ooh | ||
moritz | (but not as a stub, just as an empty class declaration) | ||
tadzik | and the one in niecza is not Iterable | 15:38 | |
moritz | niecza: say Iterable | 15:39 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«===SORRY!===Undeclared name: 'Iterable' used at line 1Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1362 (die @ 3)  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 33)  at /hom… | ||
15:39
aindilis left
|
|||
moritz | niecza doesn't have Iterable | 15:39 | |
masak | niecza: say KitchenSink | 15:40 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«===SORRY!===Undeclared name: 'KitchenSink' used at line 1Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1362 (die @ 3)  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 33)  at /… | ||
15:41
aindilis joined
15:46
Patterner left
|
|||
[Coke] | I can try to debug the nqp thing on feather, but not anytime soon. | 15:47 | |
(like, saturday maybe.) | |||
need to do moar $dayjob. | |||
15:50
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
jnthn back | 15:54 | ||
Have we managed to get nqp build to explode on any machine besides feather? | 15:55 | ||
15:56
thou joined
|
|||
lumi___ | jnthn: Mine does | 15:57 | |
15:57
benabik left
|
|||
jnthn | lumi___: OK. Tell me about your OS/machine/bitness :) | 15:58 | |
lumi___ | jnthn: 64bit linux | 15:59 | |
jnthn | lumi___: Hm. Same as feather. But...we have a bunch of 64bit linux that it works on too. | 16:00 | |
moritz tries on another box | |||
jnthn wishes he could figure out a pattern... | 16:01 | ||
lumi___ | I'm still here for a short while, anything I should check? | 16:02 | |
moritz | lumi___: how old or new is your system? | 16:03 | |
feather is a Debian unstable, so much more recent than my boxes | |||
jnthn | aha, I remembered my feather login details | 16:06 | |
bbkr | what is the proper way to assign default values to variables defined in parent class in child classes? I'm trying to make github.com/bbkr/jsonrpc/blob/maste...ror.pm#L46 work on 2012.02, however it complaints about attributes not declared despite fact that they are present in parent class. | ||
lumi___ | moritz: Ubuntu Natty | ||
moritz | bbkr: you don't have access to the parent classes attributes | 16:07 | |
bbkr: if you want that to work, the parent class needs to declare them as rw | 16:08 | ||
bbkr: or you can use methods instead of attributes | 16:09 | ||
TimToady | masak: here's the same program written in the part of P6 that does support continuations: gist.github.com/1950874 | ||
16:09
aindilis left
|
|||
moritz | class JSON::RPC::ParseError does JSON::RPC::Error { method code() { -32700 }; method message() { 'Parse Error' } } | 16:09 | |
[Coke] | jnthn: are you using the specific version of parrot nqp is requiring or "latest" ? | 16:10 | |
TimToady | (only runs under niecza though) | ||
16:10
aindilis joined
|
|||
jnthn | [Coke]: Specific I believe | 16:10 | |
[Coke] could setup a bisect, he supposes, to see if it's nqp. | |||
moritz | I've observed the segfault with the specific parrot version on feather too | ||
TimToady | masak: so we should really figure out how to cross-dress the regex engine to look more like a logic engine :) | 16:11 | |
masak | TimToady: now that's more like it. | ||
jnthn | I'm building on feather now also | ||
masak | TimToady: you haven't really managed to eliminate boilerplate, but I really appreciate the effort. it's in the right direction. :) | 16:12 | |
jnthn | moritz: Same backtrace as [Coke] posted? | ||
moritz | jnthn: yes | ||
masak | I also considered the regex engine for this, but for some reason I didn't finish that thought. TimToady++ | ||
jnthn | masak: If only we had a mechanism for eliminating syntactic boilerplate ;) | ||
TimToady | we eliminate boilerplate with...er...macros... | ||
masak | TimToady: :P | 16:13 | |
TimToady and jnthn have the same thought again... | |||
masak | TimToady: one *really* nice thing is that the macro system already has &assert syntax. | ||
TimToady: in case you're in any doubt about it, that gist really deserves to be on RC. | 16:14 | ||
bbkr | moritz: marking them as rw did not help when they were assigned in BUILD signature (like in my code) directly to $!name. I'll just move assignment into BUILD block. thanks | ||
TimToady | was just thinking the same thing :) | ||
jnthn | moritz: If you comment out src/6model/serialization.c:93-95 does it help? | 16:15 | |
moritz: Though, I've got a build running here too so provided my feather build explodes can try it myself in a moment.. | |||
TimToady | though it's the wrong problem, the one from nothingmuch++ rather than the one from RC | ||
moritz | jnthn: will try | 16:16 | |
my other 64bit linux machine also built nqp fine | |||
TimToady | also, this one is definitely *not* a monadic solution, except in some baked in sense | ||
masak tweeted it: twitter.com/carlmasak/status/175253153334300673 | |||
moritz | jnthn: no, doesn't help | 16:18 | |
jnthn | moritz: Different backtrace? | 16:19 | |
jnthn would be surprised if not given we just comment out one of the lines in the bt ;) | |||
moritz | jnthn: on, seems to die one command later | 16:20 | |
or maybe not. I'm confused. | 16:21 | ||
jnthn: gist.github.com/1950989 | 16:22 | ||
jnthn | Wow. | ||
So...something is very wrong with the string seen hash. | |||
That's a bizzare bug. | 16:23 | ||
It's now crashing on line 99 which inserts into that hash. | |||
ok, here's goes with an nqp build on feather... | 16:24 | ||
jnthn waits for the explosion | |||
moritz | fwiw my patch added 2 lines | ||
(for commenting out) | |||
so line numbers might be a bit off | |||
16:25
wolfman2000 left
|
|||
jnthn | It segfaults. | 16:26 | |
[Coke] thinks nqp might not be ||make happy. | 16:27 | ||
16:28
att left
|
|||
jnthn | wtf. Disabling the seen string hash makes it survive the build. | 16:31 | |
16:32
pernatiy left,
pernatiy joined
|
|||
Util | perl6: my @pi_b := (-> *@a { ( 2 * @a.elems ) ** 2 }) ... *; say @pi_b[^5].Str; | 16:32 | |
p6eval | rakudo 28f3d6: OUTPUT«0 0 0 0 0» | ||
..pugs b927740: OUTPUT«***  Unexpected " say" at /tmp/X1mD9cILIT line 1, column 54» | |||
..niecza v15-2-gd19c478: OUTPUT«0 4 16 36 64» | |||
16:34
havenn left
|
|||
[Coke] | doesn't help the bisect that many of these aren't compiling for non-segfaulty reasons. | 16:34 | |
jnthn | [Coke]: Maybe due to differeing Parrot version needs or some such | 16:35 | |
[Coke]: Don't worry with the bisect - I don't think it'll be very informative. | |||
[Coke] | could be, I'm testing against the one I pulled originally. | 16:36 | |
ok. | |||
I'll leave it running, JIC. | |||
16:38
MayDaniel joined
|
|||
Util | Is the behavior of my code a known Rakudo bug? | 16:40 | |
moritz | Util: we don't run t/spec/S03-sequence/limit-arity-2-or-more.t so in some sense it's known | 16:41 | |
Util | perl6: my @pi_b := (-> *@a {@a.elems}) ... *; say @pi_b[^5].Str; | ||
p6eval | rakudo 28f3d6: OUTPUT«0 0 0 0 0» | 16:42 | |
..niecza v15-2-gd19c478: OUTPUT«0 1 2 3 4» | |||
..pugs b927740: OUTPUT«***  Unexpected " say" at /tmp/IJaFMACF7T line 1, column 39» | |||
Util | moritz: thanks | ||
16:43
pernatiy left
|
|||
TimToady | masak: the problem with generalizing the regex solution is that there is an implicit eval in the <{}> construct, and you can't easily pass thunks or other hardrefs through that; it really wants quasi/unquasi | 16:47 | |
even switching from numbers to strings shows the problem, since the amb would have to add quotes back in around the strings | 16:48 | ||
masak | aye. | 16:49 | |
TimToady | so maybe I won't RC it just yet | ||
masak | good news is that macros are really close to working for this kind of thing :) | ||
jnthn | ffs, what is doing on with these strings... | 16:51 | |
*going | |||
TimToady | masak: here's the RC version sans dethunking, and assuming strings: gist.github.com/1951347 | 16:53 | |
also works in niecza, and has a weird error in rakudo | 16:54 | ||
masak | najs. | 16:55 | |
TimToady | one would like to be able to abstrat the abcd-ness of it though | ||
*stract | |||
without losing the search tree pruning benefits | 16:56 | ||
masak | it doesn't bother me so much. | ||
at least it feels less important that highlighting the 'amb' and the assertions. | |||
than* | |||
TimToady | yes, but it's another dimension of boilerplate | 16:57 | |
masak | nod | ||
TimToady | one wants a stack-based amb/assert | ||
so that one can use an amb-containing block recursively | 16:58 | ||
or at least loopily, if don't consider Kleene recursive :) | 16:59 | ||
17:00
benabik joined,
marmalade joined
|
|||
masak | ;) | 17:00 | |
17:04
birdwind1pbird left,
packetknife joined
|
|||
masak decommutes | 17:05 | ||
17:05
havenn joined
|
|||
tadzik | Method 'pred' not found for invocant of class 'Scalar' | 17:11 | |
is Scalar even a Perl 6 type? | |||
moritz | yes | ||
it probably means you are missing a decontainerize somewhere | |||
17:11
att joined
|
|||
tadzik | it's just KeyBag code, I don't think it's using any cont-decont magic | 17:12 | |
jnthn | Well, or somewhere there's one too many containers... | ||
TimToady savors having used the masaktician to distract the masakbot from submitting the rakudobug I blatantly mentioned above | 17:13 | ||
jnthn | f6099d52 | 17:14 | |
17:14
dakkar left
|
|||
jnthn | oops | 17:14 | |
17:17
fglock joined
|
|||
bbkr | how to force Exception to print customized message to console if thrown? previously it was enough to provide Str {} method, however in 2012.02 all it prints is package name | 17:17 | |
17:18
ab5tract left
|
|||
moritz | bbkr: you have to inherit from Exception | 17:18 | |
bbkr | which I already did | 17:19 | |
moritz | bbkr: then method message() provides the actual message, and method .gist the full output (usually message + backtrace) | ||
nom: class MyFoo is Exception { methodd message() { 'OH NOEZ' } }; die MyFoo.new | |||
p6eval | nom 28f3d6: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 2» | ||
TimToady | it rubs me the wrong way when 'gist' means anti-summarize rather than summarize | ||
moritz | nom: class MyFoo is Exception { method message() { 'OH NOEZ' } }; die MyFoo.new | 17:20 | |
p6eval | nom 28f3d6: OUTPUT«OH NOEZ in block <anon> at /tmp/0tJoeCAJo8:1» | ||
17:20
dakkar joined
|
|||
moritz | TimToady: well, it's a summary of all the data available wihin the exception | 17:20 | |
TimToady: including a summary of the backtrace (not the full one) and the message | |||
sorear | good * #perl6 | 17:21 | |
(this is a 5-minute driveby) | |||
moritz | bbkr: maybe you have a .gist method that is not constrained to type objects? | ||
bbkr: or maybe you are throwing a type object as the exception? | |||
nom: class MyFoo is Exception { method message() { 'OH NOEZ' } }; die MyFoo | |||
p6eval | nom 28f3d6: OUTPUT«Cannot look up attributes in a type object in block <anon> at /tmp/2r8PyQjOmO:1» | ||
moritz | hm | ||
bbkr | moritz: thanks, gist was what I was looking for, works | 17:22 | |
17:23
packetknife left
17:24
daxim left
|
|||
tadzik | nom: gist.github.com/1951559 | 17:32 | |
p6eval | nom 28f3d6: OUTPUT«No applicable candidates found to dispatch to for 'Numeric'. Available candidates are::(Mu:U \$v, Mu %_!) in method Numeric at src/gen/CORE.setting:659 in sub infix:<-> at src/gen/CORE.setting:2257 in block <anon> at /tmp/vhMUlKQS3T:16» | ||
tadzik | there's something wrong here | ||
and $a<foo>.WHAT is indeed a Scalar() | |||
jnthn | well... | 17:34 | |
FETCH => { %!elems.exists($k) ?? %!elems{$k} !! 0 } | |||
%!elems{$k} will returns a scalar | 17:35 | ||
tadzik | it wants a decont | ||
why so? | |||
jnthn | Because it's a Perl 6 hash and Perl 6 hashes return scalars. | ||
And a normal closrue doesn't decontainerize its results | |||
tadzik | hmm | ||
jnthn | try FETCH => sub { %!elems.exists($k) ?? %!elems{$k} !! 0 } | ||
tadzik | it then says Too many positional parameters passed; got 1 but expected 0 | 17:36 | |
TimToady | ooh, bs cut the startup time of hello world by about 60%, jnthn++ | 17:37 | |
[Coke] is tired of dealing with perl6hate | |||
jnthn | tadzik: oh, s/sub/method/ | 17:38 | |
TimToady | ... 3. then they fight you | ||
tadzik | ha | ||
[Coke] | though in their defense, I did just some them the amb gist. | ||
17:38
simcop2387 left
|
|||
tadzik | jnthn: then it gives Method 'exists' not found for invocant of class 'Method' | 17:38 | |
TimToady | the regex one? | ||
[Coke] | I did warn them it was evil, but apparently that was insufficient. | ||
TimToady: Aye. | |||
tadzik | let me guess: "omg this Perl 6 is so crazy do you guys never learn"? | 17:39 | |
jnthn | tadzik: ah...yeah... | ||
tadzik: ick. | |||
tadzik: If you write method it gets the wrong set of attrs I guess | |||
tadzik: try sub ($s) { ... } or some such | |||
tadzik | jnthn: this decont stuff, I wonder why I never stumbled upon this before | ||
jnthn | tadzik: Because you didn't use Proxy before? :) | 17:40 | |
tadzik | jnthn: I did sub ($) {} and it didn't fix anything | ||
jnthn: yes, may be :) | |||
benabik | Proxy is an odd beast | ||
tadzik | and it's fine with bare 0 | ||
17:40
simcop2387 joined
|
|||
[Coke] | rakudo: constant fib := 0, 1, *+* ... *; say fib[100] | 17:41 | |
p6eval | rakudo 28f3d6: OUTPUT«===SORRY!===Type List cannot accept type arguments» | ||
benabik | What? | ||
jnthn | ...wow! | ||
constants.t needs more tests :) | |||
tadzik: moment, trying something here... | 17:42 | ||
TimToady | rakudo: constant Int fib = 0, 1, *+* ... *; say fib[100] | 17:45 | |
p6eval | rakudo 28f3d6: OUTPUT«===SORRY!===Method 'sorry' not found for invocant of class 'Perl6::Grammar'» | ||
tadzik | hah | ||
TimToady | :) | ||
dalek | kudo/nom: 93603c6 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Have a crack at making Proxy more robust for tadzik++. |
||
tadzik | yay, just for me! :) | 17:46 | |
jnthn | tadzik: It fixes your gist. | ||
tadzik | does it work for 0 too, no double-decont stuff? | ||
jnthn | say $a<baz> - 1; | 17:48 | |
gives -1 | |||
tadzik | ok, cool | ||
jnthn | I'm going to do a workaround for the segfault for now | ||
(the nqp one) | |||
It's suboptimal but less suboptimal than the thing segfaulting. I'll go hunting the bug some other time - it's something weird. | 17:49 | ||
tadzik | jnthn: how hard will be implementing :exists and :delete adverbs? | 17:50 | |
jnthn | Needs changes to the OPP I guess. | 17:51 | |
17:52
isBEKaml joined
|
|||
dalek | p: c314198 | jnthn++ | src/6model/serialization.c: Disable the seen strings optimization for now; for some reason, a dodgy string sneaks in somewhere along the way, and on some platforms that leads to segfaults. Need to hunt this down for real, but this at least seems to fix the build. |
17:54 | |
17:54
autark joined
17:55
preflex_ joined
17:56
preflex left,
preflex_ is now known as preflex
17:57
MayDaniel left
18:00
skipper joined
|
|||
[Coke] | jnthn: don't forget to bump rakudo. | 18:02 | |
18:02
havenn left
18:03
dakkar left
|
|||
jnthn | [Coke]++ | 18:04 | |
dalek | kudo/nom: d34723f | jnthn++ | tools/build/NQP_REVISION: Bump to NQP revision that hopefully doesn't explode on feather. |
||
[Coke] | ugh. parrot repo is SO BIG. | 18:06 | |
[Coke] wonders if we could someone compress the one on github so it'll download faster. | |||
jnthn | nom: constant fib = 0, 1, *+* ... *; say fib.postcircumfix:<[ ]>(100) | 18:10 | |
p6eval | nom 93603c: OUTPUT«354224848179261915075» | ||
flussence | there's not a whole lot you can do short of `git repack -a -d` | ||
18:12
mj41 left
|
|||
flussence | (well, maybe we could convince the git maintainers to add lzma2 compression, but that's a bit of a stretch) | 18:12 | |
[Coke] | flussence: would that help parrot, do you think? | 18:13 | |
(the repack, not pinging gitmaintainers) | |||
jnthn: ... are you sure that fixed the build? | |||
jnthn | [Coke]: It did on my testing box. | 18:14 | |
[Coke] tries one more time. | |||
jnthn | [Coke]: But it's a workaround. | ||
There's a real underlying issue still to find. | |||
[Coke] | my rakudo build might not have grabbed nqp-latest. | ||
flussence | [Coke]: I've only a vague understanding of git's internals, but I believe repacking like that puts the entire history into a single blob which should be much smaller than multiple bits... if they don't already do that. | 18:15 | |
sjn | code.foo.no/2012/03/01/invitation-t...athon-2012 | ||
\o/ | |||
jnthn | \o/ | 18:19 | |
tadzik | \o/ | 18:21 | |
[Coke] | jnthn++ #whee, only 4m16s to compile rakudo with -j3 on feather. | 18:22 | |
jnthn | It's an improvement, though still slow. | 18:26 | |
18:29
snearch joined
18:30
fglock left
|
|||
dalek | kudo/nom: d4e8e41 | jnthn++ | src/Perl6/Grammar.pm: Fix 'constant fib := 0, 1, *+* ... *; say fib[100]'. |
18:31 | |
ast: fbfc883 | jnthn++ | S04-declarations/constant.t: Add constant with ... test. |
|||
kudo/nom: bc82980 | tadzik++ | / (3 files): Port Set from niecza |
18:33 | ||
kudo/nom: 60a6a55 | tadzik++ | / (3 files): Port Bag from niecza |
|||
kudo/nom: d524c6a | tadzik++ | src/core/ (2 files): Port KeyBag from niecza |
|||
kudo/nom: bb2e1f8 | tadzik++ | src/core/ (2 files): Port KeySet from niecza |
|||
jnthn | omg. | 18:34 | |
tadzik++ | |||
18:34
sisar left,
packetknife joined
|
|||
[Coke] | 3.say took .2s with bs. it took 2.313s, 0.718s, 0.724s pre-bs. | 18:35 | |
jnthn | perl6 -e "3.say", I assume? | ||
[Coke] | aye. | ||
jnthn | :) | ||
I assume this also means you got bs built on feather? | |||
dalek | ast: 71f1532 | tadzik++ | S02-types/ (4 files): Tune and fudge bag, keybag, keyset and set tests for Rakudo and for Greater Good |
||
benabik | [Coke]: Why three pre-bs times? | ||
[Coke] | (.199+.2)/(.718+.724) | 18:36 | |
b: say (.199+.2)/(.718+.724) | |||
p6eval | b 1b7dd1: OUTPUT«0.276699029126214» | ||
[Coke] | benabik: because they were very different. | ||
jnthn: aye. | |||
jnthn: I'm interested to see what this does to the simul-spec-run. | |||
dalek | kudo/nom: 8f765aa | tadzik++ | t/spectest.data: Turn on set, keyset, bag and keybag spectests |
18:37 | |
tadzik | ah that feels good :) | ||
jnthn | my role Baggy { Any } | ||
...why the Any? | |||
tadzik | ask colomon :) | ||
I wasn't sure about that one, so I didn't touch it beyond necessity | 18:38 | ||
jnthn | niecza: my role BaggyTrousers { } | ||
benabik | I bet that changes the spectest numbers a bit. | ||
p6eval | niecza v15-2-gd19c478: ( no output ) | ||
TimToady | niecza: my role Sappy { } | ||
p6eval | niecza v15-2-gd19c478: ( no output ) | ||
TimToady | seems to parse | ||
benabik | tadzik: Did they require many changes? | ||
jnthn | niecza: my role BaggyTrousers { }; class Madness does BaggyTrousers { } | ||
p6eval | niecza v15-2-gd19c478: ( no output ) | ||
jnthn | hm | ||
tadzik | benabik: a few | ||
dalek | kudo/nom: 01386ea | tadzik++ | src/core/ (2 files): my-ify KeySet and KeyBag |
||
tadzik | in my mind I count 3n | 18:39 | |
:exists and :delete, calling positionals by name, typed hashes | |||
[Coke] | hopefully niecza can port the temporal stuff to catch up again. ;) | ||
tadzik | rakudo is now +500 or so tests | 18:40 | |
TimToady | [Coke]: needs the ability to multi with built-ins | ||
tadzik | nom: say 93 + 106 + 112 + 144 | ||
p6eval | nom d34723: OUTPUT«455» | ||
TimToady | Date stuff overloads built-ins ferociously | ||
tadzik | almost 500 | ||
18:41
alvis left
|
|||
jnthn | tadzik: typed hashes? | 18:43 | |
Rakudo has those. | |||
tadzik | not in the setting it seems | 18:44 | |
they blew fantastically :) | |||
jnthn | Ah. | ||
I can believe that. | |||
benabik | Ordering issue? | ||
tadzik | some PARAMETRIZE_TYPE fun | ||
jnthn | Possibly, or possibly something else | ||
It's hard to guess without seeing the error. | |||
tadzik afks | |||
jnthn | TimToady: iiuc, adverbs are handled by infixish parsing them, and the EXPR spotting they're "fake"? | 18:48 | |
TimToady | yup | 18:49 | |
jnthn | TimToady: What happens in reduce? | ||
TimToady | don't think they ever get that far | ||
but let me check | |||
next; # not really an infix, so keep trying | 18:50 | ||
jnthn | oh yes they do :) | ||
if $infix<fake> { | |||
push @opstack, $infix; | |||
&reduce(); | |||
next; # not really an infix, so keep trying | |||
} | |||
TimToady | skips the reduce | ||
oh, duh | |||
I guess it treats them as postfix, basically | |||
Teratogen | so Perl 6 has prefix, infix, and postfix? | 18:51 | |
goodbye Forth! | |||
TimToady | | <colonpair> { | 18:52 | |
$<fake> = 1; | |||
$<sym> = ':'; | |||
%<O><prec> = %item_assignment<prec>; # actual test is non-inclusive! | |||
%<O><assoc> = 'unary'; | |||
%<O><dba> = 'adverb'; | |||
18:52
localhost left
|
|||
benabik | Teratogen: It has prefix, infix, and postfix operators, ala C. (++$x, $x++, $x + 1) | 18:52 | |
TimToady needs to turn all those hash lookups into attributes one of the decades... | |||
jnthn | From there it seems they end up on the termstack | 18:53 | |
TimToady | sure, that's what reduce does | ||
moves things from opstack to termstack | 18:54 | ||
18:54
localhost joined,
fglock joined,
alvis joined
|
|||
dalek | ast: 616002e | coke++ | S02-types/num.t: pugs fudges |
18:57 | |
gs.hs: 74636ed | coke++ | t/spectest.data: run fudged test |
|||
jnthn | TimToady: Hm, think I need to look at it when my brain is less frazzled...at least I understand what it's doing a little more now :) | 18:58 | |
TimToady has to $job anyhoo | 19:00 | ||
19:05
MayDaniel joined
19:06
alvis left
|
|||
dalek | ast: 0976c3a | jnthn++ | S04-phasers/check.t: Tests that want to check the action of things at BEGIN/CHECK time should not go assigning the string at normal time. Otherwise, the data to test will be lost. :-) |
19:16 | |
19:17
bluescreen10 left
19:20
skipper left
19:22
fsergot left
|
|||
dalek | kudo/nom: d73f458 | jnthn++ | src/Perl6/ (3 files): Fix CHECK phasers in r-value context; also move all CHECK handling into World. |
19:22 | |
kudo/nom: 20494ee | jnthn++ | t/spectest.data: Turn on S04-phasers/check.t. |
|||
kudo/nom: 6d0c4a5 | jnthn++ | docs/ChangeLog: Some more ChangeLog entries. |
|||
19:23
alvis joined
19:28
birdwindupbird joined
19:33
bluescreen10 joined
19:38
imarcusthis left
19:44
fsergot joined
|
|||
[Coke] | 03/01/2012 - rakudo++ ; niecza (98.55%); pugs (29.46%) | 19:48 | |
"niecza", 20268, 8, 749, 1530, 22555, 23754 | |||
"pugs" , 6060, 6, 2767, 741, 9573, 23563 | |||
"rakudo", 20566, 28, 633, 1882, 23109, 23764 | |||
19:48
bluescreen10 left,
imarcusthis joined
19:58
mj41 joined
19:59
NamelessTee left,
bluescreen10 joined
20:00
wooden left
20:02
imarcusthis left
20:05
imarcusthis joined
|
|||
dalek | kudo/nom: 48af8ca | jnthn++ | t/spectest.data: We pass S04-phasers/rvalue.t as it is currently fudged. |
20:11 | |
20:15
fsergot left
|
|||
masak | rakudo's in the lead! \o/ | 20:18 | |
jnthn | :) | ||
masak | actually I don't know who or what I'm cheering for. I just love it that the race is so even. | ||
and I'm quite amazed that Pugs is nearing 30%. | |||
that is *before* we start bringing it 5 years forward in time. | 20:19 | ||
[Coke] | I think I can hit 50% without too much effort. | 20:21 | |
arnsholt | masak++, [Coke]++, and everyone else I don't know about | ||
[Coke] | (that is, without writing any haskell) | ||
masak | arnsholt: I ain't done nothing. though I plan to. | ||
[Coke]++ | |||
benabik | tadzik++ # porting Set and putting rakudo in the lead | ||
arnsholt | Well, I think you were an important source of inspiration, at least | ||
benabik | (Not that it a race, but hey) | 20:22 | |
masak | yeah, I still very much like the idea of reviving Pugs. | 20:27 | |
20:42
havenn joined
|
|||
masak | nom: gist.github.com/1951347 | 20:43 | |
p6eval | nom 48af8c: OUTPUT«===SORRY!===Variable $a is not declaredat eval_0:1» | ||
masak | huh! | ||
jnthn | nom: /:my $a/ | 20:44 | |
p6eval | nom 48af8c: OUTPUT«===SORRY!===Unrecognized regex metacharacter (must be quoted to match literally) at line 1, near "my $a/"» | ||
jnthn | nom: /:my $a;/ | ||
p6eval | nom 48af8c: ( no output ) | ||
jnthn | nom: /:my $a = 42; { say $a }/ | ||
p6eval | nom 48af8c: ( no output ) | ||
jnthn | nom: "x" ~~ /:my $a = 42; { say $a } <?>/ | 20:45 | |
p6eval | nom 48af8c: OUTPUT«42» | ||
20:45
bluescreen10 left
|
|||
jnthn | nom: "x" ~~ /:my ($a, $b); { say $a } <?>/ | 20:45 | |
p6eval | nom 48af8c: OUTPUT«Any()» | ||
masak | tadzik++ # did anyone mention that you're awesome? | 20:46 | |
jnthn | oh... | 20:47 | |
it's eval'ing that regex, no? | |||
masak: afk for 30 mins or so, but if you can golf that one it'd be nice... | |||
masak | gotcha. | 20:48 | |
I'll golf it and then RT it. | |||
jnthn | tsm | 20:49 | |
jnthn bbiab | |||
masak | "tsm"? "Tapas, Salsa, Mojito"? :) | 20:50 | |
"Three Small Musketeers"? | |||
"Trap Some Mice"? | 20:51 | ||
TimToady | that's so mysterious? | ||
masak | true, such madness. | ||
though somewhat meek. | 20:52 | ||
TimToady | Try Sado-Masakism! | 20:53 | |
20:55
birdwindupbird left
|
|||
masak | *lol* | 20:58 | |
tempting, said masak. | |||
nom: '' ~~ / :my $a; <{ '$a' }> / | |||
p6eval | nom 48af8c: OUTPUT«===SORRY!===Variable $a is not declaredat eval_0:1» | ||
masak | golf'd. | ||
masak submits tapas | |||
TimToady | don't bring him into it... | 20:59 | |
masak | :D | 21:00 | |
"who f***ing mentioned tapas?" | |||
21:03
noam left
21:04
noam joined
|
|||
TimToady | commuting & | 21:04 | |
21:07
fhelmberger_ joined
21:10
fhelmberger_ left
21:11
havenn left
|
|||
masak | nom: say "fooooo" ~~ / (<{ ". ** 2..*" }>) / | 21:15 | |
p6eval | nom 48af8c: OUTPUT«=> <fooooo> 0 => <fooooo>» | ||
masak | oh, right. | ||
21:15
fglock left
|
|||
masak | nom: say "fooooo" ~~ / <{ '(.) $0' }> / | 21:16 | |
p6eval | nom 48af8c: OUTPUT«=> <oo>» | ||
masak | nom: say "fooooo" ~~ / <{ '(.) $0+' }> / | ||
p6eval | nom 48af8c: OUTPUT«=> <ooooo>» | ||
masak | niecza: say "fooooo" ~~ / <{ '(.) $0+' }> / | ||
p6eval | niecza v15-2-gd19c478: OUTPUT«#<match from(1) to(6) text(ooooo) pos([].list) named({}.hash)>» | ||
masak | Niecza and Rakudo agree on this. | 21:17 | |
benabik | That seems confusing to me. I wouldn't expect $0 to be expanded inside single quotes. | ||
masak | I'm less convinced. | ||
benabik: that's not what's happening. | |||
21:17
bbkr1 joined
|
|||
masak | benabik: the string gets turned into part of the regex. | 21:17 | |
tadzik | thanks, sometimes, masak | ||
masak | tadzik: sure, mate. | 21:18 | |
bbkr1 | rakudo: my @t; if [+]@t {} # parsing bug or desired behavior? it was legal syntax in 2012.01 | ||
p6eval | rakudo 48af8c: OUTPUT«===SORRY!===Missing blockat /tmp/PEfvciKkRV:1» | ||
masak | bbkr1: desired behavior. | ||
std: my @t; [+]@t | |||
p6eval | std a540d4e: OUTPUT«===SORRY!===Two terms in a row (listop with args requires whitespace or parens) at /tmp/QuHMR4YUeC line 1:------> my @t; [+]⏏@t expecting any of: POST argument list bracketed infix infix or meta-infix postfix | ||
.. postfix_p… | |||
tadzik | masak: maybe I should add Pod tests too while I'm on it :) | 21:19 | |
bbkr1 | masak++ thanks for explanation | ||
masak | :) | ||
benabik | masak: Strings returned from blocks get used as part of the regex? | ||
masak | benabik: strings returned from <{ }> thingies get used as part of the regex. | 21:20 | |
that's Perl 6's variant of Perl 5's rather reckless interpolation. | |||
benabik | masak: I would have expected it to just be code run during the regex. But I guess that's more what <?{ }> is for. | 21:22 | |
masak | yeah. or just { } | ||
nom: '' ~~ / { say "OH HAI" } / | |||
p6eval | nom 48af8c: OUTPUT«OH HAI» | ||
masak | nom: say "OH HAI" ~~ / <{ q['OH HAI'] }> / | 21:23 | |
p6eval | nom 48af8c: OUTPUT«=> <OH HAI>» | ||
masak | anyway, my point was... | 21:25 | |
how parens relate to capture groupds within a regex is a *static* thing in Perl 6 regexes. | |||
it's a property of the AST. | |||
so how can the (.) within the string within the <{ }> thingie (which interpolates at run time) get allocated the $0 group? | 21:26 | ||
21:27
Alias left
|
|||
jnthn back | 21:29 | ||
tadzik front | |||
masak | o.O | 21:30 | |
tadzik | :> | 21:31 | |
O.o | |||
masak | jnthn: rt.perl.org/rt3/Ticket/Display.html?id=111474 | ||
jnthn | omgz, I abbreviate tack så mycket and look what happens :P | 21:32 | |
[Coke] | t'aint so much. | ||
masak | jnthn: I wouldn't have been able to guess that in a million years. | 21:33 | |
jnthn | masak: Seems it's a case of an issue that comes up elsewhere too...ah, attribute initializers. | ||
21:34
fsergot joined
|
|||
masak | attribute initializers!? | 21:34 | |
jnthn | masak: It works as "thanks so much" too :P | ||
nom: class A { has $!a = my $x = 42; say $x } | |||
p6eval | nom 48af8c: OUTPUT«===SORRY!===Variable $x is not declaredat /tmp/1ARNKEtPJC:1» | ||
jnthn | Same underlying issue | ||
fsergot | 'night #perl6! o/ | ||
masak | 'branoc! | ||
jnthn | 'night, fsergot | ||
masak | jnthn: thunking in the wrong context? | 21:35 | |
jnthn | masak: In both cases we have an extra call frame (in regexes due to the language switch, in this case because of the implied submethod), but we want declarative things to consider that frame invisible. | ||
masak | yeah. | 21:37 | |
jnthn | Just needs a little fiddle somewhere. Shouldn't be too hard. | ||
masak | I wonder whether I'll not run into a very similar problem with quasis and macros. | ||
jnthn | Just didn't settle on how I want to factor the solution yet. | ||
Probably 'cus I didn't think about it very hard yet... :) | |||
.oO( too busy doing this bs... ) |
21:39 | ||
masak | :) | ||
tadzik | :) | 21:40 | |
21:41
ashleydev left,
fhelmberger_ joined
21:42
ashleydev joined
21:47
Chillance joined
21:59
att left
22:03
kaare_ left
22:06
sudokode left,
sudokode joined
|
|||
tadzik | Files=632, Tests=22887, 1689 wallclock secs (11.11 usr 2.38 sys + 1659.79 cusr 147.54 csys = 1820.82 CPU) | 22:08 | |
so many tests, where do they come from? | 22:09 | ||
jnthn | t/spec/ | ||
dalek | ast: 75e6cb6 | tadzik++ | S26-documentation/ (10 files): Add S26 tests |
||
jnthn | phenny: tell TimToady in method_def around line 1914, it seems it's not quite right since method_def is a rule, and sigspace wants spaces between <sigil>, '.', etc. | 22:10 | |
phenny | jnthn: I'll pass that on when TimToady is around. | ||
jnthn | ooh! | ||
22:10
NamelessTee joined
|
|||
dalek | kudo/nom: 59c1c35 | tadzik++ | t (12 files): Remove tests from t/pod, as they now live in roast, also remove podtest Makefile target. Run S26 tests |
22:11 | |
benabik | t/02-embed/01-load.t fails for me on recent nom. "Bad plan. You planned 1 tests but ran 0." | 22:14 | |
jnthn | Don't think that's worked for...ages. | ||
benabik | I thought it was... I tend not to install programs with failing tests. But I could be hallucinatory. | ||
[Coke] | fails on feather also. ... I never run 'make test', though, only 'make spectest'. | 22:16 | |
jnthn | Same... | 22:17 | |
benabik | If 02-load/* fails, then should it be removed? | ||
[Coke] | segfaults here. | 22:18 | |
22:18
MayDaniel left
|
|||
benabik | I use make test to ensure that the result passes those basic sanity tests. It's caught errors before. | 22:18 | |
22:18
pernatiy joined
|
|||
[Coke] | looks like the test is intended to be todo'd, anywya. | 22:19 | |
bbkr1 | JSON::RPC and MongoDB works now on 2012.02, thanks for your help | ||
[Coke] | So, skip it, instead. | ||
dalek | d: 882094e | larry++ | STD.pm6: don't allow whitespace in &.() et al. jnthn++ |
22:20 | |
moritz | bbkr1++ | ||
jnthn | Maybe those should go in Star. | 22:21 | |
bbkr1 | JSON::RPC supports now 90% of the 2.0 spec. remaining 10% are batches and notifications (rarely used) which I will add soon. | 22:23 | |
22:24
snearch left
|
|||
[Coke] is bummed that the idea of adding JSON to parrot really had no impact on any HLLs. | 22:24 | ||
s/idea/act/, even. | 22:25 | ||
bbkr1 | MongoDB works for basic usage, but development waits for pack/unpack support that BSON protocol heavilly depends on, so this is at proof-of-concept stage | ||
jnthn | Wow. It segfaults when unpacking the PBC file. | ||
bbkr1 | does anyone knows how to solve this NativeCall issue on OS X: nopaste.info/18ece6f55d.html ? | 22:28 | |
next module i want to start is GeoIP wrapper for Maxmind databases (they have also free versions included in most package repos) but this error shattered this dream :) | 22:30 | ||
[Coke] | star: perl6 -e 'use NativeCall; sub foo() is native("bar") { * }; foo(); | 22:31 | |
p6eval | star 2012.01: OUTPUT«===SORRY!===Confused at line 1, near "perl6 -e '"» | ||
[Coke] | star: use NativeCall; sub foo() is native("bar") { * }; foo(); | ||
p6eval | star 2012.01: OUTPUT«Cannot locate native library 'bar.so' in block <anon> at /home/p6eval/rakudo-star-2012.01/install/lib/parrot/3.11.0/languages/perl6/lib/NativeCall.pm6:102 in method postcircumfix:<( )> at /home/p6eval/rakudo-star-2012.01/install/lib/parrot/3.11.0/languages/perl6… | ||
[Coke] | looks like _dlLoadLibrary is a windows thing. | 22:32 | |
jnthn | ? | 22:33 | |
bbkr1 | so it somehow recognized OS incorrectly when building nativecall interface? | ||
jnthn | dlLoadLibrary is the dyncall thingy | ||
benabik | It means dyncall didn't link properly when building NQP. | ||
[Coke] | jnthn: ah. the _ threw me. | 22:34 | |
benabik | I seem to recall some issue with 32b vs 64b causing link problems. | ||
jnthn | Yeah, it looks like some fail while building | ||
masak | [Coke]: I think it is difficult to have a thing such as JSON-in-Parrot have any significant impact in the HLLs, until there's a more fleshed-out HLL interop. | ||
bbkr1 | i'm on 32b, 11.3.0 Darwin Kernel | ||
masak | [Coke]: there will always be advantages to have a totally HLL-native implementation of something like JSON, even if interop is excellent, which it isn't. | 22:35 | |
jnthn | bbkr1: Fixing this ain't helped by me having just about zero knowledge about OSX... | 22:36 | |
dyncall.org/download.shtml mentions it on the supported platforms list though | 22:37 | ||
Though we pull the whole thing in to nqp_dyncall_ops | 22:38 | ||
lue | hello world! o/ | ||
jnthn | hellue! | 22:39 | |
tadzik | o/ | ||
benabik | I seem to recall dyncall being an issue on OS X before. | ||
Something to do with some config not being set right by NQP's Makefile. I don't have the tuits to look into it tonight. | |||
22:39
vlkv joined,
vlkv is now known as gv
|
|||
jnthn | Any tuits you do get would be cool. :) | 22:40 | |
Maybe I should get myself some OSX access at some point... | |||
benabik | I see a lot of "request for implicit conversion from ‘void *’ to ‘struct DLLib *’ not permitted in C++" | 22:41 | |
jnthn | I never understand those errors. | ||
"Hi nice C compiler, please compile this." "OK dear, here you go. OH BTW, DESPITE YOU HAVING USED A C COMPILER, THIS WON'T WORK IN C++!!!" | 22:42 | ||
geekosaur | warning level set too high | ||
benabik | "ld: warning: ignoring file ../../3rdparty/dyncall/dyncall/libdyncall_s.a, file was built for archive which is not the architecture being linked (x86_64)" | ||
That's the problem. | |||
jnthn | whoa | 22:43 | |
That looks...er...bad. | |||
benabik | I _swear_ this was fixed in NQP before. If someone wants to dig through git to find the fix, that'd be good. | ||
bbkr1 | I can provide OS X 10.7.3 free shell account if needed | ||
benabik | I _think_ it's because dyncall is trying to auto-detect the architecture and OS X lies. | 22:44 | |
dalek | kudo/nom: 3eded7b | jnthn++ | src/Perl6/ (2 files): Support the short type-casting syntax from S13. |
||
kudo/nom: d0a2453 | jnthn++ | t/spectest.data: 2 more test files. |
|||
benabik | `uname -p` says i386, but `uname -m` says x86_64 | ||
bbkr1 | in my case both show "i386" | 22:45 | |
benabik | bbkr: On 10.7? | 22:46 | |
bbkr1 | yes | ||
benabik | Odd. | 22:47 | |
jnthn | masak: ^^ implements the shorter coercion syntax you asked about the other day | 22:49 | |
masak | \o/ | ||
geekosaur | I'm on 10.7.3, uname -p = i386, uname -m = x86_64, arch = i386 | 22:50 | |
and I keep trying t type isainfo 0b which is wrong OS *facepalm* | |||
isainfo -b | |||
masak | jnthn: apparently, requests in 2012 have awesome response time. :) | ||
jnthn | masak: At some time during GPW (or travel there/back) we should talk about what QAST needs to help support {{{ $a }}} in quasis. | 22:53 | |
bbkr1 | my EFI is not 64b (despite the fact that CPU is), hence the difference. i'll try tomorrow on "early 2008" iMac at work if dyncall will build properly. | 22:54 | |
have a good night everyone :) | |||
jnthn | 'night, bbkr1 | ||
22:54
bbkr1 left
|
|||
masak | 'night, #perl6 | 22:55 | |
benabik | Dyncall's configure says it's guessing arch x64, but it's still building i386 | ||
masak .oO( quasis AST ) | 22:56 | ||
geekosaur | EFI is irrelevant to the whole thing, OS X will prefer 64bit on any 64bit-capable CPU even if the EFI and running kernel are 32 bit... | 22:57 | |
benabik | Hm. It appears to be building properly after a `git clean -xdf` | 22:58 | |
(make clean is not sufficient) | 22:59 | ||
geekosaur still updating ports (and thereby repairing them, since the external HD most stuff was on is no longer available) and will look into updated rakudo/niecza when done | |||
benabik | phenny: tell bbkr1 Try `git clean -xdf` in your NQP directory. This will remove any files not under version control, and seemed to let dyncall build properly for me. | 23:00 | |
phenny | benabik: I'll pass that on when bbkr1 is around. | ||
lue | jnthn: How much memory would you guess is saved by the thousands-of-lines-of-generated-PIR reduction in that one commit to rakudo/bs? | 23:01 | |
(Last time I tried compiling, CORE.setting took up all the RAM it could (and began filling the swap) and still didn't finish) | 23:02 | ||
jnthn | lue: Oh, that patch was a drop in the ocean | ||
lue: The bs branch was merged today | |||
lue: It's the branch as a whole that's brought the big reduction. | |||
lue | OK. | ||
jnthn | lue: Generally, it requires about 60% of what it once did. | ||
lue | That's amazing. | 23:03 | |
jnthn | Also starts up faster :) | ||
benabik | Much faster | ||
lue | (Which of course makes me wonder how I managed to completely install (pre-bs) rakudo the last time) | 23:04 | |
23:04
felipe left
|
|||
lue | I noticed when I had compiled and installed nqp/bs that pre-bs rakudo's REPR (seemingly) started faster. Could've been just the optimism though :) | 23:04 | |
benabik | REPL? | 23:05 | |
23:05
fhelmberger_ left
|
|||
benabik | Okay, I got dyncall to build locally. I'm now running fairly late. TTYL | 23:06 | |
lue | s/REPR/REPL/ then (the interactive bit that comes up when you type perl6 ) | 23:07 | |
23:07
mtk left,
benabik_ joined
23:08
mj41 left
23:10
att joined
23:11
benabik_ left,
benabik left
|
|||
jnthn | Enough for today. 'night o/ | 23:15 | |
TimToady | \o | 23:16 | |
phenny | TimToady: 22:10Z <jnthn> tell TimToady in method_def around line 1914, it seems it's not quite right since method_def is a rule, and sigspace wants spaces between <sigil>, '.', etc. | ||
TimToady | all that :s business is kinda bogus anyway; STD doesn't follow the new :sigspace rules yet | 23:17 | |
23:18
am0c joined
23:32
havenn joined
23:35
am0c left
23:42
PacoAir joined
23:53
Chillance left
23:56
havenn left
|