»ö« 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. |
|||
00:01
cognominal left
00:05
Khisanth left,
cognominal joined
|
|||
[Coke] probably should stop drinking coffee after, oh, 10am. | 00:15 | ||
(and coke zero, and diet mountain dew...) | |||
TimToady | yeah, go for the sugary stuf after 10am | 00:19 | |
*ff | |||
00:20
Khisanth joined
|
|||
dalek | ast: cf4f001 | coke++ | S04-declarations/my.t: niecza fudge |
00:21 | |
timotimo | i read "surgery" and was thoroughly confused | ||
colomon | [Coke]++ # beat me to it | 00:23 | |
timotimo | phenny: tell jnthn: is World::apply_trait the best place to put the levenshtein search or would it better be placed in your proposed trait_mod:<is>(Mu:U $type, *%fail)? | 00:26 | |
phenny | timotimo: I'll pass that on when jnthn is around. | ||
00:27
bowtie left
|
|||
[Coke] | colomon: gist.github.com/4552472 - some potentially low hanging fruit. | 00:40 | |
colomon | [Coke]: danke | 00:44 | |
isBEKaml | [Coke]: say, have you had any spectest failures with rakudo? | 00:46 | |
I get two in filestat.t and filetest.rakudo | 00:47 | ||
It's repeatable. | 00:51 | ||
japhb_ | Thanks for the mention in the release announcement. :-) | 00:52 | |
isBEKaml | not ok 28 - ~~:z returns false on directories | 00:53 | |
^^ filetest.t | 00:54 | ||
not ok 8 - IO.accessed should be updated when contents of file is read | |||
^^ filestat.t | |||
japhb: It's all our pleasure - :-) | |||
The above are the two failures I see here. | 00:55 | ||
00:58
whiteknight joined
01:01
anuby joined
|
|||
isBEKaml | r: qx(ls) | 01:02 | |
p6eval | rakudo efac0f: OUTPUT«===SORRY!===Undeclared routines: ls used at line 1 qx used at line 1» | ||
isBEKaml | r: say "t".IO | 01:03 | |
p6eval | rakudo efac0f: OUTPUT«IO.new(ins => 0, chomp => Bool::True, path => "t")» | ||
isBEKaml | r: say "t".IO ~~ :z | ||
p6eval | rakudo efac0f: OUTPUT«False» | ||
isBEKaml | ^^ this returns True locally | 01:04 | |
(of course, I have a folder called "t" in the current directory) | 01:05 | ||
benabik | :z? | ||
isBEKaml | yeah | ||
benabik | r: say 't'.IO.s | 01:07 | |
p6eval | rakudo efac0f: OUTPUT«4096» | ||
benabik | isBEKaml: Is your t directory empty? | 01:08 | |
isBEKaml | benabik: no, that's the spectest folder. It should return False. | ||
benabik | isBEKaml: OS? | 01:09 | |
isBEKaml | win7 cygwin | ||
benabik | I wonder if Win7 always returns 0 size for directories. Linux and Darwin seem to give a size. | 01:10 | |
isBEKaml | yup, it's 0 sized. | ||
:/ | 01:11 | ||
benabik | Bad test? | ||
01:12
thou left
|
|||
isBEKaml | Might be: github.com/perl6/roast/blob/master...test.t#L73 | 01:12 | |
And the other failure is here: github.com/perl6/roast/blob/master...stat.t#L58 | 01:13 | ||
hmm, this happens even with the older rakudo I have here. (about 2 months old) | 01:15 | ||
01:15
hypolin joined
|
|||
benabik | It's because .z == .e && .s == 0 | 01:16 | |
And cygwin always gives .s == 0 for directories. | |||
isBEKaml | So, it's cygwin - I'll go ahead and make a release. | 01:17 | |
benabik++ | 01:18 | ||
benabik | For future reference: cygwin.com/ml/cygwin/2011-01/msg00170.html | 01:19 | |
isBEKaml | benabik: thanks, I'll keep that in mind. | ||
benabik | I'll leave it to others to decide if this is stupid behavior of Cygwin or a bad assumption in the tests. | ||
01:20
am0c joined
|
|||
geekosaur would be inclined to consider taking the size of a directory to be dubious at best | 01:22 | ||
(note that cygwin has to deal with a very ugly special case, to wit, the root directory of a FAT drive) | |||
(also I'm not sure you can even take the size of a directory specified as a UNC path) | 01:23 | ||
if the concept is to be meaningful at all in perl6, perhaps it should be implemented by globbing the entries in the directory and counting the result | 01:24 | ||
also note an additional screw case with regard to portability: what does :s do on OS/400 and successors? | 01:25 | ||
benabik | *nix appears to give a size based on the blocks needed to store the directory entry. Relying on that cross-platform is probably not good. | ||
geekosaur | exactly | 01:26 | |
you can't even do that much in the FAT case I mentioned; root directories have a fixed preallocated space that isn't part of the filesystem /per se/ | |||
(mmm, backward compatibility) | 01:27 | ||
sorear | I thought FAT32 allowed the root to grow | 01:29 | |
what's the deal with OS/400 and sizes? | |||
geekosaur | I think it does, but the base part is still not represented as a disk file like on unixy filesystems or (I think) ntfs | ||
os/400 allows a container and a file to have the same name | |||
japhb_ | sorear, yeah, but cygwin probably has to support anything Windows supports -- all the way back to FAT16 or even FAT12. | ||
01:30
wk left
|
|||
geekosaur | (it's somewhat more complicated than that but that's the part I'm thinking of) | 01:30 | |
sorear | ntfs is pretty unixy, it has inode numbers and the root directory is identified by a well-known inode number | ||
ntfs' personal brand of crazy is that the inode table and the free block list are also files with inode numbers | |||
geekosaur | and all bets are off if you're accessing a network filesystem | ||
um. ever wonder why unix traditionally doesn't use inode 1? | 01:31 | ||
sorear | I did not know that 1 was traditionally avoided | 01:32 | |
benabik didn't know it didn't. | |||
geekosaur | I think early pre-bitmap ext2 even continued that tradition for a while: inode 1 was the free list | ||
isBEKaml | rakudo and nqp tarballs: www.dropbox.com/sh/fkk6frqdiknwfso/ptM3dojQsC | 01:33 | |
let me know if you see any problems | |||
geekosaur | and very early unix filesystems gave inode 0 the allocation for the superblock and inode table | ||
this kinda broke with FFS and successors | 01:34 | ||
isBEKaml | Also, if you have access to upload to rakudo.org, please feel free to do the same. :-) | ||
geekosaur | (specifically cylinder groups) | ||
01:38
MikeFair left
01:39
MikeFair joined,
leprevost joined
|
|||
isBEKaml | I've sent out a pull request for rakudo release. Day job beckons. :-) | 01:42 | |
Thanks! (I'll be away for a couple of weeks now - please upload those tarballs too from my dropbox folder or make anew) | 01:43 | ||
01:43
isBEKaml left
01:52
leprevost left,
arlinius left
01:59
b1rkh0ff left
02:05
FROGGS_ joined,
alec joined
02:09
FROGGS left
02:11
japhb_ left
02:12
whiteknight left
02:28
leprevost joined
|
|||
[Coke] | phenny: tell isBEKaml about github.com/coke/perl6-roast-data/b...ummary.out | 02:50 | |
phenny | [Coke]: I'll pass that on when isBEKaml is around. | ||
[Coke] | (no failures in filestat) | ||
02:53
Targen left
03:12
jokar joined
03:36
cognominal left
03:38
fgomez left
03:42
orafu left,
ph1ur3 joined,
orafu joined
03:46
Targen joined
03:47
SamuraiJack joined,
leprevost left
03:49
grondilu_ joined
03:52
grondilu left
04:00
fgomez joined
04:03
broquaint joined
04:21
grondilu_ is now known as grondilu
04:22
grondilu left,
grondilu joined,
stevan_ left
04:26
preflex_ joined
04:27
preflex left,
preflex_ is now known as preflex
04:32
fgomez left
04:35
dayangkun left
05:11
grondilu left
05:18
aindilis left
05:19
aindilis joined
05:23
kaleem joined
05:26
dayangkun joined
05:29
fgomez joined
05:32
stevan_ joined
05:36
xinming_ left
05:37
stevan_ left
|
|||
lue wonders if the lack of anything in NQPParametricRoleHOW's compose method (as opposed to Concrete's version of the method) is the cause of that bug he encountered a month or so ago... | 05:48 | ||
05:49
For-Odin joined
05:50
cognominal joined
|
|||
moritz | \o | 06:07 | |
06:19
jaldhar joined
06:26
quester joined
|
|||
raiph | o/ | 06:29 | |
06:45
ifim left
06:48
kaleem left
06:51
quester left
07:00
For-Odin left
07:02
cognominal_ joined,
cognominal_ left
07:04
cognominal left,
cog joined
07:13
kaleem joined
07:32
kaleem left,
kaleem joined
07:41
FROGGS_ left
07:43
Pleiades` left
07:50
Pleiades` joined
07:58
FROGGS joined
08:13
rindolf joined
08:31
Pleiades` left
08:33
Pleiades` joined
08:41
brrt joined
08:52
wk joined
|
|||
Su-Shee | good morning everyone. | 08:53 | |
moritz | \o | ||
aloha: seen FROGGS | |||
aloha | moritz: FROGGS was last seen in #perl6 55 mins 21 seconds ago joining the channel. | ||
08:53
Pleiades` left
|
|||
FROGGS | moritz: morning | 08:56 | |
you miss me? | |||
btw, I'm not in eckental next monday, so no beer for us ó.ò | |||
moritz | FROGGS: :( | 08:57 | |
that was actually what I was aiming at | |||
FROGGS | ya, sad that is | ||
moritz | ah well, I won't run away; if you come into that region again, just drop me a line | 08:58 | |
08:59
Pleiades` joined
|
|||
FROGGS | I will | 08:59 | |
09:04
cog_ joined
|
|||
rindolf | Su-Shee: morning. | 09:05 | |
FROGGS: hi. | |||
FROGGS | hi rindolf | ||
09:05
cog left
|
|||
rindolf | FROGGS: what's up? | 09:06 | |
09:06
hoelzro|away is now known as hoelzro
|
|||
rindolf | moritz: morning. | 09:06 | |
cedrvint | hello #perl6 | 09:07 | |
rn: subset UInt of Int where * >= 0; sub foo (UInt $bar?) { }; foo(); | |||
p6eval | niecza v24-17-gd343a2a: OUTPUT«Potential difficulties: $bar is declared but not used at /tmp/IuSYCRdJwn line 1:------> UInt of Int where * >= 0; sub foo (UInt ⏏$bar?) { }; foo();» | ||
..rakudo efac0f: OUTPUT«Parameter '' requires an instance, but a type object was passed in method Bridge at src/gen/CORE.setting:3097 in sub infix:<>=> at src/gen/CORE.setting:3028 in block at /tmp/1TWJJ_uTap:1» | |||
cedrvint | is this ^ a known Rakudo bug? | 09:08 | |
it seems subsets and missing-but-optinal arguments don't mix well | 09:09 | ||
FROGGS | rindolf: $work | 09:10 | |
rn: subset UInt of Int where * >= 0; sub foo (UInt:D: $bar?) { }; foo(); | 09:11 | ||
p6eval | rakudo efac0f: OUTPUT«Not enough positional parameters passed; got 0 but expected between 1 and 2 in sub foo at /tmp/Lf_44uAt2f:1 in block at /tmp/Lf_44uAt2f:1» | ||
..niecza v24-17-gd343a2a: OUTPUT«Potential difficulties: $bar is declared but not used at /tmp/wjcmtW2Xp2 line 1:------> t of Int where * >= 0; sub foo (UInt:D: ⏏$bar?) { }; foo();Unhandled exception: No value for parameter '' in 'foo' at /tmp/wjcmtW2Xp2 line 0 (… | |||
09:11
atrodo left
|
|||
FROGGS | rn: subset UInt of Int where * >= 0; sub foo (UInt:D: :$bar?) { }; foo(); | 09:12 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«Potential difficulties: $bar is declared but not used at /tmp/SN29Hmdx_i line 1:------> of Int where * >= 0; sub foo (UInt:D: :⏏$bar?) { }; foo();Unhandled exception: No value for parameter '' in 'foo' at /tmp/SN29Hmdx_i line 0 (… | ||
..rakudo efac0f: OUTPUT«Not enough positional parameters passed; got 0 but expected 1 in sub foo at /tmp/OdxSr7x077:1 in block at /tmp/OdxSr7x077:1» | |||
09:12
wk left
|
|||
FROGGS | rn: subset UInt of Int where * >= 0; sub foo (UInt :$bar?) { }; foo(); | 09:12 | |
p6eval | rakudo efac0f: OUTPUT«Parameter '' requires an instance, but a type object was passed in method Bridge at src/gen/CORE.setting:3097 in sub infix:<>=> at src/gen/CORE.setting:3028 in block at /tmp/LdpgjnS3sx:1» | ||
..niecza v24-17-gd343a2a: OUTPUT«Potential difficulties: $bar is declared but not used at /tmp/pSKT8VkPHQ line 1:------> Int of Int where * >= 0; sub foo (UInt :⏏$bar?) { }; foo();» | |||
FROGGS | weird indeed | ||
please file a bug, I've seen no such ticket | |||
cedrvint | OK | 09:13 | |
09:30
kaleem left
09:31
kaleem joined
09:38
ph1ur3 left
09:42
Psyche^ joined
09:46
Patterner left,
Psyche^ is now known as Patterner
09:51
cog_ left,
dakkar joined
10:02
anuby left
10:03
hypolin left
10:06
sqirrel joined
10:08
Ayiko joined
10:18
wk joined
10:19
fhelmberger joined
10:34
avay joined,
cog joined
|
|||
avay | is there any compiler on internet for perl ,which has many modules installed in it, and doesn't give errors of not finding the modules used in the code | 10:36 | |
FROGGS | avay: rakudo star distribution is your friend | 10:37 | |
avay: go to rakudo.org | |||
but I really hope you are talking about Perl 6, not Perl 5 | |||
avay | yeah | 10:38 | |
FROGGS | :o) | ||
well then, welcome in our midst ;o) | |||
avay | thanks FROGGS!!! | ||
FROGGS | you're welcome | ||
10:40
avay left
10:49
b1rkh0ff joined
10:56
cog left
11:04
xinming joined
11:06
Su-Shee_ joined
11:09
Su-Shee left
11:12
Su-Shee_ is now known as Su-Shee
|
|||
timotimo | FROGGS: now that multi-merging is finished, what cool stuff you wanted to do was unblocked? it was at least in big part about Inline::C, right? | 11:14 | |
11:16
dayangkun left
|
|||
FROGGS | timotimo: it was the SDL module | 11:18 | |
this one needed Inline::C together with NativeCall | |||
so this should work now, and my game BubbleBreaker too | |||
maybe there are minor issues, dont know right now | 11:19 | ||
all these modules might need a bit more love | |||
timotimo | github.com/FROGGS/Games-BubbleBrea...ker.pl#L24 - typo: "buubles" | 11:21 | |
also, this isn't the perl6 version! *gasp* | 11:22 | ||
11:25
cog joined,
cog left,
cog joined,
cog_ joined,
brrt left
11:26
cog_ left
|
|||
FROGGS | timotimo: github.com/FROGGS/p6-Games-BubbleBreaker | 11:33 | |
the File::HomeDir fix isnt pushed to the repo as I see now | |||
timotimo | found it already, thanks :) | 11:35 | |
11:35
b1rkh0ff left
|
|||
timotimo | hm, the code looks like it could be much prettier | 11:35 | |
FROGGS | ohh ya, that was the first thing I did in perl 6 | 11:36 | |
I know a bit more now ;o) | |||
timotimo | :D | 11:37 | |
bbkr_ | is there any chance that Socket.get() will be fixed in 2013.01 - rt.perl.org/rt3/Ticket/Display.html?id=116302 ? without it all modules that depends on HTTP::Easy will be broken again in Star release. | 11:41 | |
moritz | yes, there is any chance. | ||
bbkr_ | a chance* :) | ||
timotimo | not to burst your sarcasm, or anything ... but | 11:42 | |
isn't it already fixed in the compiler that was released today? | |||
moritz | I didn't fix it | ||
bbkr_ | Socket.read was fixed, Socket.get not | 11:43 | |
timotimo | github.com/svatsan/rakudo/blob/69b...013.01#L26 | ||
ooooh, okay :( | |||
sorry about that | |||
wtf is that song, that doesn't even sound good | 11:52 | ||
12:00
fgomez left
|
|||
timotimo | (that was a mischan, btw) | 12:04 | |
FROGGS: what necessitates use soft; for inline::c? is it a bug in rakudo or just something that's missing from inline::c? | 12:11 | ||
moritz | usualy run-time &routine.wrap is the reason | 12:13 | |
rakudo optimizes dispatch (and somtimes even inlines calls) at compile time | 12:14 | ||
so if you wrap at run time, ith might not call the correct routine unless you 'use soft;' | |||
timotimo | hm, i see | 12:16 | |
at first i thought use soft; was the negative counterpart of what use strict did in perl5. is that wrong? | |||
moritz | yes, that's wrong | 12:17 | |
well, not too wrong. It allows some run-time mucking that's otherwise forbidden. But none of the details of 'use strict;' (strict refs, vars, subs) contradict it | 12:18 | ||
r: use soft; if 0 { nosuchsub } | 12:19 | ||
p6eval | rakudo efac0f: OUTPUT«===SORRY!===Undeclared routine: nosuchsub used at line 1» | ||
moritz | still complains at compile time | ||
12:23
Pleiades` left
12:29
Pleiades` joined
12:30
drbean joined
|
|||
FROGGS | timotimo: I believe this use soft isnt needed anymore but need to test to confirm | 12:35 | |
it was a try to get the multi import merging right | |||
12:40
kaleem left
12:41
jokar left
|
|||
jnthn | The "soft" thing prevents inlining | 12:57 | |
phenny | jnthn: 00:26Z <timotimo> tell jnthn is World::apply_trait the best place to put the levenshtein search or would it better be placed in your proposed trait_mod:<is>(Mu:U $type, *%fail)? | ||
jnthn | Which is normally undesirable, but if you're gonna do runtime wrapping will matter | 12:58 | |
timotimo: Since you have NQP code, maybe best in apply_trait. But I suggest that you throw a typed exception from the proposed trait mod I suggested, and then detect it in apply_trait and augment it with the suggestions then rethrow it. | |||
dalek | kudo/nom: 179fd4b | isBEKaml++ | src/core/tai-utc.pm: updated tai-utc |
13:01 | |
kudo/nom: d0e16da | isBEKaml++ | docs/release_guide.pod: Updated release guide |
|||
kudo/nom: 0de5379 | isBEKaml++ | tools/build/NQP_REVISION: [Release] Bump NQP_REVISION |
|||
kudo/nom: 59c2982 | isBEKaml++ | VERSION: [Release] Bump VERSION |
|||
kudo/nom: 69b53cf | isBEKaml++ | docs/announce/2013.01: [Release] Add 2013.01 Rakudo compiler release announcement. |
|||
kudo/nom: 3ee51ac | isBEKaml++ | docs/release_guide.pod: Remove Sonoma from suggested pm names |
|||
kudo/nom: 3a8d48a | moritz++ | / (5 files): Merge pull request #94 from svatsan/rel-2013.01 Rakudo compiler release 2013.01 |
|||
moritz | did isBEKaml++ create a tarball? | 13:03 | |
FROGGS | it's in his dropbox | 13:04 | |
(where ever this is) | |||
he mentioned it this morning | |||
moritz | www.dropbox.com/sh/fkk6frqdiknwfso/ptM3dojQsC | ||
FROGGS: thanks, that made it easy for me to find the link in the logs | |||
FROGGS | np ;o) | 13:05 | |
13:05
pmurias joined
|
|||
moritz | but I only have the wrong SSH keys here :( | 13:05 | |
so I can't upload them until I get home | |||
moritz pushes the tags | 13:06 | ||
13:07
cog left
13:14
cog joined
|
|||
FROGGS | I believe this can wait a few hours | 13:15 | |
13:18
sqirrel left
13:24
dayangkun joined
13:31
cog left
13:37
cog joined
|
|||
pmurias | jnthn: t/qast_tring.t expects 0.0, isn't 0 the correct answer? | 13:43 | |
jnthn: correct as in what nqp-parrot would produce | 13:44 | ||
13:49
jaldhar left
|
|||
bbkr_ is testing new release | 13:50 | ||
FROGGS | bbkr_: if you get the chance, can you test the rakudo/froggs_multibyte branch? there are bugfixes for multibyte chars for IO::Socket::INET.recv | 13:52 | |
it also introduces an optional $bin param that will give you a Buf instead of a Str when true | 13:53 | ||
bbkr_ | FROGGS: sure, I'll test it right after $dayjob | 13:54 | |
FROGGS | no hurry, I just want to make sure that this is tested positive before merging in | ||
++bbkr_ # but thanks already for taking the time | 13:55 | ||
14:06
cog left
14:07
benabik left
14:13
colomon left
14:18
skids left,
PacoAir joined,
atrodo joined
14:19
hash_table joined
14:24
Vlavv joined
14:26
hash_table left
14:35
fhelmberger left
14:36
colomon joined
14:44
MikeFair left
14:45
MikeFair joined
14:46
mtk joined
14:47
cog joined
14:52
dayangkun left
14:53
dayangkun joined
14:54
kaare_ joined
14:59
bbkr joined,
eternaleye_ joined
15:00
kst` joined
15:01
nebuchad` joined,
SamuraiJack_ joined
15:02
nebuchad` is now known as nebuchadnezzar
15:03
zamolxes_ joined,
steven__1 joined,
Woodi_ joined,
amkrankr1leuen joined
15:06
colomon_ joined
|
|||
colomon_ | rn: say +"1428." | 15:06 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: Cannot parse number: 1428. at /home/p6eval/niecza/lib/CORE.setting line 1435 (die @ 5)  at /home/p6eval/niecza/lib/CORE.setting line 3539 (ANON @ 10)  at /home/p6eval/niecza/lib/CORE.setting line 3541 (NumSyntax.str2num @ 5)  a… | ||
..rakudo 3a8d48: OUTPUT«Cannot convert string to number: radix point must be followed by one or more valid digits in '1428.⏏' (indicated by ⏏) in method gist at src/gen/CORE.setting:10404 in sub say at src/gen/CORE.setting:7559 in block at /tmp/wCvdIed8f9:1» | |||
colomon_ | that seems... unperlish to me. | ||
not sure what's up with freenode (like why I've got a colomon_, and why my previous comments didn't go to the actual channel.) | 15:07 | ||
15:07
colomon left,
SamuraiJack left,
eternaleye left,
zamolxes left,
colomon_ is now known as colomon
15:08
jaldhar joined
|
|||
colomon | r: printf ("%g\n", "1428.") | 15:08 | |
FROGGS | colomon: that answers your question | ||
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/wq16xfG0aP:1» | ||
colomon | known rakudo-bug? | ||
FROGGS | I'm talking about the netplit ;o) | ||
arnsholt | Probably. NULL PMC errors usually are | ||
FROGGS | dunno if 42. should work | ||
arnsholt | Unless they're NQP bugs =) | ||
colomon | arnsholt: Null PMCs are *definitely* a Rakudo bug | 15:09 | |
FROGGS | r: say 42. + 1 | ||
p6eval | rakudo 3a8d48: OUTPUT«===SORRY!===Unsupported use of . to concatenate strings; in Perl 6 please use ~at /tmp/l7VOP660B_:1------> say 42. ⏏+ 1» | ||
15:09
stopbit joined
|
|||
colomon | even if the string does not make a valid number. | 15:09 | |
though... | |||
rn: say "1428djsklfj" | |||
p6eval | rakudo 3a8d48, niecza v24-17-gd343a2a: OUTPUT«1428djsklfj» | ||
colomon | rn: say +"1428djsklfj" | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: Cannot parse number: 1428djsklfj at /home/p6eval/niecza/lib/CORE.setting line 1435 (die @ 5)  at /home/p6eval/niecza/lib/CORE.setting line 3539 (ANON @ 10)  at /home/p6eval/niecza/lib/CORE.setting line 3541 (NumSyntax.str2num @ 5… | ||
..rakudo 3a8d48: OUTPUT«Cannot convert string to number: trailing characters after number in '1428⏏djsklfj' (indicated by ⏏) in method gist at src/gen/CORE.setting:10404 in sub say at src/gen/CORE.setting:7559 in block at /tmp/h00UnoIbtV:1» | |||
colomon | ah, at least it's consistent there. | 15:10 | |
FROGGS | n: say 42. + 1 | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«===SORRY!===Decimal point must be followed by digit at /tmp/h7SXCRXVQu line 1:------> say 42.⏏ + 1Unsupported use of . to concatenate strings; in Perl 6 please use ~ at /tmp/h7SXCRXVQu line 1:------> say 42. … | ||
FROGGS | okay, not supported | ||
15:11
sweet_kid joined
|
|||
colomon | I don't have any issues with it being not supported in p6 code. But it's not as clear to me it should be not supported in string to number conversion at runtime. | 15:11 | |
15:11
sweet_kid left,
sweet_kid joined,
sweet_kid left
|
|||
FROGGS | I'd vote for it beeing handled exactly the same | 15:11 | |
arnsholt | std: my $x 42. | 15:12 | |
p6eval | std 7deb9d7: OUTPUT«===SORRY!===Confused at /tmp/zza8cfliDj line 1:------> my $x ⏏42. expecting any of: constraint infix or meta-infix infixed function initializer statement modifier loop traitParse failedFAILED 00:00 | ||
..42m»… | |||
15:12
arlinius joined
|
|||
arnsholt | std: my $x = 42. | 15:12 | |
15:12
sweet_kid joined
|
|||
p6eval | std 7deb9d7: OUTPUT«===SORRY!===Decimal point must be followed by digit at /tmp/tTf9e_iIyS line 1:------> my $x = 42.⏏<EOL>Unsupported use of . to concatenate strings; in Perl 6 please use ~ at /tmp/tTf9e_iIyS line 1 (EOF):------> my $x = 42… | 15:12 | |
15:12
sweet_kid left
|
|||
arnsholt | colomon: There you go. Apparently it's not supposed to be allowed =) | 15:13 | |
FROGGS | if numbers is strings will be pasred differently than in code, this will just add complexity | ||
15:13
sweet_kid joined
|
|||
dalek | kudo-js: 345e4e2 | (Paweł Murias)++ | runtime.js: Implement some trig ops. |
15:13 | |
kudo-js: 46f606a | (Paweł Murias)++ | / (2 files): Steal t/qast_math.t. |
|||
FROGGS | even to my head | ||
arnsholt | Because it might throw a spanner in the works when you want to do "42.some-method()" perhaps? | ||
FROGGS | r: class 3 { method 14159265358979 { say 42 } }; say 3.14159265358979 | 15:14 | |
p6eval | rakudo 3a8d48: OUTPUT«===SORRY!===Unable to parse class definitionat /tmp/Bq6v7T872_:1------> class ⏏3 { method 14159265358979 { say 42 } };  expecting any of: statement list prefix or term prefix or meta-prefix … | ||
FROGGS | std: class 3 { method 14159265358979 { say 42 } }; say 3.14159265358979 | ||
p6eval | std 7deb9d7: OUTPUT«===SORRY!===Unable to parse class definition at /tmp/J29wcyQkRY line 1:------> class ⏏3 { method 14159265358979 { say 42 } };  expecting any of: name traitParse failedFAILED 00:00 40m» | ||
FROGGS | n: class 3 { method 14159265358979 { say 42 } }; say 3.14159265358979 | 15:15 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«===SORRY!===Unable to parse class definition at /tmp/Rm_qFBFG2l line 1:------> class ⏏3 { method 14159265358979 { say 42 } }; Parse failed» | ||
colomon | identifiers have to start with a letter, don't they? | ||
FROGGS | damn :o) | ||
looks like | |||
moritz | yes, and that's a very good thing :-) | ||
r: class _3 { method _14 { say 'pi' } }; _3._14 | 15:16 | ||
p6eval | rakudo 3a8d48: OUTPUT«pi» | ||
moritz | IMHO that's already confusing enough :-) | ||
FROGGS | ohh, you could use class and methodnames like GOTO and JUMP | ||
and of course mix german names in | |||
r: sub Ox34254 { 42 }; say Ox34254 # haha | 15:18 | ||
p6eval | rakudo 3a8d48: OUTPUT«42» | ||
FROGGS | I think you can do really weird stuff using unicode letters | ||
like trolling your fellows | |||
15:19
SunilJoshi joined
|
|||
colomon | argh, this script is infuriating. | 15:20 | |
moritz | .u O | ||
phenny | U+004F LATIN CAPITAL LETTER O (O) | ||
colomon | Null PMCs when I run it in rakudo, "index out of range" (when I never use an index) when I run it in niecza | 15:22 | |
moritz | colomon: what are you trying to do? | ||
(if it's a compile-time error, --ll-exception might give you a better idea about what the error is about) | |||
colomon | take a bunch pairs of 3D points, split them into two groups, and print out each group | 15:23 | |
r: printf ("%g\n", "1428.") | |||
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/b6ZKSUbdZI:1» | ||
colomon | r: printf ("%g\n", "1428") | 15:24 | |
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/URFTSDV2Rn:1» | ||
colomon | r: printf ("%f\n", "1428") | ||
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/tIRAW6MmH1:1» | ||
colomon | r: printf ("%g\n", +"1428") | ||
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/dV7xkY4ihn:1» | ||
colomon | r: printf ("%g\n", +"1428.3") | ||
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/QP2BNqcQmK:1» | ||
colomon | r: printf ("%g\n", 1428.3) | ||
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/tfXBCoKUNG:1» | ||
colomon | r: printf ("%f\n", 1428.3) | ||
p6eval | rakudo 3a8d48: OUTPUT«Null PMC access in get_number() in sub sprintf at src/gen/CORE.setting:2414 in sub printf at src/gen/CORE.setting:2419 in block at /tmp/5_rUagHeEK:1» | 15:25 | |
colomon | am I doing something obvious wrong there? | ||
n: printf ("%f\n", 1428.3) | |||
p6eval | niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: index out of range at /home/p6eval/niecza/lib/CORE.setting line 1301 (sprintf @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 1302 (printf @ 5)  at /tmp/Ls_xw_E4jY line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setti… | ||
colomon | n: printf ("%e\n", 1428.3) | 15:26 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: index out of range at /home/p6eval/niecza/lib/CORE.setting line 1301 (sprintf @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 1302 (printf @ 5)  at /tmp/_m0G3uw7aR line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setti… | 15:27 | |
moritz | colomon: yes, you're only passing one argument (a parcel) to printf | 15:30 | |
colomon: because there's a space before the ( | |||
colomon | n: printf("%e\n", 1428.3) | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«1.428300e+003» | ||
colomon | moritz++ | 15:31 | |
PerlJam | Seems like that would be an easy thing to check for and give a more awesome error message | ||
colomon | PerlJam: amen | ||
15:32
isBEKaml_mobile joined
|
|||
colomon | can anyone think of a better error message for this than "Not enough arguments for this format string" ? | 15:35 | |
15:35
hash_table joined
|
|||
isBEKaml_mobile | moritz: thanks for the merge. Can I send out the mail to p6c or will you? (I figured I'd send it out after upload to rakudo.org, so as not to cause confusion) | 15:36 | |
colomon has the Niecza source open and is only pausing in case someone has a more awesome message | |||
isBEKaml_mobile | (I won't be around for long - crappy network on mobile) | 15:37 | |
PerlJam | colomon: if you could check the type of the format and see that it's a Parcel, you could say "maybe you put a space before the opening parenthesis?" :) | 15:40 | |
FROGGS | colomon: there are error message like: Do ABC if you meant to do XY. | 15:41 | |
colomon | PerlJam: That is a much more complicated solution! | ||
FROGGS | PerlJam: right | ||
PerlJam | indeed | ||
FROGGS | but these suggestions in the messages are pretty awesome | ||
15:42
leprevost joined
|
|||
PerlJam | or ... you could make passing a Parcel as the only arg do what you were expecting. | 15:43 | |
(I know ... I'm going the wrong way on the simple..complex spectrum) | 15:45 | ||
15:45
jlaire left
|
|||
moritz | isBEKaml_mobile: I haven't uploaded yet (don't have the ssh key at hand; must wait until I get home), so please wait with the p6c mail | 15:47 | |
15:47
jlaire joined
|
|||
dalek | ecza: af64300 | (Solomon Foster)++ | lib/Printf.cs: More meaningful error message when a printf format string tries to consume more arguments than are available. |
15:47 | |
colomon now understands the original $work problem this script was supposed to study, for what it's worth. | 15:48 | ||
isBEKaml_mobile | moritz: Okay. I'll come back in 3-4 hrs ish. | ||
BBL | |||
15:48
isBEKaml_mobile left
|
|||
colomon checked in the simple change to Niecza that probably would have told him what the heck was going on, without mucking about triyng to analyze parcels. | 15:51 | ||
PerlJam | colomon++ | 15:52 | |
15:54
skids joined
|
|||
moritz | joyofcoding.org/ # sounds like fun :-) | 15:59 | |
colomon | Huh. I love the idea of the conference, but the actual schedule they have probably would not convince me to drive an hour for it, much less fly to Europe. :) | 16:01 | |
moritz | yes, same here | ||
timotimo | wow, 180 euros | 16:02 | |
for such a short conference! | |||
FROGGS | thats a bit much compared to perl conferences | ||
tadzik | moritz: are you not in Europe anymore? | 16:04 | |
16:04
benabik joined
16:06
pmurias left
|
|||
moritz | tadzik: I am :-) | 16:07 | |
tadzik | not in Europe? :) | ||
moritz slaps tadzik | |||
tadzik | Really, how can I tell! :D | 16:08 | |
FROGGS | ohh, you could tracert him | ||
tadzik | suddenly, Netherlands | ||
FROGGS | gtg home, see ya later | 16:09 | |
16:09
FROGGS left,
benabik_ joined,
benabik left,
benabik_ is now known as benabik
16:13
brrt joined
|
|||
brrt | hi folks, i had an idea recently | 16:14 | |
what if we made the allocators / garbage collectors for a (hypothetical) perl vm not only polymorphic, but hierarchical? | |||
so that for example, we could have an actual stack of call frames, allocated by its own special magic allocator | 16:15 | ||
and this would live alongside of the common allocator | 16:16 | ||
rurban | wouldn't this be super slow? | 16:18 | |
brrt | no why? | ||
or, why whould you think it'd be slow | |||
rurban | The GC wouldn't have a world-view then, it would need to scan all active call frames also | ||
brrt | could easily be that i'd oversee something | 16:19 | |
well, yes | |||
rurban | not only data, code also | ||
brrt | why code? | ||
rurban | I'm also thinking the GC for my p2 vm right now. | ||
brrt | whats p2? parrot-two? | ||
rurban | the call frames are in code only | 16:20 | |
brrt | rurban, we should work together | ||
rurban | perl 11 | ||
brrt | ah | ||
rurban | perl11.org/p2/ | ||
brrt | very well | ||
hmm | |||
rurban | my GC has no proxies yet, so GC with native threads are slower | ||
brrt | obviously its more complex than i had imagined just now | 16:21 | |
rurban | Stefan Seiferts hybrid threads are better | ||
brrt | but hierarchical allocators / collectors would allow you to lock only a single allocator at a time | ||
rurban | I'd need some help for sure :) | ||
hmm | 16:22 | ||
brrt | but, indeed, you wouldn't view the world | ||
i'm reading that page | 16:23 | ||
it seems pretty nice | |||
i'm impressed | 16:27 | ||
rurban | I believe libp2 would easier to target than jvm for nqp, and it will be smaller and faster for sure. | ||
PerlJam gets lots of segfaults when running "make test" on potion | |||
rurban | yes, Just fixed the segfaults now... my fault | ||
brrt | well, you can't always get what you want | ||
:-p | |||
brrt is going to be off | 16:28 | ||
and whenever i do get my own computer back, well, i'll look into this some more | |||
and maybe i'm going to have to work out the details of a hierarchical allocator / collector scheme, too | |||
rurban | I got windows problems on p2, after switching to a shared lib | 16:29 | |
16:29
cog left
|
|||
brrt | its like evolution, but for vms | 16:30 | |
awesome | |||
16:30
brrt left
|
|||
PerlJam | It would be interesting to see a potion-backed NQP | 16:32 | |
16:34
pmurias joined
|
|||
hoelzro | potion as in _why potion? | 16:35 | |
pmurias | jnthn: would it be a good idea to use qast_output_is_approx($block,$number)? | ||
16:36
amkrankr1leuen is now known as amkrankruleuen,
amkrankruleuen left,
amkrankruleuen joined
|
|||
rurban | yes, _why's potion. I tried to contact hime, but it's hard when you are not french, I guess. I'll be in Sandy, UT tomorrow though | 16:38 | |
Esp. to ask around the GC | |||
pmurias | rurban: how does being french help with contacting _why? timezones? | 16:42 | |
16:44
hoelzro is now known as hoelzro|away
16:45
Targen left
|
|||
rurban | pmurias: He is notorious for not ansering, but he loves the french somehow | 16:47 | |
16:51
bluescreen10 joined
|
|||
rurban | we are also struggling with libsyck not being maintained | 16:51 | |
pmurias | rurban: have you considered basing p2 on v8 or the dart vm? | 16:58 | |
rurban | for sure not. p2 is a much better VM than v8 or the dart vm. | ||
faster, better and smaller | |||
16:58
spider-mario joined
|
|||
rurban | I thought first of vmkit, but it was too big and horrible code. | 16:58 | |
benabik | I lost a lot of interest in VMKit once I realized their GC was written in Java and then JITted using their custom JVM-in-VMKit system. | 17:02 | |
17:06
wk left
17:07
benabik left,
benabik_ joined
17:11
FROGGS joined
|
|||
pmurias | rurban: did you do benchmarks? (I didn't) | 17:13 | |
dalek | kudo-js: 82e01d7 | (Paweł Murias)++ | t/ (3 files): steal t/qast_trig.t, use &quast_output_is_approx when comparing floating point values |
||
17:16
Chillance joined
17:21
SunilJoshi left
|
|||
dalek | kudo-js: 401da8f | (Paweł Murias)++ | t/qast_string.t: steal t/qast_string.t |
17:21 | |
rurban | pmurias: benches are at the top of perl11.org/p2/ the alioth benchmartk scripts are also there as example. | 17:23 | |
17:26
eternaleye_ is now known as eternaleye
17:27
benabik joined,
benabik_ left
17:28
thou joined
17:30
PacoAir left
17:32
kaleem joined
17:36
wk joined
17:38
MayDaniel joined
|
|||
rurban | I'm gone now for a week into the mountains of UTAH | 17:57 | |
18:00
PacoAir joined
18:03
dakkar left
|
|||
moritz | phenny: tell isBEKaml that I uploaded the 2013.01 release tarballs. Thanks for doing the release! | 18:07 | |
phenny | moritz: I'll pass that on when isBEKaml is around. | ||
[Coke] | rurban: have fun! | ||
PerlJam | moritz: is there more of a procedure than "whoever is doing the release gets the tarballs to someone who can upload them" ? | 18:14 | |
moritz | PerlJam: no, not yet :( | 18:16 | |
PerlJam: we're pretty new to this business of having 1) non-commiters doing the releases and 2) not having github uploads | 18:17 | ||
18:21
kaleem left
18:25
colomon left
18:26
SamuraiJack_ left
18:29
leprevost left
18:30
kst` is now known as kst
18:34
rindolf left
18:42
pmurias left
18:46
thou left
18:47
alec left,
colomon joined
18:54
simcop2387_ joined,
simcop2387_ left,
simcop2387_ joined
18:55
simcop2387 left,
simcop2387_ is now known as simcop2387
|
|||
jnthn | evening o/ | 18:57 | |
arnsholt | 'lo | 18:58 | |
FROGGS | hi | ||
19:01
alec joined
19:02
fgomez joined
|
|||
FROGGS | r: sub redo_ { 42 }; say redo_ | 19:04 | |
p6eval | rakudo 3a8d48: OUTPUT«42» | ||
FROGGS | r: sub next_ { 42 }; say next_ | ||
p6eval | rakudo 3a8d48: OUTPUT«42» | ||
FROGGS | r: sub next_ { 42 }; say next_() | ||
p6eval | rakudo 3a8d48: OUTPUT«42» | ||
FROGGS | r: sub next_() { 42 }; say next_() | ||
p6eval | rakudo 3a8d48: OUTPUT«42» | ||
FROGGS | nqp: sub next_() {}; next_() | 19:05 | |
p6eval | nqp: OUTPUT«Confused at line 2, near "next_()"current instr.: 'panic' pc 13207 (src/stage2/gen/NQPHLL.pir:4680) (src/stage2/gen/NQPHLL.pm:328)» | ||
FROGGS | nqp: sub redo_() {}; redo_() | ||
p6eval | nqp: OUTPUT«Confused at line 2, near "redo_()"current instr.: 'panic' pc 13207 (src/stage2/gen/NQPHLL.pir:4680) (src/stage2/gen/NQPHLL.pm:328)» | ||
FROGGS | ahh | ||
nqp: sub last_() {}; last_() | |||
p6eval | nqp: OUTPUT«Confused at line 2, near "last_()"current instr.: 'panic' pc 13207 (src/stage2/gen/NQPHLL.pir:4680) (src/stage2/gen/NQPHLL.pm:328)» | ||
FROGGS | nqp: sub ne_() {}; ne_() | 19:06 | |
p6eval | nqp: ( no output ) | ||
19:06
alec left
|
|||
jnthn | phenny: tell pmurias we could do something like that, yes | 19:08 | |
phenny | jnthn: I'll pass that on when pmurias is around. | ||
19:19
alec__ joined
19:26
masak_ joined,
sergot_ joined,
Yappocall_ left,
Yappocall_ joined,
Gothmog__ joined
19:27
zby_home joined
19:28
alec__ left,
Gothmog__ is now known as Gothmog_
19:29
jlaire_ joined,
bakedb_ left
19:30
sjn left,
jlaire left
19:31
bakedb joined
|
|||
skids has officially done too much perl6. Finding perl5 sigil dereferencing very foreign | 19:33 | ||
19:34
jlaire_ is now known as jlaire
|
|||
moritz | skids: today I tried %hash.perl in Perl 5 code :-) | 19:35 | |
skids | I spent 3 minutes trying to figure out that I should be saying $r->{key} instead of $r{key} | 19:36 | |
19:37
sjn joined
|
|||
skids | fortunately I did remember to use Data::Dumper :-) | 19:37 | |
TimToady | that's just about the first thing we fixed in designing Perl 6 | ||
masak_ | skids: well, naturally you can't call the reference to a function, you have to call the function :P | 19:39 | |
19:39
masak_ is now known as masak
|
|||
timotimo | what does using $r{key} cause in perl5? a LTA error message? | 19:41 | |
TimToady | no such array %r | 19:42 | |
doy | "Global symbol "%r" requires explicit package name" | ||
TimToady | which is LTA several ways | ||
19:43
Targen joined
|
|||
timotimo | "in perl5, please use ->{...}" ;) | 19:43 | |
skids | That is assuming you are using strict. Otherwise it just hands you and undef. | ||
huf | err, hash | ||
skids | s/d// | ||
arnsholt | skids: If you're not using strict you deserve what you get ;p | ||
TimToady | "it just hans you and undef"? :) | 19:44 | |
skids | damn I missed a d. | ||
geekosaur | just displaced it a bit :) | 19:46 | |
timotimo | i would like some help to figure out why i get "Null PMC access in get_string()" when i do this locally: | 19:47 | |
r: class Foo is Barf { } | |||
p6eval | rakudo 3a8d48: OUTPUT«===SORRY!===Cannot call 'trait_mod:<is>'; none of these signatures match::(Mu:U $child, Mu:U $parent):(Attribute:D $attr, :rw(:$rw)!):(Attribute:D $attr, :readonly(:$readonly)!):(Attribute:D $attr, :box_target(:$box_target)!):(Routine:D $r, … | ||
[Coke] | timotimo: what version of rakudo? | 19:54 | |
are you using the REPL, command line, a fiel? | |||
timotimo | based on efac0f172751d41bbeb7b4639b3325cf557312ef - this is the repl | 19:55 | |
[Coke] | works the other 2 ways - it's only failing in the REPL. | ||
I suspect because it's throwing an error | |||
you need the REPL and the is. | 19:57 | ||
timotimo | ah, yes, when i use a file instead, i get a more helpful error. thanks! | 19:58 | |
indeed, i forgot to yada the exception i had created | |||
[Coke] | that's probably still a bug that should be fixed, though. | 19:59 | |
not sure why the REPL is acting differently on that particular error. | |||
timotimo | is there any hope at all for getting a faster rakudo compilation in the future? | 20:01 | |
except: "throw a faster cpu at it"? | 20:02 | ||
nwc10 | throw it onto a different VM? | ||
timotimo | hm, jnthn do you think nqp-jvm will be faster at compiling? | ||
maybe when the compiler itself runs on the jvm already | 20:04 | ||
Nominal type check failed for parameter '$got'; expected Any but got Foo instead - i *really* have no idea how i got that to happen. any way to get a nqp-level stacktrace or something? | 20:06 | ||
20:09
alec__ joined
|
|||
timotimo | indeed, --ll-exception seems helpfuler | 20:09 | |
20:09
ermlich joined
|
|||
masak | jQuery seems to have an interesting approach to their ecosystem: blog.jquery.com/2013/01/16/announci...-registry/ | 20:12 | |
(possibly relevant for Panda enthusiasts) | |||
tadzik reads | |||
nwc10 | this is arm-wavy, but I hope that the JVM offers better profiling tools than Parrot, meaning that it becomes easier to spot if there are any quick wins on the compiler | ||
either CPU or memory | 20:13 | ||
20:16
am0c left
20:26
sjohnson joined
20:30
swarley-freenode joined,
swarley-freenode is now known as swarley
|
|||
swarley | How would I do a unicode range in a regular expression? | 20:38 | |
20:38
zby_home left
|
|||
swarley | i.e [\u0080-\00c0] | 20:38 | |
s/\\00c0/\\u00c0/ | 20:39 | ||
moritz | nr: say 'A' ~~ / <[ \c[64] .. \c[66] ]> / | ||
p6eval | rakudo 3a8d48: OUTPUT«「A」» | ||
..niecza v24-18-gaf64300: OUTPUT«#<match from(0) to(1) text(A) pos([].list) named({}.hash)>» | |||
moritz | skids: like this | ||
erm sorry, meant swarley | 20:40 | ||
swarley | oh okay, thank you | ||
20:46
ismail joined
|
|||
masak | swarley: infix:<..> means "range" in the big language, so we borrowed it to mean that in the small language too :) | 20:47 | |
timotimo | jnthn: so i'm trying to enhance apply-trait to catch the X::Inheritance::UnknownParent (that i just created) that gets rethrown from self.ex-handle, but i don't know how. nqp doesn't seem to like my try { ex-handle; CATCH { when X::Inheritance::UnknownParent { ... } } }. | 20:50 | |
oh, duh, of course say takes parens around the argument | 20:52 | ||
didn't make it better, now it gets OOM-killed in stage "start" | 20:56 | ||
21:06
kaare_ left
21:11
bbkr__ left
|
|||
jnthn | timotimo: NQP doesn't have given/when, you'll need an explicit nqp::istype | 21:11 | |
Or something like | 21:12 | ||
*like that | |||
[Coke] | nwc10: the kcachegrind output from parrot is pretty helpful. | 21:13 | |
but yah, there are alot of JVm specific tools that can give you a lot of data - some of it only relevant to the java side, though. | 21:14 | ||
21:14
prammer left
|
|||
timotimo | i'm not doing that correctly. can i nopaste you my diff and you'll have a quick look? | 21:15 | |
sprunge.us/Taei | |||
currently unable to compile it, i think. it OOMs. | |||
[Coke] | am I the only one that wants to line up those { ... } blocks? | 21:16 | |
timotimo: why is the CATCH doing an explicit check on exception type in code rather than as CATCH { <type> { handler for this type } } ? | 21:17 | ||
21:17
prammer joined
|
|||
[Coke] | er, CATCH { when X::Inheritance::UnknownParent { ... } } | 21:18 | |
21:19
bapa joined
|
|||
jnthn | [Coke]: it's NQP code | 21:19 | |
[Coke]: NQP doesn't support such sugar :) | |||
[Coke] | jnthn: but waaaaaah | ||
21:19
thou joined
|
|||
jnthn | timotimo: Try commenting out the rethrow | 21:19 | |
[Coke] wishes there was some sort of easy way to tell if something is p6 or nqp6. | 21:20 | ||
jnthn | timotimo: Oh. NQP has an annoying bug that can make rethrows inside CATCH blocks hang (since the CATCH block catches the re-throw) :/ | 21:21 | |
timotimo | ooooh | ||
jnthn | You may be running into that. | ||
timotimo | that's why ex-handle does the thing with the $nok variable! | ||
bbl | 21:24 | ||
masak | [Coke]: I've been coding nqp for a few days now. I tend to lean on the files in t/nqp for what's possible and idiomatic. | 21:32 | |
21:49
benabik left
21:52
hash_table left
|
|||
timotimo | "half minute hero" is the right game for compiling rakudo in between tests | 21:57 | |
22:01
Chillance left
22:04
LordVorp joined
22:05
johnjohn101 joined
|
|||
johnjohn101 | do i get rakudo support in this channel? | 22:06 | |
doy | yes | ||
johnjohn101 | what it the best way to put rakudo onto ubuntu? | 22:07 | |
jnthn | johnjohn101: Depends how you define "best". Probably best is to grab the latest tarball from rakudo.org/downloads/star/ and compile it. That way you get something up to date. | 22:10 | |
timotimo | how do i get the name of a class? Mu:U $type is the thing in my signature. neither ^.name nor .name nor HOW.name work | 22:14 | |
(at least with .HOW.name i get "too few positional arguments passed: 1. expected 2") | |||
jnthn | $obj.HOW.name($obj) | 22:15 | |
timotimo | oh. well that makes some sense | ||
jnthn | meta-objects are factored that way to make sure we can support prototypical object systems too, where the HOW is a singleton. | ||
22:16
skids left
22:22
PacoAir left
|
|||
timotimo | i've got multi trait_mod:<is>(Mu:U $type, *%fail) { and i use %fail.keys[0] to initialise the $.parent attribute of the exception. any idea why it's Any instead of a string? | 22:22 | |
jnthn | r: multi trait_mod:<is>(Mu:U $type, *%fail) { say %fail.keys }; class Foo is Bar { } | 22:23 | |
p6eval | rakudo 3a8d48: OUTPUT«Bar» | ||
jnthn | r: multi trait_mod:<is>(Mu:U $type, *%fail) { say %fail.keys[0] }; class Foo is Bar { } | 22:24 | |
p6eval | rakudo 3a8d48: OUTPUT«Bar» | ||
jnthn | timotimo: No, it seems to work there... | ||
timotimo | does it make a difference that it's in src/core? | ||
jnthn | Shouldn't. | ||
timotimo | oh, duh! i renamed the attribute some time ago, but didn't change the new call | ||
jnthn | ah :) | ||
timotimo | advancing at a snail's pace here :| | 22:25 | |
but i'm progressing in "Half Minute Hero" instead, so ... not all wasted time :) | |||
masak | isBEKaml++ # Rakudo #60 | ||
dalek | rl6-roast-data: 561975f | coke++ | / (4 files): today (automated commit) |
||
22:25
lichtkind joined
|
|||
[Coke] | rakudo summary showing one passed todo test. | 22:26 | |
(integration/99problems-21-to-30.t) | |||
22:26
MayDaniel left
22:27
erkan joined,
erkan left,
erkan joined,
ismail left
|
|||
timotimo | sounds nice :) | 22:29 | |
"Foo cannot inherit from Unknown because it is unknown." - but it doesn't seem to have a proper stack trace (or rather: position information) | 22:30 | ||
the line number is there, but the -----> points at an empty string | |||
jnthn | timotimo: That's not specific to your exception | 22:31 | |
timotimo | OK | 22:32 | |
any particular place/file where the levenshtein function would fit in? | |||
jnthn | If you're just gonna call it from World, guess it could go in there | 22:33 | |
22:33
stevan_ joined
22:34
stevan__ joined
|
|||
timotimo | okay | 22:36 | |
lichtkind | timotimo: may i ask you how long your active on perl6? | 22:37 | |
22:38
stevan_ left
|
|||
timotimo | a few months. 2 at most, i think | 22:41 | |
22:43
mtk left
|
|||
timotimo | oh, there's another problem, jnthn. Should i be able to nqp::istype($_, X::Inheritance::UnknownParent) inside the CATCH block? because i have a say in there that doesn't seem to be called. | 22:44 | |
jnthn | timotimo: You need to use find_symbol to lookup up the exception type | 22:45 | |
22:46
hash_table joined,
hash_table left
22:50
Rix joined
|
|||
timotimo | jnthn: so i'm thinking i'll look at the code in find_symbol and modify it so that it enumerates all names and compares them against the given name, would that make sense or is there a simpler way to go through all symbols that exist? should i even recurse into Foo::* and Bar::* if i find them? | 22:55 | |
jnthn | timotimo: No, walking the blocks is probably the easiest way | 22:57 | |
timotimo: You only need care about type objects | |||
nqp::isconcrete($thing) will produce 0 for the things you need to care about. | 22:58 | ||
timotimo | excellent, thanks! :) | ||
23:01
bluescreen10 left
|
|||
timotimo | would something like this work? my @candidates; sub evaluate($candidate) { nqp::push(@candidates, $candidate) if levenshtein($candidate, $attempted) < 5 }; walk-blocks(&evaluate);? (mostly wondering about passing the sub and the lexical scope of @candidates) | 23:01 | |
23:02
rking joined
|
|||
jnthn | Should do; nqp gets closures pretty right :) | 23:04 | |
timotimo | that's a pretty excellent thing for a "low level"/"close to metal"/"compiler implementation" language | 23:05 | |
masak | closures are fairly close to the metal, if your metal is made of lambda calculus :P | 23:06 | |
jnthn | I use them all over the compiler. They're too useful not to have. | ||
timotimo | agreed | ||
masak | that's how I feel about them nowadays too. | 23:07 | |
jnthn | I'm at the point where I find it hard to think in languages that lack them. | ||
masak | aye, same. | ||
jnthn | C I can sorta cope-ish with in so far as it has function pointers, even if not closures. | ||
But Java often leaves me scratching my head. :) | |||
masak | C has an excuse: it has manual memory management. | 23:08 | |
jnthn | Aye | ||
masak | so C essentially does the most with what it has. | ||
Java has no such excuse. | |||
jnthn | C isn't a language I'd choose for many projects, but certainly ain't something I seek to avoid when it fits. | 23:09 | |
23:09
pmurias joined
|
|||
pmurias | jnthn: ping | 23:09 | |
phenny | pmurias: 19:08Z <jnthn> tell pmurias we could do something like that, yes | ||
jnthn | pmurias: o/ | ||
23:11
spider-mario left
|
|||
TimToady | swarley: you'd want \xDEAD to specify a Unicode character in hex | 23:14 | |
masak | r: say "\xDEAD" | 23:16 | |
p6eval | rakudo 3a8d48: OUTPUT«===SORRY!===Invalid character for UTF-8 encoding» | ||
masak | ...though perhaps not exactly that one :P | ||
pmurias | jnthn: I have already switched to that for rakudo-js, should I change nqp-jvm-pre? | ||
jnthn | pmurias: Yes, please. | ||
swarley | r: say "\x00A1" | ||
p6eval | rakudo 3a8d48: OUTPUT«¡» | ||
jnthn | pmurias: Have you a commit bit? | 23:17 | |
pmurias | no | 23:19 | |
jnthn | you have now | 23:20 | |
masak | 'night, #perl6 | 23:21 | |
lichtkind | good night masak | 23:23 | |
sorear | o/ | 23:25 | |
timotimo | nqp::istype($_, self.find_symbol(["X", "Inheritance", "UnknownParent"])) { - this seems wrong - what's the right way to do this? | ||
pmurias | jnthn: pastie.org/5712221 | 23:26 | |
jnthn | timotimo: It looks right to me... | ||
timotimo | sprunge.us/NYNI | 23:27 | |
this is the code i've come up with so far. the say doesn't seem to be called. | |||
jnthn | pmurias: Huh... | ||
lue | hello o/ | 23:28 | |
jnthn | pmurias: Have you had problems building this before? | ||
timotimo: I wonder if the issue is that you've got the Parrot exception there, which has the Perl 6 one wrapped up inside of it | 23:29 | ||
sorear | lue o/ | ||
jnthn | timotimo: Try nqp::getpayload($_) | ||
(in place of the $_) | |||
timotimo | thanks, will try | ||
should i ex := thepayload, too? | 23:30 | ||
jnthn | yeah | ||
pmurias | jnthn: tried building it for the first time | ||
lue is once again vexed with NQP and add_parrot_vtable_handler_mapping | |||
pmurias | jnthn: maybe I have a wrong version of java | 23:31 | |
jnthn | pmurias: That's about my best guess | ||
lue: I wouldn't vex yourself too much with that, it's endangered... | 23:32 | ||
pmurias | jnthn: java -version => pastie.org/5712243 | ||
lue | Well, not that specifically. I meant a role's apparent inability to apply is traits to a role's variable in NQP. | ||
jnthn | I have java version "1.7.0_07" | ||
23:35
thou left
|
|||
pmurias has tried to avoid java thus far, so is completely ignorant about the various versions etc. | 23:37 | ||
jnthn has avoid it for most of his career also ;) | 23:38 | ||
lue has successfully avoided Oracle Java so far. | |||
timotimo | jnthn: your guess was absolutely correct. rethrowing the payload of the exception gets me an error, though, so i'll rethrow the wrapped exception instead. ("SixModelObject does not implement get_pmc_keyed_str") | 23:40 | |
jnthn | I've only ever delivered one thing in Java for a $dayjob client, some years ago. AFAIK, it's still making them plenty of money... | ||
23:40
skids joined
|
|||
jnthn | timotimo: aye, sounds right | 23:41 | |
pmurias | jnthn: updating the java version seemed to solve the problem | 23:43 | |
jnthn | \o/ | ||
pmurias | all tests pass | 23:45 | |
jnthn | Dang, I need to write more tests :P | ||
diakopter | <.<. | ||
lue suddenly thinks of NQP and gcj ... | 23:46 | ||
23:47
pbt joined
23:48
pbt left
23:49
stopbit left
|
|||
pmurias | jnthn: btw shouldn't a 3.0 be printed as 3 instead of 3? | 23:52 | |
* instead of 3.0 | 23:53 | ||
jnthn | prn: say 3.0e0 | 23:55 | |
p6eval | rakudo 3a8d48, niecza v24-18-gaf64300, pugs: OUTPUT«3» | ||
jnthn | Looks like ;) | ||
It's not intentional, just what someDouble.toString() does by default. | |||
pmurias | nqp: say 3.0; | ||
p6eval | nqp: OUTPUT«Confused at line 2, near "say 3.0;"current instr.: 'panic' pc 13207 (src/stage2/gen/NQPHLL.pir:4680) (src/stage2/gen/NQPHLL.pm:328)» | ||
pmurias | nqp: say(3.0); | ||
p6eval | nqp: OUTPUT«3» | ||
pmurias will try to fix that once "make test" finishes running | 23:57 | ||
timotimo | what's the canonical way to iterate over all entries in a hash in nqp? there seems to be no nqp::hashkeys or nqp::keys or something? | 23:58 | |
pmurias | timotimo: for | ||
timotimo: it gives you a key/value object | 23:59 | ||
timotimo | oh, that's surprisingly good | ||
does it work the same way with iterating over lists? why do i keep seeing my $i := +@foo; while $i > 0 { ... }? |