»ö« 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 ⏏"HelloCouldn't find final '"'; gave up at /tmp/bGV39ayPwV line 1 (EOF):------> say "Hello⏏<EOL>Parse failedFAILED 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 howeverUnrecognized 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 howeverParse 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«FalseTrue» | ||
..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«FalseTrue» | ||
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 rowat /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«PQRSTUVWXYZ[\]^_» | ||
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
|