»ö« 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! | tinyurl.com/p6contest Set by moritz_ on 28 December 2010. |
|||
masak | 'night, #perl6 | 00:06 | |
00:07
masak left
|
|||
jnthn | Tssk. Either I'm dumb tonight or I've hit the point where all the things I need to do next in nqp-rx are a bit tricky. :) | 00:07 | |
00:10
lopaway is now known as lopnor
|
|||
diakopter | jnthn: :) | 00:11 | |
parrot or clr | |||
dalek | p-rx/nom: 25921fc | jonathan++ | src/Regex/Cursor.pm: Port Cursor.MATCH partially to NQP; this should more generally work with 6model too. |
00:12 | |
p-rx/nom: daf5b1e | jonathan++ | src/NQP/ (2 files): Quick 'n' dirty cut of private methods. |
|||
jnthn | diakopter: More how to structure/design stuff. | 00:13 | |
diakopter: It ties into Cursor stuff | |||
diakopter: And realizing that...the PIR version cheats like hell. :-) | 00:14 | ||
diakopter: I guess you already discovered this. :) | |||
Fiddling with the attributes of other objects directly rather than doing accessor calls etc. | |||
diakopter | yeah but it's faster | 00:15 | |
:D | |||
jnthn | Right | ||
I'm pondering introducing a syntax for it to NQP. | |||
diakopter | ASSIGNMENT | 00:16 | |
oh wait.... ;) | |||
jnthn | :) | ||
Also it kinda likes native types. :) | |||
And the extra boxing all other the place that an NQP version would do is...gonna hurt a bit. | 00:17 | ||
diakopter | yeah. the nqpclr work I've done is using native types in the individual pattern matching routines... | ||
as you know/remember, I think | |||
jnthn | Yeah, I noticed when I read it. | ||
Maybe better to just go the whole hog. | |||
diakopter | but of course boxed when calling out to everything else | 00:18 | |
Tene | TimToady: In many cases, you *can* get a filename for $*IN | ||
jnthn | If I'm gonna do that, I'm going to prototype it on nqpclr first. | ||
Tene | ls -l /proc/self/fd/0 < /etc/hosts | ||
00:18
MayDaniel left
|
|||
jnthn | Then spend a while wondering how the heck to get Parrot's lexical handling to cope... :) | 00:18 | |
diakopter: Did you find that having real constants would be useful too? | 00:19 | ||
In a sense, this stuff all needs doing but...its a yak shave at the moment. All I really wanted was to get grammars using 6model. Then I realized 6model is no fun to use from PIR. :) | 00:21 | ||
eh well | 00:22 | ||
jnthn hunts for the shaver and starts packing to head to Tibet... :) | |||
sorear has renewed competition ? | 00:23 | ||
diakopter | heh | 00:24 | |
someday | |||
if you view the comparison as such | |||
sorear | well, both of us are aiming for Christmas | 00:25 | |
diakopter | ;) | ||
jnthn | If I've learned anything from nqpclr, it's how nice being able to do what the heck I like with the runtime layer is. | 00:27 | |
diakopter | commitbits are fun | ||
jnthn | diakopter: :) | 00:28 | |
sorear | jnthn: yes. | 00:29 | |
00:29
plobsing joined
|
|||
dalek | href="https://modules.perl6.org:">modules.perl6.org: f568ac1 | snarkyboojum++ | web/build-project-list.pl: Add proto and camelia logos to build script |
00:30 | |
diakopter | how did I miss this www.gameinformer.com/b/news/archive...-date.aspx | 00:54 | |
[Coke] | exit | ||
diakopter | [Coke]: :P | ||
01:00
risou joined,
cdarroch left
|
|||
[Coke] | ww! | 01:02 | |
colomon is trying to figure out if www.ecse.rpi.edu/Homepages/wrf/Rese...npoly.html is brilliant or very subtly wrong | 01:22 | ||
Ah, interesting. It's magic simplicity comes from the fact it doesn't handle boundary cases consistently. | 01:33 | ||
*Its | |||
01:34
kst left,
risou_ joined,
kst joined
|
|||
colomon | (Well, it's consistent about how it classifies a particular point on a particular polygon, But it's not consistent in general as to whether points on the boundary are in or of out of the polygon.) | 01:35 | |
01:37
risou left
|
|||
PerlJam | colomon: I'll wager you could improve the method by using Rats instead of floating point numbers. | 01:38 | |
colomon | I don't think it makes much difference in this case. | 01:39 | |
It's interesting, because it really is an inadequate algorithm if you really need to know whether the point is in the interior of the polygon. | 01:41 | ||
But I think it does match masak's specification okay. | 01:42 | ||
(I believe he explicitly stated in #perl6 he didn't care about boundary conditions.) | 01:43 | ||
01:46
lopnor is now known as lopaway
|
|||
colomon is now wondering if there are useful applications where the boundary information isn't important... | 01:47 | ||
02:01
noganex_ joined
02:02
karupanerura joined
02:04
masonkramer_ joined,
masonkramer left,
masonkramer_ is now known as masonkramer,
noganex left
02:07
karupanerura left
02:19
satyavvd joined
02:34
cafesofie left
02:45
clkao left,
cafesofie joined
02:49
araujo left
02:58
araujo joined,
araujo left,
araujo joined
03:00
drbean joined
03:03
mberends left
03:09
hcchien left
03:15
hcchien joined
03:22
vmspb left
03:27
envi joined
03:29
Chillance left
03:36
__rnddim__ is now known as lue
03:38
justatheory joined
03:42
risou_ left
03:59
karupanerura joined
|
|||
dalek | ast: 000e905 | (Fitz Elliott)++ | S02-names_and_variables/perl.t: [perl.t] unfudge final test for RT #64080 (self-assigned hashes) |
04:03 | |
04:23
Su-Shee_ joined
04:27
Su-Shee left
04:34
[particle] left
04:35
[particle] joined
04:44
cafesofie left
04:49
kst left
04:50
kst joined
|
|||
lue | blog post! rdstar.wordpress.com/2011/01/22/so...p6-on-gcc/ | 05:03 | |
05:04
cafesofie joined
05:12
rlinuxguy2 joined
|
|||
rlinuxguy2 | im ready for the perl6, the question is, is the perl6 ready for ME | 05:12 | |
TimToady | not tonight, dear | 05:16 | |
rlinuxguy2 | haha | 05:17 | |
brb reboot | 05:18 | ||
05:18
rlinuxguy2 left
|
|||
lue | If you are not a troll, P6 is ready for you. If you are a troll, Camelia is ready for you. :) | 05:19 | |
sorear | perl6: 1 < (say "Hi"; 2) < 3 | 05:26 | |
p6eval | rakudo 388eed: OUTPUT«Hi» | ||
..niecza v1-181-g98d0cc5: OUTPUT«HiHi» | |||
..pugs: OUTPUT«***  Unexpected ";" expecting term postfix, operator, ":", "," or ")" at /tmp/aH5TL9Zw1A line 1, column 14» | |||
05:27
c9s joined,
molaf joined
05:28
drbean left
05:34
coldhead left
05:38
agentzh joined
05:43
Patterner left
|
|||
diakopter | perlesque: say(1 < (sub (-->int){say("Hi"); return 2})() < 3) | 05:44 | |
p6eval | perlesque: OUTPUT«Unhandled Exception: System.InvalidOperationException: Cannot apply operator 'LessThan' to operands of type 'System.Boolean, System.Int32' at sprixel.Operands.OverloadableOperation..ctor (sprixel.Operator op, sprixel.Operand[] operands) [0x00000] in <filename unknown>:0  at | ||
..sp… | |||
05:45
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
diakopter | hm | 05:57 | |
I guess perlesque could handle limited patterns of such comparison chains | 05:58 | ||
rakudo: say(1 < (say "Hi"; 2) < 3) | 06:00 | ||
p6eval | rakudo 388eed: OUTPUT«HiBool::True» | ||
diakopter | rakudo: say("Hi"; 2) | ||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | ||
diakopter | rakudo: say(say "Hi"; 2) | 06:01 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | ||
diakopter | rakudo: say (say "Hi"; 2) | ||
p6eval | rakudo 388eed: OUTPUT«Hi2» | ||
06:04
stkowski left
06:06
agentzh left
06:07
stkowski joined
|
|||
diakopter | ... (by transforming them into shortcircuiting comparisons with assignments into temporaries | 06:17 | |
06:17
satyavvd_ joined
|
|||
diakopter | ) | 06:17 | |
06:17
satyavvd left
06:20
satyavvd joined
06:21
satyavvd_ left
06:25
satyavvd_ joined
06:28
satyavvd left,
satyavvd joined
06:30
satyavvd_ left
06:38
satyavvd_ joined
06:39
justatheory left,
satyavvd left,
satyavvd_ is now known as satyavvd
06:43
clkao joined
06:44
kst left,
kst joined
|
|||
sorear | TimToady: sub bar(*@lst) { say @lst.perl }; my @x = 1,2; my @y = 3,4; bar(@x; @y) # What should this do? | 06:51 | |
06:51
satyavvd left
06:52
satyavvd joined
07:19
kaare_ joined
07:23
mberends joined
|
|||
diakopter | pugs: sub bar(*@lst) { say @lst.perl }; my @x = 1,2; my @y = 3,4; bar(@x; @y) | 07:38 | |
p6eval | pugs: OUTPUT«[1, 2, 3, 4]» | ||
diakopter | rakudo: sub bar(*@lst) { say @lst.perl }; my @x = 1,2; my @y = 3,4; bar(@x; @y) | 07:39 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | ||
07:39
bacek_ left
|
|||
diakopter | rakudo: sub bar(*@lst) { say @lst.perl }; my @x = 1,2; my @y = 3,4; bar(@x| @y) | 07:39 | |
p6eval | rakudo 388eed: OUTPUT«[any(1, 2, 3, 4)]» | ||
diakopter | heh | ||
sorear | pugs: sub bar($a, $b) { say $a.perl; say $b.perl }; my @x = 1,2; bar(@x; @x) | ||
p6eval | pugs: OUTPUT«[1, 2][1, 2]» | ||
sorear | pugs: sub bar($a, $b) { say $a.perl; say $b.perl }; my @x = 1,2; bar(@x, @x) | ||
p6eval | pugs: OUTPUT«[1, 2][1, 2]» | ||
sorear | pugs: sub bar(\$a, \$b) { say $a.perl; say $b.perl }; my @x = 1,2; bar(@x, @x) | 07:40 | |
p6eval | pugs: OUTPUT«***  Unexpected "\\$" expecting formal parameter or ")" at /tmp/UKerbQBKph line 1, column 9» | ||
sorear | pugs: sub bar(**@a) { say @a.perl }; my @x = 1,2; bar(@x, @x) | ||
p6eval | pugs: OUTPUT«***  Unexpected "**@" expecting formal parameter or ")" at /tmp/afdJwIdbgf line 1, column 9» | ||
sorear | pugs: sub bar(|$a) { say $a.perl }; my @x = 1,2; bar(@x, @x) | ||
p6eval | pugs: OUTPUT«*** No compatible multi variant found: "&bar" at /tmp/_zgXN4ciN_ line 1, column 44 - line 2, column 1» | ||
sorear | pugs: sub bar(|$a) { say $a.perl }; my @x = 1,2; bar(@x; @x) | ||
p6eval | pugs: OUTPUT«*** No compatible multi variant found: "&bar" at /tmp/F2u2hQ6owT line 1, column 44 - line 2, column 1» | ||
sorear | pugs: sub bar(|$a) { say $a.perl }; my @x = 1,2; bar(@x) | ||
p6eval | pugs: OUTPUT«[1, 2]» | ||
sorear | pugs: sub bar(\|$a) { say $a.perl }; my @x = 1,2; bar(@x) | 07:41 | |
p6eval | pugs: OUTPUT«***  Unexpected "\\|$" expecting formal parameter or ")" at /tmp/UIB5LQkaU8 line 1, column 9» | ||
sorear | pugs: sub bar(¢a) { say $a.perl }; my @x = 1,2; bar(@x) | ||
p6eval | pugs: OUTPUT«decodeUTF8': bad data: '\162'***  Unexpected "\162" expecting formal parameter or ")" at /tmp/xH8K1_3nHn line 1, column 9» | ||
07:42
kaare_ left
07:45
kaare_ joined
07:52
bacek_ joined
|
|||
sorear | std: [:so] 1, 3, 4 | 07:52 | |
p6eval | std 625303c: OUTPUT«ok 00:01 120m» | 07:53 | |
dalek | odel: 7d44ea3 | (Martin Berends)++ | java/ (5 files): [java/runtime] use assertions for sanity checks, add P6list and P6mapping |
08:03 | |
08:03
drbean joined
|
|||
moritz_ | good morning zebras | 08:06 | |
rakudo: my regex number { \d+ \. \d+ }; say 'foo 23.42'.comb: &number | 08:07 | ||
p6eval | rakudo 388eed: OUTPUT«23.42» | ||
moritz_ has fun browsing through the p2 solutions | 08:10 | ||
08:19
chitragupt left
08:23
test__ joined,
karupanerura left
|
|||
test__ | say test | 08:23 | |
tadzik | rakudo: say "test" | ||
p6eval | rakudo 388eed: OUTPUT«test» | 08:24 | |
test__ | say 1+2 | ||
say "1+2" | 08:25 | ||
$a =1; $b =2; say $a + $b; | 08:26 | ||
tadzik | test__: you have to speak to 'rakudo', like I did, to execute code | 08:29 | |
08:30
chitragupt joined
08:31
test__ left,
satyavvd left
|
|||
dalek | odel: cc11e4f | (Martin Berends)++ | java/runtime/Rakudo/ (4 files): [java/runtime] rename flattenSpec to FlattenSpec, and minor edits |
08:34 | |
mberends | it seems #perl6 failed the test__ test ;) | 08:35 | |
08:39
ponbiki left
08:41
satyavvd joined
|
|||
tadzik | what a shame :> | 08:42 | |
08:43
HarryS left
|
|||
sorear tempts mberends with a more-complete .net Perl6 implementation | 08:43 | ||
sorear out | |||
mberends is tempted ;) | |||
08:49
stkowski left
08:56
ponbiki joined,
satyavvd left
08:57
satyavvd joined
09:01
cogno joined
09:16
cogno left
09:26
fhelmberger joined,
satyavvd left
09:27
satyavvd joined
09:33
cafesofie left
09:40
cafesofie joined
09:46
drbean left,
satyavvd left
09:47
satyavvd joined
09:49
HarryS joined
09:57
masak joined
|
|||
masak | morning, zebras! | 09:57 | |
jnthn: why would you need the shaver in Tibet? :P | 10:01 | ||
10:02
xinming joined
|
|||
masak | lue: I'm also brushing up my C++ right now. let me know if you need someone to toss questions and ideas with. | 10:05 | |
10:24
cogno joined,
satyavvd left
10:29
masak left,
masak joined
10:30
cogno left
10:34
satyavvd joined,
rod joined
|
|||
rod | rakudo: say 46, 18, 99% | 10:36 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "say 46, 18"» | ||
rod | rakudo: say 46' 18' 99% | ||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "say 46' 18"» | ||
rod | rakudo: say hex 99% | 10:37 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "say hex 99"» | ||
rod | rakudo: hex 99% | ||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "hex 99%"» | ||
rod | rakudo: 99%/12 | ||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "99%/12"» | ||
rod | rakudo: 99%+1 | 10:38 | |
p6eval | rakudo 388eed: ( no output ) | ||
rod | rakudo: say 99%+1 | ||
p6eval | rakudo 388eed: OUTPUT«0» | ||
rod | rakudo: say i love u (99+1)% | 10:39 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "say i love"» | ||
rod | rakudo: (99+1)% | ||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "(99+1)%"» | ||
10:39
drbean joined
|
|||
rod | rakudo: say i love u (99+1) | 10:39 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "say i love"» | ||
moritz_ | std: say i love u (99+1) | 10:41 | |
p6eval | std 625303c: OUTPUT«===SORRY!===Two terms in a row at /tmp/emBfIepvyk line 1:------> say i ⏏love u (99+1) expecting any of: bracketed infix infix or meta-infix statement modifier loopParse failedFAILED 00:01 121m» | ||
masak | rod: there's no postfix:<%> in Standard Perl 6. | ||
rakudo: our sub postfix:<%>($p) { $p / 100 }; say (99 + 1)% | |||
p6eval | rakudo 388eed: OUTPUT«1» | ||
masak | \o/ | 10:42 | |
10:44
rod left
|
|||
masak learns in the backlog from a week (!) ago that #perl6 makes for happy relief for fathers of newborns during long hours of baby rocking | 10:48 | ||
it's amazing how versatile #perl6 is. :) | 10:49 | ||
gfldex | rakudo: sub foo(){}; &i := &foo; say i; | 10:50 | |
p6eval | rakudo 388eed: OUTPUT«Could not find sub &i in main program body at line 22:/tmp/xg_M50ExpC» | ||
masak | gfldex: need to declare &i | ||
also, 'i' without parens will find the constant, not call '&i'. | 10:51 | ||
...I think. | |||
gfldex | i would think so too | ||
masak | rakudo: sub foo(){}; my &i := &foo; say i | ||
p6eval | rakudo 388eed: OUTPUT«0 + 1i» | ||
masak | aye. | 10:52 | |
rakudo++ | |||
gfldex | i don't need to declair i on my local rakudo install | ||
may need to git pull | |||
masak | sounds like it. | ||
gfldex | so you will never be able to say i love you; in perl6 :( | 10:53 | |
gist.github.com/791039 should that work in perl6? | 10:55 | ||
beside the i ofc | |||
10:55
Su-Shee_ is now known as Su-Shee
10:57
nymacro joined
|
|||
masak | lines 12-14 might not do what you think. | 10:58 | |
hm, or maybe they do... :) | |||
std: my &i := sub ($?) {}; my &love := sub ($?) {}; my &you := sub ($?) {}; say i love you | 11:00 | ||
p6eval | std 625303c: OUTPUT«===SORRY!===Two terms in a row at /tmp/78qLapUsPv line 1:------> ($?) {}; my &you := sub ($?) {}; say i ⏏love you expecting any of: bracketed infix infix or meta-infix statement modifier loopParse failedFAILED 00:01 | ||
..127m» | |||
masak | seems binding a &-sigil variable isn't enough to make something a listop. | 11:01 | |
somhow I'm not too surprised. | |||
std: sub i(*@) {}; sub love(*@) {}; sub you(*@) {}; say i love you | |||
p6eval | std 625303c: OUTPUT«===SORRY!===Two terms in a row at /tmp/Vkekfz3JSo line 1:------> sub love(*@) {}; sub you(*@) {}; say i ⏏love you expecting any of: bracketed infix infix or meta-infix statement modifier loopParse failedFAILED 00:01 | ||
..123m» | |||
masak | huh. | ||
gfldex | try without i | 11:02 | |
masak | std: sub i(*@) {}; sub love(*@) {}; sub you(*@) {}; say you love you | ||
p6eval | std 625303c: OUTPUT«ok 00:01 121m» | ||
masak | ah. | ||
gfldex++ | |||
gfldex | it makes sense but the error message is LTA | ||
TimToady: might want to know | |||
masak | it does make sense. | 11:03 | |
you have to do this: | |||
std: sub i(*@) {}; sub love(*@) {}; sub you(*@) {}; say i( love you ) | |||
p6eval | std 625303c: OUTPUT«ok 00:01 121m» | ||
masak | maybe if there were some way to *hide* the constant in a given scope... | ||
gfldex | why is it a constant? what is that needed for? | 11:10 | |
masak | a little thing we like to call complex arithmetic. | 11:12 | |
rakudo: say i * i | |||
p6eval | rakudo 388eed: OUTPUT«-1 + 0i» | ||
masak | rakudo: say (i * i).re | ||
p6eval | rakudo 388eed: OUTPUT«-1» | ||
gfldex | so it's just a shortcut for -1 + 0i | 11:15 | |
masak | -1 + 0i is a complicated way to write -1 | 11:16 | |
just as -1 + 0anything would be. | |||
gfldex | very complex :) | ||
masak | the cool thing is that (i * i == -1) | ||
previously nothing out there had a square that was a negative number. | |||
squares are usually non-negative. | |||
because minus signs cancel. | 11:17 | ||
gfldex | i herein fortell confusion by the following typo: my $i = 100; while(i){ say 'lol'; } | ||
:) | 11:18 | ||
masak | we can't pre-empt all confusion in every developer. | ||
gfldex | rakudo: say i--; | ||
p6eval | rakudo 388eed: OUTPUT«Cannot modify readonly value in '&infix:<=>' at line 1 in main program body at line 7386:CORE.setting» | ||
masak | fwiw, I've never accidentally done that one. | ||
gfldex | perl6 is not for the faint of heart anyways :-> | 11:20 | |
masak | it can be. :) | 11:21 | |
gfldex | i would prefere to use Complex; to have i in the global scope | 11:23 | |
masak | worksforme. | 11:32 | |
11:38
rgrau` joined
11:39
mikehh left
11:42
Alias_ left
12:31
MayDaniel joined
12:34
cafesofie left
|
|||
moritz_ | note that a sub i() { ... } is lexical and thus hides the bare outer i anyway | 12:37 | |
rakudo: sub i { 42 }; say i | 12:38 | ||
p6eval | rakudo 388eed: OUTPUT«0 + 1i» | ||
moritz_ | rakudo: sub i { 42 }; say i() | ||
p6eval | rakudo 388eed: OUTPUT«42» | ||
moritz_ wonders if that's a bug | |||
std: i + i | 12:39 | ||
p6eval | std 625303c: OUTPUT«ok 00:01 120m» | ||
masak | TimToady: I find the way to not mix up blizkost and zavolaj is to remember what they mean, and using the endings as clues. blizkost <=> closeness (-kost), i.e. close to Perl 5. zavolaj <=> "call!" (imperative), i.e. call C. | ||
moritz_ | std: sub i() { }; i ~~ i | ||
p6eval | std 625303c: OUTPUT«ok 00:01 121m» | ||
masak | moritz_: I'm not sure it is a bug. | ||
moritz_: enums work that way too, IIRC. | 12:40 | ||
hm, but the lexical hiding is a good point, I guess. | |||
ask & | |||
afk & | |||
12:42
shi joined
|
|||
jnthn | moritz_: subs are installed as &i | 12:44 | |
moritz_: I guess the i constant probably isn't. | |||
masak | right, so the lexical lookup is actually different. | 12:47 | |
really afk & | |||
13:29
s_mosher joined
|
|||
s_mosher | rakudo: say i > 0 | 13:30 | |
p6eval | rakudo 388eed: OUTPUT«Bool::True» | ||
s_mosher | I don't think that's right. | ||
jnthn | rakudo: say i < 0 # curious :) | 13:35 | |
p6eval | rakudo 388eed: OUTPUT«Bool::False» | ||
jnthn | rakudo: say i == 0 # curious :) | ||
p6eval | rakudo 388eed: OUTPUT«Bool::False» | ||
jnthn | At least it's consistentish. :) | ||
rakudo: say i.re > 0 | 13:36 | ||
p6eval | rakudo 388eed: OUTPUT«Bool::False» | ||
jnthn | rakudo: say i.im > 0 | ||
p6eval | rakudo 388eed: OUTPUT«Bool::True» | ||
jnthn | Hm. :) | ||
s_mosher | it seems to be some kind of epsilon | 13:37 | |
it's smaller than any arbitrarily small number, yet greater than 0 | |||
jnthn | I'm sure one of the more mathematically inclined folks here will have an answer/opinion. :) | ||
s_mosher | iiuc it's supposed to be incomparable when there is an imaginary part | 13:38 | |
what that means for Perl 6 I have no idea | |||
jnthn | Well, to me the question "i > 0" doesn't make a great deal of sense. | ||
s_mosher | aye | ||
IMO it should probably work like NaN comparisons | 13:40 | ||
but my math-fu isn't strong enough to be completely confident there | |||
jnthn | Mine either. :) | 13:41 | |
s_mosher | rakudo: -Complex | 13:44 | |
p6eval | rakudo 388eed: OUTPUT«Type objects are abstract and have no attributes, but you tried to access $!re in 'prefix:<->' at line 4420:CORE.setting in main program body at line 22:/tmp/O0wpFe2kux» | ||
s_mosher | :) | 13:45 | |
oh, that's not really what I wanted to show though | |||
rakudo: Int > Complex | 13:46 | ||
p6eval | rakudo 388eed: OUTPUT«Type objects are abstract and have no attributes, but you tried to access $!re in 'Complex::reals' at line 4224:CORE.setting in 'infix:<cmp>' at line 3406:CORE.setting in 'infix:<<=>>' at line 3414:CORE.setting in 'infix:<>>' at line 3430:CORE.setting in main program | ||
..body… | |||
s_mosher | I think Rakudo just does something arbitrarily wrong to make Complex comparisons work at all | 13:48 | |
14:04
masonkramer left
14:37
drbean left
|
|||
colomon | I think I explained complex comparisons in a blog post about nine months ago. | 14:41 | |
14:42
orafu left
|
|||
colomon | TimToady didn't think complex numbers should blow up things like sort. (And I agree.) | 14:42 | |
14:42
orafu joined
|
|||
colomon | So they compare first by the real part, and if the real parts are equal, then by the complex part. | 14:43 | |
It's arbitrary but consistent. | |||
It's much more of a pragmatic answer than a mathematical answer. | 15:00 | ||
15:02
zby_home_ joined
15:08
Helios left,
am0c joined
|
|||
dalek | odel: 5e43338 | (Martin Berends)++ | java/compiler/JST.pm: [java/compiler/JST.pm] add JST::Null and a $!type to JST::Literal |
15:15 | |
jnthn | mberends: yay :) | ||
15:15
satyavvd left
|
|||
jnthn | mberends: Got any more tests yet? :) | 15:15 | |
mberends | jnthn: no, but that is the intent :) | 15:16 | |
15:16
satyavvd joined
|
|||
jnthn | :) | 15:16 | |
mberends++ | |||
dalek | odel: b237786 | util++ | / (20 files): Fix typos. |
15:18 | |
15:23
Helios joined
|
|||
dalek | odel: 3b6c0e6 | jonathan++ | dotnet/runtime/Runtime/Signatures/Parameter.cs: [dotnet] Fix operator-o spotted by mberends++. |
15:26 | |
15:30
JimmyZ joined
|
|||
JimmyZ | std: sub I() {}; sub prefix:<love>() {}; sub you(*@) {}; say I love you | 15:32 | |
p6eval | std 625303c: OUTPUT«ok 00:01 126m» | ||
JimmyZ | rakudo: sub I() {}; sub prefix:<love>() {}; sub you(*@) {}; say I love you | ||
p6eval | rakudo 388eed: OUTPUT«Too many positional parameters passed; got 1 but expected 0 in 'prefix:<love>' at line 22:/tmp/dUhlOUvqld in main program body at line 22:/tmp/dUhlOUvqld» | 15:33 | |
JimmyZ | bug again? | ||
like the time() bug | |||
15:34
colomon left
|
|||
JimmyZ | std: sub yes(*@) {}; sub or(*@) {}; sub no(*@) {}; say yes or no | 15:36 | |
p6eval | std 625303c: OUTPUT«ok 00:01 121m» | ||
JimmyZ | rakudo: sub yes(*@) {}; sub or(*@) {}; sub no(*@) {}; say yes or no | ||
p6eval | rakudo 388eed: OUTPUT«» | ||
jnthn | JimmyZ: A prefix operator has to take an operand. | ||
e.g. sub prefix:<love>($juice) { } | 15:37 | ||
JimmyZ | oh, then std bug? | ||
jnthn | JimmyZ: std doesn't run code really | ||
JimmyZ: And missing argument that Rakudo gives is runtime error. | |||
JimmyZ | jnthn: thanks, hehe | 15:38 | |
jnthn: Are you going to Tibet? | 15:39 | ||
15:39
cls_bsd left,
colomon joined
|
|||
jnthn | JimmyZ: No, it was just a joke about yaks. :) | 15:39 | |
JimmyZ: I have been to Tibet before though. :) | |||
JimmyZ | hehe, if it is, welcome | ||
15:41
cls_bsd joined
|
|||
masak | oh, yaks. | 15:41 | |
jnthn: thought you were going there to become a hermit. | 15:42 | ||
jnthn | Om nom nom yak. :) | ||
[Coke] finds the bug queue nigh impenetrable. | 15:44 | ||
masak | s_mosher: no, the imaginary unit and (the common definitions of) epsilon don't have much in common. | ||
[Coke]: oh? | |||
[Coke]: it's meant to be penetrable. | |||
dalek | odel: 30430d2 | jonathan++ | dotnet/ (2 files): [dotnet] Add op sigs for a few more ops. |
||
[Coke] | too many bugs, no easy way to sort by "things someone can hack on." | 15:45 | |
masak | s_mosher: complex numbers don't have a natural ordering the way reals do. | ||
[Coke]: oh, agree on both counts. some are marked "LHF" though. | 15:46 | ||
[Coke] | masak: I'm sure we could define one fi we needed to. | 15:47 | |
sorear | good * #perl6 | ||
masak | [Coke]: an ordering? yes, but not a *natural* one. I'd add that it probably isn't a good idea anyway. | 15:49 | |
sorear: \o | |||
JimmyZ | I know that, and you have been to Shenzhen too. Welcome again, I'm in Shenzhen :) | 15:50 | |
masak hopes to visit JimmyZ some day too | 15:52 | ||
jnthn | :) | ||
s_mosher | colomon, I sort of take the position that if you have complex numbers in your list, you know what you're doing and would find sorting behaviour somewhat astonishing | ||
otoh, you probably won't depend on them failing to sort, so I guess that's not so bad | 15:53 | ||
masak, I meant as rendered by Rakudo, not as rendered by mathematics | |||
masak | rakudo: say (1 + 2i) > (2 + i) | ||
p6eval | rakudo 388eed: OUTPUT«Bool::False» | 15:54 | |
masak | rakudo: say (1 + 2i) <= (2 + i) | ||
p6eval | rakudo 388eed: OUTPUT«Bool::True» | ||
masak | hm. | ||
rakudo: say (1 + 3i) <=> (1 + 5i) | |||
p6eval | rakudo 388eed: OUTPUT«-1» | ||
15:55
JimmyZ_ joined
|
|||
s_mosher | as in, i is smaller in Rakudo than anything (positive, real) you can express | 15:55 | |
masak | that's one way to view it :) | ||
[Coke] | msg jnthn: can you please clarify on RT #50118 what's left to do? | ||
s_mosher | yeah, that's where the epsilon comment came from | ||
masak | s_mosher: now I see what you meant... right. | ||
15:56
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
masak | I think I would prefer them to be entirely incomparable in Rakudo. | 15:56 | |
s_mosher | I prefer the incomparable semantics but a use case doesn't come to mind... | ||
masak | either resulting in 0 or in an unthrown exception... | ||
s_mosher | personally I'd do whatever NaN is doing at the time, by default | 15:57 | |
on the other hand, making that happen doesn't seem too hard if you really want it, so I'm not going to lose any sleep | |||
(or: I will, but over more important things) | 15:58 | ||
masak | :) | ||
tadzik | hello | 16:02 | |
masak | tadzik: \o | 16:03 | |
tadzik | how are things? | ||
masak | messy and inconsistent. and that's on a good day. :P | 16:04 | |
in fact, "the order of things" is an oxymoron. | 16:05 | ||
sorear | masak: what do you do if someone wants to put complex numbers into a polymorphic counted 2-3-4 tree? | 16:08 | |
masak | sorear: I ask them what kind of comparator would make sense in their application. | 16:09 | |
because it's not at all clear that there is a one-size-fits all solution. | |||
s_mosher | masak, that's exactly my opinion | 16:10 | |
16:10
JimmyZ left
|
|||
masak | s_mosher: cool! we should start a group on Facebook. :P | 16:10 | |
s_mosher | haha | ||
masak | those_of_us_who_dont_want_rakudo_to_have_an_inherent_comparison_scheme_for_complex_numbers | 16:11 | |
s_mosher | I don't FB though, will a twitter hashtag do? :P | ||
masak counts | |||
looks like it. | |||
tadzik | a github organization :) | 16:14 | |
masak | perl6-without-complex-cmp | ||
sorear | .u 2012 | 16:15 | |
phenny | U+2012 FIGURE DASH (‒) | ||
sorear | .u 2102 | 16:16 | |
phenny | U+2102 DOUBLE-STRUCK CAPITAL C (ℂ) | ||
dalek | odel: 392ff59 | (Martin Berends)++ | java/compiler/JST.pm: [java/compiler/JST.pm] catch up to current dotnet/compiler/DNST.pm |
||
odel: 555553a | (Martin Berends)++ | dotnet/ (2 files): Merge branch 'master' of github.com:jnthn/6model |
|||
[Coke] | SOOOOOOOOOOOOOO SLOOOOOOOW | 16:17 | |
masak | [Coke]: Rakudo? | ||
[Coke] | yes. | 16:18 | |
trying to work on my netbook. it's glacial. | |||
masak | [Coke]: sometimes when I pick up Perl 5 and run something with 'perl', I go "wait, why doesn't it run, I pressed Enter... oh, it's done." | ||
even if jnthn puts in all the 6model optimizations and they work great, Rakudo on Parrot still won't be even close to that fast. we've got some ways to go. | 16:20 | ||
jnthn | The meta-model operations are only part of it. | ||
*optimizations | |||
Parrot needs to change too. | 16:21 | ||
16:21
zby_home_ left
|
|||
[Coke] switches back to his desktop, as it's finally free. | 16:21 | ||
jnthn plans to post something about Parrot's lexicals soon to suggest some improvements tehre | |||
masak | \o/ | ||
sorear | I suspect that once PCT on NQP is merged I'll lose most of my edge :/ | ||
jnthn | sorear: How so? | ||
tadzik | masak: I've had that with svn, except the "it's done" part | 16:22 | |
jnthn | sorear: That's one of many bottlenecks. | ||
sorear | jnthn: memory usage during parse will drop by a factor of about ... 20 | ||
masak | wow, that sounds great. | ||
jnthn | sorear: Well, I am hoping for big improvements there. :) | ||
16:22
felliott joined
|
|||
masak | tadzik: heh. | 16:23 | |
sorear | when I tried to analyze Rakudo build performance a while ago, I came to the conclusion that PCT::Node was the main bottleneck | ||
jnthn | sorear: I got pmichaud++ to agree that we can store node attributes as, well, attributes, rather than doing it all with the capture array. | ||
sorear: I think that'll be a big improvement. | |||
s/array// | 16:24 | ||
16:24
am0c left
|
|||
masak | jnthn: that sounds like a step in the right direction, if you ask me. | 16:24 | |
felliott | hello, #perl6! | 16:26 | |
sorear | hello, felliott! | ||
tadzik | o/ | ||
masak | hi felliott++ | ||
felliott | I have a dead trans-ikeet, and I was wondering if you could help me fix him. | 16:27 | |
masak | it's just sleeping. | ||
felliott | rakudo: for "a" { .trans(""=>""); } | ||
p6eval | rakudo 388eed: ( no output ) | 16:28 | |
felliott | No, 'e's definitely dead | ||
Ate by a Parrot, he were! | |||
masak | no no, he's pining for the fjords. | ||
felliott | rakudo: for "a".."b" { .trans(""=>""); } | ||
p6eval | rakudo 388eed: OUTPUT«too few positional arguments: 2 passed, 3 (or more) expected in <anon> at line 22:/tmp/Y_PJ0giVOM in main program body at line 1» | ||
masak | *sigh* | ||
felliott | Poor trans-ikeet. | ||
masak | that bug again. | ||
felliott | Yep. | ||
masak submits rakudobug | 16:29 | ||
felliott | I guess it's something in the Range class. | ||
masak | rakudo: for "a".."b" { say .PARROT } | ||
p6eval | rakudo 388eed: OUTPUT«Perl6Scalar->StrString» | ||
masak | there you go. | ||
felliott | It happens to Ints, too. | ||
masak | please demonstrate. | 16:30 | |
felliott | rakudo: for 1..2 { say .PARROT; } | ||
p6eval | rakudo 388eed: OUTPUT«Perl6Scalar->IntInteger» | ||
felliott | I found it when looking at an unrelated bug. | ||
[Coke] | sorry, what's the bug? | 16:31 | |
masak | [Coke]: both should be Perl6Scalar->Int | ||
felliott | rt.perl.org/rt3/Ticket/Display.html?id=75114 is the unrelated bug | ||
16:31
justatheory joined
|
|||
felliott | It has a failing test, but it's failing for the wrong reason. | 16:31 | |
[Coke] | masak: why? | 16:32 | |
isn't that an internal detail? | |||
masak | [Coke]: see the original .trans error above? | ||
jnthn | No | ||
It's a problem. | |||
felliott | I know how to Rakudo-ify a String into a Str, and an Integer into an Int, but is there a way to do it generically? | ||
jnthn | It's Parrot's Integer PMC leaking through. | ||
masak | [Coke]: that's what happens if it's not boxed like that. | ||
jnthn | We'll not use it at all once the 6model switch happens. | ||
masak | \o/ | ||
jnthn | So all these things will, hopefully, go awya. | ||
*away | |||
jnthn is kind half way ish to natively typed attributes in nqp-rx/nom. | 16:34 | ||
sorear | How do they work? | 16:35 | |
jnthn | sorear: Well, they don't yet... What I have so far is that a REPR can indicate that it wants to be inlined in another object rather than stored boxed. And P6opaque does allocation based upon that. | 16:37 | |
sorear: I'm currently at figuring out what the "int" thingy we store in the lexpad is. | |||
sorear: Well, that but also how it relates to Int (which it boxes to) and how to set up that relationship. | 16:38 | ||
sorear | How does that work from the REPR's perspective? | ||
jnthn | Which "that"? | ||
How does the REPR indicate it wants to be inlined? | |||
sorear | yes | ||
jnthn | In the REPR API, there's a way to ask a REPR for its "storage spec". | 16:39 | |
The spec it returns contains that info. | |||
So in the case of nested compact structs it'd just be recursively computed. | |||
Though I'm mostly worrying about just single native values for now. | 16:40 | ||
But it's designed to allow implementing compact structs later on. | |||
sorear | If the object is inlined, where do I get the RakudoObject to pass to the REPR methods? | ||
jnthn | Ah, sorry, I explained that badly... | 16:41 | |
class Foo { has num $!value } | |||
In this, the meta-attribute for $!value has a .type that would return the num type object. | |||
That is an object, so it can ask for the REPR of it. | |||
Type objects kinda have to be objects, even if storage of their instances are not. | 16:42 | ||
dalek | p-rx/nom: ec5a9e6 | jonathan++ | src/Regex/Cursor (3 files): Giving up on cursor NQP port for now - EYAKSHAVETOOBIG. Plan B: just use 6model from PIR. This ground work gives each sub a subid for more easily referencing it. |
16:46 | |
17:14
gabiruh joined
|
|||
felliott | I'm cleaning up a test in for.t that was failing for reasons unrelated to what it was supposed to be testing (i.e. the trans() bug). | 17:22 | |
nopaste.snit.ch/28492 | |||
Is this a reasonable test? | |||
lue | hello zebras o/ | 17:23 | |
felliott | I chose .sign b/c it works on both Ints and Integers. | ||
\o | |||
erp. I meant it was supposed to be testing the for and was failing b/c of the trans(). | |||
But the trans should be tested elsewhere, I think. | 17:24 | ||
I've added it to S03-operators/range.t | |||
masak | lue: \o | 17:25 | |
17:30
satyavvd left
17:40
nymacro left
17:49
gabiruh left
|
|||
dalek | ast: 4c37943 | (Fitz Elliott)++ | S12-class/open.t: mark tests for RT #75114 (augment class (Str|Int)) |
17:49 | |
ast: 1888ab6 | (Fitz Elliott)++ | S04-statements/for.t: [for.t] fix and unfudge test that was failing due to range bug |
|||
ast: b2c7760 | (Fitz Elliott)++ | S03-operators/range.t: [range.t] add test for RT #82620 (range exposing Parrot types) |
|||
17:50
betterwo1ld is now known as betterworld
17:53
charsbr__ joined
17:55
flatwhatson__ joined,
bacek__ joined,
LoRe_ joined,
molaf_ joined,
MOAR-f00li5h joined,
allbery_m joined
17:56
whiteknight joined
17:58
allbery_m left,
charsbr_ left,
xinming left,
f00li5h left,
LoRe left,
bacek_ left,
molaf left,
flatwhatson_ left,
starcoder left,
dukeleto left,
dukeleto joined
18:00
starcoder joined,
xinming joined
18:04
gabiruh joined
|
|||
dalek | p-rx/nom: 7610524 | jonathan++ | / (2 files): Add a Regex::Cursor2 temporarily that uses 6model, to help make migration easier. |
18:04 | |
p-rx/nom: d1002fc | jonathan++ | src/Regex.pir: Include Regex::Cursor2 to allow testing/porting bits to 6model to start. |
|||
p-rx/nom: e67a933 | jonathan++ | build/Makefile.in: Regex library needs 6model core built first; twiddle Makefile dependency for it. |
|||
p-rx/nom: aa22a81 | jonathan++ | src/Regex/Cursor2.pir: Few more steps in porting Regex::Cursor2 so it works on 6model. Enough to get an initial call to one of the built-in rules to work. |
|||
diakopter | mberends: wow..! | 18:07 | |
mberends: lots o progress | |||
mberends | :-) it's "just" mapping jnthn's C# into Java. At least it runs now :) | 18:11 | |
jnthn | mberends: Happy it still runs. :-) | ||
masak | mberends++ | 18:14 | |
jnthn | mberends: Any more tests pass yet? ;) | 18:17 | |
jnthn will be excited when the multi dispatch and class tests start passing :) | |||
mberends | jnthn: no idea, can't see the wood for the trees at the moment ;) | 18:18 | |
diakopter | heh | 18:19 | |
jnthn | :) | ||
masak | here we go, the p3 blog post: strangelyconsistent.org/blog/p3-is-...e-rangeset | ||
diakopter | lol at wood's forest/pulp meanings | ||
jnthn | Finally, I can eat! | ||
masak | jnthn: sorry to have kept you waiting :) | ||
jnthn | :P | ||
masak buses over to jnthn | |||
jnthn | It's OK, I was just as eager for the blog post :) | ||
masak | :) | ||
18:19
masak left
|
|||
diakopter | "consitered that too cure" | 18:21 | |
pure I guess? | 18:22 | ||
18:23
masak joined
|
|||
masak | diakopter: no, "cute". I'll fix later. | 18:24 | |
18:24
masak left
|
|||
diakopter | oh | 18:24 | |
18:24
wamba joined
18:26
zby_home joined
18:29
whiteknight left
|
|||
jnthn | ...buswifi! | 18:30 | |
;) | |||
18:31
whiteknight joined
|
|||
flussence | on the surface of it, p3 sounds like a good place for using junctions. Kinda surprised there weren't any in the code. | 18:37 | |
colomon | rakudo: say 4 ~~ "6" .. 10; | 18:38 | |
p6eval | rakudo 388eed: OUTPUT«Bool::False» | ||
colomon | rakudo: say 8 ~~ "6" .. 10; | ||
p6eval | rakudo 388eed: OUTPUT«Bool::True» | ||
colomon | rakudo: say 6 ~~ "6" .. 10; | 18:39 | |
p6eval | rakudo 388eed: OUTPUT«Bool::True» | ||
colomon | rakudo: say 6 ~~ "6" ^.. 10; | 18:40 | |
p6eval | rakudo 388eed: OUTPUT«Bool::False» | ||
colomon | oh, read wrong | ||
rakudo: say "6" ~~ 4 ^.. 10; | |||
p6eval | rakudo 388eed: OUTPUT«Bool::False» | ||
lue | afk | 18:45 | |
18:52
Tedd1 left
|
|||
dalek | p-rx/nom: 996bc6d | jonathan++ | src/Regex/Cursor2.pir: Get the rest of the methods in Cursor2 fixed up for 6model. (Still leaves the protoregex implementation and builtins todo, though.) |
18:55 | |
p-rx/nom: f651f2d | jonathan++ | src/PAST/Compiler-Regex.pir: Temporarily disable getting $!debug - it's the only place in the generated code that breaks cursor encapsulation, thankfully. |
|||
p-rx/nom: 5d977a8 | jonathan++ | src/Regex/Cursor2.pir: Missed fixing up one of the attribute accesses. |
|||
18:57
envi left
18:59
GinoMan joined
19:07
fhelmberger left
19:08
fhelmberger joined
19:09
fhelmberger left
19:13
pjcj left
19:17
cogno joined
19:28
cogno left
19:40
pjcj joined
19:41
cogno joined
19:43
simon__ joined
|
|||
simon__ | hey. is there a way to use metaoperators with functions/methods that aren't operators? | 19:44 | |
sorear | yes | 19:45 | |
simon__ | how? ;) | ||
sorear | your question is too generic to answer | 19:46 | |
simon__ | for instance if i wanna do (1,2,3) Z[{$^a * $^b / $^a + $^b}] (1,2,3) | 19:47 | |
19:47
MayDaniel left
|
|||
sorear | rakudo: say &zipwith.signature.perl | 19:47 | |
p6eval | rakudo 388eed: OUTPUT«get_attr_str() not implemented in class 'Perl6MultiSub' in main program body at line 1» | ||
diakopter | ergh | 19:48 | |
tadzik | rakudo: say &zipwith.signature[0].perl | ||
p6eval | rakudo 388eed: OUTPUT«get_attr_str() not implemented in class 'Perl6MultiSub' in main program body at line 1» | ||
tadzik | neh | ||
sorear | rakudo: zipwith({ $^a * $^b / ($^a + $^b) }, (1,2,3), (1,2,3)).perl.say | ||
p6eval | rakudo 388eed: OUTPUT«(1/2, 1/1, 3/2)» | ||
sorear | diakopter: ? | ||
simon__ | oh, so there's a normal function version of every metaoperator? | ||
sorear | rakudo: zipwith({ $^a * $^b / ($^a + $^b) }, [1,2,3], [1,2,3]).perl.say | ||
p6eval | rakudo 388eed: OUTPUT«(1/2, 1/1, 3/2)» | ||
19:49
pmurias joined
|
|||
sorear | hrm... not working. | 19:49 | |
this stuff isn't in the spec yet so it's not going to be consistent between compilers | |||
hello pmurias | |||
diakopter | sorear: nothing :) just grousing about nqp | 19:50 | |
jnthn: we should pull Util's 6model's pull requests | 19:51 | ||
pmurias | sorear: hi | 19:55 | |
is there a way to make an operator out of a function? | 19:56 | ||
like `function` in haskell? | |||
19:57
[Coke] left
|
|||
flussence | rakudo: prefix:<+>($a, $b) { $a + $b }; say + 4 3 | 19:58 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "prefix:<+>"» | ||
flussence | oh | ||
rakudo: multi prefix:<+>($a, $b) { $a + $b }; say + 4 3 | |||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "say + 4 3"» | ||
flussence | rakudo: multi prefix:<+>($a, $b) { $a + $b }; say +4 3 | ||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Confused at line 22, near "say +4 3"» | ||
flussence | so much for RPN :( | ||
or FPN or whatever that is called | |||
diakopter | hm | 19:59 | |
20:00
GinoMan left
|
|||
simon__ | flussence: prefix operator isn't the same as prefix function | 20:02 | |
20:03
dukeleto left
|
|||
pmurias | sorear: i've been busy with uni recently (the term is ending so i have to make presentations, study for exams etc.) so i haven't done any work on niecza recently, but i'll have to get back to work on the common lisp backend soon ;) (if the presentations don't turn up well and i have to write a project) | 20:03 | |
20:03
dukeleto joined
|
|||
pmurias | sorear: you wanted suggestion what to end to niecza next, i think interop with .NET/maybe perl5 would be a good way to let people to play with writing non toy programs with | 20:05 | |
colomon | simon__: If you make your own operator, it should work with metaoperators as well. | 20:06 | |
20:07
y3llow_ joined,
pothos_ joined
|
|||
simon__ | colomon: I know but that's not what i meant | 20:07 | |
20:09
y3llow left,
y3llow_ is now known as y3llow,
pothos left,
pothos_ is now known as pothos
20:34
cogno left
20:39
[Coke] joined
20:41
Layla_91 joined
|
|||
Layla_91 | hi! o/ | 20:42 | |
tadzik | o/ | 20:43 | |
Layla_91 | Just had a bad irc experience.. :D Came here to have some fresh happy air :D | 20:45 | |
Su-Shee | are you going to complain here about me? ;) | ||
Layla_91 | Su-Shee: Oooops! XD | ||
Su-Shee | next time, look up names first. ;) but nice try. | 20:46 | |
Layla_91 | Su-Shee: I was not planning to talk about you | ||
Su-Shee: I feel better here usually ^_^ | 20:47 | ||
Su-Shee: By the way I know you are always here.. as you know am regualr visitor :) | |||
20:47
tzhs joined
|
|||
Su-Shee | no, I don't know that. | 20:48 | |
Layla_91 | Su-Shee: now you know ^_^ | ||
Su-Shee: I relay alot on documentation of perl and I am totally new to perl so you have to understand that I am not yet that experienced and I try to analyze everything I read carefully in the perldocs, I managed to understand most of the perldsc but felt Tom meant something when he used the /[\s+=]/ , so I asked.. | 20:53 | ||
(maybe I can secretly ask about it here :P ) | 20:54 | ||
tadzik: feels so quiet here today... is it late in europe? | 21:03 | ||
TimToady | std: sub infix:<love> ($) {...}; constant you = "You"; i love you; # pmurias: this is how you get an infix function :) | 21:05 | |
p6eval | std 625303c: OUTPUT«ok 00:01 124m» | ||
TimToady | er, should be ($,$), actually | 21:06 | |
jnthn | Привет, Layla_91 :) | 21:09 | |
Layla_91 | jnthn: heey! :D | ||
jnthn | Как дела? | 21:10 | |
Layla_91 | jnthn: am doing great! :D (my laptop keyboard does not support Russian :'( ) but you are mastering the language ^_^ | 21:11 | |
jnthn | Layla_91: Wish I was mastering it. :P | 21:12 | |
TimToady | well, my keyboard doesn't support 日本語, but that's what input methods are for... | ||
21:12
orafu left
21:13
orafu joined
|
|||
TimToady | it's pretty much impossible to have a keyboard that supports han characters | 21:13 | |
Layla_91 | TimToady: I actually do not understand how you just did that :$ | ||
tadzik | Layla_91: 22:11 in here | ||
TimToady | first, did it come out looking like Japanese? | ||
Layla_91 | TimToady: yes it was.. | 21:14 | |
TimToady | so you have utf-8 support there already, good | ||
what OS are you running on? | |||
jnthn | Layla_91: I use winrus.com/screen_e.htm or I made myself www.jnthn.net/linguistics/ru/ so if I switch my keyboard layout I know where - in theory - they keys are. But mostly I like to type Russian on my iPad which can show me the keyboard layout. :) | ||
diakopter runs on treadMill O's | |||
Layla_91 | TimToady: mmm.. ok :) | 21:15 | |
TimToady: and am using fedora14 here as the OS.. but have no idea how to write Russian | |||
TimToady | there is probably a way to install an input method, but I'm not up-to-date on fedora | 21:16 | |
21:16
bacek__ left
|
|||
Su-Shee | install "scim". it translates all kinds of (romanized) inputs into the appropriate target language. but you have to know the correct.. what's it called in english.. transliteration? | 21:17 | |
TimToady | (or on Russian input methods...) | ||
sorear | yes, transliteration is an acceptable term | ||
more generally we call them input methods | |||
some input methods use mice, for instance | |||
any bijective transliteration can be turned into an input method, and most input methods in common use are based on a transliteration | 21:18 | ||
Layla_91 | jnthn: ты супер! :) | ||
jnthn: yay! ^_^ | |||
TimToady | \o/ | ||
jnthn | Layla_91: \o/ | ||
sorear | you also see the term IME (IM Editor) used; this is the program that implements an IM | 21:19 | |
Su-Shee | I was going for that you have to really know how to write lang x in the romanized system. like chinese in either pinyin or the old stuff whose name I've just forgotten. | ||
jnthn | супер...a very Russian word. :P | ||
Layla_91 | jnthn: ok I admit we have took few words like (businessman, super) from the english people :D | ||
sorear | the IME that TimToady and I use can translate "nihon'go" into "日本語" | 21:20 | |
Layla_91 | jnthn: did you make one for hebrew? | ||
sorear | (although it uses a horrible amount of memory so I don't start it often) | 21:21 | |
jnthn | Layla_91: No, I never really studied that. | ||
sorear | Japanese input is complicated greatly by the 3 Japanese alphabets and the loose coupling between kanji and readings | ||
I imagine Cyrillic is much easier | 21:22 | ||
Su-Shee | sorear: yes. I know. I use scim under Linux for that. I was looking for the word in english to describe the process from getting from nihon go to the japanese letters :) | ||
TimToady | yes, that's transliteration | ||
though, arguably, it's really transliterating from romaji, not from english | 21:23 | ||
Su-Shee | TimToady: indeed. | 21:24 | |
21:25
Layla_91 left
21:27
Layla_91 joined
|
|||
sorear | I don't think that transliteration is the right term for the entire process, nihon'go -> にほんご -> 日本語 | 21:27 | |
it's arguably correct for the first step | |||
Su-Shee | well then let's write chinese which doesn't require the step from hiragana to kanji ;) | 21:29 | |
sorear | is pinyin bijective? | ||
Su-Shee | I don't know what bijective is? | 21:30 | |
sorear | 1:1 mapping | ||
Layla_91 | terrible ADSL connection :( | ||
sorear | not ambiguous | ||
Su-Shee | well .. yes/no. it usally has accents to indicate intonation which you usally don't type. so the distinction between for characters you can do with the accents added are often missing when using an input method. | 21:31 | |
between four | |||
ouch :) | |||
so if you type "shi" you get a rather long list of possible hanzi | 21:32 | ||
but with the most common on top. | |||
Layla_91 | TimToady: What OS do you use in your home network? | 21:33 | |
TimToady | various | 21:34 | |
Su-Shee | sorear: the "shi" and its accents problem is nicely illustrated here: en.wikipedia.org/wiki/Lion-Eating_P..._Stone_Den ;) | 21:35 | |
21:36
MayDaniel joined
21:38
mberends left,
coldhead joined,
M_o_C joined,
M_o_C left,
M_o_C joined
|
|||
Layla_91 | Good night all, tomorrow is working day.. time to [(--)] | 21:40 | |
21:41
pmurias left
|
|||
jnthn | night night, Layla_91 o/ | 21:42 | |
21:42
mberends joined
21:43
Layla_91 left
21:48
M_o_C left
|
|||
sorear | Su-Shee: that is very neat | 21:53 | |
21:53
orafu left
21:54
orafu joined
22:02
orafu left
22:04
orafu joined
22:11
pyrimidine left,
pyrimidine joined
22:12
MayDaniel left
22:35
zby_home left
22:36
tzhs left
22:39
noganex_ left
22:41
noganex joined
|
|||
moritz_ | phenny: tell masak on strangelyconsistent.org/p6cc2010/p3-moritz/ I didn't use .?including because a type object is false, but you can call method .including on it. That case probably can't be reached in this code, but I still didn't liek the thought of it | 22:45 | |
phenny | moritz_: I'll pass that on when masak is around. | ||
sorear | hi moritz_ | 22:46 | |
moritz_ | hi sorear | 22:48 | |
dalek | p-rx/nom: 1307e73 | jonathan++ | src/ (4 files): Various fixes and tweaks to allow switching /.../ regexes to use Regex::Cursor2 and thus 6model, to the point that the test suite passes again (though I know various things don't work at all just yet). |
22:50 | |
22:50
snearch joined
|
|||
moritz_ -> sleep | 22:54 | ||
22:55
MOAR-f00li5h is now known as f00li5h,
f00li5h left,
f00li5h joined
23:08
wamba left
23:12
simon__ left
|
|||
dalek | p-rx/nom: 2dcffea | jonathan++ | src/metamodel/how/NQPClassHOW.pm: Implement the non-local case of .^parents in NQPClassHOW, which returns the MRO. |
23:14 | |
p-rx/nom: 661c631 | jonathan++ | src/Regex/Cursor-builtins.pir: Temporarily remove some $!debug attribute accesses in the built-ins so they can stay shared between 6model and old nqp-rx during the switch. |
|||
23:14
masak joined
|
|||
masak | \o/ | 23:14 | |
phenny | masak: 22:45Z <moritz_> tell masak on strangelyconsistent.org/p6cc2010/p3-moritz/ I didn't use .?including because a type object is false, but you can call method .including on it. That case probably can't be reached in this code, but I still didn't liek the thought of it | ||
masak | ok. interesting point. | 23:15 | |
type objects are a double-edged sword. :) | |||
Util++ emailed about another thing: people had been using &say;&exit a lot in their code because &die emits output that won't conform to base-test. | 23:18 | ||
looking at my own solutions, I must have known this writing them :) but I've definitely forgotten since. | |||
will change my review notes to reflect this. | |||
sorear | Here's a challenge to those who think p3 is easy: Create a data structure that can store any Perl 6 character class in linear space with O(log N) lookup relative to the length of the Perl 6 source | ||
in particular, consider cases like <[ a..z \D ]-[ \s ]> | 23:19 | ||
masak | sounds a bit like the problem I intended it to be :) | 23:20 | |
p3, that is. | |||
std: sub is {}; use Test; | 23:21 | ||
p6eval | std 625303c: OUTPUT«===SORRY!===Illegal redeclaration of routine 'is' (see line 1) at /tmp/7dzlNCnCLK line 1:------> sub is {}; use Test⏏;Check failedFAILED 00:01 118m» | ||
masak | this is in conflict with S11. | ||
jnthn | rakudo: sub is {}; use Test; | 23:22 | |
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Can't import symbol &is because it already exists in this lexical scope» | ||
masak | jnthn: ...so I won't submit an RT ticket about it after all :) | ||
but S11 should be updated. or STD. | |||
jnthn | Updating one spec is easier than two implementations. ;) | 23:23 | |
masak | that's the most dangerous principle I've heard today :P | ||
are you also against macros in the spec? | |||
jnthn | :P | 23:24 | |
I wasn't being serious. :) | |||
.oO( Dangerous Principle of the Day! New on #perl6! ) |
23:25 | ||
23:33
MayDaniel joined
23:37
pyrimidine left
23:40
hudnix left
|
|||
dalek | p-rx/nom: 74764f9 | jonathan++ | src/Regex (3 files): Add a port of the protoregex part of Cursor to work with 6model. Not so many changes, mostly just where there was metamodel interaction. |
23:40 | |
masak | flussence: there was a junction in one of the p3 submissions. look at the last line of Util's code. | 23:42 | |
23:44
kaare_ left
|
|||
masak | Su-Shee: the name of "old system" you were thinking of earlier is probably "Wade-Giles". | 23:46 | |
Util | rakudo: my @rc = <<a b c d e>>; my @r = @rc[ 0 ..^ @rc.end ]; my @c = @rc[ 0 ^.. @rc.end ]; @r.say; @c.say; | 23:48 | |
p6eval | rakudo 388eed: OUTPUT«abcdbcde» | ||
Util | rakudo: my @rc = <<a b c d e>>; my @r = @rc[ 0 ..^ * ]; my @c = @rc[ 0 ^.. * ]; @r.say; @c.say; | ||
p6eval | rakudo 388eed: OUTPUT«(timeout)» | ||
Util | masak: Is this what you were recommending in P1? Because it hangs :^( | ||
masak | huh. | 23:49 | |
which one of them? | 23:50 | ||
rakudo: my @rx = <a b c d e>; my @r = @rc[ 0 ..^ * ]; say 'alive' | 23:51 | ||
p6eval | rakudo 388eed: OUTPUT«===SORRY!===Symbol '@rc' not predeclared in <anonymous> (/tmp/17NWrS5bs3:22)» | ||
masak | rakudo: my @rc = <a b c d e>; my @r = @rc[ 0 ..^ * ]; say 'alive' | 23:52 | |
p6eval | rakudo 388eed: OUTPUT«(timeout)» | ||
masak | ok, the first one. | ||
rakudo: my @rc = <a b c d e>; my @c = @rc[ 0 ^.. * ]; say 'alive' | |||
and the second one :/ | |||
p6eval | rakudo 388eed: OUTPUT«(timeout)» | ||
Util | Either; I used both so you would know I was paralleling my p1 code. It hangs with just [ 0 .. *] | 23:53 | |
No ^ needed to hang | |||
masak | this surprises me. | ||
23:55
sji joined
23:56
shi left
|