»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
mikess tadzik: now i'm in poznan 00:00
tadzik are you coming to the Polish Perl Workshop?
mikess little time
several hours go to wrocla
v
uvtc census: haha
jnthn sleep time here; dobru noc, #perl6 o/ 00:04
tadzik dobranoc jnthn 00:05
census good night jnthn!! 00:06
hope you have some fun weekend plans!! going skiing anytime soon?
00:08 mtk left 00:10 gdey left 00:11 mtk joined
census iHi! May I ask about Xchat? 00:18
00:19 gdey joined
TimToady if you question is, How can I rewrite Xchat in Perl 6, sure 00:19
census unfortunately not :( 00:20
00:20 am0c joined
TimToady in any case, most of us know nothing about Xchat 00:20
00:26 mtk left
Timbus heeey. i do :[ 00:35
census yes and timbus was very nice to help :) 00:39
snaps for timbus 00:40
TimToady that's spelled Timbus++
census like in C++ ? 00:41
when you want to update the counter?
or in perl?
TimToady it adds one to the person's karma
00:41 colomon_ joined
TimToady (if any karmabots are listening) 00:41
colomon_ karma TimToady
sorear tadzik++
census TimToady ++
sorear !karma TimToady
@karma TimToady 00:42
TimToady no lambdabot here
colomon_ o/, sorear
TimToady aloha sometimes
aloha karma sorear
not today, I guess
speaking of aloha, aloha & # teen quiz practice 00:43
census May I ask if anybody knows about irc.perl.org ?
00:45 colomon left, colomon_ is now known as colomon
sorear census: There are people who know about it. 00:45
For instance, it's not actually a Perl thing
it's part of the MAGnet IRC network; somebody set up a DNS alias without asking them 00:46
census How would I learn what the different rooms are in irc?
sorear The MAGnet people have mostly forgiven us now, though.
/topic
census I type /topic into the xchat browser? 00:50
sorear xchat should do it automatically (more) 00:51
somewhere on your screen you should see »ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6 ...
that's the topic line
census yes i see that in my internet browser 00:52
i'm on freenode in the internet browser
sorear it says briefly what the current room is for, and usually also gives you a link to a page with more info
that's how you find out what rooms are
census I wanted to know the list of rooms from which I can choose in irc
sorear join them, and look at the topic line
00:52 zby_home_ left
sorear ah 00:52
census Like what are alternatives to irc.perl.org-> #perl-help
sorear I think there's a /list command
but there are tens of thousands of rooms, so it's not really useful 00:53
census well which perl rooms do they have, for starters?
sorear I don't know, and I don't think there's an easy way to find out 00:54
Best you can do is ask your $SEARCH-ENGINE for 'perl help irc'
you may also have luck looking for an irc channel corresponding to a local perl mongers group 00:56
01:12 japhb_ left
swarley census, www.irc.perl.org/faq.html 01:13
01:21 lue joined 01:25 alec__ joined 01:30 gdey left 01:42 grondilu left 01:52 aindilis left, alec__ left 01:56 gdey joined, PacoAir left 02:05 gdey left 02:08 leprevost joined, PZt joined
colomon would like to know how his Mac got seemingly everything back in the restore except gcc?!? 02:09
TimToady blames the NRA 02:10
colomon are they in favor of gnu control? 02:11
diakopter giggles at the pun 02:12
uvtc colomon: tee he he 02:27
02:48 gdey joined
colomon ugh, at the current rate it's going to take an hour to download XCode from Apple's website. Sigh. 02:48
geekosaur mmm, 2+ GB downloads 02:49
geekosaur got to do that twice in a week because apple released 4.6 the day after he installed 4.5 02:50
sorear is still on 4.3 02:51
geekosaur I had been on 3.x, on SL; upgraded to ML, had to reinstall xcode, then 4.6 came out and #macports wanted some people to verify it didn't break things (but I held off a bit because not my network I'm abusing...) 02:53
colomon is downloading 3.2.6 02:54
colomon is scared of lions
03:00 gdey left
japhb colomon, I think that shows remarkable sanity. :-) 03:05
03:24 orafu left, orafu joined 03:38 census left
TimToady is scared of anything from Cupertino, and I'm *sitting* in Cupertino 03:41
uvtc TimToady: what is your development setup? (OS?) 03:43
03:56 census joined
colomon uvtc: I believe TimToady has a Linux laptop. ThinkPad? 03:57
uvtc Ah. Me too. Xubuntu. 03:58
census me 2!
uvtc Nice trim, classic desktop.
sorear I know he has a Linux ThinkPad; I saw it in Perl
whether this is his primary dev machine is something only he can answer 03:59
TimToady yes, I do most of my work on the T61 04:00
uvtc TimToady: I was curious which distribution. Care to comment?
TimToady normal Ubuntu, albeit not with Unity
uvtc Ah. 04:01
Is there a location to find other graphics besides Camelia to use for Perl 6 -related stuff? 04:02
Or is she available in other sizes? 04:03
sorear isn't she an SVG?
rking I'm not impressed at how Github relased "Boxen" with such an OSX focus. Greasing the paths for homogenously-Apple dev teams.
TimToady that's because Linus wrote git, and loves OSX...oh wait... 04:04
uvtc sorear: I'm seeing camelia-logo.png and camelia-logo-small.png.
Which look the same size...
TimToady try mu/misc 04:05
sorear and do read the terms of use 04:06
uvtc Right.
geekosaur not sure that's the right emphasis wrt boxen... the comparison is that macs are generally considered not very properly maintainable
so it's less "we're focused on macs" as "we're making the d__n things manageable for a change"
I mean state of the art for remote management is radmind 04:07
04:18 leprevost left 04:28 xinming left 04:30 xinming joined
colomon is not having any luck installing gcc and is going to bed instead. 04:39
sorear night colomon
04:42 preflex left
rking I wonder how many nights have ended that way. It's more than fifty. 04:42
04:42 preflex_ joined 04:43 preflex_ is now known as preflex
uvtc phenny: tell tadzik This seems like a good start: github.com/uvtc/compact-perl6-tut . Feel free to fork. I can host it for now until you find a better place for it. 04:43
phenny uvtc: I'll pass that on when tadzik is around.
04:59 uvtc left 05:01 jaldhar joined 05:10 bluescreen100 left 05:57 sisar joined 06:21 am0c left 06:29 lizmat left 06:31 Liz joined, Liz is now known as Guest47952 06:40 Guest47952 left 06:42 quester joined 06:43 Liz_ joined 06:50 Liz_ left 06:51 gdey joined 06:59 Liz_ joined 07:04 census left 07:20 lue left 07:26 Chillance left
moritz \o 07:31
diakopter o/
sorear |o|
07:45 cparen joined 07:46 FROGGS joined 07:50 zby_home_ joined
nwc10 jnthn: tests still pass (except the one that needs ICU) 07:57
FROGGS nwc10: you're expecting something to break? 08:01
nwc10 based on experience so far, no
more likely the Makefile than the Java code
but it's a different OS from jnthn 08:02
but it's possible to break things in various interesting ways, such as failing to check in files
sorear how much of java-rakudo exists at this point? 08:04
diakopter rakudo isn't ported, but nqp is coming along 08:05
08:06 quester left
diakopter probably will be able to compile itself in the next week or two 08:06
08:08 am0c joined
sorear cool 08:09
FROGGS wow 08:12
diakopter well. perhaps I'm a bit optimistic; surely not more than 3 weeks, however. 08:15
08:28 dolmen joined 08:42 am0c left 08:50 domidumont joined
moritz so, what parts are missing for the bootstrap? 08:58
08:59 domidumont left, domidumont joined 09:00 cogno joined 09:09 cogno left 09:17 cparen left
GlitchMr github.com/masak/p6cc2012/blob/mas...litchmr.md 09:18
I have a feeling I made this too short.
Most of my code is error checking.
moritz "too short" is not a failre mode for code 09:19
"not readable" or "not enough features" or so are error modes for code that sometimes go along with short code
masak forenoon, #perl6 09:20
moritz masak++ # t1 reviews, blag
masak \o/
sorear If you made your code too short, Perl 6 would tell you something like "Unable to parse blockoid, could not find final }" 09:21
and greetings, masak.
GlitchMr ;-)
moritz sorear++
masak I may be a perfectionist and a procrastinator, but at times I release stuff -- just not always early and often. ;)
GlitchMr: I don't think you made your code too short. 09:22
GlitchMr Yeah, for gather for was a mistake from old version of code.
Haven't noticed it when submitted it.
masak it looked like an iterational thing, yes.
sorear std: say "Hello
p6eval std 7551b8f: OUTPUT«===SORRY!===␤Unable to parse double quotes at /tmp/bGV39ayPwV line 1:␤------> say ⏏"Hello␤Couldn't find final '"'; gave up at /tmp/bGV39ayPwV line 1 (EOF):␤------> say "Hello⏏<EOL>␤Parse failed␤FAILED 00:01 41m␤…
sorear i forget the error for that
moritz still doesn't understand how code can be "too short"
oh, and "blockoid" is a terrible thing to say in an error message 09:23
masak moritz: just read a few J snippets over at Rosetta Code :P
sorear moritz: dropped connection in the middle of a download
:)
moritz masak: but that's more a problem with "not readable" and not "too short"
masak they are related, though.
GlitchMr I'm sure that Larry has showed what "too short" means in "That Goes Without Saying (or Does It)"
shown* 09:24
09:30 kaare_ joined
GlitchMr Also, just mentioning, JavaScript can figure out initial value in .reduce... provided that list isn't empty. 09:32
Also, PostScript isn't intended to be read by humans, but by printers. 09:37
As for too short, well, J: rms=: (+/ % #)&.:*: 09:40
moritz GlitchMr: again that's a problem of readability, not shortness 09:41
yes, they can be related, but it's really not the shortness that's the problem 09:42
09:42 labster left
diakopter moritz is apparently very defensive about terse code ;) 09:42
09:43 dolmen left
GlitchMr Yet, Mathematica authors claim that their language makes shorter programs than Perl 6. 09:43
diakopter ENOTTERSEJUSTSUCCINT
GlitchMr Or rather, practically any language that isn't J.
rosettacode.org/wiki/Averages/Root_...athematica 09:44
diakopter *SUCCINCT
GlitchMr I guess it's readable.
RootMeanSquare@Range[10]
It gives precise solution of sqrt(77/2)
moritz well, it makes perfectly sense for a language specialized for math to excel at math :-) 09:45
GlitchMr And "Hello, world" is practically shorter only in PHP: rosettacode.org/wiki/Hello_world/Text#J 09:46
oops, wrong language
rosettacode.org/wiki/Hello_world/Te...athematica 09:47
Well, ok, it's longer than Perl 6.
09:47 dolmen joined
sorear FORTH should be pretty short for that 09:47
GlitchMr But even when they don't, well... 09:48
rosettacode.org/wiki/Soundex#Mathematica
It's still short.
And it's not math related.
Except it's case where Perl 5 is shorter than Perl 6.
It's also one of rare cases when PHP is short. When the feature that Rosetta Code wants is builtin. 09:49
09:53 spider-mario joined, spider-mario left 09:54 spider-mario joined
moritz Mathematica is very powerful, but sadly there's no free, feature-complete implementation 09:54
and it's hard to find online reasources that teach the finer/advanced points of Mathematica 09:55
GlitchMr rn: say 125.base(-2) 09:56
p6eval niecza v24-23-g0520c7c: OUTPUT«Unhandled exception: base must be between 2 and 36, got -2␤ at /home/p6eval/niecza/lib/CORE.setting line 1438 (die @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 845 (Int.base @ 6) ␤ at /tmp/updtqgJPvG line 1 (mainline @ 3) ␤ at /home/p6eval/niecz…
..rakudo 483ce8: OUTPUT«base must be between 2 and 36, got -2␤ in method gist at src/gen/CORE.setting:10517␤ in sub say at src/gen/CORE.setting:7602␤ in block at /tmp/HhMgM3UcQD:1␤␤»
GlitchMr en.wikipedia.org/wiki/UMC_%28Computer%29
What's wrong with base -2? 09:57
moritz ENOUSECASE
GlitchMr But... this old Polish computer uses negabinary.
moritz then run old Polish software on it :-) 09:59
GlitchMr What if I would make a patch to add support for negative bases? 10:02
10:02 census joined
sorear I would laugh and sigh at it 10:02
moritz that'd be pretty much my reaction too 10:03
sorear and then ignore it, for reasons having a lot to do with my lack of a commit bit
or maybe that would just be my excuse
moritz sorear: it could be a niecza patch
sorear troo 10:05
although if people send me niecza patches, I mostly would forward them to colomon++
GlitchMr I guess that I should make Math::NegativeBases then. 10:10
That actually could be a good idea. 10:11
10:21 wk joined 10:24 SamuraiJack joined 10:30 census left
jnthn
.oO( Math::NegativeBases: All your base are now belong to Perl 6 )
10:35
10:39 slavik1 joined 10:52 ilbot6 joined 10:53 ilbot6 left, ilbot6 joined, ilbot6 left 10:55 ilbot6 joined 10:56 ilbot6 left 10:58 gdey left, gdey_ joined 11:02 ilbot6 joined 11:03 ilbot6 left 11:05 gdey_ left, gdey joined 11:09 ilbot6 joined, ilbot6 left 11:22 woosley left 11:26 gdey left 11:27 rindolf joined 11:28 gdey joined
dalek p-jvm-prep: fefebb0 | jnthn++ | / (2 files):
Add missing string relationals (lt, gt, le, ge).
11:31
p-jvm-prep: 6407462 | jnthn++ | nqp-src/NQPHLL.pm:
Uncomment most of EXPR

One remaining commented bit exposes a code-gen bug.
p-jvm-prep: 89116c8 | jnthn++ | lib/QAST/JASTCompiler.nqp:
Fix loop non-sink context + handler code-gen bug.
p-jvm-prep: 3a488bd | jnthn++ | nqp-src/NQPHLL.pm:
Uncomment 2 remaining commented lines of EXPR.
colomon \o/ 11:34
11:40 zby_home_ left
jnthn r: say ord('\a') 11:43
p6eval rakudo 483ce8: OUTPUT«92␤»
jnthn r: say ord("\a")
p6eval rakudo 483ce8: OUTPUT«7␤»
FROGGS n: say ord("\a") 11:45
p6eval niecza v24-23-g0520c7c: OUTPUT«7␤»
FROGGS why that?
ahh, wait 11:46
jnthn alarm
diakopter r: say ord('\\')
p6eval rakudo 483ce8: OUTPUT«92␤»
FROGGS that's right
jnthn r: say "\a"
p6eval rakudo 483ce8: OUTPUT«␤»
jnthn hopes he didn't alarm anyone :P
diakopter jnthn: see \\ is also 92
jnthn diakopter: yes, in single quoted strings you don't get the escapes :)
diakopter oh yeah :)
FROGGS can somebody tell me if this should match? I believe its shouldn't, so there is an invalid test I can remove: 11:47
nr: my $foo = "a+b"; say "aaaaab" ~~ /"$foo"/
p6eval rakudo 483ce8, niecza v24-23-g0520c7c: OUTPUT«#<failed match>␤»
FROGGS nr: my $foo = "a+b"; say "aaaaab" ~~ /<"$foo">/ # this should however 11:48
p6eval rakudo 483ce8: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter < (must be quoted to match literally)␤at /tmp/I8pBuzVnec:1␤------> my $foo = "a+b"; say "aaaaab" ~~ /<⏏"$foo">/ # this should however␤Unrecognized regex metacharacter " (must be quot…
..niecza v24-23-g0520c7c: OUTPUT«===SORRY!===␤␤Unrecognized regex assertion at /tmp/qf1dxSb_JW line 1:␤------> my $foo = "a+b"; say "aaaaab" ~~ /<⏏"$foo">/ # this should however␤␤Parse failed␤␤»
jnthn nr: my $foo = "ab"; say "aaaaab" ~~ /"$foo"/
p6eval rakudo 483ce8, niecza v24-23-g0520c7c: OUTPUT«「ab」␤␤»
jnthn nr: my $foo = "a+b"; say "aaaaab" ~~ /<$foo>/
p6eval rakudo 483ce8, niecza v24-23-g0520c7c: OUTPUT«「aaaaab」␤␤»
FROGGS this too, right
jnthn FROGGS: I think the test is wrong.
FROGGS thanks
jnthn FROGGS: It shouldn't treat stuff in a quoted string as regex syntax.
FROGGS So I'll push in a bit, some more TODOs eliminated :P 11:49
still not used NFA, I dont understand whats going on there ó.ò 11:50
11:55 mberends joined
dalek p-jvm-prep: d84d0f0 | jnthn++ | / (2 files):
A basic nqp::escape; good enough for now.
11:59
p-jvm-prep: 7a125e7 | jnthn++ | nqp-src/ (3 files):
Uncomment things that waited on nqp::escape.
moritz Timbus: github.com/parrot/parrot/issues/938 that's why the first channel join doesn't work in Net::IRC 12:01
it's a bit sad that we need Net::IRC layered on top of rakudo layered on top of parrot to find such parrot bugs 12:02
Timbus oh so that issue still persists?
but somehow it isnt dying anymore
moritz that's the first time I've heard of that issue
Timbus oh
moritz when you were talking about socket issues yesterday, I thought you meant the encoding stuff 12:03
Timbus nah
net::irc hasnt worked since the IO cleanup merge
moritz and yes, it's still dying, unless you catch it with a try
Timbus well, at some point in the past couple of months it has somehow managed to survive the seek crash
12:07 not_gerd joined
not_gerd Timbus: it's only triggered if your IO buffered contain unwritten/unread data 12:07
^buffers
12:08 ilbot6 joined
moritz which can happen quite easily if you use read data line-wise 12:08
dalek p-jvm-prep: 5d32417 | jnthn++ | nqp-src/NQPHLL.pm:
We can cross-compile HLL::CommandLine first try.
12:09
Timbus i thought socket::io::inet used its own line buffer.. 12:10
it did at some point at least. i mean i wrote it :v 12:11
not_gerd Timbus: doesn't matter what any layer above Parrot does as long as Parrot's internal IO buffering isn't disabled 12:12
(if that's even possible) 12:13
12:13 jaldhar left
not_gerd lunch& 12:15
tadzik re procrastination: release-early is a form of procrastination too: "bah, that's enough, I'll finish it later" :) 12:19
phenny tadzik: 04:43Z <uvtc> tell tadzik This seems like a good start: github.com/uvtc/compact-perl6-tut . Feel free to fork. I can host it for now until you find a better place for it.
tadzik good morning #perl6
colomon finally has a working gcc on his Mac again!
FROGGS \o tadzik
12:20 census joined, SunilJoshi joined
jnthn o/ tadzik 12:21
12:24 dolmen left
colomon has fresh Rakudo build! 12:30
FROGGS \o/ 12:31
12:31 cogno joined 12:33 SunilJoshi left 12:35 cognominal joined 12:37 cogno left 12:42 dolmen joined
FROGGS r: $_ = 'abc'; /a./; say $/ 12:47
p6eval rakudo 483ce8: OUTPUT«「ab」␤␤»
12:52 mtk joined, saeidw joined
nwc10 jnthn: tests still pass (except the one that needs ICU) still :-) 12:53
arnsholt o/ 12:55
FROGGS hi arnsholt
12:58 daniel-s left 12:59 daniel-s joined 13:01 dolmen left
arnsholt Yay. Useful bash features save my bacon yet again 13:03
13:07 cognominal left 13:09 dolmen joined 13:10 cognominal joined 13:13 dolmen left 13:19 am0c joined
timotimo good day! 13:28
arnsholt Hello there!
FROGGS hi timotimo 13:29
census hello :)
colomon tadzik: when panda installs binaries (well, executables in the bin directory), does it do anything with the #! line specifying the perl6 to use? 13:30
13:32 grondilu joined
timotimo and nw that i found out where in this house i can actually get an internet connection working, it's time to go cook :| 13:35
13:36 mberends left
tadzik colomon: no, it doesn't 13:37
it only sets chmod, if available 13:38
13:38 cognominal left
colomon tadzik: is there a reason why it shouldn't? right now it is installing executables that don't actually work because of this... 13:40
tadzik colomon: well, I'd say that it is expected of the executables to have a shebang line 13:41
colomon tadzik: yes, but shebang lines aren't particularly portable
tadzik hm
colomon or to put it a different way, assuming that each repo has the right shebang line for every possible p6 install is a bit much. 13:43
13:43 cognominal joined
tadzik agreed 13:43
13:44 mberends joined
colomon is now doubting that... is #!/usr/bin/env perl6 "good enough"? 13:44
tadzik: Hurmph, that seems to work for me for the moment, but now I'm bumping into the issue where panda is not installing the files somewhere that Rakudo can find them. 13:48
(not the executables, the modules)
tadzik I guess it could just always write the shebang first, then write the actual file, if you know what I mean
so concat(proper_shebang, bin_file)
that would work, the second shebang would just be a comment 13:49
colomon yes, that would work. 13:50
dalek kudo/nom: c255f1d | (Tobias Leich)++ | src/ (2 files):
interpolation of e.g. regexes in arrays in regexes
13:51
ast: bdd2445 | (Tobias Leich)++ | S05-interpolation/regex-in-variable.t:
unfudge now passing tests

The test "Rulish scalar match 7" is invalid and therefor inverted
13:52 cognominal left 13:55 am0c left
arnsholt timotimo: It seems Zavolaj is broken on my laptop right now, so I can't actually check your paste. Sorry :/ 13:57
13:57 jaldhar joined
colomon r: say %*CUSTOM_LIB.perl 13:58
p6eval rakudo 483ce8: OUTPUT«("perl" => "/home/p6eval/nom-inst/lib/parrot/4.10.0-devel/languages/perl6", "vendor" => "/home/p6eval/nom-inst/lib/parrot/4.10.0-devel/languages/perl6/vendor", "site" => "/home/p6eval/nom-inst/lib/parrot/4.10.0-devel/languages/perl6/site", "home" => "/home/p6eval/.…
13:59 not_gerd left
rindolf TimToady: hi, here? 13:59
colomon tadzik: oh, I think the problem I'm having with panda is my "installed" panda is an old one, and rebootstrap.pl isn't helping with that. 14:02
tadzik hmm
so the PATH still points to the old one?> 14:03
rebootstrap makes little sense these days, with CUSTOM_LIB and all that
because it can't know anymore where were the old panda files
so it finds none
14:06 dolmen joined 14:07 dolmen left, dolmen joined 14:08 dolmen left, dolmen joined 14:11 dolmen left 14:12 am0c joined
FROGGS r: my @rx = ( rx/ \w /, rx/""/ ); say "!=?kgkftzf433#" ~~ / @rx+ / 14:16
p6eval rakudo c255f1: OUTPUT«「!=?kgkftzf433」␤␤»
FROGGS r: my @rx = ( rx/ \w / ); say "!=?kgkftzf433#" ~~ / @rx+ /
p6eval rakudo c255f1: OUTPUT«「!=?kgkftzf433」␤␤»
FROGGS hmmm
it is still matching at pos 0
r: my @rx = ( rx/ (\w) / ); say "!=?kgkftzf433#" ~~ / @rx+ / 14:17
p6eval rakudo c255f1: OUTPUT«「!=?kgkftzf433」␤␤»
FROGGS r: my $rx = rx/ (\w) /; say "!=?kgkftzf433#" ~~ / $rx+ /
p6eval rakudo c255f1: OUTPUT«「kgkftzf433」␤␤»
arnsholt Oh, derp. At least I think I found the Zavolaj bug
moritz there's only one? :-) 14:18
arnsholt The weird one I had right now ;) 14:19
I brainoed in my comment to cotto++'s pull request
The correct action in the default case was "continue" not "Parrot_ex_throw"
I really should spend some time adding dyncall tests to NQP 14:21
14:21 Psyche^ joined 14:24 Patterner left, Psyche^ is now known as Patterner 14:25 PacoAir joined
moritz does the release contain the broken thing? 14:27
arnsholt Ooh, quite possibly
Which commit is the release based on?
moritz moritz@lara:~/p6/rakudo/nqp>git rev-parse 2013.02 14:34
d3eb49f127d606f31d167830bcb59b0967ac350f
14:36 cognominal joined
colomon tadzik: yes, PATH still points to the old one, and rebootstrap doesn't do anything to change that. 14:37
14:43 leprevost joined, SunilJoshi joined
arnsholt moritz: Yeah, the release has the bug 14:44
moritz colomon: bootstrapping tells you which directory to include in $PATH 14:51
arnsholt: does it affect all NCI code? or just some rare code paths? (if yes, which?) 14:52
14:53 saeidw left 14:55 cbk1090 joined
arnsholt Any is native function that passes arguments that aren't CArray/CStruct REPRd 15:01
So all the things, more or less 15:02
dalek p: 21a6b2c | (Arne Skjærholt)++ | src/ops/nqp_dyncall.ops:
Fix braino in nqp_dyncall.ops.
moritz all the responses I can think of are not safe for family 15:03
arnsholt Yeah >.< 15:04
Is making an oops-release an option? 15:07
timotimo: Oh, I see why your script doesn't work 15:09
Just say "ZMQ_PAIR" rather than "Net::ZMQ::Constants::ZMQ_PAIR"
moritz arnsholt: yes, I think we should do that. 15:10
arnsholt Constants.pm has them all as "my constants ZMQ_FOO" which means they're only available if you import them. Probably bad choice, come to think of it =)
moritz arnsholt: have you verified that it works with your last patch?
arnsholt The Zavolaj test suite passes with NQP, Rakudo and Zavolaj HEADs 15:14
moritz great
then I'm doing a point release now
15:15 gdey left
dalek p: f03f15a | moritz++ | / (3 files):
bump VERSIOn to 2013.02.1

turns out the native call support was mostly broken in 2013.02
15:15
FROGGS n: say "foo123bar" ~~ /@(rx/\d+/)/
p6eval niecza v24-23-g0520c7c: OUTPUT«「123」␤␤»
15:15 pmurias joined
dalek kudo/nom: 952d407 | moritz++ | / (2 files):
bump VERSION and NQP_REVISION to 2013.02.1

this gets us non-broken native call suport
15:18
arnsholt moritz++ 15:21
moritz release tarballs uploaded, laptop overheated
FROGGS O.o 15:22
dalek ar: 63636ce | moritz++ | / (3 files):
bump some versions in preparation of 2013.02 reease
15:25
moritz if somebody would write up an announcement for the star release, that would be most helpful 15:26
dalek ar: 744e0f8 | moritz++ | modules/ (4 files):
bump module versions
moritz has to use what might the be year's last snow to get some sledging done
15:27 PacoAir_ joined 15:28 PacoAir left, PacoAir_ is now known as PacoAir
jnthn back 15:30
15:30 hash_table joined
jnthn moritz++ # bugfix release 15:30
15:30 cbk1090 left 15:40 rindolf left, rindolf joined 15:44 PacoAir left, PacoAir joined 15:53 dolmen joined
dalek kudo/nom: ff2ceee | (Tobias Leich)++ | src/core/Cursor.pm:
force regexes in array to match at pos 0 only
15:55
ast: 99165d8 | (Tobias Leich)++ | S05-interpolation/regex-in-variable.t:
test that regexes in arrays match correctly
15:56
FROGGS nr: say "foo123bar" ~~ /@(rx/\d+/)/
p6eval rakudo c255f1: OUTPUT«「foo」␤␤»
..niecza v24-23-g0520c7c: OUTPUT«「123」␤␤»
15:56 Tedd1^ joined 16:00 Tedd1 left
FROGGS nr: say "foo123bar" ~~ /@(rx/\d+/)/ 16:04
p6eval rakudo c255f1: OUTPUT«「foo」␤␤»
..niecza v24-23-g0520c7c: OUTPUT«「123」␤␤»
jnthn wonders why dalek didn't report his nqp commits a moment ago 16:07
16:07 jac50 joined
FROGGS .oO( dalek made a commit to nqp? ) 16:08
jnthn :P
No, I did 4 of them. :)
16:18 cognominal left 16:19 cognominal joined
FROGGS nr: say "foo123bar" ~~ /@(rx/\d+/)/ 16:19
p6eval rakudo ff2cee, niecza v24-23-g0520c7c: OUTPUT«「123」␤␤»
FROGGS \o/
jnthn FROGGS++ 16:20
16:20 dolmen left
dalek p-jvm-prep: 4ad28eb | jnthn++ | / (2 files):
Implement nqp::radix.
16:20
p-jvm-prep: ddc930c | jnthn++ | nqp-src/NQPHLL.pm:
Add HLL::Actions; 2 methods commented out.
16:20 dolmen joined 16:21 dolmen left 16:41 ilbot6 left 16:42 ilbot6 joined
moritz r: say WhateverCode ~~ Routine 16:42
p6eval rakudo ff2cee: OUTPUT«False␤»
moritz that's slightly annoying
16:42 cognominal_ joined
jnthn And correct :) 16:42
dalek p-jvm-prep: cb186e2 | jnthn++ | / (2 files):
Implement nqp::lexprimspec.
16:43
p-jvm-prep: aee6d49 | jnthn++ | / (2 files):
Implement nqp::codepointfromname.

With brute force. :-)
p-jvm-prep: ca471ee | jnthn++ | nqp-src/NQPHLL.pm:
Uncomment most of HLL::Actions; 3 lines to go.
jnthn r: say WhateverCode ~~ Code
p6eval rakudo ff2cee: OUTPUT«True␤»
jnthn r: say WhateverCode ~~ Block
p6eval rakudo ff2cee: OUTPUT«False␤»
jnthn r: say WhateverCode ~~ Callable
p6eval rakudo ff2cee: OUTPUT«True␤»
moritz I just pondered automatic "is pure" annotations for WhateverCode
16:43 cognominal left
moritz and that trait is defined for Routine right now 16:43
jnthn Ah
moritz ah well, maybe should go into Code
jnthn Yeah...I don't think WhateverCode really wants to be a Routine. 16:44
cotto arnsholt: thanks for the fix 16:45
moritz otoh the benefits from purity analysis for WhateverCode seems rather small
it's more of an academic exercise
unless we can use it to optimize out some loops :-) 16:46
jnthn Oh, I do have one other "thing to hack on" idea 16:48
For the optimizer
We do a bunch of this in the setting:
multi infix:<*>(Int:D \a, Int:D \b) returns Int {
'cus we know it's more optimal than $a
If we can prove the code never writes to a $a we may be able to apply is parcel automatically 16:49
16:50 isomorphisms joined
jnthn Could also catch sub foo($a) { $a = blah } at compile time with such an analysis 16:50
timotimo hello 16:52
arnsholt, i had it like that before i added the prefix. weird
16:52 daniel-s_ joined
timotimo in a few minutes i will have decent ternet 16:52
16:53 daniel-s left
moritz jnthn: interesting ideas 16:54
timotimo jnthn erre you able to look into the dispatch thing? if you are busy maybe i can bash my head against it?
jnthn timotimo: Around multidispatch.c:688 is the meat of the problem, I think 16:56
timotimo i hope otll make sense to me
jnthn timotimo: But I'm a bit wary about changing it.
As in, I suspect it may have ungood consequences 16:57
timotimo good thing we have a test suite then :)
jnthn Here's the thing:
multi foo(Int $x) { } 16:58
multi foo(int $x) { }
foo(0)
foo($x-that-is-a-bigint)
foo($x-knwon-to-be-int) 16:59
At the moment, it will do the dispatch with the boxed 0. That hits the Int candidate, having rejected the int one. 17:00
If we change this so that the int one will accept a boxed object and unbox it, then it would always hide the Int candidate. 17:01
timotimo to me, Int seems narrower than int 17:02
jnthn It isn't
r: say int ~~ Int
p6eval rakudo ff2cee: OUTPUT«True␤»
timotimo as in: Int is int plus some stuff
17:02 gdey joined
jnthn Native types always sort tightest. 17:02
timotimo mhm
jnthn Note it's not a subclass relationship going on there really 17:03
timotimo yes
jnthn Instances of a native type don't actually know what kind of thing they are.
timotimo hm, yes it does make sense to have natives be narrowest
jnthn Anyway, I suspect we may want to consider if a non-big integer literal wants to default to being a native int when it's not contextualized in any way. 17:04
So it's QAST::Want(...the IVal..., 'Pp', ...the WVal...) 17:05
timotimo ithinkiprefernotbashingmyheadagainstthis
jnthn But I don't know what chaos that will cause us elsewhere :)
moritz++ can probably point out at least a few points where stuff would break if we did what I just suggested, I suspect. :) 17:06
17:06 cognominal_ left
timotimo oh i have to hit the space bar in between words 17:06
i apologize
jnthn ;)
timotimo android...
moritz jnthn: well, the stuff in the optimizer could easily adapted to that change 17:07
r: my int $x = 42; say $x ~~ Int 17:08
p6eval rakudo ff2cee: OUTPUT«True␤»
moritz might work, or might not. Hard to tell without trying
jnthn Yeah
17:08 cognominal_ joined
jnthn I'm a bit worried about the performance impact (e.g. will we create a load more boxing) 17:08
17:13 cognominal_ left
nwc10 jnthn: the usual for the tests. 17:16
moritz doesn't it shift the default to less boxing?
dalek p-jvm-prep: b10a518 | jnthn++ | / (3 files):
Native keyed ops.
17:17
p-jvm-prep: 2480100 | jnthn++ | src/org/perl6/nqp/sixmodel/reprs/ContextRefInstance.java:
Implement introspective lookup of native lexicals.
p-jvm-prep: cba6259 | jnthn++ | nqp-src/NQPHLL.pm:
Fully uncomment HLL::Actions.
nwc10 oh, the target just moved...
jnthn moritz: No, because sub foo($x) { }; foo(1) today pulls the 1 Int object from the constant table.
17:17 cognominal_ joined
jnthn nwc10: bwahaha :P 17:17
timotimo well, in this case i don't know what to do. 17:21
17:21 cognominal_ left 17:22 cognominal joined 17:30 Liz_ left 17:35 ilbot6 left 17:37 Chillance joined
cotto moritz: do you have some code to reliably reproduce the socket.seek bug? 17:40
or unreliably
moritz cotto: yes, but it needs rakudo and Net::IRC
cotto Hmmm. That's not quite minimal. 17:41
moritz no, it isn't ;-)
cotto It's nice to dive in and see a bunch fo whiteknight++ code. 17:43
*of 17:44
17:45 SunilJoshi left 17:48 cognominal left
nwc10 jnthn: the usual for the tests. 17:49
jnthn :) 17:50
17:50 gdey left
moritz no news is good news 17:51
jnthn in HLL, there's HLL::World and HLL::Compiler to go 17:52
moritz where "to go" means "implement everything to make them run"? 17:53
17:53 gdey joined
jnthn HLL::World is that 17:53
HLL::Compiler needs a rather big re-work
It curently contains generic bits as well as bits that are almost certainly going to be VM-specific. 17:54
Also it uses loads of I/O stuff that we don't abstract at all.
moritz do you have a plan on how to restructure HLL::Compiler?
jnthn I'm pondering a delegation approach.
It'll have a $!backend 17:55
That will be an object that can provide the backend specific bits
Then we just pick and compile in the correct one.
Anybody making a cross-compiler can just throw in their own object rather than doing the slightly hackier stuff nqp-jvm-cc does today 17:56
So really, it's just splitting out the generic from the backend specific.
I don't want to go restructuring it too heavily until pmichaud has applied the --target=pbc patches, though 17:57
Otherwise I'll probably make that application a real hell.
Hunger strikes! Time to cook something 17:59
nwc10 a mane course? :-) 18:01
18:04 gdey left
colomon phenny: tell tadzik I blew away the old ~/.perl6 on my machine and now panda is working well for me. 18:04
phenny colomon: I'll pass that on when tadzik is around.
18:05 hash_table left 18:14 zby_home_ joined 18:17 cparen joined
FROGGS jnthn: have you done anything that make this one pass? rt.perl.org/rt3/Public/Bug/Display...?id=115134 18:18
cotto moritz: how much of a blocker is the socket.seek bug? Is it something that needs to be fixed yesterday or is it fine if the fix takes a few days? 18:23
18:24 rindolf left 18:25 cparen left
moritz cotto: can take a few days 18:25
FROGGS nr: say "abc" ~~ /<[\w]-[\n]>/ 18:32
p6eval rakudo ff2cee: OUTPUT«===SORRY!===␤Error while compiling block : Error while compiling op call: Error while compiling block : Error while compiling block : Unrecognized subtype 'zerowidth' in QAST::Regex cclass␤»
..niecza v24-23-g0520c7c: OUTPUT«「a」␤␤»
FROGGS would like to steal things von niecza
TimToady nr: say so one; say so none; 18:44
p6eval rakudo ff2cee: OUTPUT«False␤True␤»
..niecza v24-23-g0520c7c: OUTPUT«===SORRY!===␤␤The 'one' listop may not be called without arguments (please use () or whitespace to clarify) at /tmp/DMBDlnmN1i line 1:␤------> say so one⏏; say so none;␤␤The 'none' listop may not be called without argum…
TimToady nr: say so one(); say so none(); 18:46
p6eval rakudo ff2cee, niecza v24-23-g0520c7c: OUTPUT«False␤True␤»
TimToady it occurs to me that when we get coercive types, our current output of Int() for a gist might be confusing 18:47
so we should probably switch that notation to something else to indicate undefinedness 18:50
maybe just (Int)
pity that Unicode doesn't support strike-through very well 18:51
or consistent overline 18:52
maybe ¬Int 18:53
benabik Int:U ? 18:54
au S̶o̶u̶s̶ ̶r̶a̶t̶u̶r̶e̶? 18:55
TimToady you missed the S :) 18:57
(on my display)
probably a bug in my terminal though
since it got the ?
au irclog.perlgeek.de/perl6/2013-02-23#i_6490561 looks OK 18:58
pity that Unicode terminals doesn't support strike-through very well :)
TimToady emendation accepted 18:59
diakopter looks ok on mine 19:02
on my terminal anyway. doesn't look okay on the irclog html
in the browser, they're rshifted 1 19:03
TimToady 𝕀𝕟𝕥
looks great in the log here :) 19:04
diakopter three squares, in both terminal and browser.
TimToady the terminal, not so much
.u 𝕀𝕟𝕥
phenny U+1D540 MATHEMATICAL DOUBLE-STRUCK CAPITAL I (𝕀)
U+1D55F MATHEMATICAL DOUBLE-STRUCK SMALL N (𝕟)
U+1D565 MATHEMATICAL DOUBLE-STRUCK SMALL T (𝕥)
TimToady diakopter: obviously your browser is deficient 19:05
diakopter /o\
TimToady well, probably just your fonts
diakopter Consolas-- 19:06
TimToady did you get your computer in Texas, where "multicultural" just means "American or Spanish"? :P 19:07
wait, the Spanish are Americans too, except for the ones who really are Spanish... 19:08
FROGGS hehe
TimToady is confusing himself, a not abnormal occurrence
FROGGS I "like" the US ppl which think Europe is one of the US states they dont know...
TimToady .ca is obviously California, right? 19:09
19:09 benabik left
TimToady and .us must mean Upper Slobavia or some such 19:10
huf .us vs .them, the great TLDr wars 19:13
jnthn nwc10: Yes, but only a small portion...would hate to be saddled with leftovers...
TimToady and .com means Communist
since most .com goods come from there
jnthn FROGGS: (RT ticket) yes, the changes I did to marker handling in NQP recently will be to thank for that fix.
diakopter Consolas is a Microsoft thing 19:15
TimToady obviously you want Prosolas instead
cotto moritz: if I give you a Parrot patch, can you tell me with reasonable if it fixes the socket.seek issue? 19:16
diakopter perhaps Carsolas or Cdrsolas
TimToady: that's like Progress vs Congress 19:17
cotto moritz: gist.github.com/cotto/5020729
diakopter or Nilsolas..
er, Nilolas 19:18
TimToady ⦃Int⦄ or ⟦Int⟧
jnthn Those don't render in my font... 19:19
diakopter neither
TimToady good grief, are we gonna have to drag everyone kicking and screaming into the 21st century?
jnthn .u ⦃ 19:20
phenny U+2983 LEFT WHITE CURLY BRACKET (⦃)
TimToady ⁅Int⁆ is lower in the Unicode range, so slightly more likely
19:21 fgomez left
jnthn My browser at least gets those 19:21
TimToady but I really like the ones that look "empty"
wish we could just use the double-struck letters, but those aren't even in the BMP
well, at least (Int) has connotations of oh-by-the-way and not-really 19:23
19:24 benabik joined
TimToady now where is that specced... 19:25
19:26 SamuraiJack left
dalek ecs: b50c8aa | larry++ | S12-objects.pod:
Change Int() notation to (Int) notation

With the addition of coercive types, the gist notation is too confusing, so for now just move the first paren into the front fo the type name.
19:29
TimToady stick with good ol' American characters for now...
unless someone wants to come up with a different acronym for ASCII 19:30
19:31 sisar_ joined
diakopter 7BITUNI 19:33
19:34 sisar left, sisar_ is now known as sisar
jnthn All Should Code In Inglish 19:34
diakopter Ask Stupid Cuestions in IRC 19:35
geekosaur archaic system for constraining intelligent input
^intelligent^intelligible 19:36
dalek ecza: bdc3343 | larry++ | lib/CORE.setting:
change Mu.gist from Mu() to (Mu)
19:38
TimToady someone with a rakudo commit bit will need to patch src/core/Mu.pm 19:39
pugs: say Int 19:40
p6eval pugs: OUTPUT«Int()␤»
dalek p-jvm-prep: 6175383 | jnthn++ | nqp-src/NQPHLL.pm:
Add HLL::World; just one line commented out.
TimToady that could use patching too
still wish the Match type were only a parent type for successful and unsuccessful match types... 19:42
or some such OKness fix 19:43
colomon just had a Linux box meltdown from running emmentaler's smoker.
TimToady well, what'd you expect?
jnthn colomon: I think you misunderstood smoker... ;)
colomon jnthn: don't you put some cheese in the computer and then add some cedar chips to the fire? 19:44
jnthn I...uh...no ::)
TimToady: The parent type thing may work but...why? 19:45
TimToady because it's gonna be a FAQ that (Match) isn't one
jnthn It's the same in the .Net regex libraries and I've never seen that as an FAQ, fwiw...
Also, you don't see the type very much
r: say 'a' ~~ /b/ 19:46
p6eval rakudo ff2cee: OUTPUT«#<failed match>␤»
TimToady I've seen the confusion here
it's not so much a FAQ as a "Oh, I have to remember that (again)"
jnthn n: say 'a' ~~ /b/
p6eval niecza v24-23-g0520c7c: OUTPUT«#<failed match>␤»
colomon will be very happy when his new Linux box arrives. 32gigs RAM is enough to handle Rakudo, right? 19:47
jnthn Hm, that got fixed
TimToady I don't like #<failed match> for what it's worth
jnthn TimToady: I know there was confusion before when it said Match()
TimToady I'd rather that just fell out of the type system
not be special cased
TimToady still wonders if it shouldn't just return Nil on a failed match 19:48
moritz
.oO( DHCP jokes are leased. )
19:49
jnthn r: say 1 ~~ Nil
p6eval rakudo ff2cee: OUTPUT«False␤»
jnthn r: say 'abc' ~~ Nil
p6eval rakudo ff2cee: OUTPUT«False␤»
jnthn TimToady: May work...maybe...
TimToady Nil would become one of the magical values like Match and Bool
not quite an OKness role, but just a small list of things that are considered success/failure 19:50
nr: 42 ~~ True 19:52
p6eval rakudo ff2cee: OUTPUT«Potential difficulties:␤ Smartmatch against True always matches; if you mean to test the topic for truthiness, use :so or *.so or ?* instead␤ at /tmp/tl9pOOdVRo:1␤ ------> 42 ~~⏏ True␤»
..niecza v24-23-g0520c7c: ( no output )
TimToady and perhaps deserving of a similar warning
r: Nil; 42; 19:53
p6eval rakudo ff2cee: ( no output )
TimToady and is harmless in sink context already, which is good
r: $_ = "foo"; /bar/; 42 19:55
p6eval rakudo ff2cee: ( no output )
TimToady r: $_ = "foo"; /bar/; say $/
p6eval rakudo ff2cee: OUTPUT«#<failed match>␤»
TimToady can anyone think of a good reason why a failed match should not return Nil?
(other than that we might have to change a few tests in roast?) 19:57
jnthn It's probably a memory saving also... 20:00
20:01 domidumont left
TimToady yes, considering that Nil can very often be represented by deleting something, since Nil is supposed to be indistinguishable from "nothing there" 20:03
it's also better from the fail-fast perspective, if you're failing a lot 20:04
saves wear and tear on the GC
dalek p-jvm-prep: e766547 | jnthn++ | / (3 files):
Add some missing SC related ops.
20:10
p-jvm-prep: 2608303 | jnthn++ | nqp-src/NQPHLL.pm:
Fully uncomment HLL::World.
nwc10 jnthn: all tests were successful, but some bugger moved the goalposts again :-) 20:16
jnthn
.oO( chomping at the commit bit )
20:18
nwc10 groans (again) 20:19
20:19 ilbot6 joined, ilbot6 left
nwc10 oooh. ilbot6 20:20
20:20 ilbot6 joined
moritz testing a parrot socket patch with ilbot6 :-) 20:20
nwc10: it now records basically the same events that _ilbot does 20:21
nwc10: but not yet into a database, just to STDOUT
nwc10 jnthn: All tests succeessful && Current branch master is up to date. 20:23
dalek p: b752c14 | jnthn++ | src/QAST/Operations.nqp:
Fix thinkos.
20:38
p: 8d7d9be | jnthn++ | src/stage0/ (9 files):
Bootstrap update thanks to thinkos.
p: 8d1f7f6 | jnthn++ | src/ (4 files):
Replace some more pir:: with nqp::.
nwc10 jnthn: getting all of HLL::World compiling is quite major, isn't it? 20:40
jnthn nwc10: Only sorta. 20:42
nwc10 ah OK
jnthn nwc10: Most of the tricky stuff likes in the various subclasses of it
dalek ecs: c8f2dcc | larry++ | S (3 files):
Failed matches to return Nil, not (Match)

A Match now only ever represents a successful match. A failed match is represented by Nil. Also, we add Match and Nil to the list of things that are explicitly not allowed as literal tokens to smartmatchers due to their use as success/failure from .ACCEPTS methods.
And a great sigh of relief comes from those who didn't want the OKness proposal to go much farther than that... :-)
20:43
TimToady nudges the goalposts again...
GlitchMr std: my $a; / $a<b> /
p6eval std 7551b8f: OUTPUT«Potential difficulties:␤ Apparent subscript will be treated as regex at /tmp/5cXH5MA5VQ line 1:␤------> my $a; / $a⏏<b> /␤ok 00:00 43m␤»
GlitchMr std: my $a; / $a.<b> /
p6eval std 7551b8f: OUTPUT«Potential difficulties:␤ Apparent subscript will be treated as regex at /tmp/IypDaT7ft7 line 1:␤------> my $a; / $a⏏.<b> /␤ok 00:00 43m␤»
TimToady std: my $a; / $( $a<b> ) / #okay 20:44
p6eval std 7551b8f: OUTPUT«ok 00:00 44m␤»
GlitchMr rn: my @a = 3; ('3').gist.say; 20:46
p6eval niecza v24-24-gbdc3343: OUTPUT«Potential difficulties:␤ @a is declared but not used at /tmp/aztGkBMMNK line 1:␤------> my ⏏@a = 3; ('3').gist.say;␤␤3␤»
..rakudo ff2cee: OUTPUT«3␤»
GlitchMr rn: my @a = 3; ('3' ~~ / @a[0] /).gist.say;
p6eval rakudo ff2cee: OUTPUT«Potential difficulties:␤ Apparent subscript will be treated as regex␤ at /tmp/xHK0MmhpAM:1␤ ------> my @a = 3; ('3' ~~ / @a⏏[0] /).gist.say;␤#<failed match>␤»
..niecza v24-24-gbdc3343: OUTPUT«Potential difficulties:␤ Apparent subscript will be treated as regex at /tmp/T16QbN6sxV line 1:␤------> my @a = 3; ('3' ~~ / @a⏏[0] /).gist.say;␤␤#<failed match>␤»
GlitchMr rn: my @a = 3; ('3' ~~ / $(@a[0]) /).gist.say;
p6eval rakudo ff2cee, niecza v24-24-gbdc3343: OUTPUT«「3」␤␤» 20:47
GlitchMr Good
FROGGS rn: my @a = 3..5; ('3' ~~ / @a /).gist.say; 20:48
p6eval rakudo ff2cee, niecza v24-24-gbdc3343: OUTPUT«「3」␤␤»
FROGGS rn: my @a = 3..5; ('4' ~~ / @a /).gist.say;
p6eval rakudo ff2cee, niecza v24-24-gbdc3343: OUTPUT«「4」␤␤»
GlitchMr rn: say Mu 20:54
p6eval rakudo ff2cee: OUTPUT«Mu()␤»
..niecza v24-24-gbdc3343: OUTPUT«(Mu)␤»
GlitchMr So, I guess that (Mu) is newest standard (made 1 hour ago).
Well, I guess it makes sense, considering that Mu() doesn't work 20:55
But Mu.perl just gives Mu.
dalek p-jvm-prep: 81f91e3 | jnthn++ | nqp-src/ (2 files):
s/pir::/nqp::/ in some places, and uncomment.
20:56
p-jvm-prep: b1c6aa3 | jnthn++ | / (2 files):
A couple of small cleanups.
20:57 labster joined
GlitchMr rn: say Int 20:59
p6eval niecza v24-24-gbdc3343: OUTPUT«(Int)␤»
..rakudo ff2cee: OUTPUT«Int()␤»
nwc10 "This hour in Perl 6"? :-)
TimToady finished his reboot (started Jan 4th) a couple days ago, and hopes nobody is regretting that fact now :)
20:59 census left
moritz if any built-ins generate lists of matches, there are never any failed matches in them, right? 21:01
TimToady 'foo'? is the only thing that can produce a "positive" Nil 21:02
and I deem that to be harmless
jnthn What about my ($m1, $m2, $m3) = $match.list;
dalek d: 52fe6d2 | larry++ | STD.pm6:
add warning on smartmatch of Match or Nil
21:03
jnthn with 'abc' ~~ /(.) (.)? (.)/
uh, not quite tht :) 21:04
21:04 benabik left, zby_home_ left
jnthn r: my ($m1, $m2, $m3) = ('abc' ~~ /(.) (d)? (.)/).list; .say for $m1, $m2, $m3 21:05
p6eval rakudo ff2cee: OUTPUT«「a」␤␤「b」␤␤Nil␤»
GlitchMr This is so fun
I've uploaded a Perl 6 changes article, and instantly had to make a commit because of commit to STD.pm.
TimToady jnthn: DIHWIDT I think
either that, or we stop treating Nil like () in lists 21:06
for which a good argument could be made
moritz and against which a good argument could be made 21:07
TimToady these days, if you want to interpolate () in a list, you should probably be using, er, ()
then make it
jnthn suspects changing that meaning of Nil may be problematicer... 21:08
21:08 benabik joined
TimToady possibly, but this is about our last chance to get these things right 21:08
today I would argue that Nil means "the absence of a value WHERE THERE SHOULD BE A VALUE", and therefore it should keep its place in a list 21:10
21:12 lue joined
TimToady this is also much more consistent with how other languages treat their null value 21:12
so least surprise to at least some people 21:13
21:14 PacoAir left
labster Since we're on the topic of matches, and because this came up in my code: should there be a way for s/// to tell if a substitution was made? 21:14
r: my $foo = 'foo'; $foo ~~ s/bar/baz/;
p6eval rakudo ff2cee: ( no output )
labster my $foo = 'foo'; say $foo ~~ s/bar/baz/; 21:15
moritz labster: that's the return value
r: my $foo = 'foo'; say $foo ~~ s/bar/baz/;
p6eval rakudo ff2cee: OUTPUT«False␤»
moritz r: my $foo = 'foobar'; say $foo ~~ s/bar/baz/;
p6eval rakudo ff2cee: OUTPUT«True␤»
labster there we go, that's the strange behavior
moritz what's strange about it?
labster getting False in the REPL... maybe I need to update. 21:17
jnthn This was fixed relatively recently (not O(days) though)
labster O(weeks) would be about right, I'm using star 21:18
TimToady with the new definition, we can return a Match from s/// if we like to indicate success 21:19
21:19 Khisanth joined
timotimo weeks is a constant number, so essentially O(1) 21:20
er, constant factor*
moritz timotimo: we all know that, but abusing O() notation is O(fun) 21:21
:-)
timotimo all right :) 21:22
dalek kudo/nom: cfee628 | moritz++ | src/core/Mu.pm:
switch type name gistification from Type() to (Type)
21:26
ast: bebc699 | moritz++ | S (4 files):
switch from Type() to (Type) (work in progress)
21:27
21:28 gdey joined 21:31 colomon left
dalek ast: bb83c9a | moritz++ | / (13 files):
more Type() -> (Type) moving
21:36
p-jvm-prep: d51aaf1 | jnthn++ | lib/JAST/Nodes.nqp:
Eliminate the single pir:: in JAST nodes.
21:44
p-jvm-prep: bb7a5e7 | jnthn++ | Makefile:
Include NQPHLL and JAST nodes in the build.
p-jvm-prep: a142786 | jnthn++ | / (2 files):
Library name consistency tweak.
p-jvm-prep: 70df04f | jnthn++ | / (2 files):
Implement nqp::objprimspec.
arnsholt r: my $x = 3; say $x.WHAT; 21:47
p6eval rakudo ff2cee: OUTPUT«Int()␤»
arnsholt r: my int $x = 3; say $x.WHAT; 21:48
p6eval rakudo ff2cee: OUTPUT«Int()␤»
21:50 spanner joined, sorear left, sorear joined
arnsholt Are there any known weird limitations with natively typed constants? 21:52
21:55 bruges joined 21:56 spider-mario left, ilbot6 left
arnsholt r: gist.github.com/arnsholt/5021528 21:57
p6eval rakudo ff2cee: OUTPUT«===SORRY!===␤Two terms in a row␤at /tmp/SeupsMZKmo:1␤------> https⏏://gist.github.com/arnsholt/5021528␤ expecting any of:␤ argument list␤ postfix␤ infix or meta-infix␤ infix stopper␤ stateme…
21:57 gdey left
arnsholt Huh. Thought that worked 21:57
21:57 sepegp joined, bruges_ left
arnsholt timotimo: I think I'm a step closer to making your script work, but I think it's also uncovered a bug/limitation in Rakudo =) 22:00
timotimo \o/ and /o\ 22:01
arnsholt Yeah. I'll investigate further tomorrow, but I did get as far as seeing "ok 1 - " in my terminal which is very much \o/ 22:04
So timotimo++ for that
timotimo \o/
what was the limitation, though?
22:05 gdey joined
timotimo i'm a bit annoyed, though, that my work is blocked not by my lazyness but by something else. so i have no choice but to not progress :( 22:06
arnsholt See the gist I tried to get the evalbot to run 22:07
22:07 gdey left
arnsholt There's something funny with constants 22:07
I think there's a workaround though 22:08
Change all the "my constant ZMQ_FOO" to "my int $ZMQ_FOO" and similar in your script 22:09
I think that should work
If that works, feel to commit it and add your stuff as tests 22:10
But now it's bedtime for me
arnsholt &
timotimo good night! 22:11
22:13 spider-mario joined
timotimo t/01-send-recv.t .. 1/? *** Error in `perl6': corrupted double-linked list: 0x0000000009f88b40 *** 22:14
well, that's something!
(i even get ok 2 -) 22:15
dalek ecs: 48958ab | larry++ | S0 (5 files):
Simplify Nil semantics; never means () now
22:17
TimToady had better take a rest before someone decides to mail him something explosive :) 22:18
nap & 22:19
22:20 kaare_ left 22:21 colomon joined
lue r: for 0x50..0x5f { say "\x[$_]"; } 22:22
p6eval rakudo cfee62: OUTPUT«===SORRY!===␤Unrecognized backslash sequence: '\x'␤at /tmp/Xt0D0zJL7r:1␤------> for 0x50..0x5f { say "\x⏏[$_]"; }␤ expecting any of:␤ argument list␤ prefix or term␤ prefix or meta-prefix␤ double qu…
lue Shouldn't that be legal?
(it seems std disagrees with me as well) 22:25
jnthn no, I don't think that's meant to work 22:26
try
r: for 0x50..0x5f { say "{chr $_}"; }
p6eval rakudo cfee62: OUTPUT«P␤Q␤R␤S␤T␤U␤V␤W␤X␤Y␤Z␤[␤\␤]␤^␤_␤»
lue I just realized I could use chr.
I'm still curious as to why that's not meant to, though. (The error message made me think it was a parsing error initially, rather than a user error) 22:28
22:29 jac50 left
timotimo adding a few says makes it not crash any more 22:36
i love this job.
22:38 census joined
timotimo alternatively i can just add success strings to the "is" calls, so that masks the double-frees or corrupted linked-lists or what have you 22:40
amazing. 22:41
so i guess i'm no longer blocked. that means i have to work now! gosh :( 22:42
jnthn :P 22:43
jnthn just hunted a segfault
timotimo brought something to eat home for the family?
diakopter segfaults aren't tasty unless cooked a few hundred hours 22:44
timotimo it isn't about tasty, it's about survival! :( 22:46
jnthn nervously opens a belgian beer and hopes it wonon't explode everywhere 22:47
22:47 PacoAir joined
jnthn ah, phew 22:47
census liquor before beer, nothing to fear. beer before liquor, never been sicker . . . 22:48
jnthn The trick is to drink each of them in sensible quantities :P
dalek p: 30d5020 | jnthn++ | src/ops/nqp.ops:
Avoid returning a C NULL.
22:54
p: cd22fa9 | jnthn++ | src/NQP/Actions.pm:
Resolve a bunch of package names at compile time.

Cuts down on code output rather significantly in certain cases, of note in QAST::Compiler.
timotimo ooooh! 22:59
less code output means faster startup, no? 23:00
jnthn Well, maybe that a little, but it means compilation is faster. 23:01
In theory, anyway :) 23:02
cotto moritz: I'm only seeing one spectest_regression failure with that parrot patch and it seems to happen with parrot master too. I'm rebuilding to be sure, but do you see any reason not to merge if signs continue to point to no new bugs? 23:16
merge the smarter-io-sync branch into Parrot master, that is 23:17
lue
.oO(fun fact: creating a P6 one-liner to print all the unicode chars from 0..0x10000 fails at D800 with "invalid for UTF-8")
23:21 spider-mario left 23:23 census left
dalek p-jvm-prep: 907fa53 | jnthn++ | src/org/perl6/nqp/runtime/Ops.java:
Support some more keys in sethllconfig.
23:26
p-jvm-prep: aac1e22 | jnthn++ | / (3 files):
Start cross-compiling QAST -> JAST.

It does successfully cross-compile, but doesn't work yet.
timotimo oh? will we see a nqp on jvm today? :) 23:27
jnthn No :P 23:28
I'm getting tired/losing concentration now. 23:29
There's a chance that tomorrow I'll get to the point of having a way to run the QAST -> JAST translator on the JVM though. 23:30
Which is one important piece of the puzzle.
Getting HLL::Compiler sorted out is still a fairly significant chunk of work. 23:31
23:33 am0c left
dalek ecs: ebd9f5c | diakopter++ | S02-bits.pod:
spelo
23:34
timotimo that's pretty cool :) 23:35
a bit annoyed that panda install will read the Build.pm, but ufo won't touch it at all
can i somehow manually invoke the code in it? (i've copypasted it from the rakudo debugger repo basically) 23:36
jnthn Looks fairly tied to panda, but you can always grab the commands out of it and run them 23:37
oh, maybe not, depending what you're trying to do 23:38
jnthn needs sleep
o/
timotimo good night jnthn! 23:39
sprunge.us/bEbF - yeah that seems clever :P
the nice trick jnthn came up with to pass objects (routines) from the interpreted code into the nqp code doesn't seem to work in my case, the value is just an nqpmu :( 23:59
23:59 xenoterracide left