perl6-projects.org/ | nopaste: sial.org/pbot/perl6 | evalbot: 'perl6: say 3;' | irclog: irc.pugscode.org/ | ~280 days 'til Xmas Set by mncharity on 18 March 2009. |
|||
00:11
nihiliad joined
00:18
lichtkind_ joined,
ludan left
00:20
fridim_ left
00:36
lichtkind left
00:50
ZuLuuuuuu left
01:01
eternaleye joined
01:10
Whiteknight left
01:13
DemoFreak left
01:32
awwaiid left
01:33
awwaiid_ joined
01:42
awwaiid_ left,
awwaiid joined
|
|||
frioux | rakudo: 5.sign | 01:44 | |
p6eval | rakudo 748771: OUTPUT«Method 'sign' not found for invocant of class 'Int'current instr.: 'parrot;P6metaclass;dispatch' pc 637 (src/classes/ClassHOW.pir:161)» | ||
01:49
cspencer joined
01:50
Sepheebear left
02:01
firelord joined
|
|||
firelord | hey everyone | 02:01 | |
frioux | hi | 02:03 | |
rakudo: (1,2,3) >> + << (4,5,6) | |||
p6eval | rakudo 748771: OUTPUT«Statement not terminated properly at line 1, near ">> + << (4"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
frioux | rakudo: (1,2,3) >>+<< (4,5,6) | ||
p6eval | rakudo 748771: RESULT«[5, 7, 9]» | ||
frioux | rakudo: (1,2,3).map: { ~$_ } | 02:04 | |
p6eval | rakudo 748771: RESULT«["1", "2", "3"]» | ||
frioux | rakudo: (1,2,3)>>.map: { ~$_ } | ||
p6eval | rakudo 748771: OUTPUT«Statement not terminated properly at line 1, near ">>.map: { "current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
firelord | anyone got time for a question on perl6? | ||
frioux | I could try, but I might not know the answer :-) | ||
firelord | You know an easy way to count the number of occurrences of letters in a string? Such as how many 'U' and 'T' they are in a string | 02:06 | |
thinking of a map command with a junction | |||
frioux | rakudo: "frew".@ | 02:07 | |
p6eval | rakudo 748771: OUTPUT«Statement not terminated properly at line 1, near ".@"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
frioux | "frew".split('') | ||
rakudo: "frew".split('') | |||
p6eval | rakudo 748771: RESULT«["f", "r", "e", "w"]» | 02:08 | |
frioux | firelord: I'd split it like that | ||
and then iterate over each character | |||
and add to a hash with the char as the index | |||
so the final hash is the number of each letter | |||
do you follow that? | |||
02:08
frioux_Away left
|
|||
firelord | well I do not need to know how many of every char, just the grand total between them | 02:08 | |
and yes I do follow :) | 02:09 | ||
frioux | rakudo: my %hist; for "frew".split('') { if %hist{$_} { %hist{$_} += 1 } else { %hist{$_} = 1; } } %hist.perl | 02:10 | |
p6eval | rakudo 748771: OUTPUT«Statement not terminated properly at line 1, near "%hist.perl"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
frioux | rakudo: my %hist; for "frew".split('') { if %hist{$_} { %hist{$_} += 1 } else { %hist{$_} = 1; } }; %hist.perl; | ||
p6eval | rakudo 748771: RESULT«"\{\"f\" => 1, \"r\" => 1, \"e\" => 1, \"w\" => 1}"» | ||
frioux | rakudo: my %hist; for "freeeeeeeeeeeeeeeew".split('') { if %hist{$_} { %hist{$_} += 1 } else { %hist{$_} = 1; } }; %hist.perl; | ||
p6eval | rakudo 748771: RESULT«"\{\"f\" => 1, \"r\" => 1, \"e\" => 16, \"w\" => 1}"» | ||
frioux | that seems to do what you want... | 02:11 | |
firelord | It does and more | ||
frioux | too much? | ||
firelord | Indeed, just want to know how many 'e' and 'w' in total and not their individual totals | 02:12 | |
frioux | well you could do this...: | ||
firelord | hence do not need a hash but a junction i think | ||
an 'any' junction | |||
frioux | rakudo: my $total; for "freeeeeeeeeeeeeeeew".split('') { $total++ if $_ ~~ 'e'|'w'; }; $total.perl; | 02:13 | |
p6eval | rakudo 748771: RESULT«"17"» | ||
frioux | rakudo: my $total; for "freeeeeeeeeeeeeeeew".split('') { $total++ if $_ ~~ 'e'|'w'; }; $total; | ||
hah! | |||
p6eval | rakudo 748771: RESULT«17» | ||
frioux | there you go | 02:14 | |
rakudo: my $total; $total++ if $_ ~~ 'e'|'w' for 'frew'.split(''); $total; | |||
p6eval | rakudo 748771: RESULT«2» | ||
frioux | rakudo: my $total; $total++ if $_ ~~ 'e'|'w' for 'freeweweww'.split ''; $total; | ||
p6eval | rakudo 748771: OUTPUT«Statement not terminated properly at line 1, near "''; $total"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
frioux | rakudo: my $total; $total++ if $_ ~~ 'e'|'w' for 'freeweweww'.split(''); $total; | ||
p6eval | rakudo 748771: RESULT«8» | ||
frioux | there you go | ||
it works and it's overly short :-) | 02:15 | ||
firelord | thank you frioux | ||
frioux | although there may be a way to do it with a regex... | ||
there probably is | |||
firelord | for sure | ||
frioux | but that should get the job done | ||
oh dear | |||
my computer is about to crash | |||
brb! | |||
02:15
frioux left
|
|||
cspencer | rakudo: "freeeeeeeeeeeeeeeew".split('').grep(/e|w/).elems.say | 02:18 | |
02:18
frioux joined
|
|||
p6eval | rakudo 748771: OUTPUT«17» | 02:18 | |
frioux | firelord: did you get a better solution? | ||
firelord | lol | ||
cspencer | frioux: i don't know that it's better, just different :) | ||
firelord | cspencer: rakudo: "freeeeeeeeeeeeeeeew".split('').grep(/e|w/).elems.say | ||
frioux | hahaha | ||
maybe | 02:19 | ||
it's more functional | |||
firelord | well the string in this case will be..... large | ||
frioux | and in my book, that's a good thing :-) | ||
well...they both do a split | |||
firelord | from a few hundred to...... a few million | ||
frioux | they are probably equally good (or bad) for that | ||
firelord | ya | ||
02:20
cspencer left
|
|||
frioux | you said this was gene stuff? | 02:20 | |
skids | Lazyness would take care of that. | ||
Though mostly things aren't lazy yet in rakudo. | |||
firelord | Not tonight no but other nights ya | 02:21 | |
frioux | phone& | 02:22 | |
TimToady | rakudo: +("freeeeeeeeeeeeeeeew" ~~ /(<[ew]>)/)[0] | 02:23 | |
p6eval | rakudo 748771: RESULT«0» | ||
TimToady | rakudo: +("freeeeeeeeeeeeeeeew" ~~ /('e'|'w')/)[0] | 02:24 | |
p6eval | rakudo 748771: RESULT«0» | ||
TimToady | rakudo: +("freeeeeeeeeeeeeeeew" ~~ /(<[ew]>)*/)[0] | ||
p6eval | rakudo 748771: OUTPUT«Use of uninitialized value» | ||
firelord | Look what I started... | ||
TimToady | rakudo: +("freeeeeeeeeeeeeeeew" ~~ /('e'|'w')*/)[0] | ||
p6eval | rakudo 748771: OUTPUT«Use of uninitialized value» | ||
02:24
nacho_ joined
|
|||
TimToady | that oughta work... | 02:24 | |
rakudo: +("freeeeeeeeeeeeeeeew" ~~ /$<stuff>=('e'|'w')*/)<stuff> | 02:25 | ||
p6eval | rakudo 748771: OUTPUT«Use of uninitialized value» | ||
TimToady | rakudo: "freeeeeeeeeeeeeeeew" ~~ /[(<[ew]>)||.]*/; | 02:26 | |
p6eval | rakudo 748771: RESULT«Match.new( # WARNING: this is not working perl code # and for debugging purposes only ast => "freeeeeeeeeeeeeeeew", text => "freeeeeeeeeeeeeeeew", from => 0, to => 19, positional => [ Match.new( ast => "e", text => "e", from => 2, to => 3, | ||
.. )... | |||
TimToady | rakudo: "freeeeeeeeeeeeeeeew" ~~ /[(<[ew]>)||.]*/; +$0 | ||
p6eval | rakudo 748771: RESULT«17» | ||
TimToady | there you go | ||
firelord | wow | ||
Thank you TimToady. | 02:27 | ||
02:28
frioux left,
skids left,
aindilis left,
jan_ left,
Eevee left,
pugs_svn left,
c1sung left,
simcop2387 left,
simcop2387 joined,
frioux joined,
skids joined,
aindilis joined,
jan_ joined,
Eevee joined,
c1sung joined,
pugs_svn joined
|
|||
frioux | so I need all of your advice | 02:30 | |
my boss implied that me and all of my co-workers could go to yapc | |||
so I invited them all | |||
and then he said I have to pick 1 | |||
what do I do?! | |||
skids | Well, first make a pity play, then some will drop out because others want to go more. | 02:32 | |
Then I guess, the best man wins. Nerf dart duel! | 02:33 | ||
frioux | I mentioned something about a cage match... | ||
SamB | point out to your boss how much it will cost to replace the losers | 02:35 | |
02:35
grwi joined,
grwi left
|
|||
frioux | hahaha | 02:35 | |
Fight to the DEATH! | |||
firelord | brb | 02:36 | |
This nick is registered so going to need to change.... | |||
02:37
firelord left
02:39
raveon joined,
raveon left
02:45
takadonet joined
|
|||
takadonet | finally a registered nick.... | 02:45 | |
skids | rakudo: say "can i haz cheezbirrgrr?".comb(/a|e|r/) + 0 | 02:48 | |
p6eval | rakudo 748771: OUTPUT«8» | ||
frioux | ohhh | ||
that's the best one! | |||
rakudo: say +"freweeeeeeeeeeeeeeeeeeewew".comb(/e|w/) | 02:49 | ||
skids | There will be better. That still builds an array, though only of the selected letters. | ||
p6eval | rakudo 748771: OUTPUT«24» | ||
takadonet | what is comb? | ||
skids | The flipside of split. | ||
takadonet | Cannot believe you guys are still on my question. | ||
skids | golfing can be fun | ||
(and educational) | 02:50 | ||
frioux | takadonet: what's your solution :-) | ||
takadonet | Not that great... | ||
Still just playing around in perl6 | 02:51 | ||
skids | Can we get adverbs into regexe yet in rakudo? | 02:55 | |
(erm "modifiers") | 02:56 | ||
02:56
alc joined
03:02
amoc joined
|
|||
lichtkind_ | q :ww / ... / is the same as << ... >> ? | 03:05 | |
03:07
nacho_ left
03:10
kimtaro left
03:15
takadonet left,
agentzh left,
agentzh joined
03:18
lichtkind_ is now known as lichtkind
03:24
disismt left
03:26
frioux is now known as frioux_away
03:32
samlh left
03:37
samlh joined
03:40
nihiliad left
03:41
hercynium left
03:42
kimtaro joined
03:47
agentzh left
03:48
agentzh joined
03:56
Sepheebear joined
04:11
agentzh left
04:16
agentzh joined
|
|||
pugs_svn | r25980 | lwall++ | [Cursor] preliminary implementation of ww | 04:23 | |
r25980 | lwall++ | [STD] fix buglet causing duplicate .caps in "$a[]" postfix | |||
04:46
orafu left,
OuLouFu joined
04:47
OuLouFu is now known as orafu
04:55
FurnaceBoy left
05:00
Tene joined
05:18
eternaleye left
05:21
eternaleye joined
05:33
viklund` joined,
viklund left
05:38
eternaleye left
06:12
eternaleye joined
06:35
DemoFreak joined
06:39
parduncia joined
06:58
finanalyst joined
07:01
alc left
07:05
xinming_ joined
07:10
xinming left
07:17
araujo left
07:18
pmurias joined
07:19
eternaleye left
07:22
mtve- is now known as mtve
|
|||
moritz_ | rakudo: { say 3 }; say 0; | 07:25 | |
p6eval | rakudo 748771: OUTPUT«30» | ||
07:28
goksie joined
|
|||
moritz_ | std: my $x = regex{abc} | 07:29 | |
p6eval | std 25980: OUTPUT«ok 00:02 35m» | ||
pmurias | moritz_: i spotted "is also" in t/S12-class | 07:30 | |
moritz_ | pmurias: I know, the test suite is not yet updated | 07:31 | |
07:33
masak joined
07:36
eternaleye joined
|
|||
moritz_ | it's on my TODO list, but I want to coordinate it with the Rakudo hackers | 07:37 | |
pmurias | moritz_: should i add a "update t/S12-*, so i don't implement something bygone" step to my GSoC proposal? | ||
or is it near the top of TODO list and it will be done by the start of the GSoC? ;) | 07:39 | ||
masak | is it too late to add GSoC tasks to some list? I think I have a good one. | 07:40 | |
dukeleto | moritz: i just sent a pull request for roots() to rakudo | 07:43 | |
moritz: and of course after that I realize that I should have used the 'polar' builtin, but I wrote my own. That will be the first improvement | 07:45 | ||
moritz_ | masak: don't think it's too late | 07:47 | |
dukeleto | masak: please, add gsoc tasks to www.perlfoundation.org/perl5/index....9_projects as well | ||
moritz_ | pmurias: if you update S12-*, please fudge the files for Rakudo | ||
dukeleto | definitely not too late | ||
07:47
alc joined
|
|||
masak | good. I think a PGE grammar for YAML, along with a Perl 6 wrapper, could benefit many Perl 6 projects. | 07:47 | |
dukeleto: thank you. I will. | 07:48 | ||
dukeleto | masak: those sound like great ideas | ||
masak | dukeleto: glad you like it too. I think it's also the right length for a GSoC task. | ||
moritz_ | dukeleto: I'll look at roots() later today | 07:49 | |
I've done a JSON parser in two or three hours in Perl 6 ;-) | |||
dukeleto | moritz: no worries, I am going to bed | 07:50 | |
moritz_ | but that's a bit cheating, www.json.org/ contains a grammar that can be translated very neatly to Perl 6 | ||
dukeleto | night y'all, happy hackin' | ||
moritz_ | dukeleto: good night | 07:51 | |
masak: is there some documentation along the lines "if I want to use proto for my project, that's what I have to do..."? | 07:52 | ||
masak | moritz_: no, but I've been meaning to write something a bit like that for a few days. | ||
moritz_: I think the README in proto is the closest thing so far. | 07:53 | ||
moritz_ | masak: good; then I'll be your tester once you've done it ;-) | ||
masak | moritz_: basically, what you have to do is add a deps.proto file with a list of deps. | ||
moritz_: I'll ping you when I have something. | |||
moritz_ | masak: great | 07:54 | |
07:56
rgs left,
eternaleye left
08:00
eternaleye joined
|
|||
Matt-W | Morning | 08:00 | |
masak | Matt-W: OH HAI | 08:01 | |
pugs_svn | r25981 | moritz++ | [t/spec] corrected caps.t, (j y)++ | 08:09 | |
08:25
ejs joined
|
|||
finanalyst | moritz_: does proto assume rakudo under parrot or parrot under rakudo? | 08:26 | |
masak | moritz_: ping | ||
moritz_ | finanalyst: ask masak ;-) | 08:27 | |
masak: pong | |||
masak | finanalyst: neither. it can work with both setups. | ||
moritz_: github.com/masak/proto/blob/master/PIONEER | |||
finanalyst: however, it defaults to installing latest-release Rakudo, with Parrot inside. | |||
but only if it cannot find an already installed Rakudo. | 08:28 | ||
moritz_ | masak++ | 08:29 | |
masak | in the building step, there are a lot of details that I omitted for now. | 08:31 | |
finanalyst | masak: I have parrot with rakudo inside languages/ (this being the old way). I am considering changing the setup to rakudo with parrot inside, as this seems to be the most logical for perl6 focus. what do you think? | ||
masak | mberends, Matt-W and I need to sit down together and come up with the real conventions for building Perl 6 projects. | ||
finanalyst: I think do whichever you are comfortable with. I've done both, and I don't thing there is much difference. | 08:32 | ||
08:33
pmurias left
|
|||
Matt-W | masak: yes we do | 08:38 | |
masak | Matt-W: we should set a day and time, like real grownups do. :) | ||
Matt-W | sounds like work to me :) | 08:39 | |
But yeah, we should | |||
masak | Matt-W: it won't be work if everyone brings cookies! | ||
Matt-W | Yes it would | ||
We have cookies at work for meetings sometimes | |||
masak | bananas? plastic toy animals? | 08:40 | |
miniature excavators? | |||
Matt-W | heh | ||
comfy armchairs | |||
masak | ooh! | ||
Matt-W | pyjamas | ||
masak | this is getting better and better. | ||
(as long as we don't have to Skype with video) | 08:41 | ||
Matt-W | haha | ||
I don't do that very often | |||
masak doesn't really like Skype video | |||
too much like a real meeting to me. | |||
Matt-W | I only tend to use it when there are physical objects which need to be shown | ||
Which doesn't happen with anything work-like | |||
although at work we do have a proper videoconferencing suite | 08:42 | ||
08:42
rgs joined
|
|||
Matt-W | I never get to use it though | 08:42 | |
Don't work with people from other offices very often | 08:43 | ||
08:49
ejs1 joined
|
|||
mberends @shopping.push( "cookies" ); | 08:54 | ||
masak | mberends: :) | 08:56 | |
08:57
ejs left
|
|||
mberends | masak: Matt-W: meeting asap, currently anytime this week :) | 08:57 | |
moritz_ | class Shopping { has @.cart handles <push pop shift unshift>: method pay { ... } } | 08:58 | |
masak | mberends: sure thing. not today, I think. perhaps tomorrow or Thursday? | ||
mberends | ok, my first thought is a canonical 'hello, world!' example | 08:59 | |
but not today, then | |||
masak | canonical 'hello, world' example sounds nice. | 09:00 | |
mberends | moritz_: class Shopping is also { method park { ... } method wait_for_partner { ... } } | 09:02 | |
09:02
DemoFreak left
|
|||
mberends !does Shopping | 09:02 | ||
09:03
samlh left
|
|||
moritz_ | that's 'augment class Shopping { ... }' these days | 09:03 | |
mberends | hmm. the sugar doesn't change the experience however :) | 09:04 | |
masak | Rakudo still uses 'is also' et al though. | 09:05 | |
mberends needs tea. $kettle.fill.boil.pour( $cup ); | |||
masak | oh, a 'fluent interface' :) | 09:06 | |
mberends | or Literate Programming | ||
masak | rakudo: my Int $a = 4 - 3; say $a; my Int $b = "4" - 3; | 09:07 | |
p6eval | rakudo 748771: OUTPUT«1Type mismatch in assignment.current instr.: 'die' pc 15608 (src/builtins/control.pir:204)» | ||
masak | is it just me, or does this feel a bit harsh? | ||
09:08
cls_bsd joined
|
|||
mberends | it's p5ish | 09:08 | |
masak | how is variable typing p5ish? | 09:09 | |
mberends | in "4" - 3 the operator coerces to a number, but maybe not in P6 | 09:11 | |
masak | yes. | ||
but Num !~~ Int. | |||
mberends | oh. I been bitten by that before as well. | ||
masak | I'd argue that if 4 - 3 works, then "4" - 3 ought to as well. | 09:12 | |
mberends | yes, therefore it is harsh | ||
Matt-W | masak: mberends: I can do tomorrow daytime, Thursday afternoon (GMT) | 09:13 | |
masak | good, then the Principle of Early says tomorrow. | ||
a time? | |||
mberends | 9:00 UTC? | 09:14 | |
masak | worksforme. | ||
maybe cap the meeting at 20 minutes? | 09:15 | ||
mberends | can do | ||
masak | I know just the type of cookies I'll bring. | 09:16 | |
ok, so the goal of the meeting is to reach consensus on a Good Practice for makefiles and configure scripts for Perl 6 projects. something that'll work long-term. | 09:17 | ||
mberends | masak++: saw your makemaker only later #[ tada! ] quite a hefty command line, but nice as a sub for proto. | ||
masak | mberends: I do not know what you're referring to. | ||
09:17
goksie left
|
|||
masak | mberends: ah, that one. | 09:18 | |
mberends | :) | ||
masak | yes, it can follow module dependencies. it's not perfect, but it's a fun tool. | ||
I'm not sure if proto needs it, though. | |||
oh wait, perhaps if it's supposed to work as a Makefile maker, yes. | 09:19 | ||
mberends | discuss that tomorrow as well | ||
masak | agreed. | 09:20 | |
09:20
pmurias joined
|
|||
Matt-W | Righty-ho | 09:20 | |
9am it is | |||
mberends | masak: bacek++ has sockets working in PIR on Unix. HTTP::Daemon can easily be updated when he's done, and Druid will be able to hook into that too :) | 09:22 | |
masak | mberends: nice. | ||
Matt-W | oooooooooooooh | ||
bacek++ | 09:23 | ||
masak | Druid is first in line for the new Web.pm classes, surprisingly enough. | ||
mberends will do 'hello, world!' for homework | 09:24 | ||
09:39
meppl joined
09:40
xinming joined
|
|||
masak | on the evenings, I tend to work on the test suite for Druid. | 09:44 | |
it's quite relaxing work, but it's also amazing how much better it makes the code. | |||
09:46
eternaleye left,
eternaleye_ joined
|
|||
masak | it makes me braver in refactoring, and it finds things I wouldn't have. | 09:46 | |
this is currently my favourite statement in the whole codebase: github.com/masak/druid/blob/6ce404e...ame.pm#L71 | 09:47 | ||
09:47
samlh joined
|
|||
mberends | masak: gnarly | 09:48 | |
masak | mberends: but completely understandable, I think. | ||
it's just a lot of details. | 09:49 | ||
moritz_ | masak: the last three lines of that statement looks like it could be simplified to another grep | 09:51 | |
masak | moritz_: probably, yes. | 09:52 | |
patches welcome. | |||
09:54
meppl left
|
|||
pugs_svn | r25982 | pmurias++ | [re-smop] started porting over interpreter and mold, some more work on named params in capture | 09:55 | |
09:55
xinming_ left
10:00
bacek joined
|
|||
masak | hm, $.heights[$row_m][$column_m] == $.heights[$row_1][$column_1] could be written as (.[$row_m][$column_m] == .[$row_1][$column_1] given $.heights) | 10:01 | |
don't know whether it'd be a good idea, though. | 10:02 | ||
pmurias | i think it would be a pretty bad one | 10:08 | |
as you have to look at the end to see what you are comparing | 10:09 | ||
masak | indeed. | 10:12 | |
and (given $.heights { .[$row_m][$column_m] == .[$row_1][$column_1] }) somehow feels like too much work just to reduce duplication. | 10:13 | ||
10:14
disismt joined
10:23
bacek_ joined
10:25
bacek left
10:26
Hobbestigrou joined,
Hobbestigrou left
|
|||
jnthn | morning all | 10:33 | |
bacek_ | jnthn: evening :) | 10:34 | |
10:35
bacek_ is now known as bacek
|
|||
jnthn | bacek: How's the sockets stuff going? | 10:35 | |
bacek | jnthn: it requires some love... | 10:36 | |
And I need few more hours to refactor it. | |||
moritz_ | good morning jnthn | 10:37 | |
masak | bacek: a few of us are very interested in the work on the sockets. best of luck. | 10:38 | |
jnthn: OH HAI | |||
bacek | masak: I promised to Ilya that I'll finish them by weekend :) | 10:39 | |
jnthn | moritz_: OH HAI | ||
masak | bacek: ok. looking forward to that. | ||
I'll mention it in today's blog post. | |||
jnthn | bacek++ # great! | 10:40 | |
bacek | masak: not so fast. Let me finish it first :) | ||
masak | bacek: as you wish. | ||
I'll be vague instead, and say that the Rakudo folks have been starting work on sockets. | 10:41 | ||
jnthn | bacek: Will you leave "unimplemented" stubs for Win32 also? | 10:44 | |
bacek: Or you plan to implement that too? | |||
bacek | jnthn: I'm not quite familiar with win32 development. | 10:45 | |
jnthn | OK. | ||
10:45
amoc left
|
|||
bacek | But I'll made my best to convert old socket_win32. | 10:45 | |
jnthn | bacek: OK, I can try and help there too. | 10:47 | |
I know Win32, if not sockets. ;-) | |||
pugs_svn | r25983 | pmurias++ | [re-smop] added a basic test for interpreter, add SMOP_interpreter_create() | 10:52 | |
11:15
amoc joined
|
|||
pugs_svn | r25984 | pmurias++ | [re-smop] fixed smop_placeholder_message | 11:29 | |
11:29
hkBst joined
|
|||
hkBst | is there a web interface for browsing the pugs source code? | 11:31 | |
mberends | hkBst: yes, Pod::Server within github.com/eric256/perl6-examples/tree/master | 11:32 | |
actually, it browses the Pod mainly, and just shows other files as plain text | 11:34 | ||
hkBst | mberends: I want to browse the pugs code. I don't see how to do that with your link. | ||
pugs_svn | r25985 | pmurias++ | [re-smop] expanded the test for the interpreter | ||
mberends | ok, there's something else for browser only access. looking... | 11:35 | |
pmurias | hkBst: you can browse subversion repos from the browser if they are served on http | 11:36 | |
mberends | hkBst: svn.pugscode.org/pugs/ | ||
pmurias | hkBst: why don't you want to co the repo? | ||
hkBst | pmurias: I am looking into the status of pugs | 11:37 | |
pmurias | the haskell implemention itself is dead | 11:38 | |
hkBst | is another project also called pugs? | 11:39 | |
pmurias | they are other thing living in the repo now the test suit,smop,elf... | ||
hkBst: no, why do you ask? | |||
mberends | pugs: say "I'm not dead!"; | 11:40 | |
p6eval | pugs: OUTPUT«I'm not dead!» | ||
hkBst | pmurias: because you seemed to imply the `pugs' is not the same as `the haskell implementation' | 11:41 | |
why was pugs abandoned? | |||
pmurias | audreyt stoped working on it | ||
hkBst | I see | 11:42 | |
mberends | also, Rakudo on top of Parrot it more like the final goal. | ||
*is | |||
11:50
FurnaceBoy joined
11:51
ruoso joined
|
|||
pmurias | ruoso: hi | 11:52 | |
ruoso | hi pmurias | 11:53 | |
hkBst | thank you for the explanation and help, mberends and pmurias | 11:54 | |
mberends | you're welcome :) hopefully you will try Perl 6 out in one form or another | 11:59 | |
ruoso | TimToady, just to note that after all the flatten/unflatten discussion, I realized bare (1,2,3) is not List... but a Capture... That makes a very clear definition that flattening only traverse inside captures... | 12:01 | |
pasteling | "pmurias" at 78.8.158.35 pasted "rough GSoC schedule" (29 lines, 642B) at sial.org/pbot/35666 | 12:02 | |
pmurias | ruoso: do you think implementing that (see the schedule) for GSoC is enough/to little/to much? | 12:03 | |
ruoso | pmurias, I think you're forgetting that you need to have RoleHOW in order to have multi working | ||
not just RoleHOW, actually... but bootstrapping Multi.pm | 12:05 | ||
so you can, after that, implement trait_auxiliary:<is>('export', &code) | 12:06 | ||
so you can implement Test.pm | 12:07 | ||
with all the multies for the operators | |||
jnthn | ruoso: We've tended to have Test.pm not in a module Test { ... } so as not to have to worry about export, since we didn't have that for a while (we do just of recently). So can be a useful cheat. ;-) | 12:08 | |
12:08
mberends left
|
|||
pmurias | ruoso: i wasn't sure how to mention that in the schedule as we don't "pun" true classes untill we have ClassHOW | 12:09 | |
ruoso | just say that... ;) | ||
or, in a more ellaborated way... | 12:10 | ||
for bootstrapping purposes, a primitive RoleHOW is installed that pun classes using PrototypeHOW. This primtive RoleHOW will be replaced when we have ClassHOW in place... | |||
jnthn, interesting... but that only saves us the "is export" part... all the other operators still need to be multis.... | 12:11 | ||
jnthn | ruoso: Yes, true. | ||
ruoso | and that reminds me I'm still unconfortable about one thing in multi | 12:12 | |
jnthn | ruoso: We did have the benefit that we could piggy-back off Parrot's multiple dispatch which was good enough until we got the proper Perl 6 dispatch algorithm implemented. | ||
Only one thing? ;-) | 12:13 | ||
Lucky guy! | |||
ruoso | heh... | ||
"my" and "our" usually refer to "new" symbosl | |||
but in a multi you have the possibility to install it as a candidate of a multi declared in an outer scope | |||
using "our" to say "install this in the outer definition of the multi" | 12:14 | ||
seems odd | |||
since "our" mean... create a symbol in the package with a lexical alias... | 12:15 | ||
or re-use a symbol if there is already one... *in the current package* | |||
jnthn | Ah, but then we've gone and said that multis get imported into lexical scopes and not the package. Hmm. | ||
(At least, not unless you ask for 'em in the package.) | 12:16 | ||
ruoso | I think it's the same dillema with had with methods | ||
and I argue "my" and "our" should always be the same... | |||
jnthn | my I would expect to declare a new multi in the current lexical scope that overrides those in the outer scope (I don't know if it just hides anything of the same signature or if it hides 'em all, mind...maybe the spec says somewhere) | 12:18 | |
And our - yes, int he package. | |||
ruoso | the current package | 12:19 | |
with a local alias | |||
jnthn | Is installing one in an outer scope going to be a common thing? | ||
ruoso | our is just an extension to "my" | ||
jnthn | Aye, though we don't actually install anything in the lexpad in Rakudo for our, just keep track of the fact that this name is an alias to something in the package. | ||
ruoso | that's "install" to me | 12:20 | |
;) | |||
jnthn | Compile time installation. ;-) | ||
We know we can look up multis in an outer scope and .add_candidate or whatever the method would be called. | 12:21 | ||
So it's not that there's no way. | |||
ruoso | "push" in rakudo... | ||
my biggest concern is about multis that get exported | |||
jnthn | Yeah, but that's unspec, and I'm not 100% sure I like the name. | ||
12:22
riot joined
|
|||
jnthn | .candidates for getting a list of candidates feels fine, but .push..hmm. | 12:22 | |
Anyway, bike-shedding. | |||
ruoso | does each "use" checks if there's a definition in that scope and add to it? | ||
pmurias | does parrot have knowhows? | 12:23 | |
jnthn | ruoso: I'd figured since it's a lexical import into the current scope, then it should check if there's a definition in that scope and add to it, and if not then it'd need to create a Multi in that scope. | 12:24 | |
pmurias: Depends what you mean by "have knowhows" | |||
ruoso | so it's the "use" code that does that... | ||
jnthn | Yeah, but depending on how your lexpads work you may need to do some twiddling at compile time too. | 12:25 | |
12:25
donaldh joined
|
|||
jnthn | (Which is fine because we do 'use' at compile time...) | 12:25 | |
ruoso | rakudo: knowhow Foo { method bar { say 1 } }; Foo.bar; | 12:26 | |
p6eval | rakudo 748771: OUTPUT«Could not find non-existent sub Foocurrent instr.: '_block14' pc 64 (EVAL_16:42)» | ||
jnthn | pmurias: Did you mean, does Rakudo have knowhow? | 12:27 | |
pmurias: Or did you mean, does Parrot have any similar concept? | |||
12:27
donaldh left
12:29
donaldh1 joined
|
|||
ruoso | jnthn, hmm... actually... it's not the "use" code... it's "Foo::Bar::.EXPORTALL" that does it... | 12:30 | |
12:30
smtms left
|
|||
ruoso | S11 do need more work | 12:31 | |
jnthn | ruoso: Hmm...but a use by default shouldn't call .EXPORTALL | ||
It should only pull in stuff in Foo::Bar::EXPORT::DEFAULT | 12:32 | ||
ruoso | er... not according to S11 | ||
EXPORTALL is the one that handles Foo::Bar::EXPORT::DEFAULT | |||
pmurias | jnthn: i meant if rakudo has knowhow | ||
jnthn | ruoso: Oh, then it's name is fail. | ||
pmurias: No, not yet. | |||
pmurias: Maybe in the next couple of months or so. | |||
It's not that high priority compared to other things we're missing. | |||
ruoso | jnthn, EXPORTALL receives the tags sent by "use", and call EXPORT with the unknown ones... | 12:33 | |
jnthn | Ah, OK. | ||
ruoso | similar to BUILDALL/BUILD | ||
jnthn | Ah, so it's not referring to Foo::Bar::EXPORT::ALL | ||
OK.. | |||
pmurias | jnthn: was concerned if i have to explain what knowhows are in the GSoC proposal | ||
ruoso | pmurias, you can use STD as an example... STD already supports it | 12:34 | |
pmurias | ruoso: is the amount of work i'll spend implementing the schedule enough for GSoC or should i add extra things? | 12:37 | |
ruoso | I'm worried it might be too much | ||
pmurias, I understand the spec test are interesting check points. but there is a lot to be done which can't be represented in terms of spectest... | 12:39 | ||
at least, no tests that I'm aware of... | 12:40 | ||
honestly... if you bootstrap Multi.pm without cheats... I think it would be a cool project already | |||
(including sorting the candidates and grouping the ones with equal value) | 12:41 | ||
remember, you have a very small time-frame | 12:42 | ||
jnthn | pmurias: Having been there and done pretty much all that you're proposing - it *is* quite a bit of work. | 12:45 | |
pmurias: For example, roles only got done fairly quickly because Parrot had been taught how to handle them a couple of years before Rakudo needed them. | 12:46 | ||
masak likes the suggestion to make the logo for Rakudo contain a zombie cat | |||
jnthn | pmurias: And multi-dispatch has been a lot of effort to nail down the algorithm. On the upside, there's quite a few tests now. :-) | 12:47 | |
Also it's probably better to have something comfortably achievable and do a bit more than that, than having something that's too big and fall short of it. | 12:48 | ||
ruoso | indeed... | 12:49 | |
masak, but I'm not pretty sure how can you illustrate it... | 12:51 | ||
masak | ruoso: true. | ||
it still needs to look fashinable and appropriately perky. | |||
12:52
pmurias_ joined,
pmurias left
|
|||
jnthn | www.google.sk/search?q=site%3Aicanh...com+zombie | 12:52 | |
;-) | |||
ruoso | i.lolcatz.net/tb/fdc47511-269d-4526...2ecc16.jpg | 12:53 | |
pmurias_ | ruoso: we don't need ClassHOW for Multi, right? | 12:54 | |
ruoso | no... | ||
we can use the primitive RoleHOW | |||
12:55
pmurias_ is now known as pmurias
|
|||
pmurias | ruoso: i think i'll cut of the ClassHOW part and just do Multi properly | 12:55 | |
ruoso | I think that's a good plan | ||
13:01
rodi joined
|
|||
pmurias | ruoso: what do we need for Multi? failures,RoleHOW and Signature? | 13:01 | |
ruoso | yes... but I think there's some ways to go far with AdhocSignature | 13:02 | |
like... providing a method that returns the list of types.. | |||
13:05
ejs2 joined
13:07
skids left
|
|||
ruoso | masak, heh... I've just posted a zombie cat to the list ;) | 13:11 | |
masak | ruoso: I am slightly amused by this turn of events. | 13:12 | |
ruoso: nice. | 13:13 | ||
Raarwkudo! | |||
13:14
pifuruan joined
|
|||
masak | ruoso: I could see the final logo evolve out of that SVG image. | 13:15 | |
13:15
ejs1 left
|
|||
pifuruan | any guy explain what does perldoc use ' string 's internal form' mean | 13:18 | |
masak | pifuruan: hello, this is #perl6. we gladly answer questions about Perl 6. | 13:19 | |
for Perl 5, there are other fora. | |||
pifuruan | a o | 13:20 | |
13:20
grwi joined
13:21
grwi left
13:22
pifuruan left
|
|||
ruoso | pmurias, I think you forgot to por SMOP__NATIVE__CAPTURE__named | 13:31 | |
s/por/port/ | |||
13:32
riot left
13:33
donaldh1 left,
donaldh1 joined,
donaldh1 left
13:36
frioux_away left
|
|||
mikehh | rakudo (7487710) on parrot r37676 builds make test/make spectest PASS - Kubuntu Intrepid i386 | 13:37 | |
13:43
lambdabot left
13:46
lambdabot joined
|
|||
PerlJam | make that zombie cat out of hexagons (for some reason I like the tie-in to graphene too :) | 13:46 | |
masak | or a hexagon built out of zombie cats. | 13:53 | |
PerlJam | or do some sort of figure/ground trick with hexagons and cats. | 13:54 | |
look at it one way and it's a hexagon R, look at it another way and it's a zombie cat. :) | 13:55 | ||
masak | an Escher infinity of zombie cats walking stairs in different directions. | ||
PerlJam | Anything with escher, hexagons and zombie cats wins in my book. | 13:56 | |
masak | Escher in a hexagon, with a zombie cat on his head. | ||
rgs | the universe (which others call the Library) is composed of an indefinite and perhaps infinite number of hexagonal galleries. | 13:57 | |
PerlJam | someone suggested that the cat should be eating a parrot, but I think it's the parrots who made the zombie cat. So ... two parrots with a frankensteinesque cat could be interesting :) | 13:58 | |
masak | actually, cats are good for another reason, namely the connection between Lolspeak and Rakudo. | ||
jnthn | I CAN HAZ KITTEH LOGO? | ||
masak | exactly. | 13:59 | |
13:59
hercynium joined
14:07
skids joined
14:12
DemoFreak joined,
[particle] joined
|
|||
pugs_svn | r25986 | pmurias++ | [re-smop] added SMOP__NATIVE__idconst_create and SMOP__NATIVE__capture_named | 14:16 | |
14:17
NordQ joined
|
|||
masak | wanted: a plugin to vim or Emacs which enumerates 'ok' et al in test files. | 14:18 | |
14:25
FurnaceBoy left
|
|||
moritz_ | rakudo: my $x = 'a' ~~ /a/; say $x.WHAT | 14:32 | |
p6eval | rakudo 748771: OUTPUT«Match» | ||
masak | \o/ | 14:33 | |
14:34
DemoFreak left
14:36
frioux joined
|
|||
masak | ok, so what about this one: we might not get the camel, but we can still put a zombie lolcat in a desert environment. sort of give it a background with a pyramid and/or an oasis. | 14:40 | |
ruoso | pmurias, it might be a good idea to check if the named parameter keys are idconsts... | ||
lambdabot | ruoso: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
ruoso | @messages | ||
lambdabot | skids said 1d 13h 13m 47s ago: www.abrij.org/~bri/S07-tempurl.diff S07 edits + new coro section | ||
ruoso | I already have read that lambdabot! | 14:41 | |
jnthn | masak: Remember the logo should be reasonably simple too. | 14:42 | |
zombie lolcat + pyramid... ;) | |||
Quite complex even if...interesting. | |||
14:43
exodist joined
|
|||
masak | jnthn: doesn't have to be too complicated. | 14:43 | |
Firefox has the entire Earth in its logo without it looking complex. | |||
moritz_ | a cat that hangs on top of a pyramid? | 14:44 | |
pmurias | ruoso: you can use anything you want as keys if you are happy with pointer equality | ||
masak | moritz_: a really happy kitteh on top of a pyramid. | ||
ruoso | pmurias, heh... that's not quite useful for things different than idconst, is it? | ||
rgs | kittens prefer palm trees | ||
PerlJam | if we weren't talking about rakudo, a nice montage could be made of cats and snakes and rubys and such to signify all of the languages for which there exist a parrot compiler. | ||
pmurias | ruoso: you can add it | 14:45 | |
masak | someone draw www.flickr.com/photos/ocpetphotos/2508271110/ in SVG, and people will look at the Rakudo logo, and go "aaaaaw"... forever. | 14:47 | |
14:48
nihiliad joined
|
|||
skids | ruoso: I don't know if that talk with TimToady there clered everything up, but if you wanted to cut the section on the item iterator until the @@ stuff gets resolved, I don't mind backtracking changes. (no pugs commit bit here.) | 14:49 | |
moritz_ | skids: you can get a pugs commit bit easily | 14:50 | |
skids | howso? | ||
moritz_ | skids: just /msg me your email address and desired username | ||
(or any other pugs committer that has two minutes free time) | |||
skids: sent. Please add yourself to AUTHORS as a commit test | 14:51 | ||
skids | is there a time limit or can I do that later (at work now)? | 14:52 | |
moritz_ | skids: no time limit | ||
skids thanks moritz++ | 14:53 | ||
14:54
jcrigby left
15:00
finanalyst left
|
|||
skids | If I read this right, the last thing executed by a lazy loop which has not been asked for another iteration is the LEAVE block (or KEEP/UNDO) | 15:04 | |
And a redo will not wait for an iteration request. | |||
Do I have that right? | 15:05 | ||
15:09
ejs1 joined
15:11
disismt left,
disismt joined
|
|||
[particle] | anyone here want to be a mentor for gsoc2009, who hasn't signed up yet? i can help you with that. | 15:16 | |
PerlJam | What does a mentor do? | 15:17 | |
[particle] | if you get a student, you coach them through the program | 15:18 | |
ruoso | [particle], how do I know If I'm already signed as a mentor? | ||
[particle] | meet with them at least weekly, preferably more often | ||
15:19
ejs2 left
|
|||
[particle] | ruoso: i try to add you, and it tells me you're already there? maybe? this app is new, so i'm a bit behind on that | 15:19 | |
ruoso | [particle], you have my mail? | ||
[particle] | ruoso: you need to create an account at socghop.appspot.com | 15:20 | |
perljam: i think you'd be an excellent mentor, btw | |||
PerlJam | okay, I've created an account. | ||
[particle] | create your accounts, if you wish, and give me the 'public name' | ||
i'll be back in 15m, and send invites! | 15:21 | ||
15:21
donaldh joined
|
|||
moritz_ | [particle]: all done here, thank you | 15:21 | |
PerlJam | [particle]: perlpilot is my public name | 15:23 | |
15:23
lisppaste3 left
|
|||
ruoso | [particle], ok... I have myself listed as "pending requests" | 15:24 | |
15:25
alc left
15:26
kimtaro left
15:35
kimtaro joined,
lisppaste3 joined
|
|||
pmichaud | good morning #perl6 | 15:36 | |
15:36
cls_bsd left
|
|||
diakopter | #perl6 greets you warmly | 15:38 | |
... you stumble into a trove of round tuits. | |||
jnthn | morning pmichaud | 15:39 | |
[particle] | invites sent! | 15:41 | |
masak | good morning pm | 15:43 | |
[particle] | PerlJam, ruoso: could you fill out spreadsheets.google.com/viewform?fo...1aU3c6MA.. | ||
amoc | good morning all ! | 15:46 | |
15:47
ejs1 left
15:48
lisppaste3 left
15:49
cls_bsd joined
|
|||
amoc , and then, prepares to go to sleep | 15:49 | ||
15:52
parduncia left
|
|||
[particle] | perljam, ruoso: nevermind, don't need todo that last bit | 15:52 | |
ruoso | too late | ||
PerlJam | way too late. | ||
:) | |||
[particle] | PerlJam, ruoso, masak: you should, however, join [email@hidden.address] | 15:53 | |
masak | [particle]: gotcha. | ||
masak 's request to join is now pending | 15:54 | ||
dukeleto | the tpf-gsoc mailing list is for mentors only to discuss gsoc-related stuff and the tpf-gsoc-students is for students to ask questions | ||
i will approve now | |||
just approved | 15:55 | ||
[particle] | dukeleto: more on their way, from folks in #parrot | 15:56 | |
dukeleto | sweet! | 15:57 | |
frioux | does anyone here know where I can get a room at CMU (for YAPC?) | ||
moritz_ | |||
frioux | I can't seem to find it on their site. | ||
moritz_ | (that was to dukeleto) | 15:58 | |
[particle] | frioux: i don't think they've opened that up yet | ||
frioux | ah, ok | ||
thanks [particle] | |||
ah, it does say "Once we have finalized our facilities contract with CMU, ..." | 15:59 | ||
[particle] | yapc10.org/yn2009/wiki?node=Newslet...%2C%202009 | ||
16:00
Meijito joined
|
|||
Meijito | Hey, how I can put photo into a perl script? I don't wanna leave some photo in folder. I wanna implant it to script. Is it possible and how? | 16:01 | |
PerlJam | Meijito: store the whole thing in a string or as __DATA__ | ||
moritz_ | Meijito: this channel is about developing the programming language Perl 6, not about Perl 5 questions | 16:02 | |
PerlJam | heh ... /me didn't even realize he was still on #perl6 (ETOOMANY#PERL) | ||
Meijito | moritz_, from where you know that i'm using perl5? Maybe I use perl 6. | ||
moritz_ | Meijito: are you? | ||
Meijito: nearly all users who ask such questions here use perl 5 | 16:03 | ||
Meijito | It's very slippery question. | ||
[particle] | meijito: you don't use perl 6, i can tell :) | 16:04 | |
PerlJam | Meijito: or you're just trying to be slippery in not answering. | ||
Meijito | Answer: If you will still help me if my anser is "Perl 5" when: Yes, I'm using perl5, but if no, so: "I'm using Perl 6". Damn, I'm smart. :D | ||
But if really so yes, I'm using Perl 5. And.. Here is litle problem. Channel: #perl5 not exist. | 16:05 | ||
PerlJam | Meijito: this is where everyone starts ignoring you (if they haven't already) | ||
moritz_ | Meijito: try perlmonks.org | ||
ruoso | Meijito, join #perl instead | ||
PerlJam | Meijito: but #perl does exist | ||
Meijito | Yes, but I can't join here. I write: /join #perl and it not work. :/ | ||
ruoso | Meijito, try #perl @ irc.perl.org | 16:06 | |
Meijito | perlmonks.org - It's bad cause here answer you can wait.. All week. IRC is better. | ||
moritz_ | congratulations, you got a ban | ||
Meijito: most questions on perlmonks are answered within 2 hours or faster | |||
Meijito | ruoso, thanks. I go and will is in perl network. | 16:07 | |
:) | |||
16:10
dKingston joined
|
|||
skids ponders how to talk about thread variable sharing without opening the traditional can of worms. | 16:13 | ||
obviously @a <== map {...} <== map {...} <== @b we want to work. | 16:14 | ||
So maybe if we asked the heavyweights what the code inside map should look like to be "threadsafe" we could infer the answers as to what is shared in an "autothread." | 16:15 | ||
16:16
ejs joined
16:17
mako132 joined
|
|||
skids | Without tackling any of the subject matter about how to make threading work to any developer's druther. | 16:17 | |
TimToady | www.wall.org/~larry/camelia.pdf | 16:18 | |
ruoso, jnthn: multi dispatch never looks in packages, so whether there's an "our" is immaterial | 16:19 | ||
dukeleto | TimToady: what a beautiful meta-buttterfly | ||
skids | hypersmiley! | 16:20 | |
TimToady | and the meme is extensible: X-with-P6-wings | ||
16:20
goksie joined
|
|||
TimToady | maybe the new camel book should have a camel with butterfly wings, victorian style | 16:21 | |
and a completely straight-faced exposition of the dromedary butterfly | |||
skids | Or just lolcat whiskers. | ||
moritz_ | like this? perl6.ru/img/perl6book-parody.gif | 16:22 | |
dukeleto | moritz: did you get a chance to look at the roots_squashed pull request? | ||
moritz_ | dukeleto: no, not yet | ||
skids | lol is that a crocodile head? | 16:23 | |
dukeleto | moritz: i don't know if I included too much detail of the algorithm in the POD, but y'all can always cut it down | 16:24 | |
ruoso | TimToady, no dispatcher looks in the package, but the user might want to make the multi available as a package symbol... hence "our" | 16:30 | |
but the questions is wether it is possible to declare a new candidate to an outer multi | 16:31 | ||
but maybe new candidates are never visible in outer scopes... | 16:32 | ||
and EXPORTALL does some trick to merge the different candidates from different modules in the user's scope | |||
this actually fits well with the idea of candidates list being closed at compile time | 16:33 | ||
TimToady | the only modifiable outer scope is COMPILING | 16:34 | |
and you modify it by exporting | 16:35 | ||
ruoso | so EXPORTALL modifies COMPILING | ||
it checks if there's already a &foo in that scope | |||
TimToady | if you put an alias into the package, then it's just for handy &foo use | ||
ruoso | TimToady, yes... "our" is just a handy alias | ||
TimToady | so anyway, I'm not worried about our vs my wrt multis | 16:36 | |
ruoso | that wasn't my worry | ||
so... EXPORTALL looks for COMPILING::<&foo> | 16:37 | ||
if there is one, add his candidates to it | |||
if there isn't, create a new multi and install his candidates in it | |||
but... | |||
COMPILING is a flattened scope like CALLER? or does it really means the scope in the level it is right now? | 16:38 | ||
i.e... | |||
{ my multi foo {...}; { use Foo; } } | 16:39 | ||
when calling Foo::.EXPORTALL | |||
would COMPILING see the outer &foo? | |||
or would you need to use something like COMPILING::OUTER::<&foo>? | |||
16:39
araujo joined
16:40
eternaleye_ left
|
|||
PerlJam would guess the former | 16:40 | ||
ruoso | but that would mean the outer &foo would be changed... so the scoped "use" would kinda fail... | ||
16:41
justatheory joined
|
|||
ruoso | in theory there's a "lookup" method of some sort in the lexical scope object | 16:42 | |
so if COMPILING doesn't mean a "flattened" scope... | |||
you can do... | 16:43 | ||
TimToady | the policy for importing a multi into a lexical scope should be identical to the policy for declaring one there directly | ||
masak | rakudo: class A does Callable { method invoke() {} }; A.new().() | ||
p6eval | rakudo 748771: OUTPUT«invoke() not implemented in class 'A'current instr.: '_block14' pc 71 (EVAL_23:40)» | ||
masak | is too! | ||
ruoso | TimToady, so COMPILING is not a "flattened" scope | ||
TimToady | no, it's not | ||
ruoso | cool... | ||
so I guess there should be some method to perform an actual lookup in its outer scopes... | 16:44 | ||
maybe COMPILING::OUTER is flattened | 16:45 | ||
so you can lookup for other definitions of &foo to copy the variatns | 16:46 | ||
TimToady, does that make sense? | |||
TimToady | maybe | ||
jnthn | masak: That role probably should in fact just make it an error not to write a postcirfumfix:<( )> | ||
masak | jnthn: aye. | 16:47 | |
rakudobug? | |||
TimToady | jnthn: did you see above about multis? | ||
jnthn | TimToady: I noticed it; I'll read it in detail later (working on $other_stuff at the mo) | 16:48 | |
TimToady | k | 16:49 | |
ruoso wonders how COMPILING ends up being found by EXPORTALL | |||
16:50
Psyche^ joined
|
|||
ruoso | looks like a dynamic lookup... but it's written like a package... | 16:50 | |
TimToady | CALLER is also dynamic | ||
and CONTEXT | 16:51 | ||
ruoso | hmm... right... | ||
so it goes finding for the "use" call | |||
TimToady | COMPILING really doesn't care about "use" at all. it could as easily be in a macro definition | 16:53 | |
16:54
Patterner left,
Psyche^ is now known as Patterner
|
|||
PerlJam | TimToady: what do you think about a twigil (or some syntactic marker) to differentiate dynamic things from non-dynamic things? I ask because it's somthing that I tend to have a lookup table for in my head. | 16:57 | |
ruoso | TimToady, the problem is that when you compile a file, and it uses a file you don't have compiled, it needs to then recursively compile that file.. | ||
PerlJam | (yes, I realize how vague that is :) | ||
16:57
donaldh left
17:00
eternaleye joined
17:01
amoc left
17:07
M_o_C joined
17:08
eternaleye left
|
|||
TimToady | PerlJam: we all ready have the * twigil for dynamic variables | 17:13 | |
PerlJam | but not for CALLER and such. That's where there's a lookup table in my head. | ||
17:17
cspencer joined
17:19
mako132 left
|
|||
pugs_svn | r25987 | pmurias++ | [re-smop] added a test for mold | 17:22 | |
TimToady | we discourage people from fiddling with CALLER that way :) | 17:25 | |
17:27
goksie left
17:31
parduncia joined,
eternaleye joined,
FurnaceBoy joined
|
|||
pugs_svn | r25988 | ruoso++ | [re-smop] fix a missing RELEASE in interpreter_message | 17:31 | |
pasteling | "pmurias" at 78.8.158.35 pasted "revised GSoC schedule" (13 lines, 441B) at sial.org/pbot/35673 | 17:38 | |
17:39
masak left,
meppl joined,
c9s__ joined
17:41
justatheory left
|
|||
pmurias | ruoso: do you think something like that would be ok? | 17:42 | |
ruoso | pmurias, yes... but I'd even remove the last three lines... just the multi part is already a lot of work... | ||
17:45
parduncia left
17:46
c9s__ left
17:48
cognominal_ joined
17:52
eternaleye left
17:55
cognominal left
17:57
schmalbe joined
|
|||
frioux is going to YAPC!!! woohoo! | 18:03 | ||
pmurias | YAPC::NA? | 18:05 | |
frioux | yessir | 18:06 | |
18:09
pmurias left
18:10
pmurias joined
18:15
PerlJam left
18:16
PerlJam joined
18:23
xinming left
18:26
xinming joined
18:29
dalek left,
pmichaud left,
jnthn left
18:31
cdarroch joined
18:33
cognominal_ left
18:34
cognominal_ joined
18:35
xinming_ joined
18:41
xinming left
18:44
cdarroch left
18:46
cdarroch joined
18:48
Schnueff joined
|
|||
Tene | rakudo: my $a = "♪la la la♪"; say $a | 18:59 | |
p6eval | rakudo 07ceac: OUTPUT«♪la la la♪» | ||
19:05
rodi left
19:24
lisppaste3 joined
|
|||
ruoso | svn down | 19:28 | |
19:32
pmurias left
19:38
disismt left,
disismt joined
19:40
finanalyst joined,
cognominal_ left
|
|||
finanalyst | per6: my $s = foo(); say $s.perl; sub foo { my $v = 1|11; return $v} | 19:41 | |
perl6: say "hi" | 19:42 | ||
p6eval | elf 25988, pugs, rakudo 07ceac: OUTPUT«hi» | ||
M_o_C | you forgot the "l" in perl6 | ||
19:42
dalek joined
|
|||
finanalyst | aggggh | 19:42 | |
perl6: my $s=foo(); say $s.perl; sub foo {my $v = 1|11; return $v} | 19:43 | ||
p6eval | elf 25988: OUTPUT«11» | ||
..rakudo 07ceac: OUTPUT«any(1, 11)» | |||
..pugs: OUTPUT«\(1 | 11)» | |||
19:44
jonathan2 joined,
jonathan2 is now known as jnthn
|
|||
finanalyst | perl6: my $s; foo($s); say $s.perl; sub foo($w is rw) {$w = 1|11} | 19:45 | |
p6eval | elf 25988: OUTPUT«undef» | ||
..pugs: OUTPUT«\(1 | 11)» | |||
..rakudo 07ceac: OUTPUT«Type mismatch in assignment.current instr.: 'die' pc 15608 (src/builtins/control.pir:204)» | |||
19:46
Juerd joined
|
|||
jnthn | rakudo++ | 19:47 | |
(the type of a parameter is Any, which doesn't accept Junction, for anyone wondering...) | 19:48 | ||
Juerd | feather's backup :) | ||
jnthn | erm, default type... | ||
Juerd | s/backup/back up/ | ||
19:49
Juerd left
|
|||
finanalyst | is this a rakudo bug? | 19:51 | |
or is pugs incorrect? | |||
moritz_ | finanalyst: pugs doesn't do any type checking | ||
19:51
jan_ left
|
|||
jnthn | finanalyst: What moritz said, and Rakudo is correct. | 19:52 | |
ruoso | jnthn, a bare "my $s" is Any? | ||
or is the signature? | |||
jnthn | ruoso: The sig. | ||
It's the assignment to $w that does it | |||
finanalyst | so why can a junction be returned from the sub? | ||
ruoso | interesting... I didn't assume default type for a signature was An | ||
Any | |||
jnthn | ruoso: That's how junction auto-threading works. | 19:53 | |
ruoso | right... | ||
but... | |||
I didn't assume an untyped signature was Any | |||
jnthn | It is. | ||
ruoso | spec? | ||
moritz_ | finanalyst: because the return type doesn't assume Any | ||
jnthn | Well, for Routine. | ||
Yes, it's in the spec. | |||
ruoso | ok then | ||
jnthn | Maybe S03. | ||
Or S09. | |||
19:53
c9s left
|
|||
moritz_ | S02 iirc ;-) | 19:53 | |
jnthn | Or possibly S02. | ||
Oh. | |||
Well, I got it eventually. :-) | 19:54 | ||
moritz_ | Any Perl 6 object (default routine parameter type, excludes junction) Object | ||
jnthn | All of them mention auto-threading. ;-) | ||
19:54
c9s joined
|
|||
finanalyst | how to set the type to junction in the signature? | 19:54 | |
moritz_ | s/Object/ | ||
jnthn | moritz_++ # thanks, I'm lazy. | ||
19:54
desertmax joined
|
|||
ruoso | S06 is where most of Signature resides | 19:54 | |
19:54
desertmax left,
desertmax joined
|
|||
moritz_ | finanalyst: sub f(Junction $x) # if it should only allow junction | 19:54 | |
jnthn | finanalyst: Just give the parameter a type Junction or Object. | ||
moritz_ | finanalyst: or sub f(Object $x) # both junctions or normal values are OK | ||
19:55
jan_ joined
|
|||
skids | Though to be particularly anal it should really return multiple times, in an autothreaded manner. Which of course is impossible :-) | 19:55 | |
19:56
[particle] left
|
|||
finanalyst | perl6: my $s; foo($s); say $s.perl; sub foo(Object $w is rw) {$w = 1|11} | 19:56 | |
p6eval | rakudo 07ceac: OUTPUT«any(1, 11)» | ||
..elf 25988: OUTPUT«undef» | |||
..pugs: OUTPUT«\(1 | 11)» | |||
jnthn | Well, it could run the rest of the program from that point on concurrnetly for each junc...no I so am not going to suggest that. | ||
skids | lol | ||
I was just NOT going to admit I was thinking that. | 19:57 | ||
jnthn | ;-) | ||
There's a saying about great minds, and another about all fools... | |||
19:57
cdarroch left
20:02
DemoFreak joined
20:04
[particle] joined
20:05
cognominal joined
20:08
trigger_trilogy joined
|
|||
jnthn | masak++ # that Leviticus quite is The Awesome. | 20:08 | |
20:19
Diederich left
|
|||
moritz_ | rakudo: 'ab' ~~ /<x>(.)/; say $/.keys.perl | 20:23 | |
p6eval | rakudo 07ceac: OUTPUT«Unable to find regex 'x'Null PMC access in invoke()current instr.: 'parrot;PGE;Grammar;' pc 299 (EVAL_18:122)» | ||
moritz_ | rakudo: 'ab' ~~ /<xdigit>(.)/; say $/.keys.perl | 20:24 | |
p6eval | rakudo 07ceac: OUTPUT«[0]» | ||
moritz_ | rakudo: 'ab' ~~ /<xdigit>(.)/; say %($/).keys.perl | ||
p6eval | rakudo 07ceac: OUTPUT«["xdigit"]» | ||
20:26
Diederich joined
|
|||
finanalyst | rakudo: my @x=1|11,2,1|11; say ([+] @x).perl | 20:26 | |
p6eval | rakudo 07ceac: OUTPUT«any(any(4, 14), any(14, 24))» | ||
finanalyst | rakudo: my @x = 1|11,2,1|11; say ([+] @x).eigenstates.perl | 20:27 | |
p6eval | rakudo 07ceac: OUTPUT«[any(4, 14), any(14, 24)]» | ||
moritz_ | it doesn't flatten yet as it should | 20:28 | |
but it's going away anyway | |||
finanalyst | that's what i want to know | ||
it should flatten | |||
rakudo: my @x=1|11,2,1|11; say ([+] ([+] @x)) | 20:29 | ||
p6eval | rakudo 07ceac: OUTPUT«Junction<0xb603aaa0>» | ||
finanalyst | rakudo: my @x=1|11,2,1|11; say ([+] ([+] @x)).perl | 20:30 | |
p6eval | rakudo 07ceac: OUTPUT«any(any(4, 14), any(14, 24))» | ||
moritz_ | the nested junction still behaves like the "flat" one | ||
it autothreads as whole over + | 20:31 | ||
finanalyst | my @x=1|11,2,1|11;say ([+] ([+] @x).eigenstates).eigenstates.perl | ||
rakudo: my @x=1|11,2,1|11;say ([+] ([+] @x).eigenstates).eigenstates.perl | |||
20:31
ejs left
|
|||
p6eval | rakudo 07ceac: OUTPUT«[any(18, 28), any(28, 38)]» | 20:31 | |
finanalyst | is that right? | 20:32 | |
20:32
alester joined
|
|||
moritz_ | it's not right, because .eigenstates should be private method | 20:32 | |
finanalyst | i dont follow | ||
do you mean that one of the eigenstates is ok, but the second is not? | 20:33 | ||
ruoso | finanalyst, junctinos are not sets | ||
finanalyst, you shouldn't try to get its members | |||
you just use it as regular values | |||
finanalyst | how? | ||
to get members? | |||
moritz_ | don't. | 20:34 | |
ruoso | you don't | ||
moritz_ | it's as simple as that. | ||
(and it annoys me, because it means testing becomes rather hard) | |||
ruoso | moritz_, you test for each individual value | ||
more verbose... not harder... | |||
moritz_ | ruoso: but then I don't test for absence of values | ||
ruoso: or if I do, I have to consider a huge pool of values | 20:35 | ||
ruoso | moritz_, I think there's a trick you can do... | ||
ruoso taking a look .. | 20:36 | ||
pugs_svn | r25989 | moritz++ | [t/TASKS] not ticket number of 'is also' -> 'augment' transition | ||
finanalyst | i am not understanding junctions too well. where is there some more info | ||
on junctins | |||
moritz_ | ruoso: also, the test for individual items is much harder for all() junctions | ||
ruoso | rakudo: say "ok" if any(1,2,3) == all(1,2,3) | 20:37 | |
moritz_ | finanalyst: I wrote something here: perlgeek.de/blog-en/perl-5-to-6/08-...tions.html | ||
p6eval | rakudo 07ceac: OUTPUT«ok» | ||
finanalyst | thanx | ||
ruoso | moritz_, ^^ | ||
moritz_ | ruoso: there are also one() and none() junctions | 20:38 | |
rakudo: say "ok" if any(1,2,3) == all(1,2) | |||
p6eval | rakudo 07ceac: OUTPUT«ok» | ||
moritz_ | it didn't test for absence of 3 in the first junction | ||
and it already relies von correct autothreading | |||
ruoso | rakudo: say "ok" if all(1,2,3) == all(1,2); | ||
p6eval | rakudo 07ceac: RESULT«all(all(Bool::True, Bool::False), all(Bool::False, Bool::True), all(Bool::False))» | 20:39 | |
moritz_ | rakudo: say all(1,2,3) == all(1,2) ?? 'yes' !! 'no' | ||
p6eval | rakudo 07ceac: OUTPUT«no» | ||
ruoso | rakudo: my $j = 1 | 2; say all(1,2,3) == all($j) ?? 'yes' !! 'no' | 20:40 | |
p6eval | rakudo 07ceac: OUTPUT«no» | ||
ruoso | rakudo: my $j = 1 | 2 | 3; say all(1,2,3) == all($j) ?? 'yes' !! 'no' | ||
p6eval | rakudo 07ceac: OUTPUT«yes» | ||
ruoso | rakudo: my $j = 1 | 2 | 3 | 4; say all(1,2,3) == all($j) ?? 'yes' !! 'no' | ||
p6eval | rakudo 07ceac: OUTPUT«yes» | ||
ruoso | er... that's a bug... | 20:41 | |
rakudo: say all(1,2,3) == all(1,2,3,4) | |||
p6eval | rakudo 07ceac: OUTPUT«Junction<0xb6017770>» | ||
ruoso | rakudo: say (all(1,2,3) == all(1,2,3,4)).perl | ||
p6eval | rakudo 07ceac: OUTPUT«all(all(Bool::True, Bool::False), all(Bool::False, Bool::True), all(Bool::False, Bool::True))» | ||
ruoso | rakudo: say (all(1,2,3) == all(1,2,3)).perl | 20:42 | |
p6eval | rakudo 07ceac: OUTPUT«all(all(Bool::True, Bool::False), all(Bool::False, Bool::True), all(Bool::False, Bool::True))» | ||
finanalyst | did i read somewhere that Damian Conway gave a talk on superpositions that introduced junctions? | 20:43 | |
ruoso | you probably did... Damian did gave that talk | 20:44 | |
rakudo: say (all(1,2) == all(1,2)).perl | |||
p6eval | rakudo 07ceac: OUTPUT«all(all(Bool::True, Bool::False), all(Bool::False, Bool::True))» | ||
ruoso | rakudo: say (all(1,2) == all(1,2)).true | 20:45 | |
p6eval | rakudo 07ceac: OUTPUT«0» | ||
ruoso | rakudo: say (all(1,2) == all(any(1,2))).true | ||
p6eval | rakudo 07ceac: OUTPUT«1» | ||
ruoso | rakudo: say (all(1,2) == all(any(1,2,3))).true | ||
finanalyst | but where can i find it? | ||
p6eval | rakudo 07ceac: OUTPUT«1» | ||
finanalyst | damian's talk | 20:46 | |
ruoso | finanalyst, I'm not sure he publishes it | ||
moritz_ | finanalyst: he wrote Quantum::Superposition, a Perl 5 module that somewhat implements junctions | ||
ruoso | rakudo: say (all(1,2) == any(1,2,3)).true # this checks if all values are in the jucntion | 20:47 | |
p6eval | rakudo 07ceac: OUTPUT«1» | ||
finanalyst | is there an easy way to flatten nested junctions using the current version of rakudo? | ||
ruoso | finanalyst, use it in boolean context | ||
finanalyst | i found a version of Damian's Superposition talk - in Portugese!!! | 20:49 | |
20:50
sri_kraih joined,
ejs joined
|
|||
finanalyst | rakudo: my @x=1|11,2,3|33; my $s=[+] @x; say $s.perl; say ?($s) | 20:51 | |
p6eval | rakudo 07ceac: OUTPUT«any(any(6, 36), any(16, 46))1» | ||
skids | rakudo: push(any(1|2|3); @_.say; | ||
p6eval | rakudo 07ceac: OUTPUT«Statement not terminated properly at line 1, near "(any(1|2|3"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
20:51
schmalbe left
|
|||
ruoso | finanalyst, skids, junctions are not sets | 20:51 | |
skids | rakudo: my @a; @a.push(any(1|2|3)); @a.say; | ||
p6eval | rakudo 07ceac: OUTPUT«Junction<0xb60a4788>» | ||
skids | ruoso: I know. | 20:52 | |
moritz_ | IMHO that's a bug | ||
it push should autothread over the junction, and then complain for each that it can't push to an Int | 20:53 | ||
skids | But people will be able to autothread in a way that retains values. | ||
Nomatter what they are told. | |||
ruoso | rakudo: my @a; @a.push(1|2|3); @a.say | ||
p6eval | rakudo 07ceac: OUTPUT«Junction<0xb6024298>» | ||
jnthn | That's wrong for sure because .say should auto-thread. | ||
skids | Which was the point I was trying to make. | ||
jnthn | (Whihc will happen if somebody moves it to the setting ;-)) | 20:54 | |
ruoso | jnthn, push sould autothread... | ||
jnthn | ruoso: Depends on its signature. | ||
ruoso: I suspect it won't though. | |||
finanalyst | ruoso: you said junctions are not sets twice, but why is that significant here. I think i should be getting any(6, 16,36,46) | ||
jnthn | Because probably role Array[::T = Object] { method push(T *@x) { } } | ||
moritz_ | finanalyst: any(any(1, 2), any(3, 4)) is the same as any(1, 2, 3, 4) in *all* respects, excepts for .eigenstates which is going away | 20:55 | |
skids | At any rate implementing the Set type would at least give an alternative to point people to. | 20:56 | |
moritz_ | finanalyst: so there's no reason to mull over the fact if and how it should flatten | ||
skids: aye, good idea | |||
skids | But then what is any(all(1,2),none(3,4))? | ||
moritz_ | skids: it is exactly what it is, any(all(1,2),none(3,4)) | 20:57 | |
ruoso | it doesn't make sense on itself | ||
skids | So it will not flatten. | ||
ruoso | it only makes sense when you try to do something with it | ||
skids, it might or might not | |||
moritz_ | if you do any(all(1,2),none(3,4)) < 3, it'll autothread to any(all(True, True), all(False, False)) | ||
ruoso | skids, that question is pointless... | 20:58 | |
moritz_ | and that collapses to True in Booleand context | ||
flattening is an optimization | |||
ruoso | skids, because a junction is something that should be seen as 1 value | ||
20:58
desertmax left
|
|||
moritz_ | that is probably not possible for junctions of mixed types | 20:58 | |
finanalyst | is there not some sort of algebra to simplify junction expressions like that | ||
moritz_ | finanalyst: there is | ||
finanalyst: for example all(a, a, $stuff) is the same as all(a, $stuff) | 20:59 | ||
finanalyst | what about any(all(1,2),none(3,4))? | ||
jnthn | That'd maintain its structure. | 21:00 | |
moritz_ | I don't see a trivial optimization there | ||
finanalyst | or am i thinking in sets? | ||
ruoso | I think you do | ||
a junction only makes sense when you try to do something with it | |||
moritz_ | and a set doesn't have different collapsing types as Junctions do | 21:01 | |
ruoso | because sets doesn't collapse | ||
;) | |||
moritz_ | right ;-) | ||
21:02
FurnaceBoy left
|
|||
finanalyst | ok. How is any(3,4,5,6) different from any(3,4,any(5,6))? | 21:04 | |
ruoso | it isn't | ||
finanalyst | so the any can be taken out of the brackets? | 21:05 | |
moritz_ | yes | ||
21:06
sri_kraih_ left
|
|||
finanalyst | what about any(3,4,all(6..8)) does this have another representation? | 21:06 | |
moritz_ | I don't see one | 21:07 | |
21:07
M_o_C left
|
|||
finanalyst | perhaps any(all(3,6..8),all(4,6..8)) | 21:07 | |
moritz_ | no | ||
3 == any(3,4,all(6..8)) is true in boolean context | |||
3 == any(all(3,6..8),all(4,6..8)) is false in boolean context | |||
ruoso | finanalyst, again... it only makes sense when you try to use it... | 21:08 | |
21:08
mikehh left,
mikehh joined
|
|||
ruoso still trying to figure out a way to check for absent values... | 21:08 | ||
moritz_ | rakudo: say %*ENV.WHAT === ::Hash; | 21:09 | |
p6eval | rakudo 07ceac: OUTPUT«1» | ||
finanalyst | ruoso: I can see that you need to test again junctions, but finding other representations is surely important, such as trying to find a way to test absent values | ||
21:10
donaldh joined
|
|||
moritz_ | rakudo: say %*ENV.WHAT === Hash; | 21:10 | |
p6eval | rakudo 07ceac: OUTPUT«1» | ||
moritz_ | rakudo: say %*ENV.WHAT eq Hash; | ||
p6eval | rakudo 07ceac: OUTPUT«1» | ||
finanalyst | rakudo: 3 == any(all(3,6..8),all(4,6..8)) and say "yes" | 21:11 | |
21:11
donaldh left
|
|||
p6eval | rakudo 07ceac: RESULT«any(all(Bool::True, Bool::False), all(Bool::False))» | 21:11 | |
21:13
ejs left
|
|||
finanalyst | rakudo: (3,6..8) == any(all(3,6..8),all(4,6..8)) and say "yes" | 21:13 | |
p6eval | rakudo 07ceac: RESULT«any(all(Bool::False), all(Bool::False))» | ||
21:13
Meijito left
|
|||
finanalyst | rakudo: all(3,6..8) == any(all(3,6..8),all(4,6..8)) and say "yes" | 21:13 | |
p6eval | rakudo 07ceac: RESULT«all(any(all(Bool::True, Bool::False), all(Bool::False)), any(all(Bool::False, Bool::True), all(Bool::False, Bool::True)), any(all(Bool::False, Bool::True), all(Bool::False, Bool::True)), any(all(Bool::False, Bool::True), all(Bool::False, Bool::True)))» | ||
21:14
ZuLuuuuuu joined
|
|||
moritz_ | finanalyst: when it says RESULT«...» instead of OUTPUT«...» it means that the statement produced no output | 21:14 | |
in that case it returns .perl of the return value | |||
finanalyst | I was wondering. | ||
skids | and is not boolean enough. | ||
moritz_ | rakudo: say ?(all(3, 4) == 3) | 21:15 | |
p6eval | rakudo 07ceac: OUTPUT«0» | ||
moritz_ | that's an easier and less confusing way to test the truthiness | ||
finanalyst | rakudo: say ?(all(3, 4) >= 3) | ||
p6eval | rakudo 07ceac: OUTPUT«1» | ||
ruoso later & | |||
finanalyst | ahhhhhh | ||
skids | Is "truthiness" an official Perl6 term now? Colbert will be pleased. | 21:16 | |
21:16
ruoso left
|
|||
moritz_ | don't think so | 21:16 | |
21:16
donaldh1 joined
|
|||
moritz_ | the only Colbert I know is a french battle ship ;-) | 21:16 | |
finanalyst | got to go. thanx for the junction tutorial | ||
21:16
finanalyst left
|
|||
skids | moritz_: seriously? (WRT "Colbert") | 21:17 | |
moritz_ | skids: yes | 21:18 | |
skids | wikipedia "truthiness" | ||
21:18
justatheory joined
21:20
wknight8111 joined
|
|||
moritz_ | rakudo: class A { }; say A.what === A; | 21:27 | |
p6eval | rakudo 07ceac: OUTPUT«Could not locate a method 'what' to invoke on class 'A'.current instr.: 'die' pc 15608 (src/builtins/control.pir:204)» | ||
moritz_ | rakudo: class A { }; say A.WHAT === A; | ||
p6eval | rakudo 07ceac: OUTPUT«1» | ||
21:32
mikehh left,
mikehh joined
21:35
dKingston left
21:38
NordQ left
21:40
hkBst left,
hkBst joined,
Woody4286 left
21:44
skids left
21:49
Woody4286 joined,
Woody4286 left,
Woody4286 joined
|
|||
moritz_ | dukeleto: I'm now looking at your roots and roots_squashed branches, and neither can be merged cleanly into master... am I missing something crucial? | 21:53 | |
I tried (on master) git merge leto/roots_squashed, and it gave me quite some conflicts | 21:56 | ||
21:59
hkBst left
22:01
hercynium left
|
|||
PerlJam | moritz_: I think it's just that he hasn't merged recent changes into his branch. | 22:02 | |
moritz_ | PerlJam: I just thought he did a merge --squash and resolved the errors on the way | 22:03 | |
and currently I'm not motivated to resolve 13 conflicts myself :/ | 22:04 | ||
ah, it seems a rebase + squash seems to solve most of it | 22:07 | ||
PerlJam | rebase + squash? | 22:12 | |
22:14
donaldh1 left
22:16
exodist left
|
|||
moritz_ | first in the branch 'git rebase master', then in master git merge --squash branch | 22:20 | |
22:21
Schnueff left
22:23
bjohnb joined
|
|||
bjohnb | leave | 22:27 | |
exit | 22:28 | ||
moritz_ | bjohnb: try it with / in front | ||
22:28
bjohnb left
22:32
skids joined
22:36
nihiliad left
|
|||
skids | gather { gather { take 1; lift take 2; } } # opinions? | 22:47 | |
moritz_ | I don't think that does what you want | 22:48 | |
lift (iirc) is for propagating different set of multis | 22:50 | ||
skids | The S04 wording seems to deftly avoid mentioning variables other than those defined in the inner scope. | 22:53 | |
And at the same time infer anything not found is searched for in the outer scope. | 22:54 | ||
But then, the identity of the innermost gather would be "found" | |||
So I think you are right. | |||
So then that leads me to: will there be LABEL.take and context(...).take | 23:09 | ||
The docs are not explicit about that. | 23:11 | ||
moritz_ | skids: send a mail to p6l and ask | ||
skids | but then I'd get sucked into p6l :-) | 23:12 | |
moritz_ | damn, he noticed my trick ;-) | ||
skids: in the long run nothing can safe you anyway ;-) | |||
skids: when the discussions get too long, you can just ignore most of them | 23:13 | ||
skids | I'll think about it but life's been so much better since I gave up mls. | 23:15 | |
i really had a ... problem... there, total addict. | 23:16 | ||
moritz_ | ok, then I won't try to suck you in again. | ||
just ask TimToady then ;-) | |||
23:27
kate21de joined
|
|||
jnthn ponders that Ruud's suggestion is easily do-able in a module with augment class List { method dop ... } | 23:27 | ||
23:28
eternaleye joined
|
|||
moritz_ | jnthn: I just suggested 1 ~~ 0 :dop(7) (but as a user defined operator, please) | 23:29 | |
23:30
hercynium joined
|
|||
moritz_ | this looks like the perfect place for attributes on operators | 23:30 | |
jnthn | adverbs, but yes. | 23:31 | |
moritz_ | erm, yes | ||
jnthn | The only thing is though... | ||
skids | check the precedence rules, they are tricky for those. | ||
jnthn | You've used infix:<~~> | ||
Which is already used for smart-match. | |||
moritz_ | but not with the :dop adverb | ||
remeber that it just does a multi dispatch | |||
jnthn | Yeah, but named parameters don't participate in the multi dispatch. | 23:32 | |
moritz_ | uhm. | ||
jnthn | (By spec, for 6.0.0) | ||
Thus a big part of the motivation for why we can write protos. | |||
moritz_ | then our whole idea for using adverb-based testing is also dead, I think | ||
jnthn | Hmm. :-| | 23:33 | |
Oh, hang on though... | |||
Maybe not. | |||
I guess because the named paramters may be able to veto in some sense. | |||
moritz_ | well, I wasn't too fond on re-writing 18k tests anyway | ||
jnthn | But I don't know that it falls out so neatly. | 23:34 | |
moritz_ wonders why his git-push hasn't made it to github yet | 23:36 | ||
the github web page doesn't show it, and dalek didn't report it either | 23:37 | ||
but the command clearly indicated success | |||
(and now we're at 7367 passing tests) | |||
jnthn | Nice. | 23:41 | |
jnthn would love to hit 7,500 for the next release. | 23:42 | ||
moritz_ | that sounds very possible | ||
... assuming that git doesn't screw up things | |||
hm, a fresh 'git clone' shows the commit | 23:43 | ||
dalek | kudo: 1ef8919 | (Jonathan Leto)++ | (3 files): Implement roots() builtins |
||
kudo: 9a84c35 | (Moritz Lenz)++ | t/spectest.data: add now passing roots.t to t/spectest.data |
|||
moritz_ | ah, there you go | ||
23:49
FurnaceBoy joined
|
|||
jnthn | Nice. | 23:50 | |
dukeleto++ | |||
moritz_ | indeed | 23:52 | |
23:54
trigger_trilogy left
|
|||
jnthn | Rakudo day tomorrow, BTW. | 23:55 | |
Oh, uh. | |||
Today. | |||
23:55
ZuLuuuuuu left
|
|||
jnthn | The bit of the day that happens after I've spent some time unconcious. | 23:55 | |
I hope to work on import a bit more, sort out multi method invocants to have the right type, and try to implement something new. :-) | 23:57 | ||
moritz_ | sounds nice ;-) | 23:58 |