»ö« 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.
[Coke] the rakudo.jvm tests for this morning are STILL running. they are easily 6-8 hours longer than previous runs. 02:32
FROGGS [Coke]: and you think this is related to a recent change and not to the general host08 slowness? 07:04
moritz is host08 generally slow? 07:06
it shouldn't :-)
FROGGS moritz: isn't that the reason that camelia times out lately? 07:07
moritz though iirc it uses openjdk, whereas host07 hat the oracle JDK installed
FROGGS: I don't think so
FROGGS ohh, my fault
moritz FROGGS: the commands themselves don't take long, when I run them in isolation on the host08 command line
something else is fishy, though I don't know yet what
dalek nda/CPAN: 683e0c0 | (Tobias Leich)++ | TODO:
add CPAN related TODOs
07:20
lizmat good *, #perl6! 07:42
brrt \o lizmat 07:43
brrt maybe jnthn and masak should stop travelling 07:51
everywhere they stay chaos breaks loose 07:52
dalek ast: f8e0c0d | usev6++ | S (2 files):
Moving test for RT #75370 to S12-enums/basic.t

test was added with github.com/perl6/roast/commit/b4fc...8740d07c7c
07:59
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=75370
lizmat m: say IO::Spec::Win32.rel2abs("C:foo\\bar")' 08:00
camelia rakudo-moar 264eaf: OUTPUT«(timeout)» 08:01
wolfram_ lizmat: In case it's still relevant: on my cygwin the first 'ls C:/' warns ' MS-DOS style path detected: C:/ Preferred POSIX equivalent is: /cygdrive/c'. After that both 'ls C:/' and 'ls C:\\' work 08:03
lizmat wolfram_: thanks
I get: $ 6 'say IO::Spec::Win32.rel2abs("C:foo\\bar")' 08:04
\Users\liz\Github\rakudo.moar\foo\bar
lizmat which is clearly not right, or is it ? 08:04
lizmat hmmm... I gues it expects a CWD value that also has a C:\ in it 08:05
$ 6 'say IO::Spec::Win32.rel2abs("C:foo\\bar","D:\\zip")' 08:06
D:\zip\foo\bar
lizmat I guess you just can't win (pun intended) 08:06
moritz rel2abs should be a noop if the path is already absolute 08:07
(IMHO)
lizmat C:foo isn't absolute
C:\foo is
or am I wrong ? 08:08
moritz wth does C:foo mean?
does windows have a CWD per volume?
lizmat not sure anymore 08:09
anyway, S32-io/io-path-win.t tests for that
and I broke it
and trying to figure out how I broke it
brrt moritz - i think it does, yes 08:14
it used to at any rate
wolfram_ on win7: 08:16
F:\>dir c:
Directory of c:\usr
F:\>dir d:
Directory of D:\tmp
F:\>dir d:Kon
Directory of D:\tmp\Kon
lizmat feels that IO::Spec::Win32.rel2abs("C:foo\bar","D:\zip") should fail 08:17
brrt wolfram_++
lizmat you can't make sense of that one, and the result is most likely wrong
moritz lizmat: correct 08:31
lizmat afk for a few hours& 08:33
dalek ast: afc4d1e | usev6++ | S32-exceptions/misc.t:
Add test for RT #113680
08:45
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=113680
nine Good morning! 08:47
yoleaux 29 Sep 2014 22:42Z <carlin> nine: on OpenBSD a sub with an empty return; hangs. p5_av_top_index should return -1 with an empty return; but is returning 4294967295. Something somewhere unsigned that should be signed?
dalek line-Perl5: 885327a | nine++ | / (2 files):
Use correct int data types to avoid 32/64 bit issues

Hopefully fixes the p5_av_top_index openBSD issue reported by carlin++
08:48
nine carlin: ^^^ not unsigned, but using a 64 bit integer where I should have used 32. Thanks for digging this out! 08:49
nine I have to admit that I didn't give data types any thought during the first couple of days. Progress was everything... 08:51
carlin nine: still hangs, making the p5_av_top_index sub return int32 fixes it 10:23
nine carlin: oh you mean in Perl5.pm6? Seems like that's exactly the only return value I missed when fixing the data types :/ 10:32
dalek line-Perl5: bb1c7d5 | nine++ | lib/Inline/Perl5.pm6:
Fix return value of p5_av_top_index

Thanks to carlin++ for pointing this out...again.
carlin nine++ 10:35
tests clean on OpenBSD now
when perl is built with -Uusemymalloc at least
nine carlin: have you tested without usemymalloc? 10:43
FROGGS -U is 'without', no?
masak hello hey hey hi hi #perl6 10:44
nine carlin: then have you tested with usemymalloc?
FROGGS masak: hi, welcome to #perl6 :o)
masak :)
this is something that we could possibly learn from and be inspired by: github.com/jonathanslenders/python...pt-toolkit
FROGGS wow 10:47
though, windows support would be rather essential
masak aye.
FROGGS ohh, he even said "Thank you" to my PR :o) 10:50
masak jonathanslenders++ 10:52
FROGGS yeah 10:53
masak & 10:54
carlin nine: perl's build defaults to usemymalloc on OpenBSD 11:29
t/call_back.t ............. moar in free(): error: bogus pointer (double free?) 0x1b3e45a0cf10 11:30
t/exceptions.t ............ 1/? moar in free(): error: bogus pointer (double free?) 0x11fb18e0c980
perlgod does perl6 allow a problematics-oriented semi-meta programming model? i use this all the time in our web backend at work 11:35
moritz perlgod: what does that mean? 11:36
perlgod i thought it was common knowledge in the general perl scene, it's a techniqe derived from perl4 source that perl5 is especially gpod at 11:42
lizmat sorry, we're stupid perl 6 people around here 11:43
FROGGS perlgod: can you describe it?
ecocode hmmm... problematics-oriented semi-meta programming model... sounds like something for Emacs ;) 11:55
tadzik buzzword overflow, does not compute 11:56
moritz we're good with meta, and with programming, but not so good with semi and with problematics 11:57
tadzik also, the nickname, the gateway, the question... are hugs in order? :)
moritz hugs perlgod
FROGGS btw, tadzik, you're coming to the APW too? 12:04
tadzik FROGGS: no :(
FROGGS :o( 12:05
dalek kudo/nom: 70f4ff2 | (Elizabeth Mattijsen)++ | src/core/IO/Spec/Unix.pm:
Some obvious optimizations
12:16
timotimo o/ 12:18
colomon lizmat: why the my @ = in line 40 of that commit? Is that a different way of getting the effect of "eager" or something? 12:25
lizmat that was the only way to satisfy the test #54 in t/spec/S32-io/io-spec-unix.t 12:26
.eager didn't cut it either :-(
timotimo maybe it's important to have a proper container is allocated or something like that 12:31
dalek kudo/nom: 3b9d0cd | (Elizabeth Mattijsen)++ | src/core/IO/Spec/Win32.pm:
Some more obvious optimizations
12:38
sergot_ m: lines 12:40
camelia rakudo-moar 264eaf: OUTPUT«(timeout)» 12:41
sergot_ m: my $a = Promise.new; my $b = Promise.in(1); start { try EVAL "lines" }; await Promise.anyof($a, $b); say "alive!"; 12:42
camelia rakudo-moar 264eaf: OUTPUT«(timeout)»
sergot_ shouldn't it end after 1 sec?
timotimo m: say "test" 12:44
camelia rakudo-moar 264eaf: OUTPUT«(timeout)»
timotimo m: 0
camelia ( no output )
timotimo huh, that's interesting
sergot o0
indeed :)
m: 0 for ^10; 12:45
camelia ( no output )
sergot m: say "test";
camelia rakudo-moar 264eaf: OUTPUT«test␤»
sergot m: say "test"
camelia rakudo-moar 264eaf: OUTPUT«test␤»
sergot m: my $a = Promise.new; my $b = Promise.in(1); start { try EVAL "lines" }; await Promise.anyof($a, $b); say "alive!";
camelia rakudo-moar 264eaf: OUTPUT«alive!␤»
timotimo something tells me, that host08 isn't completely happy 12:46
sergot m: try EVAL "say 1";
camelia rakudo-moar 264eaf: OUTPUT«1␤»
PerlJam m: use Test; %*ENV<PATH> = ""; my @want; is_deeply(IO::Spec::Unix.path, @want, "There is no PATH"); 12:48
camelia rakudo-moar 264eaf: OUTPUT«not ok 1 - There is no PATH␤␤# Failed test 'There is no PATH'␤# at /tmp/P30x8Fs5dZ line 1␤# expected: []␤# got: $( )␤»
PerlJam lizmat: I think the else branch also wants a "my @" 12:49
lizmat oh? hmmm... there's no test for that :--)
PerlJam heh, true :)
dalek ast: be2e100 | duff++ | S32-io/io-spec-unix.t:
Test the empty path too
12:57
kudo/nom: 5a02987 | duff++ | src/core/IO/Spec/Unix.pm:
return the same type of thing in both execution paths
12:59
PerlJam (It was bothering me)
Though maybe is_deeply isn't the right test anyway. It's looking for structural equivalence, and I think we only really care about functional equivalence here. 13:02
lizmat PerlJam: maybe that would be the best fix: make the test just "is" 13:13
going to be afk for most of the rest of the day: AmsterdamX meeting with social before/afterwards 13:14
[Coke] the tests didn't finish. on "integration/weird" now, with today's tests set to start in 2m. 13:33
[Coke] delays today's run. 13:35
FROGGS [Coke]: can you tell when the slowness started? 13:39
gtodd nine: was there a github repo somewhere where you kept working sample code for I::P5 ? I see the tests of course but I thought you had a bunch of scripts somehwere? 13:47
nine: errm oops ignore that :-) 13:48
masak interesting technique, trying to out-technobabble #perl6. I wonder if perlgod quieted down because the channel's reaction was largely curiosity... :P 13:51
"semi-meta? what's that?"
[Coke] FROGGS: this is the first day it's been this slow. 13:53
FROGGS [Coke]: okay, that's something...
[Coke] yay, it finally finished. 13:54
dalek rl6-roast-data: 91ea7a8 | coke++ | / (5 files):
today (automated commit)
gtodd masak: maybe semi-meta is ancient perl4 slang
wait ... perl4 "slang" ... hmmm
FROGGS no.
please
*g*
gtodd hah
Inline::Perl4 :-) 13:55
FROGGS unlikely :o)
[Coke] wonders if perlgod was some kind of meta troll. 13:58
masak only a semi-meta troll. 13:58
the other half was genuinely curious whether we did that stuff :P
dalek kudo-star-daily: 016f7c9 | coke++ | log/MoarVM-version.log:
today (automated commit)
13:59
jnthn
.oO( You do semi-meta programming with $obj.HᵔV of course... )
14:00
masak wouldn't a meta troll be kind of the Dexter Morgan of trolls? someone who only trolls trolls?
[Coke] maybe perl 6 is just a long running prank. 14:01
masak that would explain so much.
moritz [Coke]: the first prank is history for which two dynamic, virtual machines were written :-) 14:02
(though now that I said it, maybe Brainfuck can compete on that level)
jnthn A bf vm has a little less to provide... :) 14:03
moritz I know :-)
jnthn Didn't I write us a bf interp here once? :)
masak a semi-meta troll (someone who goes up half a level and trolls from there) is a completely different beast from a meta-semi-troll (someone who half-trolls your half-troll) 14:04
jnthn: yes, you did. I challenged the channel to do it in one line of IRC evalbot.
jnthn: including the Hello World program. 14:05
jnthn haha :)
[Coke] j: say "why so slow?" 14:06
camelia rakudo-jvm 5a0298: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
jnthn Good excuse... :P
masak both of these are distinct from a meta-troll-semi (the semifinals of meta-trolling)
masak hugs himself, half-heartedly 14:07
moritz one-and-a-semi hugs masak
(with both arms, but only half of my tentacles) 14:08
masak I only need 51% of all the hugs to gain an absolute hug majority.
moritz "a little hug becomes huge instantly\n if you just add silent e" -- Tom Lehrer 14:09
nine masak: would you need 51 % or just > 50 %?
tadzik I wouldn't settle for half-solutions
moritz if you won't settle, you'll have to sue! 14:11
well, semi-sue :-)
gtodd [Coke]: ongoing host08 issues ? 14:12
masak nine: 50% plus one hug, yes. thanks. 14:13
PerlJam How do you know when you've reached 50%?
I would figure that hugs are like love ... you can always just make more. 14:14
gtodd m: use v6; "perl5++".say ; 14:15
camelia rakudo-moar 5a0298: OUTPUT«perl5++␤»
raiph I just semi met a semi troll asking "Why threads rather than forks?" www.reddit.com/r/perl/comments/2h4y...vm/ckwe4of 14:16
gtodd hmm "perl5++".say ; on a t-shirt 14:17
masak m: 5++ 14:18
camelia rakudo-moar 5a0298: OUTPUT«Cannot assign to an immutable value␤ in sub postfix:<++> at src/gen/m-CORE.setting:4862␤ in block <unit> at /tmp/pBZjr4eQns:1␤␤»
gtodd heh
that on a t-shirt would be better :)
PerlJam m: my $p = "perl5"; $p++; say $p; # ;P 14:20
camelia rakudo-moar 5a0298: OUTPUT«perl6␤»
FROGGS m: 6;$_="perl5";.++;.say;#;P 14:22
camelia rakudo-moar 5a0298: OUTPUT«perl6␤»
FROGGS \o/ We can do noise too! \o/
jnthn raiph: Threads are more portably supported for one. What's fork mean on Windows? 14:23
raiph: No reason you can't do a fork on a platform that supports it. But it's more an apples vs. oranges question to me. I'd use them to solve different problems.
PerlJam That's probably why I always wonder why people write/speak as if fork and threads are pitted against one another. 14:24
Woodi just processess have a fame to be outdated technology ;) 14:26
jnthn To handwave a lot, process = unit of memory protection, thread = unit of scheduling.
Juerd To whoever upgraded bash on feather: thanks :)
Woodi hallo today :) 14:27
Juerd Also, feather's going to be decomissioned and shut down soonish (in a few months)
moritz eeks.
Juerd There will be a new virtual machine specifically for running IRC clients
Woodi FROGGS: how it work ?? # 6;$_="perl5";.++;.say;
Juerd I'll announce it with more details in a week or so 14:28
moritz I'll ask my employer if they're willing to give us a machine for hosting the websites etc.
PerlJam Woodi: .++ is the same as $_.++ and .say is the same as $_.say 14:28
Woodi but .++ incrases string ? 14:29
FROGGS yes
moritz sure
why not? :-)
Juerd feather's almost 10 years old and I'm no longer really in the web hosting business. At this point, I'm keeping a server running for a few open source and hobby projects.
FROGGS like: "foo".succ
m: say "foo".succ
camelia rakudo-moar 5a0298: OUTPUT«fop␤» 14:29
Woodi is this a someones usecase ? :) 14:30
Juerd moritz: I'm considering keeping feather2 around. It causes no trouble and needs only very little maintenance. 14:30
moritz: Likewise, I'll provide an alternative for feather1's primary use: irc clients in screen/tmux
PerlJam Woodi: $filename++ while -e $filename; # one possible use 14:31
Juerd Heh, that's one place where I'd use "until not" :D
PerlJam er, sorry about the P5 there. I still think that way :)
Woodi PerlJam: oki 14:32
but it's still race condition or something like that ;) 14:33
PerlJam not when there's only one runner.
Juerd Haha
"There's a race condition in your code." "Not without concurrency."
I have to remember that one. 14:34
carlin m: my $filename = "auth.log.0"; $filename++; say $filename 14:35
camelia rakudo-moar 5a0298: OUTPUT«auti.log.0␤»
PerlJam carlin: you'll have to talk with TimToady about that as it is currently designed more for ... 14:35
Woodi but still nice to have example when just reading around
PerlJam m: my $fn = "pic1.jpg"; $fn++; say $fn; 14:36
camelia rakudo-moar 5a0298: OUTPUT«pic2.jpg␤»
carlin that makes sense 14:37
Juerd m: my $fn = "pic9.jpg"; say ++$fn
camelia rakudo-moar 5a0298: OUTPUT«pid0.jpg␤»
Juerd Meh.
gtodd oopsie
Juerd Smart increment is a bit too smart :P
carlin m: my $filename = "pic09.jpg"; $filename++; say $filename
camelia rakudo-moar 5a0298: OUTPUT«pic10.jpg␤»
Juerd m: my $fn = "pic99.jpg"; say ++$fn
camelia rakudo-moar 5a0298: OUTPUT«pid00.jpg␤»
Juerd :P 14:38
gtodd there must be away to dumb it down :)
Juerd use less <smart>;
PerlJam provide your own .succ
or "manually" increment
Juerd PerlJam: That seems like a lot of trouble for not having to concatenate manually :P 14:38
gtodd sometimes a string is just a string .... (Freud) 14:39
PerlJam If we come up with good names for the various string incrementing semantics that people want, we can probably make some nice declarative way to say what you mean. 14:41
Though it'll probably have to be something like { use str-inc :dumb; $filename++ } rather than $filename++:dumb # (maybe) 14:43
gtodd m: "observer pattern is mathematically equivalent to the iterator pattern".succ
camelia ( no output )
gtodd m: "observer pattern is mathematically equivalent to the iterator pattern".succ.say 14:44
camelia rakudo-moar 5a0298: OUTPUT«observer pattern is mathematically equivalent to the iterator pattero␤»
FROGGS pattero olé!
JimmyZ speaking fo github.com/jonathansl​enders/pytho...t-toolkit, windows support is not hard, since linenoise support windows, which we can learn from 14:45
JimmyZ the chinese input supporting is intersting 14:45
dalek kudo/nom: b5032fc | (Tobias Leich)++ | src/core/Main.pm:
re-add program name fiddling in $?USAGE
carlin m: for <pic1.jpg> .. <pic9.jpg> { .say } 14:46
camelia rakudo-moar 5a0298: OUTPUT«pic1.jpg␤pic2.jpg␤pic3.jpg␤pic4.jpg␤pic5.jpg␤pic6.jpg␤pic7.jpg␤pic8.jpg␤pic9.jpg␤»
FROGGS m: .say for [..] <pic1.jpg pic9.jpg> 14:47
camelia rakudo-moar 5a0298: OUTPUT«pic1.jpg␤pic2.jpg␤pic3.jpg␤pic4.jpg␤pic5.jpg␤pic6.jpg␤pic7.jpg␤pic8.jpg␤pic9.jpg␤»
FROGGS I love it
gtodd nice
sjn that's cool
FROGGS (whoever invented REDUCE)++
gtodd what is [..] called
FROGGS reduce
gtodd infix reduce operator
?
hehe 14:48
FROGGS infix reduce meta op
or so
gtodd :-D
FROGGS because [ ] takes an existing op :o)
(any existing infix)
PerlJam m: .say for [..] <pic8.jpg pic12.jpg> # oops
camelia ( no output )
JimmyZ m: .say for 'pic1.jpg1' ... 'pic9.jpg9'
gtodd so it is "meta"
camelia rakudo-moar 5a0298: OUTPUT«(timeout)pic1.jpg1␤pic2.jpg1␤pic3.jpg1␤pic4.jpg1␤pic5.jpg1␤pic6.jpg1␤pic7.jpg1␤pic8.jpg1␤pic9.jpg1␤pid0.jpg1␤pid1.jpg1␤pid2.jpg1␤pid3.jpg1␤pid4.jpg1␤pid5.jpg1␤pid6.jpg1␤pid7.jpg1␤pid8.jpg1␤pid9.jpg1␤pie0.jpg1␤pie1.jp…»
gtodd m: .say for [++] <pic8.jpg pic12.jpg> 14:49
camelia rakudo-moar 5a0298: OUTPUT«===SORRY!=== Error while compiling /tmp/Qflb0cPDMt␤Preceding context expects a term, but found infix + instead␤at /tmp/Qflb0cPDMt:1␤------> .say for [++⏏] <pic8.jpg pic12.jpg>␤»
sjn hehe
gtodd oops
hjahaha
FROGGS not an infix :o)
JimmyZ m: .say for 'pic1.jpg1' ... 'pic9.jpg9'
timeout?
camelia rakudo-moar 5a0298: OUTPUT«(timeout)pic1.jpg1␤pic2.jpg1␤pic3.jpg1␤pic4.jpg1␤pic5.jpg1␤pic6.jpg1␤pic7.jpg1␤pic8.jpg1␤pic9.jpg1␤pid0.jpg1␤pid1.jpg1␤pid2.jpg1␤pid3.jpg1␤pid4.jpg1␤pid5.jpg1␤pid6.jpg1␤pid7.jpg1␤pid8.jpg1␤pid9.jpg1␤pie0.jpg1␤pie1.jp…»
FROGGS JimmyZ: because it will never hit 'pic9.jpg9'
its infinite 14:50
PerlJam pic9.jpg9 is a *looooong* way from pic1.jpg1 :)
FROGGS it's*
carlin m: say ("jpg" .. "png").elems 14:52
camelia rakudo-moar 5a0298: OUTPUT«4005␤»
gtodd 10^81 ??
moritz it never increments the final 1 14:52
FROGGS exactly
m: say ('pic1.jpg1' ... 'pic9.jpg9').elems 14:53
tony-o a boat load
gtodd haha
camelia rakudo-moar 5a0298: OUTPUT«(timeout)»
JimmyZ haha 14:54
gtodd camelia got mad at FROGGS
FROGGS[mobile] :o) 14:55
Woodi could we have grammars for generating output, not reading/parsing ? :)
PerlJam m: .say for "2x8" .. "3a3"; # this is another nice property of the existing Str.succ semantics 14:56
camelia rakudo-moar 5a0298: OUTPUT«2x8␤2x9␤2y0␤2y1␤2y2␤2y3␤2y4␤2y5␤2y6␤2y7␤2y8␤2y9␤2z0␤2z1␤2z2␤2z3␤2z4␤2z5␤2z6␤2z7␤2z8␤2z9␤3a0␤3a1␤3a2␤3a3␤»
gtodd PerlJam: hmmm good names for string incrementing semantics ... 14:57
Woodi eg. software version numbers, complicated sequences of photo files for batch processing, etc :) 14:58
PerlJam Woodi: I think jnthn even did a talk on using grammars as generators 14:59
Woodi: yeah ... jnthn.net/papers/2013-yapcna-gramma...nerate.pdf 15:00
gtodd m: .say for "a1" .. "h8";
camelia rakudo-moar 5a0298: OUTPUT«a1␤a2␤a3␤a4␤a5␤a6␤a7␤a8␤a9␤b0␤b1␤b2␤b3␤b4␤b5␤b6␤b7␤b8␤b9␤c0␤c1␤c2␤c3␤c4␤c5␤c6␤c7␤c8␤c9␤d0␤d1␤d2␤d3␤d4␤d5␤d6␤d7␤d8␤d9␤e0␤e1␤e2␤e3␤e4␤e5␤e6␤e7␤e8␤e9␤f0␤f1␤f…»
timotimo Woodi: jnthn wrote a module about it and a talk
ah, PerlJam already found it 15:01
gtodd hmm so can I tell .say for "a1" .. "h8"; to only do 8 numbers for each letter using .succ ? 15:02
PerlJam gtodd: not without writing your own .succ
gtodd chessboard 15:03
timotimo m: .say for ("a" .. "h") X~ (1..8)
camelia rakudo-moar 5a0298: OUTPUT«a1␤a2␤a3␤a4␤a5␤a6␤a7␤a8␤b1␤b2␤b3␤b4␤b5␤b6␤b7␤b8␤c1␤c2␤c3␤c4␤c5␤c6␤c7␤c8␤d1␤d2␤d3␤d4␤d5␤d6␤d7␤d8␤e1␤e2␤e3␤e4␤e5␤e6␤e7␤e8␤f1␤f2␤f3␤f4␤f5␤f6␤f7␤f8␤g1␤g2␤g3␤g…»
timotimo ^- much cleaner
IMO.
PerlJam and more Saying What You Mean too
gtodd timotimo: yeah ... I think I saw someone do that once :-) I was just wondering what .succ was supposed to be able to do or control
timotimo succ is "smart" 15:04
it known about a lot of series that belong together
.u roman numeral
yoleaux U+2160 ROMAN NUMERAL ONE [Nl] (Ⅰ)
yoleaux U+2161 ROMAN NUMERAL TWO [Nl] (Ⅱ) 15:04
U+2162 ROMAN NUMERAL THREE [Nl] (Ⅲ)
gtodd ah ok ... brute smartness :)
timotimo m: say "Ⅰ"..*
camelia rakudo-moar 5a0298: OUTPUT«"Ⅰ"..Inf␤»
timotimo hah
timotimo m: say ("Ⅰ"..*)[50] 15:04
camelia rakudo-moar 5a0298: OUTPUT«ⅣⅢ␤»
timotimo m: say ("Ⅰ"..*)[^50]
camelia rakudo-moar 5a0298: OUTPUT«Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ Ⅵ Ⅶ Ⅷ Ⅸ Ⅹ Ⅺ Ⅻ ⅠⅠ ⅠⅡ ⅠⅢ ⅠⅣ ⅠⅤ ⅠⅥ ⅠⅦ ⅠⅧ ⅠⅨ ⅠⅩ ⅠⅪ ⅠⅫ ⅡⅠ ⅡⅡ ⅡⅢ ⅡⅣ ⅡⅤ ⅡⅥ ⅡⅦ ⅡⅧ ⅡⅨ ⅡⅩ ⅡⅪ ⅡⅫ ⅢⅠ ⅢⅡ ⅢⅢ ⅢⅣ ⅢⅤ Ⅲ…»
PerlJam heh
timotimo not exactly correct, but you get the idea
m: say ("α"..*)[^50] 15:05
camelia rakudo-moar 5a0298: OUTPUT«α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω αα αβ αγ αδ αε αζ αη αθ αι ακ αλ αμ αν αξ αο απ αρ ασ ατ αυ αφ αχ αψ αω βα ββ␤»
timotimo m: say ("1"..*)[^50]
camelia rakudo-moar 5a0298: OUTPUT«1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50␤»
timotimo m: say ("①" .. *)[^50] 15:06
camelia rakudo-moar 5a0298: OUTPUT«① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ ⑪ ⑫ ⑬ ⑭ ⑮ ⑯ ⑰ ⑱ ⑲ ⑳ ①① ①② ①③ ①④ ①⑤ ①⑥ ①⑦ ①⑧ ①⑨ ①⑩ ①⑪ ①⑫ ①⑬ ①⑭ ①⑮ ①⑯ ①⑰ ①⑱ ①⑲ ①⑳ ②① ②② ②③ ②④ ②⑤ …»
PerlJam m: say ("αⅠ"..*)[^50]
camelia rakudo-moar 5a0298: OUTPUT«αⅠ αⅡ αⅢ αⅣ αⅤ αⅥ αⅦ αⅧ αⅨ αⅩ αⅪ αⅫ βⅠ βⅡ βⅢ βⅣ βⅤ βⅥ βⅦ βⅧ βⅨ βⅩ βⅪ βⅫ γⅠ γⅡ γⅢ γⅣ γⅤ γⅥ γⅦ γⅧ γⅨ γⅩ γⅪ γⅫ δⅠ δⅡ δⅢ δⅣ δⅤ δⅥ δ…»
PerlJam huh
m: say ("α1"..*)[^50] 15:07
camelia rakudo-moar 5a0298: OUTPUT«α1 α2 α3 α4 α5 α6 α7 α8 α9 β0 β1 β2 β3 β4 β5 β6 β7 β8 β9 γ0 γ1 γ2 γ3 γ4 γ5 γ6 γ7 γ8 γ9 δ0 δ1 δ2 δ3 δ4 δ5 δ6 δ7 δ8 δ9 ε0 ε1 ε2 ε3 ε4 ε5 ε6 ε7 ε8 ε9 ζ0␤»
PerlJam Is there something about the number 12 relating to roman numerals that I don't know about ? 15:08
leont Hours I guess
colomon PerlJam: clock face 15:09
PerlJam that's still weird
unless that's where the unicode characters "overflow" 15:10
huh, that *is* where they overflow 15:12
stupid clock faces ;)
tony-o weird 15:13
gtodd m: say ("🀰" ..*)[^10] 15:17
camelia rakudo-moar 5a0298: OUTPUT«🀰 🀰 🀰 🀰 🀰 🀰 🀰 🀰 🀰 🀰␤»
gtodd I thought dominoes could form a sequence camelia 15:18
lichtkind the modules lsit omly contains 100 ? 15:30
gtodd m: .say for (1..Inf ==> grep(*.is-prime) ==> map({ "{++state $n}: $_" }) )[^10]
camelia rakudo-moar 5a0298: OUTPUT«1: 2␤2: 3␤3: 5␤4: 7␤5: 11␤6: 13␤7: 17␤8: 19␤9: 23␤10: 29␤»
tony-o lichtkind: it's paged now 16:03
lichtkind tony-o there are the page links? 16:05
dalek nda/CPAN: bd34c5d | (Tobias Leich)++ | / (6 files):
implement `panda --cpan update`

This will download the list of packages/binaries/etc. We also download these when 24hours-ish have passed for commands like: --cpan install, --cpan search, etc.
16:09
timotimo m: ((1..Inf ==> grep *.is-prime) Z=> 1..*)[^10].fmt("%02d: % 2d") 16:10
camelia ( no output )
timotimo m: ((1..Inf ==> grep *.is-prime) Z=> 1..*)[^10].fmt("%02d: % 2d").say
camelia rakudo-moar b5032f: OUTPUT«02: 1 03: 2 05: 3 07: 4 11: 5 13: 6 17: 7 19: 8 23: 9 29: 10␤»
timotimo gtodd: ^- you like?
gtodd :-) 16:11
I like feeds bit the use of Z and .fmt("%02d: % 2d") feels more perlish ... 16:13
but
timotimo OK :)
gtodd hehe
the problem of course in learning perl6 is .. well it sort of is *already* is perl10 :-) 16:14
timotimo almost everything is version 10, given the right base
gtodd heheh
tony-o lichtkind: i didn't see any but i noticed the other day that the module list only 16:18
went to m
lichtkind to i actually 16:19
tony-o yea to i now
i had to search to get the module
timotimo .tell japhb i really need a tool or something to figure out what makes perl6-bench discard data ... i have done a benchmark set for lots and lots and lots of releases now and all i get is a row of 100.0 for all of them :( 16:35
yoleaux timotimo: I'll pass your message to japhb.
_slade_ In Perl 6's synopses, is 'closure' used to refer to any block of code that creates a lexical scope? 16:45
Nevermind, it makes sense. Just was a bit confused since the glossary doesn't provide a definition. 16:47
yeahnoob m: my $s; for 1..10000 {$s+=$_;} say $s; 16:49
camelia rakudo-moar b5032f: OUTPUT«(timeout)»
_slade_ m: [+] 1 .. 1e4 16:50
camelia rakudo-moar b5032f: OUTPUT«(timeout)»
yeahnoob the old problem from stackoverfow
p: my $s; for 1..10000 {$s+=$_}; say $s; 16:51
camelia rakudo-parrot b5032f: OUTPUT«(timeout)» 16:52
_slade_ m: $n = 1e4; $n*($n-1)/2; 16:53
camelia rakudo-moar b5032f: OUTPUT«(timeout)»
yeahnoob m: say "Better Now?";
camelia rakudo-moar b5032f: OUTPUT«Better Now?␤»
yeahnoob yun
yeahnoob m: say ("甲"..*)[^10] 16:57
camelia rakudo-moar b5032f: OUTPUT«(timeout)» 16:57
yeahnoob m: say ("壹"..*)[^10] 16:58
camelia rakudo-moar b5032f: OUTPUT«(timeout)» 16:59
_slade_ [^10] ? 16:59
moritz [] is indexing 17:06
and ^10 is like 0..9
_slade_ moritz: th 17:08
thanks*
_slade_ Huh. ^^10 generates the same range as ^10. 17:19
I was half expecting it to mean 0 ^..^ 10
colomon _slade_: I think it's probably ^(^10) 17:20
and ^(@a) means 0 .. @a.length-1 17:21
_slade_ Isn't it .elems?
colomon _slade_: probably, I usually don't call it directly. :) 17:22
PerlJam m: say ^^^^^^^10; # :) 17:24
camelia rakudo-moar b5032f: OUTPUT«0..^10␤»
_slade_ colomon: my perl6 code is still pretty glossolalic so I use .elems a lot :) 17:26
japhb botsnack 17:37
yoleaux 16:35Z <timotimo> japhb: i really need a tool or something to figure out what makes perl6-bench discard data ... i have done a benchmark set for lots and lots and lots of releases now and all i get is a row of 100.0 for all of them :(
japhb timotimo: I'm about to head out, but you should be able to find the answers in `perldoc analyze` 17:38
[Coke] .seen japhb 17:55
yoleaux I saw japhb 17:38Z in #perl6: <japhb> timotimo: I'm about to head out, but you should be able to find the answers in `perldoc analyze`
[Coke] java seems slightly better today; 2pm and it's up to S05-mass/named-chars.t 17:56
[Coke] we've got nearly all physical memory in use, and > 1GB of swap at the moment. 18:04
[Coke] and virtually no CPU. 18:04
I am so happy to see commits to roast and updates on RT. thank you thank you thank you. 18:06
ooh, {Graham TerMarsch}++ fixed TAP::Formatter::JUnit 18:11
now I can try again to see if we can use something like jenkins.
[Coke] github.com/perl6/roast/commit/c767...5f614def93 - whats the point of merging these tests? 18:22
PerlJam imdb.com 18:26
blah
bartolin [Coke]: No big point in this. I just thought it would reflect the original "say 4!!; say 5!!" from RT #116348 better. do you think it's better to have two single tests? 18:30
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=116348
[Coke] no, that's fine. 18:31
koe perl-star release 2014.09: how to output to pbc? 18:33
[Coke] (bah. jvm STILL on S05. so sllllow) 18:34
moritz koe: perl6-p --target=pbc --output=lib/YourModule.pm.pbc lib/YourModule.pm 18:34
koe get Unknown compilation target 'pbc' error message in windows shell 18:36
moritz: get Unknown compilation target 'pbc' error message in windows shell 18:37
moritz koe: oh, you need to --target=pir 18:38
koe: and then compile pir to pbc
moritz koe: and then parrot -o file.pbc file.pir 18:39
koe: sorry for giving you the wrong information first
timotimo o/
koe moritz: thanks - pbc file was created - how can it be executed by parrot? 18:41
moritz koe: parrot file.pbc
koe: but that usually doesn't work for Perl 6 programs 18:42
koe: you can however precompile modules, and a 'use' will automatically pick up the precompiled version
koe moritz: get error message: missing or wrong version of dependecy 'src\Perl6\Grammar.nqp'
geekosaur that would be what moritz just said, you need to precompile all the perl6-specific dependencies as well 18:43
moritz koe: but if you precompile modules by hand, you're doing something wrong 18:44
koe: ufo or panda can do that for you
koe moritz: just want to make an exe file an example p6 file
moritz koe: I don't think that'll work 18:45
timotimo we were a bit closer to that on MoarVM with a little prototype a few months ago
gtodd moritz: can a whole module be precompiled into .mbc .pbc and distributed that way? 18:46
koe moritz: so of what use in an pbc file or an pir file of the p6?
timotimo .moar in that case
moritz koe: nothing at all. It only works for modules right now
dalek href="https://modules.perl6.org:">modules.perl6.org: 82d28e9 | moritz++ | web/index.tmpl:
disable javascript

Closes issue 5. With the javascript, the list of displayed modules is truncated after IO::Something, not what we want.
18:47
koe moritz: in rakudo-star 2014.09: "panda-m search ufo" takes a minute to display an error message:no ICU lib loaded with further messages 18:51
gtodd I like masak's ufo story .... it has the seeds of an eventual perl6 "killer app" :-) 18:52
koe rakudo-star 2014.09: in any module installable without error by panda and how? 18:53
moritz koe: you should really use the moarvm backend
koe: parrot needs libicu-dev to work properly (see the README) 18:54
koe moritz: how can the moar-vm backend be use; i thought panda-m uses the moar backend like perl6-m versus perl6-p for parrot 18:55
moritz huh, it should 18:57
but the "no ICU lib loaded" is a parrot error message
koe moritz: i just installes the to msi files: first the one with parrot, afterword the one with moar; then opened a shell; set PATH to c:\rakudo\bin;%PATH%; set PERL6LIB=c:\rakudo\lib; the start the commands from c:\rakudo : is something missing from the installation? 18:59
moritz koe: dunno, I'm not a windows expert 19:01
koe: but if I were you, I'd remove the parrot thingy right away
koe morit: ok and start by installing the moar.msi file on clean maschone? 19:02
moritz koe: yes, that's what I'd try (no guarantuees though) 19:03
koe mortitz: thanks - i ll try this approach - hope to get something working 19:04
timotimo i'm sad to hear you're having trouble :( 19:07
.tell japhb the only relevant thing i see is --skip-incomplete, but it doesn't change anything :( 19:08
yoleaux timotimo: I'll pass your message to japhb.
dalek osystem: 86a4875 | moritz++ | META.list:
remove ajs/perl6-log from META.list

its META.info is not valid JSON, and a pull request to fix that has been opened and not merged two years ago
19:13
dalek href="https://modules.perl6.org:">modules.perl6.org: 445cadb | moritz++ | web/lib/P6Project/Info.pm:
allow dots in project names
19:30
moritz tadzik: would it be OK for the ecosystem to allow https:// in addition to git:// URLs? 19:32
tadzik moritz: fine by me :) 19:37
colomon tadzik: would it be okay to make panda work with repos that aren't in the ecosystem? ;) 19:46
tadzik colomon: doesn't it?
colomon tadzik: how would you do that now?
lichtkind im so excited im buikding rakudo on moar forfirst time :) 19:46
tadzik colomon: hmm, doesn't giving it a URL Just Work[tm]?
like, panda install git://foo.bar.baz?
colomon is trying to think of what he has like that handy to try 19:47
colomon realizes he can just bogart something from the ecosystem 19:48
tadzik troo
colomon panda install git://github.com/masak/markdown.git 19:49
… and that seems to work.
\o/
tadzik wow :)
lichtkind panda astill doesnt work here
tadzik I'm impressed
lichtkind: please go on 19:50
grondilu I'm starting something possibly insane with my Geometric Algebra library : github.com/grondilu/clifford/blob/...formal.pm6 Yet if it works it will be cool.
colomon tadzik: it also seems to know it's Text::Markdown. Which seems a little odd? Is it just picking it up from the meta info?
afk # being yelled at by a 6yo
grondilu (it's insane in the sense that there are 32 member variable names with barbaric names like $!x032 ) 19:51
lichtkind tadzik with what? 19:52
tadzik with "panda doesn't work" 19:54
I can't fix it if I don't know what's broken
vendethiel oh, mouq++'s a coco user now :P 19:57
dalek href="https://modules.perl6.org:">modules.perl6.org: 0d08cbd | moritz++ | web/lib/P6Project/Info.pm:
Allow http(s?) source URLs

before, only git:// URLs were allowed
20:01
grondilu m: 0e0 »!=» 0 20:09
m: say "hi"
camelia rakudo-moar b5032f: OUTPUT«(timeout)»
rakudo-moar b5032f: OUTPUT«hi␤»
grondilu 0e0 »!=» 0 dies with 'Cannot modify an immutable Num' on my machine. 20:10
grondilu This is perl6 version 2014.09-78-g5a02987 built on MoarVM version 2014.09-1-g699360b 20:11
0e0 X[!=] 0 works fine
[Coke] finally moved on to S06... 20:13
dalek href="https://modules.perl6.org:">modules.perl6.org: c81a4c7 | moritz++ | web/lib/P6Project/Hosts/Github.pm:
Produce better error messages
20:18
ab5tract colomon: i've got the last issue with symmetric difference of bags nailed 20:40
ab5tract is showkv($s (^) $kb), showkv($kb (^) $s) # this bit 20:42
grondilu m: say "hi" 21:17
camelia rakudo-moar b5032f: OUTPUT«(timeout)»
grondilu my num $x = 1e0; say nqp::p6box_s($x); # this works 21:18
my num $x = 1e0; say nqp::p6box_s($_) given $x; # but not this. Is this to be expected?
timotimo well, $_ isn't natively typed 21:22
so that'd be a difference
[Coke] moritz: can we get the same version of java running on 08? looks like we're at 1.7, I thought we had 1.8 on previous boxes. 21:35
lichtkind good night 21:37
laben hi everyone :) 22:01
is "ufo" currently maintained? 22:04
timotimo last time i checked, it worked well, but i haven't used it in ... 2 months? 22:06
timotimo we'll certainly want to support you if you have a problem 22:06
laben it gives me a segfault when i use it on Shell::Command module 22:07
timotimo oh, that's Very Bad™
are you refering to github.com/tadzik/perl6-File-Tools...Command.pm ? 22:08
FROGGS laben: you can also "panda install ." if you just wanna install it, and in case you don't need a makefile
laben i updated moarvm, nqp and rakudo git to latest commits and it gives me the same results
timotimo oh wait
i'm not 100% sure which of the two repos has The Shell::Command
FROGGS panda has a submodule, might be best to follow where it is pointing to 22:09
laben no, i get it from tadzik/Shell-Command.git
FROGGS that's the one: github.com/tadzik/Shell-Command
laben is it the wrong place?
FROGGS that one is correct, and should work just fine 22:10
I use it indirectly, though not with ufo
laben: is you ufo up-to-date?
your*
laben FROGGS: but panda requires Shell::Command :(
FROGGS laben: yes, which should just work
laben FROGGS: it is from some hours ago 22:11
FROGGS hmmm
can you clone panda and run its rebootstrap script?
laben ok, give me a sec 22:12
FROGGS this will also install Shell::Command (on success)
laben where does it get installed? 22:15
FROGGS to your prefix (usually nqp or rakudo)/install/languages/perl6/site 22:16
at the end it tells you the site/bin which should be put in PATH
site/bin folder*
laben mmh it seems it put everything in ~/.perl6/2014.09-79-gb5032fc/ 22:18
FROGGS hmmmm
laben should i have passed some options?
FROGGS no
I wonder...
is your site directory not writeable by your user?
TimToady now in Princeton, NJ 22:19
FROGGS but either way, that should work too
laben erm, how do i know or config the site directory?
i did not pass anything special to moarvm and nqp
FROGGS m: say %*CUSTOM_LIB<site> 22:20
that's how you query it
camelia rakudo-moar b5032f: OUTPUT«(timeout)»
FROGGS (replace m: by perl6-m -e ...)
laben i get "inst:/usr/languages/perl6/site" 22:21
laben which i guess is not user writable 22:21
FROGGS ahh
FROGGS true 22:21
laben but how do i config the path?
FROGGS so it picks 'home', which is what you've seen
in theory you can create a json file that contains these paths, but I can't explain the structure well enough right now 22:23
laben is it documente somewhere? 22:24
documented*
FROGGS I don't think so
it is one of the parts of S11/S22 that got implemented but are not yet really in use
laben mh, going to read S11 and S22 then 22:26
but isn't that for every module? i meant if there is an option while building rakudo... 22:27
like perl5, you specify the paths at build time
FROGGS in rakudo this config file (libraries.json) will be read in every time perl6 boots up 22:29
so it is not per module
FROGGS well, you gave it an option while building rakudo (--prefix probably), and it has put site underneath it 22:30
so you asked for it being there
laben yes, i passed --prefix=/usr because generally that means i want to install the program there 22:31
i did not think it would search the modules there too
FROGGS laben: site belongs to --prefix as you've seen, your home does not 22:32
so if you wish to install to site, sudo install the modules
and if you wich to not use sudo, then you install into your home
I think that's fair
s/wich/wish/ 22:33
gah, getting sleepy
laben FROGGS: i understand, no problem
btw ufo works fine for basically every other module i tested, it's just Shell::Command that gives this strange problem 22:34
FROGGS in a perfect world we would have --site-prefix and others as well, but we are not there yet :o)
I can test ufo tomorrow
timotimo laben: you can also "panda install ." inside a module's directory if the meta.json is in there
laben perl6-debug seems to get lost in the myriad of regexp and whatnot 22:35
panda bootstrap worked fine, i just noticed ufo crashed like that 22:36
timotimo i must say, that's strange
laben i preferred having already the deps before installing panda 22:37
FROGGS panda will use its own, whatever you do 22:37
laben i am somewhat interested in packaging all these things, and it's fundamental not to use bootstraps nor installing to home
timotimo ooooh 22:38
ya, ufo is the only way to install modules if you have absolutely nothing but the core setting available
FROGGS that's unfair 22:39
timotimo if i understand correctly, the perl6 binary itself is going to have the installation mechanism somehow in itself, or something like that
FROGGS: you *can* pre-build the dependencies manually ... or not pre-build them at all
FROGGS you can use the not yet installed panda to install itself and other stuff
laben and it worked perfectly for json-tiny, term-asnicolor, file-find, debugger-ui, etc
timotimo heh, term-asn1color? :D
laben ansicolor* lol
FROGGS *g*
FROGGS laben: bootstrapping panda does not mean you can't bundle the precompiled modules afterwards 22:40
because you just ship a compiled panda and other modules
the user does not have to bootstrap anything
ufo is in a way problematic because it cannot run custom installer hooks (Build.pm in a root dir of a module) 22:41
laben ooh, well unfortunately i'm not an official packager, so i don't exactly have a repo
i just make the scripts available
Build.pm? how do you use that? is there a module which uses it like Module::Build in perl5? 22:43
FROGGS we should ship an ufo replacement that installs any module and uses a not yet installed panda under the hood
panda calls the build method within that package, and the module maintainer has the chance to compile C code or do other preparations like that 22:44
like a Build.PL with an inc/My/Builder.pm
sort of overriding (extending) the build and/or test routines of the main installer 22:45
ewww, 4% laptop battery...
gnight o/
laben seems really like Module::Build in p5 22:45
well, if someone is interested, it seems i managed to restrict somewhat the crash 22:46
timotimo m: say "\e".ords 22:47
camelia rakudo-moar b5032f: OUTPUT«(timeout)»
laben ufo crashes at get_pods(), when it does "gather for ... dirwalk" in find-file-by-ext 22:49
timotimo didn't we just change paths and io handles and stuff?
maybe ufo relies on the old behavior 22:50
laben dunno, but the strange thing is that if i hardcode the @modules array in get_modules() and comment out the find-file-by-ext there, it goes perfectly 22:51
it also goes well if i sprinkle in some .say to see what's happening, is it a race condition? 22:52
timotimo maybe it's a type you're not expecting and you need to .perl it instead? 22:53
leont Build.pm is a hack, IMO 22:55
laben should that just give a type error, why a segfault?
s/should/shouldn't/
leont And let's please not repeat Module::Build (← maintainer) 22:56
laben wow, you are the leont from Module::Build!?! please sign my screen
laben i really don't understand, even inserting an useless call to find-file-by-ext right after the one in get_modules() makes everything ok 23:08
is there really hidden concurrency?
timotimo no, but things like our jit or the bytecode specialization thingie may do bad things perhaps 23:10
laben ouch, so i should try the --optimize=0 when calling ufo 23:11
mmh, that's not enough, i'm gonna rebuild moar without jit and retry 23:13
laben do i also need to rebuild nqp and rakudo? 23:13
timotimo --optimize=0 only affects the regular optimizer that works on the AST level 23:20
there's MVM_DISABLE_SPESH to turn off specialization (as well as inlining and jit), there's MVM_DISABLE_INLINE (or INLINING?) and MVM_DISABLE_JIT environment variables you could try 23:21
laben setting those to 1 is enough, right? 23:27
timotimo yeah, or any non-empty string 23:32
i believe
laben it seems nothing has changed, still a segfault
laben getting way too sleepy, i'll return on it tomorrow, see you perl6ers :) 23:42