»ö« 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 declared␤at /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 1␤␤Unhandled 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 1␤␤Unhandled 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 declared␤at 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 declared␤at 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 block␤at /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 declared␤at /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