»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:00 raiph left 00:06 xinming left 00:08 xinming joined 00:22 btyler left 00:28 colomon left 00:35 tokuhirom left 00:36 grondilu joined 00:43 btyler joined 00:55 tokuhirom joined 01:04 jaldhar left, _jaldhar joined 01:08 _jaldhar left, _jaldhar joined 01:14 btyler left 01:22 tokuhirom left, raiph joined 01:49 Guest1337 left 01:58 btyler joined 02:04 cibs_ joined 02:09 cibs joined 02:10 cibs_ left 02:23 grondilu left 02:29 hypolin joined 02:30 hypolin left 02:31 hypolin joined, colomon joined 02:36 raiph left 02:47 orafu left, OuLouFu joined, OuLouFu is now known as orafu 02:59 xinming left 03:01 xinming joined 03:09 woolfy left 03:10 lizmat left 03:14 dayangkun joined 03:15 raiph joined 03:25 prammer_ left 03:29 prammer_ joined 03:34 preflex_ joined, ChanServ sets mode: +v preflex_, preflex left 03:35 preflex_ is now known as preflex 03:49 colomon left 03:50 orafu left 03:54 lizmat joined 03:59 lizmat left, odoacre joined 04:03 raiph left 04:10 lizmat joined 04:16 arlinius left
lizmat good *, #perl6! 04:18
.oO( sees images of Adrian Cronauer )
04:20
04:30 lizmat left 04:32 woolfy joined 04:36 lizmat joined
dalek kudo/nom: af0a16f | (Elizabeth Mattijsen)++ | src/core/Any.pm:
Missed one .infinite -> Nil
04:39
04:42 btyler left 04:47 raiph joined 04:49 birdwindupbird joined 04:54 arlinius joined 04:56 xilo left, crab2313 joined 04:58 zby_home_ joined 05:01 crab2313 left 05:05 silug left
dalek kudo/nom: 4101df5 | (Elizabeth Mattijsen)++ | t/spectest.data:
Move up IO-Socket-INET tests, so that it has more wallclock in parallel tests
05:14
Woodi morning all reading lines ppls :)
lizmat morning Woodi!
Woodi Ulti: you give me excuse to bash TimToady ;) "Where are NEW books ?! Blogs, articles, comments on topic and beyond ?!" 05:18
dalek kudo/nom: 8a1cd05 | (Elizabeth Mattijsen)++ | src/core/Any.pm:
Reorganized/slightly commented code for easier perusing
Woodi and by "TimToady" I mena all old guards :)
Woodi hide
TimToady wonders what he's guarding... 05:19
TimToady does not wonder whether he's old...
lizmat neither :-) 05:20
.oO( whether I'm old )
05:22
05:23 PacoAir joined
Woodi but maybe we are at end|start of new era in languages ? even that big Java book have no new version lastly... 05:26
diakopter .. 05:27
JimmyZ gOOd afternOOn
05:27 silug joined
moritz \O 05:28
Woodi hallo 05:29
05:30 PacoAir left 05:36 kaleem joined
lizmat moritz! 05:36
moritz lizmat! 05:37
lizmat: I don't know if you've read it in the backlog, but I'll be coming to YAPC::EU 05:38
lizmat that's way cool!
lizmat still has fond memories of picking up moritz at the train station in Perl
bonsaikitten what were you doing at the luxemburgian border? ;) 05:39
moritz and I'm pretty excited, because I've never been that far east before
lizmat
.oO( at which a certain piece of signage was liberated )
moritz lizmat: :-)
bonsaikitten: having a Perl workshop/conference, of course :-)
the Perl Reunification Summit 05:40
bonsaikitten moritz: hmm, obviously ...
05:40 domidumont joined, iSlug joined
lizmat moritz: wrt to going East: me neither, well in Europe then 05:41
.o( Mumbai doesn't really count :-) 05:42
05:51 domidumont left, domidumont joined
jnthn yawns 05:53
Short overnight backlog... :)
lizmat indeed 05:54
our connection was down for 1.5 hours last night, and I didn't miss anything :-) 05:55
oddly enough, t/spec/S32-io/IO-Socket-INET.t started failing on me :-(
when run under load, I must say 05:56
I moved it up earlier in spectest.data, so that it would be run earlier 05:57
so that in parallel tests, it wouldn't be the last one to finish, taking up ~1 minute of wallclock every time 05:58
05:58 raiph left
lizmat guess that was a bad idea :-( 05:58
jnthn ~1 minute?! 05:59
lizmat measuring precisely now 06:01
time make t/spec/S32-io/IO-Socket-INET.t 06:03
real2m22.852s
jnthn um. 06:04
That really can't be right.
lizmat been that way since I've been doing spectests 06:05
jnthn Is it any particular tests that are really slow?
lizmat and the failure is definitely load dependent
discard server and client, test #2
hmmm… let me wrangle the test a bit 06:06
06:07 arlinius left 06:11 PacoAir joined 06:15 PacoAir left
jnthn commute & 06:15
06:19 zby_home_ left, sqirrel joined
lizmat timing info: gist.github.com/lizmat/6060233 06:24
since the test that take a long time are *all* 20 seconds, I would think they only return *after* some internal 20sec timeout has occurred 06:25
dalek ast: 5c99b82 | (Elizabeth Mattijsen)++ | S32-io/IO-Socket-INET.t:
Add elapsed time information for debugging
06:26
06:28 wtw joined 06:33 fridim__ left 06:37 domidumont left
dalek ast: ef215fd | (Elizabeth Mattijsen)++ | S32-io/IO-Socket-INET.t:
Added tests for possible timeout related problems
06:41
lizmat wonder whether anybody can run that test now on jakudo 06:42
it now fails 7 tests on parakudo on OSX
06:50 domidumont joined 06:52 arlinius joined 06:53 FROGGS joined 06:56 kaleem left
jnthn lizmat: jakudo has no sockets yet 06:57
lizmat so what do you think about the 20 seconds delay 7 times in the test ? 06:58
hoelzro morning #perl6
lizmat should I fudge those tests for now?
jnthn lizmat: I'm curious if we've always had that... 06:59
Like, before the Buf changes
lizmat yes, I'm quite sure about that
jnthn Did things get worse, for example?
Well, but why has it just started to show up as an issue now..
lizmat IO-Socket-INET has always been the last test to finsih in my parallel test
and was responsible for 1 minute of wallclock always 07:00
jnthn ok, that sounds like it's hitting a tiemout thing then
FROGGS same on my box fwiw
lizmat it now shows up, because I mentioned it, and jnthn said that can't be right ;)
jnthn ok
Then I delegate this to somebody who is good at socket stuff ;) 07:01
teaching &
FROGGS have fun
<-- coffee
hoelzro Perl 6 doesn't specify what kind of memory management an implementation uses for objects, does it?
lizmat don't think so 07:02
except maybe for Buf / Blob and the like ?
07:04 sqirrel left
hoelzro can one specify a destructor/finalizer for a Perl 6 object? is there any guarantee of it running when the last references goes out of scope (like in Perl 5?) 07:05
I'm trying to write a class that would take advantage of such behavior
07:05 iSlug left, iSlug joined
JimmyZ END { } ? 07:06
tadzik nah, that's not it 07:07
hoelzro: there is a way in the spec, not implemented anywhere
DESTROY, methinks
I think colomon wrote a nice module that makes END behave in such a way to you can workaround the lack of that
hoelzro hmm
lizmat until then, a LEAVE in the block in question, that destroys your object, might be helpful until then
hoelzro ok, that's acceptable for the time being 07:08
tadzik github.com/colomon/Phaser-ATEXIT/
lizmat afk for a few hours& 07:11
arnsholt hoelzro: Not sure if anything is implemented, but as tadzik says it's specced somewhere. But there's an important wrinkle, which I'm not sure how we'll handle: Many GC methods can't guarantee order 07:15
Which means that any attributes are likely to be unavailable in the finalizer
07:15 _jaldhar left 07:16 _jaldhar joined 07:38 fhelmberger joined
hoelzro I see 07:44
07:50 sqirrel joined 07:56 wk joined 07:57 wk is now known as Guest94502 08:06 arlinius left
jnthn In Perl 6, you can't rely on when an object will be GC'd. 08:08
hoelzro =( 08:09
jnthn DESTROY, even when implemented, could happen at any amount of time into the future after the last reference is gone.
hoelzro I figured
jnthn However, you should be able to do stuff like
my $fh will leave { .close } = open "foo";
Which can now doubt be further sugared 08:10
*no
hoelzro I see
so how would Perl5 interop work?
every Perl 5 block would have an implicit LEAVE that cleans things up? 08:11
08:12 wtw left 08:13 gdey left 08:17 gdey joined, salv0 joined
jnthn Perl 5 things would still be managed by Perl 5 08:17
Provided you're doing the embedding approach, whcih Moar is. 08:18
08:18 domidumont left, domidumont joined 08:19 donaldh left 08:21 sqirrel left 08:23 donaldh joined 08:25 wtw joined
hoelzro ah 08:28
jnthn o/ donaldh
donaldh: I looked over your make-install branch. It seems sane.
donaldh jnthn: thx. 08:35
I started out thinking that it's important to separate the Java classpath from the module search path. 08:36
But maybe that's not so good when Java interop comes along and modules want to load 3rd party jars. 08:37
jnthn Yeah, I'm not quite culturally aware enough in Java things to know what's the best answer there.
donaldh On balance, I think it probably is a good idea to separate the classpath and module search path. 08:38
jars required by modules can probably be loaded using a private classloader. 08:39
I've got experience of doing that and it works very well.
jnthn OK, sounds workable to me. 08:42
hoelzro jnthn: where is 'will leave' spec'd?
08:43 dakkar joined
hoelzro also, can I constrain the possible indexes on an Array? ex. Array[3] of Int? 08:44
jnthn Not sure where it's spec'd; s06 maybe... 08:48
Yes, somebody sent me a patch to implement that even :)
(the array thing)
hoelzro is the syntax correct? 08:49
jnthn No
my Int @a[3]
hoelzro ah
how would I specify that in a returns clause?
jnthn um
Hm :) 08:50
Array sizes aren't really part of the type...
I guess you could do it with a subset type
hoelzro I see
jnthn subset Array3 of Array[Int] where { .shape == 3 } 08:51
hoelzro I've been playing with Rust, and I was thinking in terms of fn parse-time(str time) -> (Int, Int, Int)
so I'm thinking about how that would look in Perl 6
08:52 arlinius joined
jnthn It may be possible that something like sub parse-time(Str $time --> (Int, Int, Int)) { } can actually work... 08:55
Probably not in Rakudo though, as I think we didnt' catch up with latest STD changes
hoelzro ah ha 08:58
09:05 daxim joined
dalek rlito: bd13f1a | (Flavio S. Glock)++ | / (5 files):
Perlito5 - indirect syntax tweak
09:13
hoelzro could anyone help me understand what's going wrong here: gist.github.com/hoelzro/6061095 09:18
FROGGS hoelzro: I think it just expects a grammar + action-class in methods like INTERPOLATE 09:24
hoelzro I see... 09:26
hoelzro doesn't really understand
so the way regexes work changes in sub vs method? 09:27
FROGGS hmmm
let me test something 09:31
ahhh 09:33
this is to blame: github.com/rakudo/rakudo/blob/nom/...sor.pm#L60 09:35
hoelzro anything interesting to report?
so...is that a bug?
FROGGS timespec is Callable, and it calls it by passing self, which is the Cursor class
I'm trying a fix right now
dalek rlito: 39a5fa6 | (Flavio S. Glock)++ | / (4 files):
Perlito5 - indirect syntax tests tweak
FROGGS (passing $?CLASS instead of self)
hoelzro why does that only happen in method and not sub 09:36
?
FROGGS because a sub doesnt belong to a class?
errr 09:37
hmmm
I'm not sure
hoelzro so how do I fix this? =)
I mean, I could just have the parsing routine outside of my class
FROGGS just wait a sec, and we'll see if I can provide a patch
hoelzro ok =) 09:38
FROGGS hmmm, fail :o(
maybe the regex declarator has to be tweaked 09:42
09:54 kaleem joined
jnthn Workaround may be my regex foo(Cursor:) { ... } 09:55
09:55 domidumont left
FROGGS nope, that explodes too 09:56
r: class C { method m($s) { my regex r(Cursor:) { \d+ }; $s ~~ /^<r>$/ } }; say C.m(123)
camelia rakudo 8a1cd0: OUTPUT«「123」␤ r => 「123」␤␤»
FROGGS ?
09:56 domidumont joined
FROGGS okay, explodes locally 09:56
-.-
I should update my rakudo installation moar often 09:57
hoelzro: ^^
jnthn I'm guessing it just says, "am I in a package", and then takes the type of that as the invocant type
I guess instead it should look at $*SCOPE 09:58
hoelzro so is what I'm doing wrong? or is this a bug? 10:01
FROGGS It is a bug, but you can workaround it by using (Cursor:) as the signature of your regex declarations 10:04
jnthn I'd say it's a bug
hoelzro alright
hmm, this is odd 10:07
sub MAIN(Str $time) { ... }
when I call './countdown 10', it complains
'Usage: ./countdown <time>'
tadzik try "as Str", maybe? 10:08
hoelzro tadzik: where would I put that? 10:09
tadzik hoelzro: sub MAIN($time as Str) 10:10
hoelzro ah
10:30 hypolin left 10:52 colomon joined 10:59 daxim left, Celelibi left, smash left, autumn left, djanatyn left, scottp_ left, scottp joined, smash joined, daxim joined 11:00 autumn joined, djanatyn joined 11:01 Celelibi joined 11:03 rindolf joined 11:06 salv0 left 11:18 _jaldhar left
daxim building nqp-jvm-2013.07 - paste.scsys.co.uk/263423 11:18
is this a known failure? should I disable tests to build a package, or apply a patch to the source after unpacking? 11:19
hoelzro FROGGS, jnthn: neither of you have submitted a rakudobug for that regex bug I found earlier, have you? 11:21
if not, I'll submit
also, has anyone considered my pull request? I thought it was a nice little feature 11:22
FROGGS hoelzro: no, havnt submitted it... 11:24
hoelzro k, I'll do it
FROGGS had no time yet to test your PR
thanks
hoelzro++
hoelzro there's no perl6bug program, is there? 11:29
this is terribly stupid of me, but I can't seem to figure out how to submit a ticket =/ 11:30
FROGGS just send an email to [email@hidden.address]
hoelzro ah ha 11:31
what about source code samples? are attachments ok?
daxim it's RT. yes and yes
hoelzro ok, cool
11:32 jlaire left
hoelzro just realized he's using Rakudo * 2013.02 11:33
diakopter [Coke]: ping 11:38
11:43 rindolf left 11:48 fridim__ joined 11:49 benabik left 11:50 benabik joined 11:53 logie joined
hoelzro I think I found another bug: gist.github.com/hoelzro/6061791 11:53
that doesn't seem right to me...
(this is now with a Rakudo built from Git) 11:54
lizmat Indeed, that error is LTA
but it is correct, as a regex is just a special sub/method
11:55 tokuhirom joined, SamuraiJack__ joined
hoelzro but it's a lexical regex; why would that create a method? 11:55
also, LTA? 11:56
timotimo "Less Than Awesome"
hoelzro ah =) 11:57
jnthn Any regex needs a cursor to operate on 12:03
lexical regex really means "install in lexical scope"
colomon, FROGGS: Either of you know the state of the NQP sprintf.t failures? Are they machine specific?
colomon jnthn: they're not 12:04
jnthn: they're just stuff that needs to be fixed.
I'll try to get to it today or tomorrow
hoelzro jnthn: so that means it's a method, but it also has an entry in the lexicals table?
jnthn hoelzro: Well, it doesn't get installed in a method table, but yeah, all regexes (even /.../) are generated as methods 12:05
hoelzro so should a duplicate lexical regex (in different scopes) be considered an error? 12:06
jnthn hoelzro: To the degree that they all need to be invoked on a cursor
No
hoelzro ok, that's what I was wondering =)
so that's another bug, rigth?
*right
jnthn Just as lexical $a in an inner scope doesn't cause issues with a lexical $a in an otuer scope
What's another bug?
colomon jnthn: they're basically things we'd fudge in roast. Dunno if that is possible (or desirable) in NQP tests.
hoelzro jnthn: gist.github.com/hoelzro/6061791 12:07
jnthn oh, hm, I should check spec... 12:09
timotimo i was wondering ... is it a regression to go from wrong to wrong? i'm not sure if the second wrong is sufficiently less wrong though
12:10 logie left
timotimo (my code goes from rendering =output blocks like regular text paragraphs to rendering them as preformatted text, but bunched up into a single line ...) 12:10
jnthn I'm not sure if the "my" is meant to do an additional install of a method in the lexical scope as well as the method table, or if it's instead
Rakudo is taking it to be both 12:11
hoelzro indeed
something to think about =)
jnthn I'm not sure if the spec calsl it either way
hoelzro hmm
to me, it seems odd
jnthn It appears to be deliberately done the current way ratehr than being an accident though...
hoelzro ah ha
jnthn Yeah, I can argue it both ways :)
I can't recall a spec quote on it 12:12
Well, TimToady++ backlogs ;)
moritz usually 'my' means 'lexically only'
hoelzro that's how I look at it
jnthn yeah, I'd be happy enough going that way
hoelzro I have one more "bug" to report: gist.github.com/hoelzro/6061896
lizmat spectesting double 'regex' error message with more awesomness 12:13
12:15 tokuhirom left
benabik wonders if hoelzro's example would work if Rakudo had IntStr. 12:16
lizmat hoelzro: is that parameter supposed to be a number or a string? or can it be both?
r: class A { { my method a { } }; { my method a { } } # this is not just for "my regex", but also for "my method" 12:20
camelia rakudo 8a1cd0: OUTPUT«===SORRY!===␤Package 'A' already has a method 'a' (did you mean to declare a multi-method?)␤at /tmp/wRgBu4_H7h:1␤------> ␤»
lizmat maybe it should complain about "my method" ? 12:21
12:21 Celelibi left
jnthn lizmat: Well, we're speculating that "my method" should not make a method table entry 12:21
lizmat but how can you call that method then?
jnthn You couldn't call it as a method in that case 12:22
lizmat I mean, methods are generally called on objects outside of the namespace they're declared
jnthn Only lexically
lizmat so this would only make sense when called objects of class "A" inside the "A" namespace?
inside that scope even? 12:23
jnthn yeah...it's a weird thing to do for normal methods
Less weird for regexes though
dalek kudo/nom: 1822009 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/MethodContainer.nqp:
Make double method error more awesome
12:24
lizmat wonders where we should put tests for that 12:25
diakopter there's a bunch of error tests centralized somewhere I thought 12:27
jnthn If you make it a typed exception, then it can go into S32-exceptions/misc.t 12:30
12:30 ribasushi left
hoelzro lizmat: it's a Str, but isn't '10' a Str? 12:31
lizmat looks_like_a_number :-)
hoelzro heh
moritz hoelzro: sub MAIN_HELPER does some magic to turn command line arguments into the "appropriate" types
hoelzro well, shouldn't MAIN accept '10' as parameter, though?
jnthn val(...) semantics maybe
hoelzro it just seems odd 12:32
jnthn But we dont' have IntStr and friends yet.
MI :/
lizmat perl6 a.p6 '"10"' # would work
hoelzro sub MAIN(Cool $value) works 12:33
but then I have to manually coerce it
benabik Would Str(Any) work? Or is that Any(Str)?
12:33 konundra left
lizmat NYI 12:33
benabik :-(
jnthn You writre that as "as Str" for now 12:34
lizmat hoelzro: specifying Cool is essentially the same as Any, and that's the defauylt
hoelzro I see
12:36 jlaire joined
benabik jnthn: Multiple inheritance is NYI? 12:37
jnthn benabik: Yes, it's implemented, I'm just unhappy we end up using it in core... 12:38
12:38 ribasushi joined
benabik I suppose I can understand that attitude. 12:38
lizmat in the core, it is always the problem to strike a balance between performance and being an example of Perl 6 code 12:40
sometimes some features are not available yet at some point in the core (such as phasers), and sometimes features are currently too unoptimized (such as multi-method dispatch) 12:41
diakopter hopefully someday a good JIT solves that tradeoff 12:46
lizmat s/hopefully// 12:47
JimmyZ JVM :)
FROGGS we want moar! 12:48
JimmyZ too :P
diakopter JimmyZ: a Perl6/bytecode-focused JIT, as opposed to JVM/bytecode.. 12:49
JimmyZ A Perl6 JIT by using luajit's dynasm \o/ 12:50
timotimo is there a good mechanism to send data "back in time" while backtracking? 12:52
[Coke] ... returns from a time warp where he said he'd run something again in a few hours, but it's already tomorrow. 12:54
lizmat
.oO( Rocky! )
12:55
12:56 jose__ joined
timotimo the use case would be the diagram of WHY and WHEREFORE, where when a shorter indent that is not short enough to terminate the raw block is encountered, it should send the new short indent "back in time" to the place where it decided on how much indent to use 12:56
anyway, maybe that's for much later. first i want to finish up the proper dedenting fix along with fixes to Pod::To::HTML and Pod::To::Text as well as the perl6doc repository and the S26 spec ... oh yay. 12:57
[Coke] diakopter: Pong. 12:58
diakopter [Coke]: do you have some time to help with setting up rakudo-jvm? 12:59
12:59 kaare_ joined
diakopter [Coke]: I'm working on moving camelia to a far faster server with 4x ram 12:59
[Coke] I am at $dayjob, so not a lot of time, but I can spend a few minutes here and there. (and tonight is the first Albany.pm meeting in about 5 years. woot) 13:00
13:00 logie joined 13:01 konundra joined
lizmat [Coke]++ 13:03
dalek kudo-js: a7c4605 | (Pawel Murias)++ | / (8 files):
Start rewriting the premetamodel grammars attempt to a grammar implementation using QRegex.

Pass tests 31 and 29. Add list_i,push_i, stub minor things.
13:04
13:05 pmurias joined
pmurias pmichaud_: ping 13:05
[Coke] lizmat: don't get too excited. It's me and one guy who's in town for a wedding from africa. 13:08
lizmat it's a start (again) :-) 13:09
13:12 telex joined
dalek kudo/nom: 3f8b609 | (Elizabeth Mattijsen)++ | src/core/operators.pm:
Fix comment spello
13:13
13:15 PacoAir joined 13:16 _jaldhar joined 13:25 xilo joined 13:27 bluescreen10 joined 13:28 jose__ left
lizmat afk for a few hours again& 13:31
13:32 kaleem left
[Coke] did rebuf get merged? 13:45
moritz looks like it, yes 13:46
[Coke] danke. 13:47
14:01 bluescreen10 left, bluescreen10 joined
timotimo uri is failing two utf8-based escape tests 14:05
its "got" result contains lots of %FF 14:06
that confuses me a bit
14:06 Celelibi joined
timotimo apparently the implementation for the escaping is '%' ~ .Str.encode.unpack('H*').uc.comb(/../).join('%') 14:07
r: "ö".Str.encode.unpack('H*')
camelia rakudo 182200: ( no output )
timotimo r: "ö".Str.encode.unpack('H*').perl.say
camelia rakudo 182200: OUTPUT«"fffffffc3fffffffb6"␤»
timotimo r: "a".Str.encode.unpack('H*').perl.say
camelia rakudo 182200: OUTPUT«"61"␤»
timotimo that's not utf8, is it? 14:08
r: "ö".Str.encode.unpack('h*').perl.say
camelia rakudo 182200: OUTPUT«Unrecognized directive 'h'␤ in block at src/gen/CORE.setting:4485␤ in method reify at src/gen/CORE.setting:6513␤ in method reify at src/gen/CORE.setting:6408␤ in method gimme at src/gen/CORE.setting:6836␤ in method eager at src/gen/CORE.setting:6815␤ in meth…
timotimo "ö".encode('utf-8').perl.say
r: "ö".encode('utf-8').perl.say
camelia rakudo 182200: OUTPUT«utf8.new(-61, -74)␤»
timotimo ... is that so? 14:09
jnthn: does that seem right to you? ^
[Coke] r: say utf8.new(-61, -74); 14:10
camelia rakudo 182200: OUTPUT«Buf:0x<ffffffc3 ffffffb6>␤»
[Coke] r: say ~utf8.new(-61, -74);
camelia rakudo 182200: OUTPUT«ö␤»
timotimo i mean c3 and b6 are correct, but all the f's in front i don't think are right
[Coke] it round trips, anyway.
14:10 rindolf joined
timotimo maybe internally utf8 uses signed where it should be using unsigned or something? 14:10
[Coke] r: say ~utf8.new(-66, -74);
camelia rakudo 182200: OUTPUT«Malformed UTF-8 string␤␤ in method decode at src/gen/CORE.setting:4507␤ in method Str at src/gen/CORE.setting:4512␤ in method Str at src/gen/CORE.setting:905␤ in method Stringy at src/gen/CORE.setting:914␤ in sub prefix:<~> at src/gen/CORE.setting:1304␤ in su…
timotimo r: say 'ö'.unpack('H*') 14:11
camelia rakudo 182200: OUTPUT«No such method 'unpack' for invocant of type 'Str'␤ in block at /tmp/aOauEAI4su:1␤␤»
timotimo mhm.
r: say ('ö'.encode >>*>> -1) 14:12
camelia rakudo 182200: OUTPUT«-2␤»
timotimo er, no.
benabik I think it's converting from a signed byte to signed integer. 14:13
And when it's building the utf8 from the ints, it's truncating the higher bits.
timotimo ah, of course. an integer in a utf8 type is clearly not what's wanted
benabik Yes.
timotimo class utf8 does Blob[int8], so at least that part seems right 14:14
benabik 0xc3 has the high bit set, so it's (obviously?) negative, so extending it to a 64b int requires adding 0xffffff, not 0x000000
timotimo that makes sense indeed 14:15
a temporary crutch would be to +& it with 0xff, just to make it all pass again (that is, in the uri_escape function)
er, what am i saying. utf8 does Blob[int8] should be does Blob[uint8], no? 14:16
(and of course uint8 and friends are not defined) 14:17
benabik Yeah. Should be, if it exists. :-/ 14:19
This may simply be an output bug, where it's outputting more bits than it's storing.
14:22 ajr joined, ajr is now known as Guest61758 14:23 Guest61758 is now known as ajr_
jnthn I wondered if the signedness thing would bite at some point. 14:28
:/
Neither Parrot nor JV
M offer signed integers
So it'll need a hack.
14:31 robinsmidsrod left
jnthn unpack and pack passed their tests on the new impl, so I'm guessing they are undertested :( 14:32
pmurias jnthn: you mean neighter Parrot nor JVM offers unsigned integers?
jnthn pmurias: yes
pmurias * neither
timotimo easy: store utf8 in 16-bit integers ... >_> 14:33
jnthn I suspect I can find a way to cheat us a uint8, uint16 and uint32
In arrays at least
timotimo: That's horribly wasteful.
timotimo yes, hence the emoticon 14:34
pmurias can't we store unsigned integers as signed ones and just do the operations differently?
colomon stupid perl6 question: how does one go from, say, a binary number string to an Int?
jnthn r: say :2('10101') 14:35
timotimo colomon: .chrs is one option?
camelia rakudo 3f8b60: OUTPUT«21␤»
timotimo oh, that's what you mean
jnthn pmurias: Yeah, that's what I have in mind ;)
colomon r: my $a = "1010101"; say :2($a)
camelia rakudo 3f8b60: OUTPUT«85␤»
colomon jnthn++
jnthn pmurias: Whenever we pull anything out of an array we have to widen it anyway.
pmurias: JVM treats all ints as 64-bit for calculation purposes.
On Parrot...well, depends if you build 32-bit or 64-bit :) 14:36
14:36 robinsmidsrod joined
timotimo hm, how do i generate a buf from another buf with .abs run over all the numbers in it? 14:36
pmurias jnthn: have you seen blogs.oracle.com/darcy/entry/unsigned_api? they even link to a patch we could steal code from for backporting 14:37
jnthn Buf.new($otherbuf.map(*.abs))
timotimo neato
r: "ö".encode.map(*.abs).perl.say
camelia rakudo 3f8b60: OUTPUT«No such method 'abs' for invocant of type 'utf8'␤ in block at /tmp/ID4IxP_Sd8:1␤␤»
timotimo r: "ö".encode.map(*.&abs).perl.say
camelia rakudo 3f8b60: OUTPUT«(2,).list␤»
timotimo but that's wrong :(
jnthn uh, guess you need .list.map 14:38
timotimo r: "ö".encode.list.map(*.&abs).perl.say
camelia rakudo 3f8b60: OUTPUT«(61, 74).list␤»
timotimo that seems better
jnthn I'm pretty sure it ain't :)
timotimo hehe.
it's all temporary
jnthn The problem is not that you need to absolute it
It's that it's coming out signed when it should be unsigned
You want to add 128 if it's negative... 14:39
timotimo right
jnthn but if you shove it right back into a buf8 you'll lose it again
so you'd have to put it in a buf16 or so
14:40 Psyche^_ left
timotimo i won't shove it into a buf. this is just to fix the test failure in URI::Escape so that i can install Pod::To::HTML to see if the output looks right 14:40
at the moment i don't care about correctness in this part. i could equally well install it with --notests actually.
jnthn are you patching Rakudo or URI::Escape?
colomon rn: my @a := 1, 1, * R+ * … *; say @a[3]
camelia niecza v24-88-g1f87209: OUTPUT«===SORRY!===␤␤Confused at /tmp/vHFqxuNUZM line 1:␤------> my @a := 1, 1, * R+ * ⏏… *; say @a[3]␤␤Parse failed␤␤»
..rakudo 3f8b60: OUTPUT«===SORRY!===␤Two terms in a row␤at /tmp/5u8UmUDL0A:1␤------> my @a := 1, 1, * R+ * ⏏… *; say @a[3]␤ expecting any of:␤ postfix␤ infix stopper␤ infix or meta-infix␤ statement end␤ statement m…
timotimo the latter
jnthn We should really fix it in Rakudo, and add a spectest
colomon rn: my @a := 1, 1, * + * … *; say @a[3]
camelia niecza v24-88-g1f87209: OUTPUT«===SORRY!===␤␤Confused at /tmp/Cz3fU4ShAZ line 1:␤------> my @a := 1, 1, * + * ⏏… *; say @a[3]␤␤Parse failed␤␤»
..rakudo 3f8b60: OUTPUT«===SORRY!===␤Two terms in a row␤at /tmp/T0SdYA7nTu:1␤------> my @a := 1, 1, * + * ⏏… *; say @a[3]␤ expecting any of:␤ postfix␤ infix stopper␤ infix or meta-infix␤ statement end␤ statement mo…
timotimo i can surely add a spectest. the fixing i'll leave up to someone else, though. 14:41
jnthn *nod*
14:42 Psyche^ joined
timotimo there's only S03-operators/buf.t with "buf" in its name. where should i look? 14:42
ah
S32-str/encode.t seems right?
jnthn yeah 14:43
colomon rn: my @a := 1, 2, 3 ... *; say @a[3]
camelia rakudo 3f8b60, niecza v24-88-g1f87209: OUTPUT«4␤»
colomon rn: my @a := 1, 2, * + * ... *; say @a[3]
camelia rakudo 3f8b60, niecza v24-88-g1f87209: OUTPUT«5␤»
colomon rn: my @a := 1, 2, * R+ * ... *; say @a[3] 14:44
camelia niecza v24-88-g1f87209: OUTPUT«5␤»
..rakudo 3f8b60: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: Mu *%_)␤ in method Numeric at src/gen/CORE.setting:894␤ in sub infix:<+> at src/gen/CORE.setting:3299␤ in sub infix:<+> at src/gen/CORE.setting:3297␤ in block at src/gen/CORE.setting:14527␤ in …
colomon rakudobug?
jnthn I guess Rakudo doesn't like whatever-currying meta-ops. Should that work?
colomon as far as I know.
dalek ast: 2b3c0d4 | (Timo Paulssen)++ | S32-str/encode.t:
add a test to ensure utf8 codepoints come out right

not, for example, negative or off-by-one.
14:47
timotimo pretty minimal, but it does explode as intended.
14:47 gdey left 14:49 gdey joined 14:53 fhelmberger left
[Coke] pn: ('ä'.encode('UTF-8') eqv Buf.new(:16<c3>, :16<a4>)) 14:55
rpn: say ('ä'.encode('UTF-8') eqv Buf.new(:16<c3>, :16<a4>))
camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Cannot call new; none of these signatures match:␤ Mu, *%_␤ at /tmp/JW8QI0bJOR line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4580 (module-CORE @… 14:56
..pugs: OUTPUT«*** No such method in class Str: "&encode"␤ at /tmp/lu6ojf5Tr2 line 1, column 5 - line 2, column 1␤»
..rakudo 3f8b60: OUTPUT«False␤»
[Coke] can you fudge that for niecza and pugs?
i'll let jnthn decide if he wants to fudge it for rakudo
timotimo oh wow 14:57
i have apparently introduced a regression that affects exactly *one* out of multiple code blocks in the classtut 14:58
15:00 dayangkun left, konundra left 15:01 telex left 15:03 telex joined 15:04 dayangkun joined
jnthn decommute & 15:08
15:08 iSlug left 15:09 iSlug joined, iSlug left 15:10 fhelmberger joined 15:25 dmol joined 15:30 skids joined 15:31 kaare__ joined 15:32 xinming left 15:34 kaare_ left, xinming joined 15:41 zby_home_ joined
timotimo i'm still puzzled by the growing memory usage of htmlify 15:42
i suppose it kind of makes sense that rakudo would want to keep a bit of the stuff hanging around ...
15:42 FOAD left 15:43 FOAD joined
timotimo it's probably the registry keeping all the $pod objects around until the very end 15:55
maybe a bit of processing can be moved to the front, so that it'll only have to keep a string around instead of the whole thing. 15:56
15:56 raiph joined
[Coke] pmurias++ 15:58
timotimo apparently it does have to keep around lots of the data
moritz it basically keeps around every Pod:: object it ever parses 16:05
but it used to be about 1GB 16:06
timotimo either i have broken it, or it has been broken since you last looked
FROGGS maybe both :P
timotimo Generated on 2013-04-01T01:53:43-0200 - that's a long time ago i feel.
16:09 donaldh left 16:10 domidumont left, wtw left
timotimo i'm not really confident in the way pod_string_character works. can that really be efficient? taking one character at a time? 16:11
but of course that doesn't impact memory usage. or at least it shouldn't do that 16:13
16:15 fridim__ left 16:16 FROGGS[mobile] joined, fhelmberger left 16:17 fhelmberger joined 16:18 syed_ joined 16:19 syed_ left, konundra joined 16:21 logie left, ajr_ left, ajr joined, FROGGS left 16:22 ajr is now known as Guest26257, Guest26257 is now known as ajr_, Guest1337 joined 16:28 domidumont joined 16:31 fhelmberger left 16:35 FROGGS joined 16:36 btyler joined 16:37 FROGGS[mobile] left 16:46 ajr_ left 16:48 spider-mario joined 16:52 birdwindupbird left 16:55 dakkar left 16:56 logie joined 16:57 xinming left 16:59 xinming joined
pmurias [Coke]: what was the karma for? 17:07
[Coke] gsoc project 17:13
17:17 ajr joined
colomon woah, lot of new module test failures overnight 17:17
17:18 ajr is now known as Guest39882, Guest39882 is now known as ajr_
dalek kudo-star-daily: df67d1d | coke++ | log/ (5 files):
today (automated commit)
17:18
kudo-star-daily: ebd4c1b | coke++ | log/ (5 files):
today (automated commit)
kudo-star-daily: f34ac5a | coke++ | log/ (5 files):
today (automated commit)
kudo-star-daily: 11c0c3c | coke++ | log/ (5 files):
today (automated commit)
17:22 dmol left 17:24 fridim__ joined 17:35 daxim left 17:36 xinming left 17:37 xinming joined 17:38 btyler left
timotimo just reverted an old merge commit ... git is magical 17:42
[Coke] when the failing(!) test was added to S32-str/encode.t, looks like the plan might need updating also. 17:43
*might have needed
timotimo oooh, yes 17:44
sorry about that 17:45
dalek ast: d9ba3ef | (Timo Paulssen)++ | S32-str/encode.t:
bump the plan for the last commit
timotimo oh, hold on, the "failing(!)" indicated i should have TODO'd it?
[Coke] yes. 17:46
unless the plan is for it to be fixed asap, sure.
dalek ast: 2dfe8c6 | (Timo Paulssen)++ | S32-str/encode.t:
... and also mark the failing test as todo.
timotimo must be the heat messing with my brain functions
i blame external factors for my incompetence! 17:47
moritz [Coke]++, timotimo++ # fixing tests
[Coke] [resend] can you fudge that for niecza and pugs?
17:47 kaleem joined, kaleem left
timotimo ... surely can. should i squash all those commits quickly before anybody else sees them? 17:48
[Coke] they've been seen. :)
timotimo noooooooooooo~
[Coke] (no worries) 17:49
timotimo pn: 'ä'.encode('UTF-8').perl.say
[Coke] seriously, no worries. Thanks for adding tests!
moritz timotimo: more commits, more karma :-)
17:49 raiph left
timotimo perl6: 'ä'.encode('UTF-8').perl.say 17:49
camelia rakudo 3f8b60: OUTPUT«utf8.new(-61, -92)␤»
..niecza v24-88-g1f87209: OUTPUT«Buf.new(...)␤»
timotimo pugs isn't being run any more? 17:50
n: 'ä'.encode('UTF-8').list.perl.say
camelia niecza v24-88-g1f87209: OUTPUT«(Buf.new(...), ).list␤»
timotimo aaw come on :(
n: 'ä'.encode('UTF-8')[0].perl.say
camelia niecza v24-88-g1f87209: OUTPUT«Buf.new(...)␤»
timotimo how do i even ...
n: say 'ä'.encode('UTF-8') eqv Buf.new(:16<c3>, :16<a4>) 17:51
camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Cannot call new; none of these signatures match:␤ Mu, *%_␤ at /tmp/9RhEt929Bq line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4580 (module-CORE @…
timotimo n: say 'ä'.encode('UTF-8') eqv Buf.new([:16<c3>, :16<a4>])
camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Cannot call new; none of these signatures match:␤ Mu, *%_␤ at /tmp/ZwdzLbyKzG line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4580 (module-CORE @…
[Coke] timotimo: if you want to run all 3 you need "npr: "
timotimo i wanted only pugs and niecza. i know the output of rakudo already
are these S32-str/encode.t tests being run on niecza at all? it would seem like there'd be multiple actual failures 17:52
timotimo looks at the always useful roast-data logs
colomon Niecza doesn't have Buf, as far as I know
timotimo they are not being run at all, so at least i don't have to fudge them for niecza 17:53
same for pugs.
[Coke] timotimo: (not running them) whoops, didn't even think to double check that.
timotimo++ timotimo++
timotimo i'm glad the heat has left some shred of thinking capability in my head :)
colomon fifteen new module failures overnight, don't have time to look into them right now. 17:54
Bailador, CSS::Grammar, LWP::Simple, Pod::To::HTML, p6doc, etc 17:55
timotimo Pod::To::HTML fails (i think) because URI doesn't finish its tests (due to the encoding issue i added that non-perfect test for earlier today) 17:56
and i think p6doc fails due to the Pod::To::HTML failure
[Coke] really needs to update the daily star runs to do latest-of-everything. blargh
timotimo i wonder if jnthn plans to give us uint native types today 17:57
17:59 ilbot_nextgen joined 18:00 moritz_ joined, moritz_ left 18:05 stevan__ left 18:06 btyler joined
timotimo it's so strange. just when the script finishes with "reading lib/..." it's at almost 2gb of resident memory 18:09
just before that it's at 600 mb
18:10 araujo joined
timotimo then it just jumps up 1.5gb? it should just have a dict with a couple of key/value pairs in it :| 18:10
IO::Path objects shouldn't be big, should they? 18:11
spider-mario hm, how about changing this in ConfigureJVM.pl? 18:24
- if (open my $CLEAN, '-|', "$make clean") {
+ if (open my $CLEAN, '-|', $make, clean) {
geekosaur bareword clean 18:25
spider-mario oops, indeed
my bad
if (open my $CLEAN, '-|', $make, 'clean') {
then.
timotimo seriously, how in the world is a list composed of 153 pairs that have a string and a path in them making rakudo take up 1.8 gigs of ram? 18:27
tadzik you could say that...
(•_•)
( •_•)>⌐■-■
(⌐■_■) it scales
FROGGS *g* 18:28
timotimo :|
jnthn
.oO( web scale! )
18:30
That does sound rather wtf...
timotimo r: say "That's {(1.2 * 1024 * 1024) / 152} kilobytes per entry, captain."
camelia rakudo 3f8b60: OUTPUT«That's 8278.231579 kilobytes per entry, captain.␤»
TimToady
.oO(What The Fish Scales?)
18:31
jnthn timotimo: Can you reproduce it in a small test case? 18:35
timotimo yeah, it's small-ish. i'll gist it for you 18:36
18:37 raiph joined
timotimo gist.github.com/timo/a493f5fbb80e0f298f92 - should be executed in perl6/docs or what's the repo name. 18:38
18:40 aindilis left
lizmat good *, #perl6! 18:40
is there a way to have parakudo produce a stack trace when being in an infiniloop somewhere in its bowels ? 18:41
some signal I can send to the process? 18:42
timotimo i would love to know that as well
lizmat seems there are signal handlers defined, as sending a kill -30 will actually state "User defined signal 1: 30" 18:44
dalek rl6-roast-data: 54454cf | coke++ | / (5 files):
today (automated commit)
18:46
lizmat jnthn: doesn nqp install those signal handlers, or does parrot? 18:47
99.34%
jnthn lizmat: Pretty sure it ain't NQP
lizmat: As in, almost certain...if it is, it's bit of NQP I've never seen :) 18:48
lizmat hehe
so I guess it becomes a question of parrot calling a nqp::code in a signal handler
[Coke] jnthn++ # few more tenths of a percent!
jnthn lizmat: That sounds...scary :) 18:49
lizmat well, we want it to die, just with a stack trace, not a segfault :-) 18:50
18:56 dmol joined
lizmat gives up on getting into Parrot 19:01
19:01 vk_ joined
jnthn ...that was fast :P 19:02
lizmat I wonder whether we couldn't install a signal handler in NQP, that would set a flag and just call nqp::die on the next opcode
19:02 dmol left, dmol joined
jnthn lizmat: Not quite sure how to do that. 19:04
lizmat jnthn: I'm still trying to grok perl6 / rakudo / nqp, and with the limited brain capacity that I have, it just becomes Too Mucb (™)
meanwhile, I found where my code infiniloops
src/core/Stringy: multi infix:<eq>(\a, \b) { a.Stringy eq b.Stringy } 19:05
pmurias jnthn: when I'm reading in the stable for a flattened attribute the 0 sc is the current one 1 is the first one in the dependencies table etc.
lizmat jnthn: I guess .Stringy is a type coercion, right ? 19:06
jnthn pmurias: Yes, sounds right
lizmat: Yeah
lizmat: Typically calls .Str 19:07
19:07 dmol left 19:08 dmol joined, stevan__ joined
[Coke] lizmat: so you're at the "too many layers of abstraction" layer? 19:08
lizmat that's one way to abstract it :-) 19:09
jnthn: in src/core/Any, method join is doing .Str coercion for the elements, and .Stringy for the separator. Is there a reason for that discrepancy? 19:10
jnthn No, probably wants to be Str for both 19:11
lizmat running spectest 19:13
jnthn Grr...sleeping badly due to heat + early mornings for teaching = lack of energy :/
[Coke] jnthn++ 19:15
lizmat I've moved to tropic schedule: getting up around 5 am, cycling around 9, lunch, siesta, and then the evening hack :-) 19:16
FROGGS sounds nice... except the getting up part 19:17
19:17 Guest94502 left
jnthn lizmat: Oh, I'd been getting up at 11am and sleeping around 3am-4am before the teaching happened. 19:18
lizmat FROGGS: yes, that's the hard part 19:19
dalek kudo/nom: fefe2e4 | jnthn++ | src/ (3 files):
Stub in unsigned integer types.

They presently have no effect whatsoever and behave signed; future commits will gradually try to address that.
lizmat it's a start 19:21
.oO( why do I have a sense of deja vu? )
TimToady jnthn: yes, a my method should ignore any class around it; it's just a lexical function from that standpoint 19:24
jnthn TimToady: k 19:25
dalek kudo/nom: 60ea730 | (Elizabeth Mattijsen)++ | src/core/Any.pm:
Unify stringification in .join
Util_ #ps in 5 minutes
19:30 rindolf left
lizmat jnthn: what's the significance of all infix ops in Stringy doing .Stringy rather than .Str, while Mu.Stringy is just self.Str ? 19:33
jnthn lizmat: There are things that are Stringy that are not Str
r: say Buf ~~ Stringy # for example 19:34
camelia rakudo 3f8b60: OUTPUT«True␤»
jnthn compiles a patch to make "my method" not end up in le method table
lizmat but but, the only method Stringy exists in Mu ?
jnthn Well. That's unfortunate :) 19:35
Maybe we should add one to Blob :)
Does Str not have one?
lizmat Blob has .Str
jnthn Yeah, .Stringy should return self. 19:36
19:36 domidumont left, abnorman joined
[Coke] seen gerd 19:36
.seen gerd
yoleaux I haven't seen gerd around.
lizmat Str does not have a Stringy 19:37
jnthn Well, doesn't that suck.
colomon LHF
VLHF, even
jnthn very :)
lizmat that line is easily added, but I still don't really understand the reason why we have Stringy at all 19:38
I mean, the file is just a storage of infixes in GLOBAL:: 19:39
colomon lizmat: think of Cat, when we finally get it
lizmat ah, now that makes sense (in a way)
colomon if you just convert it to a Str right away every time you do something, it's completely pointless as a class 19:40
lizmat that's why it is empty now, as a class, right?
jnthn colomon: Well, it's the case for Buf too 19:41
colomon: Which we already have
colomon jnthn: true, but I don't understand why Buf is considered Stringy. ;) 19:42
whereas with Cat it is really obvious, and clear why you don't want to just convert it to a Str all the time 19:43
lizmat "Cannot auto-generate a proto method for 'Stringy' in the setting" interesting :-)
19:43 dmol left
jnthn lizmat: You must write explicit proto in the setting if you write a multi 19:44
(of course, inheriting a proto is ok)
lizmat I'll try to do without for now 19:45
dalek kudo-js: 539748a | (Pawel Murias)++ | / (3 files):
Deserialize flattened attributes, for now we unflatten the attributes as the tradeoffs for doing this seem to be different on JavaScript.
19:47
jnthn
.oO( how unflattening)
19:48
[Coke] gist.github.com/coke/5879701 - updated with latest jvm failure info 19:49
jnthn roast/S32-io/slurp.t 19:50
57:#?rakudo.jvm skip "BuF NYI"
oh yes it is :P
19:53 stevan__ left
pmurias jnthn: how often is pmichaud on the channel nowdays? 19:57
jnthn pmurias: Rarely, it seems
FROGGS once a month maybe 19:58
jnthn pmurias: You can try email, or maybe somebody else will know the answer
19:58 arlinius left
jnthn (if it's a question you have) 19:58
pmurias jnthn: does he backlog? 20:00
jnthn: I want to dicuss the midterm evaluation with him (for my GSoC project)
20:00 SamuraiJack__ left
jnthn ah... 20:00
Then I'd try email
20:02 wk joined, wk is now known as Guest85960 20:03 kaare__ left
lizmat is getting really frustrated :-) 20:08
1. one test hangs in S03-sequence/basic.t
2. if I take out that test into a seperate test file, it passes
3. if I skip all of the tests until the hanging test in the original file, it still hangs 20:09
ideas?
jnthn TimToady: What about 'our' methods? 20:11
TimToady: Just in package/lexpad? Or in method table too?
jnthn 's patch made them just package/lexpad, which has broken some tests...
lizmat: I suggest drinking. 20:12
lizmat: What if you comment out tests after teh one that fails?
lizmat ah now, that's an idea 20:13
jnthn
.oO( which one :P )
lizmat the latter, I've been drinking all day 20:14
jnthn :D
mst ride that ballmer peak!
20:15 zby_home_ left
lizmat I'd rather have a Bulmers peak 20:17
20:18 iSlug joined, stevan_ joined
colomon Bulmers! 20:19
FROGGS guesses that mst has an highlight for the word 'drinking' 20:20
lizmat or "drinking all day' :-) 20:21
FROGGS *g* 20:22
yeah
must be it
colomon we're going to try to take our four-year-old to the pub tonight.
20:22 iSlug left
lizmat isn't he much too young for that ? :-) 20:23
colomon for the music
it's an experiement.
he went a bunch of times when he was like 20-24 months old
timotimo he'll perform? :)
[Coke] my dad used to take me to the bar and let me play asteroids.
colomon then he got too squirrelly
[Coke] yah, my dad did get pretty squirrelly for a while. 20:24
colomon timotimo: no, if all goes well his mom and dad will perform.
lizmat colomon++
colomon he's been showing a lot of interest in music again, so we thought we'd try this and see how it went
lizmat jnthn++ skipping all the tests *after* the hanging test, makes the test pass! 20:25
colomon If I can get Jerry to sing some of his Battle of Lake Erie songs I'm guessing our little guy will be captivated.
20:26 bruges_ joined 20:28 bruges left
lizmat jnthn: now found the real hanging test 20:30
I guess we have some kind of buffering issue in TAP output
mst did nobody implement $| yet? 20:34
mst hides
20:34 domidumont joined
colomon has the perfect use for his (not in ecosystem) STEP module, except …. wait, it's only a 13M file! I thought it was 135M. My big Linux box might be able to handle parsing 13M… 20:34
[Coke] colomon: is rakudo.jvm any better/faster/different running your module 20:37
?
colomon [Coke]: dunno, I haven't tried it yet.
20:37 konundra left
colomon on any of my modules 20:37
lizmat r: say (32,16,8 ...^ Rat) # seems I broke this 20:42
camelia rakudo 60ea73: OUTPUT«32 16 8␤»
20:42 domidumont left 20:44 lue left
colomon lizmat: what were you doing? 20:45
lizmat trying to implement my latest spec change :-)
r: sub e { "foo" }; say e # something else I found today, rakudobug ? 20:53
camelia rakudo 60ea73: OUTPUT«2.71828182845905␤»
20:56 arlinius joined
colomon n: sub e { "foo" }; say e # something else I found today, rakudobug ? 20:59
camelia niecza v24-88-g1f87209: OUTPUT«2.7182818284590451␤»
colomon rn: sub e { "foo" }; say e() # something else I found today, rakudobug ?
camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Num␤ at /tmp/UEEkladvqd line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4580 (module-CORE @ 576…
..rakudo 60ea73: OUTPUT«foo␤»
lizmat that's an intriguing error message in niecza 21:01
jnthn Not Rakudo bug; e() is always unambiguously a function all, e is only a listop if there's no term that matches, iirc
21:02 spider-mario left, dayangkun left
lizmat r: sub e { "foo" }; constant e=42; say e; say e() # I guess so 21:03
camelia rakudo 60ea73: OUTPUT«42␤foo␤»
21:04 xinming left 21:05 xinming joined 21:06 pmurias left 21:07 vk_ left 21:08 Guest1337 left
TimToady jnthn: 'our method' also does not install in the class; note that 'our $.foo' autogenerates a 'has' method, not an 'our' method 21:08
jnthn TimToady: OK, thanks, will fix the tests that expect it to do so 21:11
21:14 woolfy left 21:17 dayangkun joined
lizmat jnthn: now that I have determined that stringification was not the cause of my hanging test 21:18
would there be a performance reason for adding a Stringy method to Str or not ?
if not, I'd rather leave things the way they are :-) 21:19
21:23 donaldh joined 21:25 ajr_ left
jnthn lizmat: Potentially, yes. Blob should get a method Stringy for correctness reasons also. 21:28
21:28 woolfy1 joined
lizmat ok, will add one to Str and spectest 21:28
dalek kudo/nom: e52c59c | jnthn++ | src/Perl6/Actions.nqp:
my/our methods shouldn't go into the method table.
jnthn lizmat: Can you add one to Blob too? :)
lizmat sure, for now it would just be self.Str, right ? 21:29
dalek kudo/nom: b2599cb | (Elizabeth Mattijsen)++ | src/core/operators.pm:
Make sure we don't flatten type objects as endpoints of sequences
21:30
21:30 PacoAir left
dalek ast: d99ef7f | jnthn++ | S12-class/interface-consistency.t:
Correct test with regard to 'our method' usage.
21:32
ast: 9b66fdf | jnthn++ | S12-methods/class-and-instance.t:
Tests for my/our methods.
jnthn lizmat: no, just self
lizmat okidoki
jnthn lizmat: Because Blob ~~ Stringy
r: say Blob ~~ Stringy
camelia rakudo 60ea73: OUTPUT«True␤»
jnthn OK, that should be the my/our method thing cleaned up :)
r: say 'ö'.ord 21:33
camelia rakudo 60ea73: OUTPUT«246␤»
21:35 FROGGS left
lizmat r: say Blob.Stringy 21:36
camelia rakudo 60ea73: OUTPUT«use of uninitialized value of type Blob in string context in any at src/gen/Metamodel.nqp:1461␤␤␤»
21:37 ajr joined, Guest85960 left, ajr is now known as Guest6500
jnthn r: say Blob 21:37
camelia rakudo 60ea73: OUTPUT«(Blob)␤» 21:38
21:38 dayangkun_ joined 21:39 Guest6500 is now known as ajr_ 21:41 dayangkun left
jnthn r: say Buf.new(129) 21:43
camelia rakudo 60ea73: OUTPUT«Buf:0x<ffffff81>␤»
jnthn r: say Buf.new(129).perl
camelia rakudo 60ea73: OUTPUT«Buf.new(-127)␤»
21:44 lue joined
lizmat r: say Buf.new(-127).gist 21:47
camelia rakudo 60ea73: OUTPUT«Buf:0x<ffffff81>␤»
jnthn whee
lizmat looks like it is roundtripping
jnthn yeah, but 129 should come out as 129 :)
donaldh Does nqp have the equivalent of -Mmodule, or do I just need to do -e 'use module; ...'
jnthn is working on it, but may not get it done tonight
donaldh: No, there's no -M
donaldh is trying to think of a sane interface to ask for nqp compile / runtime params. 21:48
maybe runtime::classpath.nqp INIT { nqp::say('.../nqp-runtime.jar:.../asm-4.1.jar:.../jline-1.0.jar') } 21:52
then ./nqp -e 'use runtime::class path'
dalek ast: 364710c | (Elizabeth Mattijsen)++ | S12-methods/private.t:
And another todo bites the dust
21:53
kudo/nom: 4550293 | (Elizabeth Mattijsen)++ | src/core/ (3 files):
Add .Stringy to Str and Blob
21:54
jnthn > say chr(246).encode.perl
utf8.new(195, 182)
yayz
lizmat jnthn++ 21:55
jnthn does a proper rebuild and spectests 21:56
21:58 bluescreen10 left
donaldh jnthn: I've just spotted the generated nqp-config.nqp and nqp --show-config 21:58
jnthn donaldh: oh!
donaldh jnthn: should I just expand that to include class path, etc.
jnthn oh wow...
donaldh: yes
on JVM it's rather minimal :) 21:59
But yeah, use that \o/
donaldh I guess the parrot version is more complete.
jnthn wow, I shoulda known about that :)
right
22:01 raiph left
donaldh okay, there's nothing extra in the parrot --show-config, but we could add config values for each backend as we need them. 22:03
jnthn oh, my --show-config on Parrot shows loads of extras
donaldh that's parrot's tho.
jnthn All under parrot:: 22:04
um, I mean nqp --show-config
Running on Parrot
oh wait, I think I misunderstood what you meant :)
donaldh Hmmm.
jnthn On NQP JVM I get just two entries.
Anyway, yes, we can add extras 22:05
:)
The parrot ones come out like
parrot::win32=1
donaldh Yep. and the gen-config script is shared between the jvm and parrot backends.
jnthn parrot::yacc=echo
So we can do JVM ones as jvm::prop=foo
donaldh jvm::nqp-classpath ?
jnthn wfm 22:06
donaldh ?
jnthn "works for me" :) 22:07
donaldh jnthn++
22:09 stevan_ left 22:10 abnorman left 22:11 abnorman joined
dalek p: 06c4835 | jnthn++ | src/vm/parrot/6model/ (6 files):
Basic unsigned support for native arrays.

Only provided for on the Parrot backend so far; JVM needs similar (and probably more boring/annoying) patches.
22:14
22:14 konundra joined 22:15 benabik left
dalek kudo/nom: d03e621 | jnthn++ | tools/build/NQP_REVISION:
Bump to NQP with unsigned native array support.
22:16
kudo/nom: 07a1de5 | jnthn++ | src/core/Buf.pm:
Blob, Buf, etc. should use unsinged integers.
lizmat jnthn: something like "(@l >>~~>> [Parameter])", where would I find the code doing this?
jnthn: also, should I spectest these changes ? 22:17
jnthn: actually "(@l >>~~>> Parameter)" 22:18
jnthn lizmat: context?
22:18 benabik joined
lizmat another hanging test 22:19
working on flattening type objects in non-scalar contexts
jnthn well, it's a hyperop, so HYPER in metaops.pm I guess
lizmat cool, thanks, will look there 22:20
(also running spectest of your changes now)
jnthn yeah, my run looked ok
dalek ast: bc37edc | jnthn++ | S32-str/encode.t:
Correct and add to Buf unsignedness tests.
jnthn More tests welcome
lizmat restarting with changed tests 22:22
jnthn :)
The uint work I've done is limited to native arrays so far, but hopefully it deals with the ecosystem regressions. 22:23
22:25 vk_ joined
lizmat hmmm…. segfault on making restricted setting 22:26
jnthn lizmat: You did build a new NQP, yes?
lizmat I guess I did not
jnthn ah...
I bumped NQP_REVISION...it shoulda whined... 22:27
Anyway, it needs the NQP updates too
22:27 logie left
jnthn needs some sleep 22:27
'night
lizmat gnight jnthn, thanks for all the help!
jnthn np, thanks for all the patches! :D
o/
lizmat o/ 22:28
22:28 abnorman left 22:29 benabik left 22:30 benabik joined, athomason_ joined 22:36 abnorman joined 22:44 vk_ left 22:54 fridim__ left
lizmat .tell jnthn: after nuking nqp/parrot and install dir and rebuilding from that, I still get a segfault when building RESTRICTED.setting 22:57
yoleaux lizmat: What kind of a name is "jnthn:"?!
lizmat .tell jnthn after nuking nqp/parrot and install dir and rebuilding from that, I still get a segfault when building RESTRICTED.setting
yoleaux lizmat: I'll pass your message to jnthn.
lizmat $ ./perl6 -e 1 22:58
Segmentation fault: 11
timotimo that's quite the golf! 22:59
lizmat $ ./perl6 23:00
> 1
Segmentation fault: 11
shorter on command line, but needs more lines :-)
23:02 xilo left
lizmat .tell jnthn seems to be changes in nqp that cause this, rolling back last 2 commits in nom doesn't fix the problem 23:02
yoleaux lizmat: I'll pass your message to jnthn. 23:03
23:03 grondilu joined
timotimo at least on my linux here i'm running nqp/master + rakudo/nom on parrot 5.5.0 successfully 23:03
23:03 xilo joined
lizmat fwiw, this is OSX 23:03
grondilu rn: my @fib-word := 1, 0, * R~ * ... *; say @fib-word[^3];
camelia rakudo 455029: OUTPUT«1 0 Whatever<690350503>0␤» 23:04
..niecza v24-88-g1f87209: OUTPUT«1 0 01␤»
lizmat grondilu: is that a recent regression ?
ok, building NQP one commit back doesn't work either 23:06
time to go to bed… gnight #perl6!
grondilu lizmat: don't know if it's recent. I suspect it's not. R is know to break a few things 23:07
23:07 raiph joined
grondilu remember an other example of R breaking stuff but has forgot. Sorry. 23:08
rn: say 3 Rxx rand
camelia niecza v24-88-g1f87209: OUTPUT«0.80465186331637761 0.80465186331637761 0.80465186331637761␤»
..rakudo 455029: OUTPUT«0.872750481215434 0.872750481215434 0.872750481215434␤»
grondilu ^ well there is this but I don't know it is not how it's supposed to behave. 23:09
23:11 btyler left, donaldh left 23:13 stevan_ joined
timotimo it *would* be a way to prevent the right hand side of xx from thunking ... 23:24
23:26 ajr_ left
grondilu timotimo: but shoult it prevent it? 23:26
*shoulD 23:27
grondilu makes a lot of spelling mistakes. He should get some sleep :/
23:42 araujo left 23:44 araujo joined 23:45 yoleaux left 23:50 yoleaux joined, ChanServ sets mode: +v yoleaux 23:57 raiph left