»ö« 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:02
virtualsue left
|
|||
lizmat just committed github.com/rakudo/rakudo/commit/d4...f214eb9734 | 00:04 | ||
actually, I think the current implementation of last-index is bogus... | |||
if the list in infinite, self.elems will fail anyway... | 00:05 | ||
*is | |||
japhb | So does anyone actually know what happened to dalek? | 00:06 | |
00:06
adu joined
|
|||
timotimo | i managed to get the not and prefix:<!> code much, much tighter | 00:07 | |
could be a tiny bit better, but i'll take the current improvement | 00:08 | ||
00:09
Diederich is now known as Diederich-away
00:19
gfldex left
00:22
renormalist joined
|
|||
lizmat | japhb: afaik, dalek runs on feather and feather is down? | 00:23 | |
japhb | Ah! For some reason I thought dalek was third party, just invited in, like yoleaux. | ||
lizmat | I have no idea, really :-) | 00:27 | |
moritz probably knows best | 00:28 | ||
but asleep | |||
lizmat just committed github.com/rakudo/rakudo/commit/7d...8280b0a768 | |||
00:28
adu left
|
|||
lizmat | and with that thought, I'm going to follow moritz' example | 00:29 | |
good noght, #perl6! | |||
*night :-)( | |||
00:33
grondilu left
00:35
erkan left
00:36
erkan joined,
erkan left,
erkan joined
|
|||
timotimo | gnite liz :) | 00:38 | |
00:38
lizmat left,
lizmat joined
00:41
raiph left
|
|||
bbkr | what should I do when I randomly get segfaults or other errors when using Promises on HEAD rakudo-moar? for example: gist.github.com/bbkr/28e8fd7c90344f4ae6b7 | 00:41 | |
00:42
ajr_ left
|
|||
timotimo | perhaps see if the problem goes away by setting MVM_SPESH_DISABLE or MVM_JIT_DISABLE in your environment | 00:43 | |
so that we can see if jitting/speshing makes things worse or doesn't impact it | |||
bbkr | trying it now.. | ||
00:43
rurban joined
|
|||
JimmyZ | bbkr: known bug | 00:43 | |
github.com/moarvm/moarvm/issues # it's here :) | 00:44 | ||
bbkr | MVM_SPESH_DISABLE=1 did not help | 00:45 | |
timotimo | OK | 00:46 | |
spesh_disable also disables jit | |||
JimmyZ thinks it's a GC bug :P | |||
jnthn | JimmyZ: Possible, but previous such issues have often not been that | 00:48 | |
(GC happens when all threads have agreed "it's a safe time", so there's actually quite a lot less to go wrong during that.) | 00:52 | ||
timotimo | yeah | ||
00:53
raiph joined
|
|||
JimmyZ | perl6 -e 'loop { start { say "hello" } }' # the easy way to get the bug... | 00:53 | |
timotimo | oh? | ||
we already lock output stuff, don't we? | |||
When invoking , Provided outer frame 0x376a560 (MVMStaticFrame protect) does not match expected static frame type 0x3774f30 (MVMStaticFrame start) | 00:54 | ||
i get that after a whole lot of hellos | |||
JimmyZ | not sure whether it's the same or not, but similar | ||
00:55
xenoterracide_ joined
|
|||
timotimo | i cannot pipe that into wc -l because that doesn't trigger the bug any more ... | 00:55 | |
JimmyZ | timotimo: you will get different error after some retry | ||
timotimo | No such method 'vow' for invocant of type 'Any' | ||
in method start at src/gen/m-CORE.setting:20725 | |||
in sub start at src/gen/m-CORE.setting:20774 | |||
after 20 wallclock (35.3 user) seconds | 00:56 | ||
bbkr | I also get jvm bugs when using Promises on the same code - gist.github.com/bbkr/4276c813fc518665a457 - maybe clang is to blame? | ||
timotimo | hmmm | 00:57 | |
huh, interesting | 00:58 | ||
this time it stopped writing hello | |||
but it's using a whole lot of cpu time | 00:59 | ||
so ... must be a live lock? | |||
saying an increasing number gets me to 15818 and then "no such method vow" | 01:00 | ||
JimmyZ | another cpu cost: loop { say "hello"; } cost ~20% CPU ,but with perl5 it costs ~1% cpu | ||
01:00
anaeem1 joined
|
|||
bbkr | in my case "No such method 'vow'" on 46029th iteration | 01:01 | |
"invalid status -427132408 in GC orchestrate" on 51480th | |||
"Abort trap: 6" on 63050th | 01:02 | ||
timotimo | could become a stresstest i suppose | ||
JimmyZ | I meant perl6-m cost ~20PU | 01:03 | |
~20% | 01:04 | ||
timotimo | thought so | ||
01:05
anaeem1 left
|
|||
bbkr | "my $x = 0; loop { start { sleep 0.01 } }" always gives me SEGV | 01:05 | |
when variable declaration is removed it works fine | 01:06 | ||
moar: my $x = 0; loop { start { sleep 0.01 } } | |||
japhb | If you can turn it into a bounded loop and still get the errors, that's definitely a good stress test. | 01:07 | |
How long does it run before failing? | |||
bbkr | "loop { start { sleep 0.01 } }" also failed. after 2 minutes on i4770k + 16GB RAM. | 01:08 | |
with variable it fails within few seconds | |||
japhb | bbkr: The fact that the presence of 'my $x = 0;' is a reliable SEGV switch seems like a strong indicator. | ||
Oh wait, without it its failing too? Dang. | 01:09 | ||
bbkr | yes, but it takes much longer | ||
japhb | hmmmm | ||
bbkr | ah, that was not true at all also. another try without variable segfaulted within 2 seconds | 01:10 | |
looks like SEGV is ceratin but time is not | |||
JimmyZ | A good random time producer :P | ||
japhb | Sigh | 01:11 | |
jnthn | If only we had a good random people-capable-of-finding-thread-bugs producer... :P | ||
Well, s/finding/fixing/ I guess :P | |||
japhb | At least you can get a reliable SEGV on very short valid code. | ||
jnthn | *nod* | ||
Yes, that's an improvement. | 01:12 | ||
Now I just need some undisturbed, non-exhausted, time to dig into them. | |||
japhb | I'm hoping that if we get the failure repro code short enough, then there's only so much in the VM that could actually even get touched. :-) | ||
japhb idly wonders if its possible to reproduce the error with a very restricted setting. | 01:13 | ||
Can you spawn threads in RESTRICTED? | |||
01:13
beastd left
|
|||
japhb | m: start { say "Hello"; }; sleep 2; | 01:14 | |
camelia | rakudo-moar d40fd5: OUTPUT«Hello» | ||
01:14
espadrine` left
|
|||
timotimo | i think the restricted setting is actually the core setting *plus* restriction | 01:14 | |
s | |||
so it'd end up bigger, i think | |||
japhb | m: loop { start { sleep 0.01 } } | ||
camelia | rakudo-moar d40fd5: OUTPUT«Memory allocation failed; could not allocate 8824 bytes» | ||
japhb | Oh, that old song | 01:15 | |
JimmyZ | gist.github.com/zhuomingliang/135d...file-hangs # I had got some bt :P | 01:16 | |
two months ago | |||
01:16
Krabbe_ left
|
|||
bbkr | now I got huge stacktrace on debian-wheezy box: gist.github.com/bbkr/472fcc7373cd21e7b048 | 01:17 | |
01:17
someanon left
|
|||
JimmyZ | hangs means there is a resource contention between threads ? | 01:19 | |
timotimo | possible | ||
how do you build thread sanitization? | |||
JimmyZ | don't know, I'm on win32 | 01:20 | |
japhb | Search for ThreadSanitizer aka tsan | ||
01:23
exixt_ is now known as exixt
|
|||
timotimo | maybe i have helgrind here already | 01:25 | |
01:25
araujo left
01:26
araujo joined
01:27
exixt is now known as exixt_
01:30
cognominal left
|
|||
timotimo | helgrind doesn't see problems with the code, it seems | 01:30 | |
TimToady | you need one of them analyzers that solves the halting problem | 01:31 | |
colomon is reminded that Jen once told her coworkers she was going to use one of those new-fangled teleporters to get to Florida... | 01:34 | ||
01:35
exixt_ is now known as exixt
01:43
leont left
|
|||
timotimo | i'm going to bed, too | 01:50 | |
i accumulated a slight headache somehow | |||
vendethiel | :( | ||
g'night, timotimo | |||
01:57
anaeem1 joined
02:02
anaeem1 left
02:04
anaeem1 joined
02:08
anaeem1_ joined,
anaeem1 left,
xinming joined
02:11
xinming_ left
02:12
anaeem1_ left
02:19
anaeem1 joined
02:24
anaeem1 left
02:30
anaeem1 joined
02:35
anaeem1 left
02:38
regreg joined
02:46
erkan left,
anaeem1 joined
02:51
anaeem1 left
02:53
rurban left
03:01
tinyblak left,
tinyblak joined
03:02
anaeem1_ joined
03:03
anaeem1_ left,
anaeem1 joined,
JimmyZ left
03:10
regreg left
03:14
synopsebot left
03:15
synopsebot joined
03:17
bjz left
03:18
bjz joined,
tinyblak_ joined
03:19
Mouq joined
03:22
tinyblak left
03:31
raiph left,
labster left
04:00
xenoterracide_ left,
xenoterracide_ joined
04:03
anaeem1 left,
anaeem1 joined
04:04
rmgk_ joined,
rmgk left,
rmgk_ is now known as rmgk
04:07
anaeem1 left
04:08
raiph joined
04:09
raiph left
04:24
KCL_ joined
04:30
Ben_Goldberg joined
04:33
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg
04:37
bjz_ joined,
bjz left
04:47
bjz_ left
04:48
xenoterracide_ left
04:50
bjz joined
04:59
esaym153 left,
esaym153 joined
05:01
dsm joined
|
|||
dsm | $ panda install IO::Socket::INET | 05:02 | |
resolve stage failed for IO::Socket::INET: Project IO::Socket::INET not found in the ecosystem | |||
are there any Socket package in Perl 6? | |||
tony-o | it's in core iirc | 05:03 | |
dsm | what is iirc? | 05:04 | |
tony-o | if i recall correctly | ||
r: IO::Socket::INET.new; | |||
camelia | rakudo-moar 7dd729: OUTPUT«Unhandled exception: Nothing given for new socket to connect or bind to at <unknown>:1 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:throw:4294967295) from src/gen/m-CORE.setting:13764 (/home/camelia/rakudo-inst-1/langu…» | ||
..rakudo-parrot 7dd729: OUTPUT«Nothing given for new socket to connect or bind tocurrent instr.: 'throw' pc 476005 (src/gen/p-CORE.setting.pir:197349) (gen/parrot/CORE.setting:12131)called from Sub 'sink' pc 519057 (src/gen/p-CORE.setting.pir:213085) (gen/parrot/CORE.setting:137…» | |||
dsm | :( Thanks | 05:05 | |
tony-o | why :(? | 05:07 | |
dsm | are there any cpan like page about IO::Socket::INET? | ||
tony-o | there may be, none that i know of currently..the source is located here: github.com/rakudo/rakudo/blob/nom/...et/INET.pm | 05:08 | |
dsm | thank you :) | 05:09 | |
tony-o | np[ | 05:12 | |
05:21
BenGoldberg left
05:47
adu joined
05:48
araujo left
|
|||
dsm | github.com/rakudo/rakudo/blob/nom/...ore/Str.pm in this file, state %map is the whole list of currently supported encoding by Rakudo? | 06:00 | |
Mouq would guess it's backend-dependent | 06:09 | ||
06:09
xenoterracide_ joined
|
|||
Mouq | r: "abcd".encode("invalid"0 | 06:11 | |
camelia | rakudo-{parrot,moar} 7dd729: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnable to parse expression in argument list; couldn't find final ')' at /tmp/tmpfile:1------> "abcd".encode("invalid"⏏0 expecting any of: …» | ||
Mouq | r: "abcd".encode("invalid") | ||
camelia | rakudo-moar 7dd729: OUTPUT«Unknown string encoding: 'invalid' in method encode at src/gen/m-CORE.setting:7116 in block <unit> at /tmp/tmpfile:1» | ||
..rakudo-parrot 7dd729: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:7123 in block <unit> at /tmp/tmpfile:1» | |||
Mouq | r: "abcd".encode("windows1252") | ||
camelia | rakudo-moar 7dd729: OUTPUT«Unknown string encoding: 'windows1252' in method encode at src/gen/m-CORE.setting:7116 in block <unit> at /tmp/tmpfile:1» | ||
..rakudo-parrot 7dd729: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:7123 in block <unit> at /tmp/tmpfile:1» | |||
Mouq | m: nqp::encode(nqp::unbox_s("abcd"), nqp::unbox_s("windows1252"), nqp::decont(blob8.new)) | 06:13 | |
camelia | rakudo-moar 7dd729: OUTPUT«Unknown string encoding: 'windows1252' in block <unit> at /tmp/v2E5LjQNy2:1» | ||
Mouq | huh | ||
r: "abcd".encode("windows-1252") | 06:15 | ||
camelia | rakudo-parrot 7dd729: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:7123 in block <unit> at /tmp/tmpfile:1» | ||
..rakudo-moar 7dd729: OUTPUT«Unknown string encoding: 'windows-1252' in method encode at src/gen/m-CORE.setting:7116 in block <unit> at /tmp/tmpfile:1» | |||
tony-o | Mouq: where is windows-1252 | 06:16 | |
Mouq | It's defined in MoarVM/src/strings/ops.c, it just isn't actually checked for to see if it's a valid encoding around line 1498 | 06:17 | |
dsm: This is the best we have for IO::Socket::INET that I know of :( perlcabal.org/syn/S32/IO.html#IO%3A...%3A%3AINET | 06:20 | ||
dsm | thank you. | ||
06:21
xenoterracide_ left
|
|||
Mouq | Although that does inherit from IO::Socket, which has slightly better documentation above it. Still very LTA | 06:21 | |
Mouq can't help with that tonight though | |||
Mouq -> bed | |||
dsm | GN | 06:22 | |
06:26
Mouq left
06:51
adu left
06:52
bjz left
06:55
dsm left,
bjz joined
|
|||
moritz | \o | 07:13 | |
07:14
someanon joined
07:21
anaeem1 joined
07:30
anaeem1_ joined
07:31
anaeem1 left
07:47
sqirrel__ joined
07:55
KCL joined
07:57
KCL_ left
08:00
KCL_ joined
08:02
kaare_ joined
08:03
KCL left
08:04
[Sno] left
08:05
darutoko joined
08:09
[Sno] joined
08:12
rurban joined
08:13
erkan joined
08:21
kurahaupo joined
08:32
anaeem1_ left,
anaeem1_ joined
08:35
gfldex joined
08:37
anaeem1_ left,
smls joined
|
|||
smls | How come loop control works inside map closures? | 08:38 | |
m: say (0..9).map: { next if $_ % 2; $_ } # poor man's grep :P | |||
camelia | rakudo-moar 7dd729: OUTPUT«0 2 4 6 8» | ||
moritz | smls: it's by design | 08:39 | |
smls: for loops desugar to a map | |||
smls | is it a built-in special case, or is it build on the exception system? | 08:40 | |
moritz | the latter | 08:41 | |
smls | m: my @things = 1 , { 2 } , 3; say @things.perl | 08:47 | |
camelia | rakudo-moar 7dd729: OUTPUT«Array.new(1, -> ($_? is parcel) { #`(Block|72988912) ... }, 3)» | ||
smls | perlcabal.org/syn/S06.html#line_388 says "If the term bare block occurs in a list, it is considered the final element of that list unless followed immediately by a comma or colon" | 08:48 | |
does that mean something different? | |||
08:48
sqirrel__ left
08:50
molaf_ joined
|
|||
moritz | smls: "intervening \h* or "unspace" is allowed" | 08:52 | |
m: say so ' ' ~~ /^\h*$/ | |||
camelia | rakudo-moar 7dd729: OUTPUT«True» | ||
smls | oh, right | ||
08:53
molaf__ left
|
|||
smls | In any case I'm sceptical about the special parsing rules for blocks | 08:54 | |
Also the "semicolon optional after a } at the end of the line" rule | |||
In Perl 5 it only applied to block statements like for/if, which are *already* special as far as parsing is concerned | 08:55 | ||
08:56
rindolf joined
|
|||
smls | In Perl6 it was extended to all blocks, but I don't feel like that increases overall "consistency" -- more like spreads the inconsistency further... ;) | 08:56 | |
...into places where innocent writers/readers of code might not expect it. | |||
moritz | smls: have you ever used Mojolicious in p5? | 08:57 | |
smls | no | ||
moritz | smls: in the ::Lite version, controllers typically look like get '/url' => sub { ... }; | 08:58 | |
smls: and when the sub is 10 or 20 lines long, it is *very* easy to forget that this is an anonymous sub, and must be terminated by }; and not just } | |||
smls | mmh | 08:59 | |
moritz | smls: and of course p5 gives quite obscure errors when you forget it | ||
smls: given that experience, I'm very grateful for that rule | |||
smls: also, I routinely forget to close several-line eval { } blocks with a ; | |||
smls | I don't tend to use eval, but I do like to use anonymous subs a lot in Perl 5. I don't have trouble remembering that they are expressions, in context. | 09:03 | |
I do agree though, that error messages can get pretty bad in Perl | 09:04 | ||
09:04
[Sno] left
|
|||
smls | Especially with thinks like forgetting semicolons or braces, which I used to do when I was new to Perl | 09:04 | |
*things | |||
09:06
[Sno] joined
|
|||
smls | In any case, I think there is something to be said for keeping syntactical special cases & inconsistencies containined in places that are deemed special enough to deserve them :) | 09:07 | |
09:09
kurahaupo left
|
|||
masak | good antenoon, #perl6! | 09:21 | |
09:21
ptc_p6 joined
|
|||
moritz | \o masak | 09:25 | |
09:26
Sam______ joined
|
|||
Sam______ | Hi perl mongers | 09:26 | |
I've been a perl programmer since 1997... i love this language... BUT... currently doing it more on PHP and C... wanted to switch to Golang... but find C is best for efficiencies... | 09:27 | ||
Perl is dying | |||
xiaomiao | so it goes | ||
Sam______ | My proposition is this... we need to make it faster and compiled. | 09:28 | |
xiaomiao | Gentoo has been dying since 2004, and now it's even used by Google (ChromeOS) and CoreOS | ||
Sam______ | CPAN is a treasure trove. COMPILE and speed it up yo! else... it's like a joke now | ||
xiaomiao | it's apparently just dying faster every year until it takes over everything (like perl? ;) ) | ||
09:28
firefish5000 joined
|
|||
lizmat | Sam______: rakudo perl6 *is* compiled | 09:28 | |
not yet faster than Perl5, but there are benchmarks in which rakudo perl6 is faster than perl5 | 09:29 | ||
moritz | Sam______: your contributions to make perl 5 and/or perl 6 faster are very welcome | ||
and compiling isn't a magic bullet to making things faster | |||
lizmat | Sam______: speeding up simple Perl5 code is what "use v5" and JIT compiling promises to deliver | ||
Sam______ | fine fine... what about hhvm equivalent for perl then? | 09:30 | |
hhvm is a game changer. we need something like that | 09:31 | ||
xiaomiao | Sam______: using php as an example is kinda ... no! go away! | ||
moritz | Sam______: then do it | ||
Sam______: I'll even work full-time on it if you organize the funds | |||
Sam______ | how much is needed? we can raise on kickstarter? | 09:32 | |
09:32
rurban left
|
|||
moritz | well, a full time salary | 09:33 | |
09:33
rurban joined
|
|||
Sam______ | i was thinking in the line of perl -> php -> hhvm will be great improvement... kinda strange huh? | 09:34 | |
moritz | yes, kinda very strange | ||
afk& | 09:35 | ||
09:35
sqirrel__ joined
|
|||
masak | does anyone know of any good resources for canonicalizing undirected multigraphs? | 09:37 | |
lizmat | not me | 09:38 | |
sightseeing& | |||
09:39
rindolf left
09:41
kaare_ left
09:43
rindolf joined
|
|||
jnthn | morning, #perl6 | 09:43 | |
09:45
kaare_ joined
|
|||
rindolf | jnthn: morning, sup? | 09:49 | |
arnsholt | o/ | ||
09:49
ghostlines joined
|
|||
Sam______ | why doesnt github.com/Perl/perl5 have issues section? also... where is perl6 on github? if you guys really want traction and serious contribution, put it on github. this language... has one of the worst way of contributing code i've come across... | 09:50 | |
09:51
JimmyZ joined
|
|||
tadzik | 1) why are you asking about perl 5? 2) Just how not-obvious is github.com/perl6? :) | 09:52 | |
btyler_ | Sam: github.com/rakudo/rakudo and github.com/perl6 :P | 09:53 | |
tadzik | (hello, #perl6) | ||
masak | o/ | ||
btyler_ | perl5 uses a different model, they use a different bugtracker (which has plenty of activity) | ||
I'd note that there aren't actually many major dynamic languages that use the github issues (cpython, ruby also do not) | 09:55 | ||
firefish5000 | Anyone know of a good way to write testable docs? For instance, a program that test each pod segment (begin to end/cut) with the code that follows, and then output the documentation in html/pod/otherformat with [pass/fail VERSION(s)] status in the segments header? (could pod do this? =pod test or something?) | 09:57 | |
jnthn | firefish5000: Well, you can introspect the Pod associated with a given routine with .WHY, so that bit works out. | 10:00 | |
10:02
telex left
10:04
telex joined
|
|||
vendethiel | (hello, #perl6) | 10:07 | |
masak | hayo, ven | 10:08 | |
vendethiel | masak: do you haz any idea when you're gonna blog agan :)? | 10:12 | |
masak | I keep telling myself to do it, but it doesn't seem to work :/ | 10:13 | |
10:13
exixt is now known as exixt_
|
|||
masak | I've only had stretches of incredibly-busy time and brain-dead-recovering time recently. | 10:14 | |
this may change in a week or so. | |||
I may get a blog post or two in before that. but no promises. | |||
seems I 9 things queued up to blog about right now. all of them macro-related. | 10:15 | ||
have* | |||
jnthn | So blog... | 10:18 | |
jnthn didn't do a post for ages... :S | |||
.oO( I didn't do much useful for ages... ) |
|||
masak | pfah. what has ages done for you recently? | 10:20 | |
masak .oO( ask not what ages can do for you... ) | 10:22 | ||
10:23
sqirrel__ left
10:27
spider-mario joined
|
|||
firefish5000 | back, (read S26). so <#| MyPod \n Class/method> would associate MyPod to the class/method. But if I wanted to add the pass/fail or in/out-of-date status to the header, I would need a script to call said routine and its .WHY, and modify the header, and output that to the docs directory... | 10:35 | |
10:37
Krabbe_ joined
10:39
ghostlines left
|
|||
masak | firefish5000: sounds interesting. please share any early results you get about this. | 10:42 | |
& | |||
10:47
espadrine` joined
10:53
espadrine` is now known as espadrine_,
lizmat left
10:55
virtualsue joined
|
|||
firefish5000 | lol, while I will happily share my work and results. But don't expect too much of me. (though I would be happy if you guys criticized me as if you did. I could use it) | 10:56 | |
10:58
woolfy left
11:04
ggoebel111111111 joined
11:06
ggoebel111111119 left
11:14
Krabbe_ left
|
|||
moritz | FROGGS: testers.perl6.org is down :( | 11:29 | |
11:37
rindolf left
|
|||
smls | m: say ("aaa,bbb,ccc" ~~ /^ (.*?) +% "," $/)[0]».Str.perl | 11:40 | |
camelia | rakudo-moar 7dd729: OUTPUT«("", "a", "aa", "aaa", "", "b", "bb", "bbb", "", "c", "cc", "ccc")» | ||
smls | What's going on there? | ||
How can it match the same letters repeatedly with the same capture group? | |||
When I'm not doing any recursion afaict... | 11:42 | ||
FROGGS | moritz: it is up again | 11:44 | |
11:45
psch joined
|
|||
psch | hi #perl6 | 11:46 | |
11:48
rindolf joined
|
|||
FROGGS | hi psch | 11:49 | |
psch | m: say ("aaa,bbb,ccc" ~~ /^ (.*?) +% ',' $/)[0;$_].perl for 0..3 | 11:51 | |
camelia | rakudo-moar 7dd729: OUTPUT«(Match.new(orig => "aaa,bbb,ccc", from => 0, to => 0, ast => Any, list => ().list, hash => EnumMap.new()),)(Match.new(orig => "aaa,bbb,ccc", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()),)(Match.new(orig => "aaa,bbb,ccc", fr…» | ||
psch | $0 consists of another list of matches, of which some don't match the whole string or something? | 11:52 | |
not sure why they don't, because the pattern is anchored | |||
hey FROGGS | 11:53 | ||
FROGGS | o/ | ||
psch | m: say ("aaa,bbb,ccc" ~~ /^ (.*?) +% ',' $/).elems | ||
camelia | rakudo-moar 7dd729: OUTPUT«1» | ||
psch | m: say ("aaa,bbb,ccc" ~~ /^ (.*?) +% ',' $/)[0].elems | ||
camelia | rakudo-moar 7dd729: OUTPUT«12» | ||
psch | "match the whole string with as little as possible seperated by commas" is how i parse the regex verbally | 11:54 | |
FROGGS | m: say ("aaa,bbb,ccc" ~~ /^ (.*?) +% ',' $/)[0] | ||
camelia | rakudo-moar 7dd729: OUTPUT«「」 「a」 「aa」 「aaa」 「」 「b」 「bb」 「bbb」 「」 「c」 「cc」 「ccc」» | ||
psch | m: say ("aaa,bbb,ccc" ~~ /^^ (.*?) +% ',' $$/)[0].elems | ||
camelia | rakudo-moar 7dd729: OUTPUT«12» | ||
psch | oh | 11:55 | |
m: say ("aaa,bbb,ccc" ~~ /^^ (.*?)+ % ',' $$/)[0].elems | |||
camelia | rakudo-moar 7dd729: OUTPUT«12» | ||
FROGGS | why does it capture '', 'a' and 'aa' ? | ||
psch | that makes more sense :P | ||
FROGGS: ^^^ | |||
the capture group gets repeated | |||
FROGGS | >.< | ||
psch | and it's non-greedy, so it starts empty | ||
11:55
rindolf left
|
|||
psch | m: say ("aaa,bbb,ccc" ~~ /^^ (.*)+ % ',' $$/)[0].elems | 11:55 | |
camelia | rakudo-moar 7dd729: OUTPUT«1» | ||
psch | that gobbles everything | 11:56 | |
m: say ("aaa,bbb,ccc" ~~ /^^ (<-[,]>*)+ % ',' $$/)[0] # might be what smls wants | |||
camelia | rakudo-moar 7dd729: OUTPUT«「aaa」 「bbb」 「ccc」» | ||
11:56
BenGoldberg joined
|
|||
smls | psch: I know i can write it that way, but why do I have to? | 11:56 | |
psch | smls: because /(.*?) +% ','/ means /(.*?)+ % ','/ | 11:57 | |
which means "repeated 1 or more empty-or-more groups and seperate them with commas" | |||
m: say ("aaa,bbb,ccc" ~~ /^^ (.+)+? % ',' $$/)[0] # curious | |||
camelia | rakudo-moar 7dd729: OUTPUT«「aaa,bbb,ccc」» | ||
psch | m: say ("aaa,bbb,ccc" ~~ /^^ (.*?)+? % ',' $$/)[0] # curious | 11:58 | |
camelia | rakudo-moar 7dd729: OUTPUT«「」 「a」 「aa」 「aaa」 「」 「b」 「bb」 「bbb」 「」 「c」 「cc」 「ccc」» | ||
11:58
sqirrel__ joined
|
|||
psch | smls: the capture is fine matching nothing, it then checks for ',', fails, and matches nothing + 1 | 11:59 | |
it can't match 'a,b' because that's when ',' matches | |||
so it starts from nothing again | 12:00 | ||
m: say ("abc" ~~ /(.*?)/).perl | |||
camelia | rakudo-moar 7dd729: OUTPUT«Match.new(orig => "abc", from => 0, to => 0, ast => Any, list => (Match.new(orig => "abc", from => 0, to => 0, ast => Any, list => ().list, hash => EnumMap.new()),).list, hash => EnumMap.new())» | ||
psch | m: say ("abc" ~~ /(.*?)+/)[0].elems | ||
uh | |||
right | |||
camelia | rakudo-moar 7dd729: OUTPUT«Memory allocation failed; could not allocate 228392960 bytes» | ||
12:00
virtualsue left
|
|||
smls | but «「a」 「aa」 「aaa」» means that the same a is matched multiple times, how is that possible? | 12:01 | |
psch | yeah basically that, except seperated with commas which keeps it in check somewhat | ||
smls: afaiu, the % ',' restarts from the beginning of the string. not sure if that's what we want there | |||
m: say ("aa,bb" ~~ /^ [(.*?)+ % ','] $/)[0].elems | 12:02 | ||
camelia | rakudo-moar 7dd729: OUTPUT«6» | ||
jnthn | I wonder if it's somehow failing to throw away intermediate captures... | 12:03 | |
psch isn't quite sure where to look... | 12:04 | ||
smls | m: say ("aaa,bbb,ccc" ~~ /^ (.*?) [',' (.*?)]* $/) # what i thought the % construct desugeres too... | 12:05 | |
camelia | rakudo-moar 7dd729: OUTPUT«「aaa,bbb,ccc」 0 => 「aaa」 1 => 「」 1 => 「b」 1 => 「bb」 1 => 「bbb」 1 => 「」 1 => 「c」 1 => 「cc」 1 => 「ccc」» | ||
smls can't spell today | 12:06 | ||
psch | interestingly that one has a similar problem, from the looks of it | ||
smls | yeah but only in the second part | ||
psch | nested quantifiers /o\ | 12:07 | |
smls | well it's hard to avoid them when using % | 12:08 | |
m: say ("aaa,bbb,ccc" ~~ /^ [(.+?) [',' || $ ]]+ $/) | 12:14 | ||
camelia | rakudo-moar 7dd729: OUTPUT«「aaa,bbb,ccc」 0 => 「a」 0 => 「aa」 0 => 「aaa」 0 => 「b」 0 => 「bb」 0 => 「bbb」 0 => 「c」 0 => 「cc」 0 => 「ccc」» | ||
psch | i'm not advocating avoiding them, they just seem a bit wonky and complicated to get right from the outside | ||
smls | m: say ("aaa,bbb,ccc" ~~ /^ [(.+?) ',']/) | 12:16 | |
camelia | rakudo-moar 7dd729: OUTPUT«「aaa,」 0 => 「aaa」» | ||
smls | m: say ("aaa,bbb,ccc" ~~ /^ [(.+?) ','] ** 1/) | ||
camelia | rakudo-moar 7dd729: OUTPUT«「aaa,」 0 => 「a」 0 => 「aa」 0 => 「aaa」» | ||
smls | looks like non-greedy quantifiers really don't like being nested inside other quantifiers | 12:17 | |
psch | m: say ("aaa,bbb,ccc" ~~ /^ [(.+) ','] ** 1/) | ||
camelia | rakudo-moar 7dd729: OUTPUT«「aaa,bbb,」 0 => 「aaa,bbb,ccc」 0 => 「aaa,bbb,cc」 0 => 「aaa,bbb,c」 0 => 「aaa,bbb,」 0 => 「aaa,bbb」» | ||
psch | that doesn't really look better | ||
smls | m: say ("abcd" ~~ /^ [(.+?)] ** 1 $/ ) # simpler test-case | 12:18 | |
camelia | rakudo-moar 7dd729: OUTPUT«「abcd」 0 => 「a」 0 => 「ab」 0 => 「abc」 0 => 「abcd」» | ||
timotimo | m: say ("abc,xyz,hjk" ~~ /^^ (.*?)+ % ',' $$/)[0]>>.Str | 12:19 | |
camelia | rakudo-moar 7dd729: OUTPUT« a ab abc x xy xyz h hj hjk» | ||
timotimo checks it out in the debugge | 12:20 | ||
very strange indeed | 12:21 | ||
r: say ("abc,xyz,hjk" ~~ /^^ (.*?)+ % ',' $$/)[0]>>.Str | 12:22 | ||
camelia | rakudo-{parrot,moar} 7dd729: OUTPUT« a ab abc x xy xyz h hj hjk» | ||
timotimo | well, it's not our code-gen that'd be broken | ||
jnthn | It could be consistently broken :P | ||
The porting was done to be semantically faithful, after all... | 12:23 | ||
timotimo | the behavior it shows in the debugger is also strange, but it could just be that the highlighting isn't 100% correct there | 12:24 | |
12:28
Ugator1 joined
|
|||
sergot | gi o/ | 12:40 | |
hi | |||
:) | |||
psch | sergot o/ | 12:42 | |
smls | m: say ("abc" ~~ /^ [(.*) abc] ** 1/) # another simple testcase | ||
camelia | rakudo-moar 7dd729: OUTPUT«「abc」 0 => 「abc」 0 => 「ab」 0 => 「a」 0 => 「」» | ||
smls | It's as if the capture group contents from failed matches encountered during backtracking, make it into the result... | 12:43 | |
timotimo | somethin glike that seems to happen, aye | ||
sergot | psch: o/ | 12:44 | |
smls | And in case of non-greedy quantifiers, during "forward-tracking: :P | 12:46 | |
jnthn away for a bit | |||
12:47
Lasse_ joined
12:50
sqirrel__ left
12:54
bjz_ joined
12:56
bjz left
13:12
sqirrel__ joined
13:16
khisanth_ joined
13:18
Khisanth left
|
|||
psch figured out his breakage with the jvminterop bit from yesterday | 13:30 | ||
turns out the spec between classname and :from<java> is not optional ._. | |||
s/spec/space/ | |||
uh | |||
i mean | |||
it's forbidden | |||
words are hard :/ | |||
FROGGS | yes | 13:32 | |
that are two different things | |||
timotimo | oh yes | ||
very much so | |||
one is specifying what stuff to import after the use | |||
FROGGS | one is a named param and is part of the longname of the module, the other one is about export tags | ||
timotimo | the other specifies what exactly gets used | ||
psch | it does make sense, seeing as :: is for package separation and a single : adjunct to the class changes the class itself | 13:35 | |
while with space it adverbs the use itself | |||
(at least that's how it makes sense in my head) | |||
masak is back | 13:36 | ||
psch | useing is where the interop stops though, nowadays | 13:37 | |
13:37
raiph joined
|
|||
FROGGS | we just need someone who goes deeper into the rabbit hole and who wants to achieve something | 13:37 | |
I have no motivation (nor use) to do anything with it | 13:38 | ||
13:38
xenoterracide_ joined
|
|||
psch | oh, i understand that. i'd like to achieve something, but i think it'd take rather long and there's probably people smarter than me around who'd be able to do it quicker and possibly cleverer and cleaner | 13:38 | |
but most of those probably have no interest, which is ok | 13:39 | ||
afaiu the HOW has to reach into the jvm-world to pull things out and compose correctly, from a rather abstract POV | 13:40 | ||
seeing as the bytecode knows what methods exist and how they can be called, but the HOW currently is skeletal at best, which means nothing comes through to P6-land | |||
my MOP-understanding might be lacking as well... :) | |||
FROGGS | rurban: ping # parrot HEAD does not build on windows... and I start panicking because we were meant to update to 6.10.0 next week :/ | 13:41 | |
13:44
ennnio joined
|
|||
raiph | rurban: "The user(s) account is temporarily over quota. <ru@x-ray.at>" | 13:46 | |
13:49
daxim left
13:53
ab5tract joined
14:03
Mouq joined
14:13
cognominal joined
|
|||
colomon | timotimo: okay, apparently my waiting is not going to see ABC work again, except possibly by accident. any hints on how to bisect nqp/moar? | 14:13 | |
14:17
Mouq left
14:19
sqirrel__ left
|
|||
masak | m: say { :a(2) :b(3) :c(4) }.perl | 14:20 | |
camelia | rakudo-moar 7dd729: OUTPUT«{"a" => 2}» | ||
masak | o.O | ||
I postulate that this is wrong and that the output hash should have three items. | 14:21 | ||
any second opinion? | |||
psch | masak: i think that's already ticketed somewhere | ||
14:21
Alula left
|
|||
psch | i remember asking about something similar some time back | 14:21 | |
14:22
Alula joined
|
|||
masak | oki | 14:22 | |
14:22
ab5tract left
|
|||
masak | psch: do you happen to know which RT number? | 14:22 | |
psch | no, i'm looking though | ||
colomon | std: say { :a(2) :b(3) :c(4) }.perl | ||
14:22
camelia left
14:23
raiph left
|
|||
masak .oO( so incorrect, it makes camelia quit ) | 14:23 | ||
14:24
camelia joined
|
|||
colomon | if I've built a new nqp, how to I get rakudo to recompile using it? make doesn't cut it. | 14:24 | |
14:24
ggoebel111111111 left
|
|||
masak | probably need to reconfigure too. | 14:25 | |
camelia | std : OUTPUT«Can't chdir to '/home/camelia/std/snap': No such file or directory at lib/EvalbotExecuter.pm line 166. EvalbotExecuter::_auto_execute(HASH(0x1c009c8), "say { :a(2) :b(3) :c(4) }.perl", GLOB(0x9970280), "/tmp/UmjQRTr4rc", "std") called at lib/EvalbotExecuter.pm line 1…» | ||
14:25
ChanServ sets mode: +v camelia,
dwarring left
|
|||
masak | m: my @x = 42; my $y = @x.unshift; say $y.perl | 14:28 | |
camelia | rakudo-moar 7dd729: OUTPUT«[42]» | ||
masak submits rakudobug | |||
masak is sad that this can happen to Rakudo in 2014 | 14:29 | ||
colomon | woah | ||
that's crazy | |||
masak | I thought we had tests and stuff. | ||
colomon | p: my @x = 42; my $y = @x.unshift; say $y.perl | ||
camelia | rakudo-parrot 7dd729: OUTPUT«[42]» | ||
vendethiel | m: my @x = 42; my $y = @x.unshift; say $y.perl; say @x.perl | 14:30 | |
camelia | rakudo-moar 7dd729: OUTPUT«[42]Array.new(42)» | ||
14:30
woolfy joined
|
|||
masak | o.O | 14:30 | |
vendethiel | masak: you wanted to dig in? I deg deeper | ||
masak | oh wait | ||
vendethiel | (deg?) | ||
colomon | masak: you're thinking shift | ||
masak | yeah. | ||
vendethiel | yes | ||
colomon | that code is right | ||
vendethiel | you unshift nothing | ||
masak | masak-- | ||
vendethiel | so you add nothing at the beginning of the array | ||
masak | rightright | 14:31 | |
false alarm, everybody. | |||
(phew) | |||
vendethiel | \o/ | ||
masak | not really sure what to learn from that. | ||
vendethiel | now that'd have been a fun one... | ||
masak | "shift/unshift are not logical names", maybe. | ||
vendethiel | right. but we can't force these to take arguments (arity >= 1) because argument lists flatten | ||
masak | also "command methods are better off not having return values" | 14:32 | |
colomon | masak: return values let you chain it | ||
JimmyZ | lpush lpop/ rpush rpop :P | 14:33 | |
from Redis command ... | 14:34 | ||
psch | masak: can't find a ticket referenced, only irclog that says it's not implemented from late 2013-12 | 14:37 | |
(before i dared come here with a nick that i'd want to keep...) | |||
colomon | okay, here's a problem for the build experts. | ||
rakudobrew gives us an really easy way to build any given commit of rakudo | 14:38 | ||
how could we get an easy way to build any particular triple of rakudo commit, nqp commit, and MoarVM commit? | |||
right now I really struggle with changing MoarVM version, and I've no confidence that I'm actually getting it right. | 14:40 | ||
and being able to do this is really important for being able to track down weird bugs. | |||
14:41
ab5tract joined
|
|||
colomon is staring at MoarVM's 05b25a6359c7bcf5ab03357b0d0093f77d28ead6 and thinking it might be the issue with ABC…. | 14:44 | ||
14:46
firefish5000 left
14:58
bbkr left,
bbkr joined
14:59
exixt_ is now known as exixt
15:00
Ugator1 left
|
|||
masak | psch: care to submit a rakudobug for it? | 15:07 | |
colomon: I can't immediately come up with a situation where I'd be interested in chaining push/pop/shift/unshift. | |||
15:07
raiph joined
|
|||
masak | colomon: more specifically, I don't think of those four that way. I use all of them for their side effect, and pop/shift for their return value. | 15:09 | |
colomon: that said, someone in p6cc did use the return value of .push, so... to each his own, I guess. | |||
15:12
khisanth_ is now known as Khisanth,
firefish5000 joined
15:18
rindolf joined
|
|||
psch | masak: RT #123215 | 15:28 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123215 | ||
psch | synopsebot \o/ | ||
psch afk & | 15:29 | ||
ab5tract | is there an easy way to mitigate a "malformed utf" error? HTML::Parser::XML chokes on the .content of a HTTP::UserAgent response .. of the p6 advent calendar | ||
same content passes through .say just fine | |||
15:34
psch left
15:36
slavik left,
Lasse_ left
15:39
raiph left
15:40
rurban left
15:42
sqirrel__ joined
15:47
xenoterracide_ is now known as xenoterracide,
xenoterracide left
15:48
bjz_ left,
xenoterracide joined,
psch joined
|
|||
xenoterracide | you know what'd be cool, if .say... could facilitate logging and it was just outputting to a configurable stdout location by default | 15:49 | |
15:49
xenoterracide left
15:50
bjz joined
15:52
KCL_ left
|
|||
colomon | m: say $*OUT = $*ERR; say "whatever" | 15:58 | |
camelia | rakudo-moar 7dd729: OUTPUT«IO::Handle<<STDERR>>(opened, at line 0 / octet 0)whatever» | ||
colomon | m: $*OUT = $*ERR; say "whatever" | ||
camelia | rakudo-moar 7dd729: OUTPUT«whatever» | ||
colomon | .tell xenoterracide $*OUT = filehandle reassigns stdout, for what that's worth. | 16:00 | |
yoleaux | colomon: I'll pass your message to xenoterracide. | ||
ugexe | ab5tract: do you have a failing test? | ||
or can you just give me something to reproduce the error | |||
my $text = ~$parser.xmldoc.root.elements[0].elements[0]; | 16:09 | ||
oops | |||
16:10
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg
|
|||
ab5tract | ugexe: i lost the failing case somehow, now i'm getting a different error :/ | 16:17 | |
gist.github.com/ab5tract/cbf4867b441ab2ea84d7 | |||
16:19
smls left,
zakharyas joined
16:31
firefish5000 left
|
|||
TimToady | assignment to $*OUT probably should not work, but "my $*OUT = $*ERR;" should | 16:32 | |
PROCESS vars are supposed to be readonly, so that different interpreters running in the same process do not interfere with each other | 16:33 | ||
colomon | TimToady: assigning directly to $*OUT definitely worked when I tried it. | 16:34 | |
but it still works if you add my, so if that's more correct... | |||
16:37
sqirrel__ left
16:39
kurahaupo joined
16:41
pecastro left
|
|||
ugexe | seems like it 'might' be http::useragent | 16:41 | |
Out of range: attempted to read 947159859 bytes from filehandle | |||
psch | m: say $*PERL = "C#" # that's because slangs aren't easy yet, right? | 16:44 | |
camelia | rakudo-moar 7dd729: OUTPUT«Cannot modify an immutable Perl in block <unit> at /tmp/VBYZkJMMHO:1» | ||
ab5tract | ugexe: yes, sometimes i get that issue. other times i get 'Invocant requires type object but got object' | ||
psch apologizes for the stupid joke | |||
ab5tract | psch: :) | ||
ugexe | i can get that error by (1 line above the inovant error line) doing say $qnest.perl whatever that means | 16:45 | |
ab5tract | interesting | ||
ab5tract continues poking | |||
ugexe | actually you're right, its changing... | 16:46 | |
ab5tract | which is weird, the inovant error comes from the html parser, but the filehandle thing definitely would seem to be from http::useragent | 16:47 | |
ugexe | invocant could be related to whatever http::useragent returns | ||
ab5tract holds head, cries "the heisenbugs are after me, after me, after me!" | |||
16:48
pecastro joined
16:49
mrmccrac joined
16:50
guru joined,
guru is now known as Guest15672
16:51
Guest15672 is now known as ajr_
|
|||
ab5tract | ugexe: interpolated the string by assigning it, and put a guard to die if not ~~ Str, which it passes | 16:51 | |
ugexe | hmm can you see what the type is when it fails and its not str? | 16:52 | |
ab5tract | but it doesn't seem to be a type issue with the string (which $response.content.perl also indicates is only ever a string) | 16:54 | |
timotimo | i get Malformed termination of UTF-8 string | 16:56 | |
ugexe | im getting the invocant error without http::useragent | 16:58 | |
16:58
exixt is now known as exixt_,
havenwood joined
16:59
virtualsue joined
|
|||
ab5tract | timotimo: that's the one that i saw first! | 16:59 | |
haven't seen it in a while | |||
if $cbuffer eq '<' { | |||
how can this line cause an invocant error? | 17:00 | ||
timotimo | can you find out which call exactly it is? | ||
it might come from inside the block, if we're unlucky | |||
perhaps with --ll-exception you'll get a "better" stack trace? | 17:01 | ||
ugexe | ab5tract: i thought it was this line: while $cbuffer !~~ m{ [ '>' | '/' ] } || $qnest == 1 { | ||
ab5tract | timotimo: i'll give that a try | ||
haven't tested it outside of moar either | 17:02 | ||
17:02
zakharyas left
|
|||
ugexe | i dont think it will build on anything else until parrot can install xml::query | 17:02 | |
ab5tract | ugexe: that line is also affected, and indeed is the initiator | ||
timotimo | %!openisclose = itemized hash called at: | ||
src/gen/m-CORE.setting, line 1000 | |||
also interesting | |||
ab5tract | timotimo: i patched that locally | 17:03 | |
ugexe | timotimo: i have that fixed in my local repo | ||
lol | |||
timotimo | hehe. | ||
colomon | dang things build quickly on my Linux box. | ||
17:03
anaeem1 joined
|
|||
timotimo | for some reason we're reaching the Mu.ACCEPTS method candidate | 17:04 | |
and that only accepts Mu:U: | 17:05 | ||
oh | |||
of course | |||
you don't ~~ against a m/../ | |||
because m/.../ is a match against $_ | |||
17:05
mrmccrac left
|
|||
timotimo | so the proper fix is in HTML::Parser::XML | 17:05 | |
17:05
firefish5000 joined
|
|||
ab5tract | timotimo: gist.githubusercontent.com/ab5trac...tfile2.txt | 17:06 | |
timotimo | turn the m{ ... } into rx{ ... } | ||
ab5tract doing | |||
timotimo | i know | ||
i've got the same output locally | |||
we could perhaps figure out that no block around the smart match against m{ ... } had set $_ explicitly or implicitly and complain "you probably didn't mean that" | 17:07 | ||
m: say (m{ abc }).perl | |||
camelia | rakudo-moar 7dd729: OUTPUT«Cannot call 'match'; none of these signatures match::(Cool:D: Any $target, *%adverbs) in block <unit> at /tmp/R1FY1MzlCu:1» | ||
timotimo | m: say "foobar" !~~ (m{ abc }).perl | 17:08 | |
camelia | rakudo-moar 7dd729: OUTPUT«True» | ||
timotimo | m: say "foobar" !~~ (m{ abc }) | ||
camelia | rakudo-moar 7dd729: OUTPUT«True» | ||
timotimo | m: say "foobar" !~~ (m{ 123 }) | ||
camelia | rakudo-moar 7dd729: OUTPUT«True» | ||
timotimo | m: say $_.perl | ||
camelia | rakudo-moar 7dd729: OUTPUT«Nil» | ||
timotimo | m: Nil ~~ rx{ 123 } | ||
camelia | ( no output ) | ||
timotimo | m: say Nil ~~ rx{ 123 } | ||
camelia | rakudo-moar 7dd729: OUTPUT«Nil» | ||
timotimo | m: say Nil !~~ rx{ 123 } | ||
camelia | rakudo-moar 7dd729: OUTPUT«True» | ||
timotimo | that ought to be the culprit | ||
ab5tract | timotimo: it works :) | 17:09 | |
except that there's a new bug .. hehe | 17:10 | ||
timotimo | what was that code trying to parse anyway? | 17:13 | |
the code has very few comments ... | |||
17:13
havenwood left
|
|||
timotimo | i can't see a pull request in perl6-html-parser-xml :) | 17:14 | |
ab5tract | still puzzling at the next bug | 17:16 | |
while $cbuffer !~~ rx{« [ \s | '>' ] »} { | |||
causing an out of bound indexing error | |||
"substr out of range" | |||
ugexe | those hyperoperators were the regex seperators before | 17:17 | |
rx{ [ \s | '>' ] } id think | 17:18 | ||
timotimo | « and » are word border matchers | ||
ugexe | while $cbuffer !~~ m« [ \s | '>' ] » { <- are they acting as a word border in this case? or as a replacement for the / in m//? | 17:20 | |
timotimo | no, in that case they are the delimiters | ||
m: say q« hello, this is string » | |||
camelia | rakudo-moar 7dd729: OUTPUT« hello, this is string » | ||
ugexe | ab5tract: while $cbuffer !~~ rx{ [ \s | '>' ] } { | 17:21 | |
ab5tract | i fixed that one. | ||
no i'm back to Malformed UTF :D | |||
*now | |||
timotimo | could be because the chunked encoding happens to hit one of the Perl 6 right in the middle? | 17:25 | |
ab5tract | i was mistaken, now it's fixed. pull request on its way | ||
but it occurs to me, the better choice would be to use the rss feed of the advent calendar directly with the XML library | 17:32 | ||
and i'm not sure if i've actually fixed it or not, it hasn't succeeded in parsing yet .. | |||
timotimo | clearly HTML::Parser::XML needs a bit more error handling and diagnostic output | 17:33 | |
ugexe | its working for me | 17:35 | |
17:35
perltricks joined
|
|||
ugexe | trying to write an appropriate test on the utf characters to be sure | 17:36 | |
timotimo | that's very helpful! thanks | ||
perltricks | hey all. Any idea why this hangs: perl6 -e 'for (lines) { say lines.elems }' example.txt | 17:37 | |
it doesnt hang on an array | 17:38 | ||
m: my @n = <1 2 3>;for (@n) { say @n.elems } | |||
camelia | rakudo-moar 7dd729: OUTPUT«333» | ||
timotimo | these parens are superstitious | ||
what do you expect that to do? | 17:39 | ||
colomon | timotimo: parens are needed, just not those | ||
timotimo | yeah | ||
colomon | better question is why use lines twice? | ||
timotimo | yes | ||
"that" wasn't refering to the parens, but to calling lines twice | |||
perltricks | say you want to emulate tail | ||
colomon | perltricks: lines[*-5..*] | 17:40 | |
or something like that | |||
perltricks | hoho | ||
wow | 17:41 | ||
colomon: thanks much nicer | |||
colomon | dunno if it works exactly like that | ||
perltricks | lemme try | ||
timotimo | you may need to (* - 5) | ||
colomon | and does using * twice work right? | 17:42 | |
but the basic principle is sound, I promise. | 17:43 | ||
perltricks | it works! perl6 -e 'say lines[*-5..*]' example.txt | ||
colomon | \o/ | ||
perltricks: it's even nicer to do head: lines[^5] | 17:44 | ||
perltricks | stop it, you're blowing my mind | 17:45 | |
ab5tract | aka another night with perl6 ;) | ||
perltricks | haha | ||
ugexe | ab5tract: i think its tripping up on self closing tags | 17:46 | |
ie <whatever /> | |||
.elements[1] gets me the title tags on advent calender... | 17:47 | ||
timotimo | using * twice works | ||
in fact, it works up to an almost infinite number of times | |||
colomon | timotimo: I knew it worked in general expressions, but I didn't know you could pass something taken N arguments to [ ] and have it work it out correctly. | 17:50 | |
*taking | |||
… actually, that's not what's happening there, is it? | 17:51 | ||
17:51
FROGGS_ joined
|
|||
timotimo | [ ] asks the WhateverCode what number of arguments it takes | 17:51 | |
colomon | m: say (*-5..*).WHAT | ||
camelia | rakudo-moar 7dd729: OUTPUT«(WhateverCode)» | ||
timotimo | and then it gives the length of the list $n times | ||
colomon | m: say (*-5..*)(10) | 17:52 | |
camelia | rakudo-moar 7dd729: OUTPUT«5..Inf» | ||
timotimo | oh | ||
yeah, you're right | |||
also, you would have had to ..^, since you're given the length of the list | 17:53 | ||
but by using Inf, you're getting around that problem | |||
colomon | right. | ||
TimToady++ # or whomever, clever design there. | |||
17:55
FROGGS left
17:57
KCL_ joined
|
|||
timotimo | i wonder what the performance of HTML::Parser::XML is | 18:02 | |
but i don't have a use for it (yet) | 18:03 | ||
ugexe | its slow, but im sure tony-o will work on that now that i mentioned it to him an hour ago :) | 18:11 | |
18:15
rindolf left,
rindolf joined
18:19
KCL_ left
18:23
rindolf left,
rindolf joined
18:24
KCL_ joined
|
|||
timotimo | mentioned the performance? | 18:24 | |
colomon | where does panda get its list of installed modules? | ||
colomon needs to kill it, because having it try to install every single module every time you rebuild rakudo is no fun | 18:28 | ||
…. except that time it didn't? | |||
colomon is very confused | |||
18:29
rindolf left,
rindolf joined
|
|||
timotimo | install/lib/somewhere/state.json | 18:31 | |
18:33
raiph joined
18:36
KCL_ left
|
|||
colomon | tadzik: ping? | 18:37 | |
18:41
tinyblak_ left
18:45
rindolf left,
orevdiabl joined,
rindolf joined,
[particle] joined,
revdiablo left
18:46
JimmyZ left,
DarthGandalf left
|
|||
colomon | tadzik: I expanded rakudobrew to have a new command, triple, which allows you to specify versions of rakudo, nqp, and moar to biuld on. | 18:48 | |
18:48
BinGOs left,
BinGOs joined
|
|||
colomon | tadzik: the build does happen, but the switch command doesn't seem to work. :\ | 18:48 | |
18:49
DarthGandalf joined
18:50
atta_ joined,
sjn_ joined,
xinming_ joined,
Rounin_ joined
18:51
ggherdov left,
stux|RC-only left,
exodist_ joined
18:52
stux|RC-only joined
18:54
[particle]1 left,
Exodist left,
simcop2387 left,
xinming left,
kshannon left,
atta left,
sjn left,
carlin left,
woolfy left,
Rounin left,
kurahaupo left,
raiph left,
frew left,
mls left,
muraiki left,
mls joined,
carlin joined,
mls left,
mls joined
|
|||
colomon | tadzik: ah, I see, rehash assumes there are never more than two components. | 18:54 | |
18:55
frew joined
|
|||
colomon | errr, maybe? | 18:55 | |
18:55
kshannon joined,
woolfy joined
18:56
muraiki joined,
simcop2387 joined
18:57
rindolf left,
TardisX` joined
18:58
pecastro_ joined,
rindolf joined,
dylanwh_ joined
18:59
hoelzro_ joined,
integral_ joined,
integral_ left,
integral_ joined,
m_athias_ joined
19:00
Timbus_ joined,
hoelzro left,
TardisX left,
pecastro left,
integral left,
dylanwh left,
m_athias left,
clkao left,
Juerd left,
Timbus left,
huf left,
timotimo left,
m_athias_ is now known as m_athias,
dylanwh_ is now known as dylanwh,
telex left,
huf joined
19:01
Juerd joined
19:02
clkao_ joined,
telex joined
|
|||
colomon | aha! | 19:03 | |
19:03
ggherdov joined
|
|||
TimToady | oho! | 19:03 | |
colomon | o/ | ||
geekosaur | ehe! | ||
TimToady | uhu | 19:04 | |
FROGGS_ | ihi | ||
colomon | TimToady: you might know the answer. If I want to install rakudo's perl6 executable in the usual install/bin place, but use a specified nqp instead of generating it, what is the Configure.pl syntax? | ||
19:05
dg left
|
|||
TimToady | --with-nqp I think | 19:05 | |
19:05
mephinet- joined
|
|||
TimToady | but you can read the source :) | 19:05 | |
19:05
mephinet left
|
|||
colomon | TimToady: I think I tried that once already. ;) | 19:05 | |
I mean, reading the source. | 19:06 | ||
TimToady | obviously the next step is to write the source :P | ||
colomon | :p | ||
FROGGS_ | colomon: it will also use an nqp binary if it is under --prefix | 19:07 | |
dj_goku | who manages testers.perl6.org? | ||
FROGGS_ | dj_goku: I am | ||
colomon | FROGGS_: my problem is that --prefix seems to change where rakudo installs its binaries. which is my problem... | 19:08 | |
dj_goku | FROGGS_: haha nice! so is the site accepting reports? | ||
FROGGS_ | colomon: correct... but I would think you want to install nqp to that place too | ||
dj_goku: yes, it is :o) | |||
colomon | afk # bell choir w/ orchestra rehearsal | ||
FROGGS_ | dj_goku: though, you need the 'reporter' branch from panda, and it works only on moar and jvm so far | 19:09 | |
19:09
dg joined
|
|||
FROGGS_ | to actually send reports you can do: PANDA_SUBMIT_TESTREPORTS=1 panda install FooBar | 19:09 | |
dj_goku | FROGGS_: but the most recent report is this: testers.perl6.org/report/recent/2487 | ||
FROGGS_ | or: PANDA_SUBMIT_TESTREPORTS=1 panda --exclude=panda smoke | ||
dj_goku | right I downloaded the reporter branch | ||
FROGGS_ | rebootstrap panda, and then you can do what I pasted | 19:10 | |
yes, I had submitted that report | |||
19:10
rindolf left
19:11
rindolf joined
|
|||
dj_goku | rebootstrap? git pull origin reporter? | 19:11 | |
FROGGS_ | and then: perl6-m rebootstrap.pl | ||
so you reinstall it | |||
19:12
perltricks left
|
|||
dj_goku | FROGGS_: paste.scsys.co.uk/441869 | 19:16 | |
looks like reporter is out of sync from master | |||
FROGGS_ | dj_goku: that is quite possible | ||
please do: | 19:17 | ||
git checkout master; git branch -D reporter; git fetch; git checkout reporter | |||
then you just switch to the other branch without merging anything | |||
19:18
ab5tract_ joined
19:19
darutoko- joined
19:20
itz_ left
|
|||
dj_goku | yay | 19:20 | |
19:20
nebuchad` joined
19:21
rindolf left
|
|||
FROGGS_ | \o/ | 19:21 | |
dj_goku | testers.perl6.org/report/recent/2488 | ||
19:21
ab5tract left,
itz joined
|
|||
FROGGS_ | a 32bit OSX, nice | 19:21 | |
19:21
rindolf joined
19:22
telex left,
exodist_ left,
darutoko left
|
|||
FROGGS_ | ohh no, the arch is reported wrong | 19:22 | |
19:22
yukko left,
KCL_ joined,
leedo_ joined
|
|||
FROGGS_ | or at least weirdish | 19:22 | |
19:23
nebuchadnezzar left,
leedo left
|
|||
dj_goku | FROGGS_: 32bit?! | 19:23 | |
19:23
cognominal left
|
|||
geekosaur | macs are weirdish when it comes to arch | 19:23 | |
FROGGS_ | yeah, I know | ||
19:23
yoleaux left,
peterete1 joined,
telex joined,
majuscul1 joined
|
|||
FROGGS_ | at least fat libs should be something of the past, right? | 19:23 | |
19:24
_sri_ joined,
sergot left,
bartolin left,
_sri left,
majuscule left,
cognominal joined,
peteretep left
|
|||
geekosaur | 14A should be 10.10, I think, so it has to be 64 bit | 19:24 | |
note that `arch` returns i386 though | |||
19:24
sergot joined
|
|||
FROGGS_ | yes, that's where my confusion comes from | 19:25 | |
19:25
yoleaux joined,
nine left,
ChanServ sets mode: +v yoleaux,
bartolin joined
|
|||
geekosaur | apple uses arch weirdly, it distinguishes between ppc and intel, but not 32 vs 64 | 19:25 | |
19:25
nine joined,
Exodist joined
|
|||
geekosaur | and apple goes to great legths to hide 32 vs 64 | 19:26 | |
19:26
ghostlines joined,
timotimo joined
|
|||
FROGGS_ | why? | 19:26 | |
geekosaur | fiik | ||
os x is also the only OS I'm aware of which ran 64 bit binaries on 32-bit kernels | 19:27 | ||
FROGGS_ | hmmm, interesting | ||
19:27
dj_goku_ joined,
dj_goku_ left,
dj_goku_ joined
|
|||
psch | FROGGS_: it does make sense from a "people want a shiny computing appliance" perspective | 19:27 | |
hiding the distinction between 32 and 64bit | |||
19:28
dj_goku left
19:29
ennnio left
|
|||
geekosaur | also, fat binaries and libraries/frameworks certainly still exist | 19:30 | |
19:30
rindolf left,
rindolf joined
19:31
d^_^b joined
|
|||
FROGGS_ | m: say $~MAIN | 19:32 | |
camelia | rakudo-moar 7dd729: OUTPUT«Slang.new(:grammar(Perl6::Grammar), :actions(Perl6::Actions))» | ||
FROGGS_ | O.o | ||
geekosaur | largely because of things like wine (64 bit windows won't work on OS X because on conflicts between how OS X and Win64 use registers, IIRC) | ||
FROGGS_ | m: say $~MAIN.^find_method('arglist') | ||
camelia | rakudo-moar 7dd729: OUTPUT«(Mu)» | ||
FROGGS_ | m: say $~MAIN.arglist | ||
camelia | rakudo-moar 7dd729: OUTPUT«No such method 'arglist' for invocant of type 'Slang' in block <unit> at /tmp/Tozyp2mi11:1» | ||
geekosaur | (so wine is built 32-bit and requires fat libraries) | ||
FROGGS_ | m: say $~MAIN.grammar.arglist | ||
camelia | rakudo-moar 7dd729: OUTPUT«Cannot look up attributes in a type object in any !cursor_start at gen/moar/stage2/QRegex.nqp:668 in any arglist at /home/camelia/rakudo-inst-1/languages/nqp/lib/Perl6/Grammar.moarvm:1 in block <unit> at /tmp/9WNOhrCRQY:1» | ||
19:34
Hor|zon_ joined
|
|||
dj_goku_ | FROGGS_: so would it be bad if I setup a daily task on a few machines to pull in the lastest moar and install all modules? | 19:34 | |
posting the results to testers.perl6.org? | |||
FROGGS_ | dj_goku_: that certainly would be most awesome | 19:35 | |
19:36
Hor|zon left
|
|||
dj_goku_ | ubuntu, openbsd and osx. | 19:36 | |
FROGGS_ | cool! | ||
ab5tract_ | i thought i would go with the rss feed for "easy XML parsing" ... and managing to parse the rss into an XML::Document, but only with 'use of uninitialized value $v of type Any in string context in method new at lib/XML.pm6:965' occuring | 19:37 | |
and any attempts to actually use the XML::Document hanging indefinitely | |||
dj_goku_ | FROGGS_: well if I get to annoying/taxing the server let me know and I'll back it down. | ||
ab5tract_ | today is not my day :( | ||
TimToady | ab5tract_: welcome to the bleating edge | 19:38 | |
FROGGS_ | dj_goku_: the server is meant to take many reports... if it can't handle that it is my fault and I will take care of it | ||
dj_goku_: I want to generate static pages for example, to reduce the load | |||
dj_goku_ | FROGGS_: cool | ||
FROGGS_ | dj_goku_: but I want to keep it Perl 6 only, just because | 19:39 | |
19:39
anaeem1 left
|
|||
dj_goku_ | FROGGS_: well it is a proof of concept | 19:39 | |
19:39
rindolf left
|
|||
dj_goku_ | or a working example. | 19:39 | |
FROGGS_ | dj_goku_: something like that, aye :o) | ||
19:40
rindolf joined
|
|||
FROGGS_ | I mean, it is not even two weeks old | 19:40 | |
dj_goku_ | FROGGS_: really?! well good job! | 19:41 | |
I presume I am just POSTing json back to the server? | |||
FROGGS_ | thanks :D | ||
correct | |||
via http | |||
dj_goku_ | k | ||
that is what I thought, but hadn't looked at the code. | |||
19:41
perltricks joined
|
|||
FROGGS_ | dj_goku_: you are posting the json blob that is shown in the report as 'informations' | 19:42 | |
no environment vars, nothing that can potentially contain passwords or other sensitive data | |||
19:43
firefish5000 left
19:44
mls_ joined,
ghostlin_ joined,
ghostlin_ left
|
|||
dj_goku_ | FROGGS_: cool | 19:46 | |
19:47
ghostlines left,
carlin left,
mls left
|
|||
timotimo | yeah, API keys are often put into the environment | 19:47 | |
FROGGS_: how do you feel about normalizing $HOME into ~? | 19:48 | ||
so that the user name doesn't also show up? | |||
FROGGS_ | hmmm, good idea I think | 19:49 | |
moritz | except when you try to track down a bug in a build system where a ~ isn't expanded, but should be | ||
19:49
ghostlines joined
|
|||
moritz | we've had cases where people called perl Configure --prefix=~/p6/install or the likes and wondered why it didn't DWTM | 19:50 | |
FROGGS_ | well, we can replace it by <HOME> | 19:51 | |
C:\panda\ext\File__Find>perl6 -I lib t\01-file-find.t | |||
1..10 | |||
t\dir1\another_dir t\dir1\another_dir\empty_file t\dir1\another_dir\file.bar t\dir1\file.bar t\dir1\file.foo t\dir1\foodir t\dir1\foodir\not_a_dir | |||
t/dir1/another_dir t/dir1/another_dir/empty_file t/dir1/another_dir/file.bar t/dir1/file.bar t/dir1/file.foo t/dir1/foodir t/dir1/foodir/not_a_dir | |||
not ok 1 - just a dir | |||
-.- | |||
ab5tract_ | hmm, the issue is happening with other sample input | 19:52 | |
gist.github.com/ab5tract/cbf4867b441ab2ea84d7 | |||
when searching for a tag that has elements present, the script just hangs | 19:53 | ||
19:53
carlin joined
19:54
rindolf left,
ptc_p61 joined,
rindolf joined
19:56
anaeem1_ joined,
ptc_p6 left
19:57
rindolf left
19:59
perlpilot joined,
tinita_ joined,
petercom1and joined,
Woodi_ joined,
clkao__ joined
20:00
Juerd_ joined,
jnthn_ joined,
Shozan joined,
Util_ joined,
haroldwu_ joined
20:01
labster joined
20:04
mephinet- left,
clkao_ left,
Juerd left
20:05
Util left,
haroldwu left,
raydiak left,
PerlJam left,
[Tux] left,
Woodi left,
yogan left,
sorear left,
prammer left,
gtodd left,
petercommand left,
skarn left,
Sir_Ragnarok left,
Bucciarati left,
isacloud______ left,
Celelibi left,
SHODAN left,
jnthn left,
tinita left,
Juerd_ is now known as Juerd,
clkao__ is now known as clkao_,
Bucciarati joined,
Sir_Ragnarok joined
|
|||
dj_goku_ | FROGGS_: thanks for helping fix my issue. :D | 20:05 | |
FROGGS_ | dj_goku_: the problem with git? | 20:07 | |
20:07
raydiak joined,
[Tux] joined,
yogan joined,
prammer joined,
gtodd joined,
isacloud______ joined
20:09
Timbus_ left,
stux|RC-only left,
Alina-malina left,
Timbus joined,
Diederich-away left
20:10
MilkmanDan left,
yakudza left,
Alina-malina joined,
yakudza joined,
lue left,
sunnavy left,
Alina-malina left,
Alina-malina joined
20:11
stux|RC-only joined,
majuscul1 is now known as majuscule,
[Coke] left,
mattp_ left,
sunnavy joined,
[Coke]_ joined,
lue joined,
erdic left,
jnthn_ is now known as jnthn
20:12
erdic joined,
anaeem1_ left
20:13
ka05 left,
ka05 joined,
oetiker left,
MilkmanDan joined
20:16
arnsholt left,
rjbs left,
rjbs joined
|
|||
psch done for today o/ | 20:17 | ||
FROGGS_ | o/ | 20:19 | |
20:21
[Sno] left,
[Sno] joined
20:22
psch left,
arnsholt joined
20:23
oetiker joined,
Vlavv joined
20:24
darutoko- left
20:26
sqirrel__ joined
20:32
mephinet joined
20:35
anaeem1 joined
20:38
BenGoldberg left
20:42
vendethiel left
|
|||
moritz | does anybody know what host dalek usually runs on? | 20:42 | |
I forgot :( | |||
(and I ignore joins and leaves, so I don't log the hostname during joins) | 20:43 | ||
oh, feather3 it seems | |||
20:44
Celelibi joined
|
|||
moritz | and it explains why dalek is gone (feather had a reboot recently) | 20:45 | |
20:46
skarn joined,
sjn_ is now known as sjn
20:47
ab5tract_ left
20:48
sorear joined
20:49
dalek joined,
ChanServ sets mode: +v dalek
20:50
BenGoldberg joined
|
|||
ugexe | ab5tract: fwiw .perl on XML:: objects hangs in many situations for me | 20:50 | |
FROGGS_ | does it have recursive structures by any chance? | 20:51 | |
20:51
kurahaupo joined
|
|||
timotimo | that would be strange for xml | 20:53 | |
20:53
ab5tract joined
|
|||
ugexe | no | 20:53 | |
timotimo | "Took a few seconds until I understood it. It treats the \n in C:\nqp as a newline." | 20:56 | |
aaaarrrrggghhh m) | |||
FROGGS_ | :o) | 20:59 | |
I enjoy these kinds of errors | |||
they make me smile | |||
20:59
anaeem1 left
|
|||
FROGGS_ .oO( Computer, you are funny ) | 21:00 | ||
21:00
anaeem1 joined
21:01
rurban joined
|
|||
dj_goku_ | FROGGS_: yes | 21:02 | |
perltricks | m: "new hope".subst(/(\w+)/, {$0.uc}).say | 21:04 | |
camelia | rakudo-moar 7dd729: OUTPUT«NEW hope» | ||
perltricks | works. But this doesn't: perl6 -ne '.subst(/(\w+)/, {$0.uc}).say' example.txt | ||
21:04
grondilu joined
|
|||
perltricks | any ideas why? | 21:05 | |
moritz | perltricks: yes | ||
perltricks: basically, s/// is a special syntactic form, and the compiler can cheat as it wants | 21:06 | ||
perltricks: but in the .subst form, {$0.uc} is just a regular argument | |||
perltricks: and it can't easily cheat the $/ into that block argument | 21:07 | ||
ugexe | whats the equiv to p5's s///r anyway | ||
perltricks | moritz: thanks for the info. Can s/// execute code blocks like the /e option in p5? | 21:08 | |
FROGGS_ | perlpilot: yes, with {} | ||
moritz | or with | ||
m: $_ = 'new hope'; s[\w+] = $/.uc; .say | 21:09 | ||
camelia | rakudo-moar 7dd729: OUTPUT«NEW hope» | ||
perltricks | m: say "new hope" ~~ s/(\w+)/{$0.uc}/ | ||
camelia | rakudo-moar 7dd729: OUTPUT«Cannot modify an immutable Str in sub infix:<=> at src/gen/m-CORE.setting:19223 in block <unit> at /tmp/BaPfTWg3fj:1» | ||
perltricks | heh | ||
FROGGS_ | m: say (my $a = "new hope") ~~ s/(\w+)/{$0.uc}/; say $a | ||
camelia | rakudo-moar 7dd729: OUTPUT«TrueNEW hope» | ||
perltricks | thanks y'all. I'm trying to uc the first word in every line in a file and print the line | 21:11 | |
dalek | : 201435d | moritz++ | misc/dalek-conf.json: Remove some dead projects from dalek-conf.json |
||
: e6ffa2d | moritz++ | misc/check-dalek-urls.p6: Add script to check URLs in dalek-conf.json |
21:12 | ||
21:12
ab5tract left
|
|||
moritz | perlpunks.de/paste/show/5467c1d7.161c.330 that's some of the output from the new script | 21:13 | |
does anybody know where the 'err code: 0' etc might come from? | |||
left-over debugging output in one of those modules? | |||
sergot: ^^ | |||
21:14
anaeem1 left,
anaeem1_ joined
|
|||
dalek | : cae5820 | moritz++ | misc/dalek-conf.json: remove more dead URLs |
21:18 | |
21:19
anaeem1_ left,
ab5tract joined
21:20
perltricks left
|
|||
colomon | tadzik: got it | 21:22 | |
21:23
cxreg left
|
|||
tadzik | gotwhat :) | 21:24 | |
21:24
ab5tract left,
sqirrel__ left
|
|||
tadzik | oh, I see :) | 21:24 | |
21:24
cxreg joined
21:25
bbkr left
21:28
araujo joined,
araujo left,
araujo joined
21:33
denis_boyun_ joined
21:36
leont joined
|
|||
sergot | moritz: it is OpenSSL's error | 21:47 | |
colomon | tadzik: Yeah, my new command for rakudobrew started life broken, but I have fixed it and just used it to track down a serious-to-me bug. | ||
sergot | moritz: github.com/sergot/openssl/blob/mas...SL.pm6#L73 | 21:48 | |
tadzik | colomon: oh, that sounds like a useful feature then :) | ||
21:48
ptc_p61 left
|
|||
tadzik | but that's moar-only? | 21:49 | |
colomon | timotimo, jnthn, hoelzro_: I have just confirmed that MoarVM's 05b25a6359c7bcf5ab03357b0d0093f77d28ead6 commit breaks the ABC module. I'm not sure why, exactly. Though the problem definitely involves precompiled modules and part of a namespace disappearing. (After the commit, it is fine without it.) | ||
21:50
ghostlines left
|
|||
colomon | tadzik: sure, I was having a hard time changing the MoarVM / nqp of a Rakudo build on the fly, so I just added a new rakudobrew command that would let me specify exactly which commit I wanted to use for each of them. | 21:50 | |
21:50
Mouq joined
|
|||
colomon | tadzik: please feel free to rename it, I didn't spend a lot of time thinking about it. ;) | 21:50 | |
tadzik: that's how I did it, yes. | 21:51 | ||
21:51
ggoebel111111113 joined
|
|||
colomon | tadzik: if anyone cares enough to make it more generally applicable, I'm sure it's a small matter of programming. ;) | 21:51 | |
21:54
KCL_ left
|
|||
timotimo | colomon: your text reads contradictory. you say that commit breaks the abc module but apparently putting that commit into moarvm makes it work? | 21:54 | |
21:55
Mouq left
21:57
ajr_ left
|
|||
tadzik | colomon: is there a pull request? | 21:57 | |
21:58
denis_boyun_ left
22:04
FROGGS_ left
|
|||
colomon | timotimo: I think my text is correct. I know the commit says it fixes part of a namespace disappearing with precompiled modules, but in fact including that commit breaks exactly those things in ABC. | 22:06 | |
22:09
rurban left
|
|||
colomon may be somewhat incoherent, as he has been pretty sick the last few days. But he is quite sure ABC works with moar pre-fd55e867bf058b30298cdca47c8ce60d5c16dce0 and fails mysteriously with it. | 22:09 | ||
tadzik: no pull request for rakudobrew, I have commit priveledges there. ;) | 22:10 | ||
22:11
mattp_ joined
22:18
ab5tract joined
22:19
napoleon joined
22:23
nebuchad` is now known as nebuchadnezzar
22:24
telex left
|
|||
tadzik | okay :) | 22:25 | |
22:26
telex joined
22:39
kst joined
|
|||
timotimo | that is very weird, colomon ... | 22:41 | |
i don't know what the proper fix would be, as not having that commit would give hoelzro trouble with something else - i think diamond derivation or something? | 22:42 | ||
22:42
napoleon left
22:46
raiph joined
22:48
woolfy1 joined,
woolfy left
22:56
lizmat joined
|
|||
hoelzro_ | =( | 23:02 | |
colomon: how does it break ABC? | |||
23:03
hoelzro_ is now known as hoelzro,
[Coke]_ is now known as [Coke]
23:07
colomon left
23:08
colomon joined
|
|||
colomon | hoelzro: t/08-transpose.t .. Could not find symbol '&Actions' | 23:08 | |
in method <anon> at src/gen/m-CORE.setting:13707 | |||
in any find_method_fallback at src/gen/m-Metamodel.nqp:2725 | |||
in any find_method at src/gen/m-Metamodel.nqp:988 | 23:09 | ||
in sub transpose at t/08-transpose.t:21 | |||
in block <unit> at t/08-transpose.t:41 | |||
where that's ABC::Actions, in a precompiled file. | |||
weirdly, there are two test files where it does file ABC::Actions, and two where it doesn't. | |||
23:10
espadrine_ left
|
|||
colomon | either way, it all works if you don't precompile, and it all works if you don't include that commit of yours. | 23:10 | |
23:12
kaare_ left
23:17
matthijs joined,
matthijs is now known as Guest32794
|
|||
Guest32794 | hi does perl 6 automatically tie arrays/hashes, so that everything remains ordered? | 23:18 | |
leont | Your question isn't clear to me | ||
"tieing automatically" doesn't make sense in particular | 23:19 | ||
What order do you want? | |||
or expect | |||
lizmat | fwiw, the order of hash keys in indeterminate | ||
Guest32794 | if you have put a list in a hash and then you print the keys/values the original order is gone and changes everytime yu print it | 23:21 | |
timotimo | not every time, but there is no guarantee when it changes | 23:22 | |
lizmat | m: my %h = ("a".."z").map( * => $++ ); say %h.perl | 23:23 | |
camelia | rakudo-moar 7dd729: OUTPUT«("c" => 2, "g" => 6, "y" => 24, "x" => 23, "f" => 5, "b" => 1, "e" => 4, "r" => 17, "k" => 10, "w" => 22, "h" => 7, "m" => 12, "o" => 14, "z" => 25, "i" => 8, "n" => 13, "a" => 0, "p" => 15, "s" => 18, "d" => 3, "l" => 11, "v" => 21, "j" => 9, "q" => 16, "…» | ||
lizmat | m: my %h = ("a".."z").map( * => $++ ); say %h.perl | ||
camelia | rakudo-moar 7dd729: OUTPUT«("l" => 11, "b" => 1, "v" => 21, "z" => 25, "s" => 18, "e" => 4, "j" => 9, "p" => 15, "n" => 13, "c" => 2, "k" => 10, "x" => 23, "q" => 16, "d" => 3, "w" => 22, "y" => 24, "a" => 0, "i" => 8, "r" => 17, "g" => 6, "u" => 20, "h" => 7, "t" => 19, "m" => 12, …» | ||
lizmat goes to sleep& | 23:25 | ||
Guest32794 | ok | ||
23:25
grondilu left
|
|||
timotimo | if you print it two times in a row, it'll probably give you the same order, but not guaranteed | 23:25 | |
gnite lizmat | |||
23:26
[Sno] left
23:28
spider-mario left,
[Sno] joined
|
|||
Guest32794 | That module Tie::Autotie in Perl5 keeps everything ordered. i was wondering if this is now default in perl 6 | 23:28 | |
colomon | Guest32794: it is not | 23:32 | |
23:34
kurahaupo left
|
|||
Guest32794 | ok chers! bye | 23:37 | |
23:37
Guest32794 left
|
|||
ugexe | XML::Query also errors and fails tests when its precompiled and passes when tested on /lib | 23:40 | |
i know its been brought up in here before. anyway its the same error on moar/jvm/parrot fwiw Default constructor for 'Query' only takes named arguments | 23:43 | ||
colomon wonders if there is a relatively easy automated way to test modules without precompiling, so we can see how many modules are having these sorts of issues. | 23:45 | ||
ugexe | just run prove on them? | 23:47 | |
or maybe if you just do panda-test without doing panda-build first | |||
github.com/ugexe/P6TCI/blob/master...ml#L22-L30 | 23:49 | ||
you can use something similar to that | |||
you could even split the panda-test and prove out by env: | 23:52 |