|
»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by moderator on 26 July 2010. |
|||
|
00:02
snarkyboojum joined
|
|||
| jnthn | pmichaud: Seems the build works now. nmake rakudo-install seems to do everything that nmake did though. But both targets work. | 00:17 | |
| pmichaud | I don't understand that middle part | 00:18 | |
| oh, I do understand it. | |||
| no, I don't understand it. :) | |||
| oh, I do understand it. | |||
| jnthn | Make your mind up man! | ||
| pmichaud | okay, I'll fix. | ||
| jnthn | :-) | ||
| pmichaud | (it's looking for rakudo/perl6 instead of rakudo/perl6.exe) | ||
| jnthn | Aha | ||
| :-) | |||
| Anyway, works at least. | 00:19 | ||
| pmichaud | should be fixed locally | 00:20 | |
| so, does changing "proof_of_concept" to "pls" make sense? | |||
| jnthn | pmichaud: IMO yes. Imasak'sO, not sure :-) | 00:21 | |
|
00:21
[sbp] joined
|
|||
| pmichaud | using my magical pumpking powers, I hereby declare it to be okay for now. (Until masak++ protests. :-) | 00:21 | |
| jnthn | pmichaud: IIRC it was "we should do these things before it's good enough to be called pls" | ||
| pmichaud | "release early, release often" | ||
| jnthn | But, well, we need it now. :-) | ||
| Yes, that too. | |||
| pmichaud | if it's not good enough to be called pls, it's not good enough to ship with R*, I think. :) | 00:22 | |
| [Coke] | is 56700 worth saving? (a patch against languages/perl from r2xxxx) | ||
| pmichaud | [Coke]: probably not worth saving. | ||
| jhorwitz++ should've given up on me completely by now anyway :) | |||
| jnthn | Any patch older than ng became master is probably not worth saving. Way too much changed then. | 00:23 | |
|
00:25
Juerd joined
|
|||
| [Coke] | jnthn: this is way before that. | 00:25 | |
| rejected. :( | 00:32 | ||
| rt.perl.org/rt3/Ticket/Display.html?id=57970 -- ETOOVAGUE. | |||
| "refactor c code". Do we need a ticket for that? | 00:34 | ||
| pmichaud | we no longer do it in C anyway | 00:35 | |
| jnthn | I'm not convinced that code even exists any more. | ||
| pmichaud | just mark the ticket as resolved | ||
| jnthn | We refactored it into another langauge. :-) | ||
|
00:42
jaldhar joined
|
|||
| colomon | pmichaud: also, disregard all that stuff I said about all the slow being entirely in the iterator code -- I had a broken test case. | 00:43 | |
| pmichaud | I'm afraid I have almost no clue about how to setup ufo, pls, or the modules. | 00:45 | |
| jnthn | pmichaud: Can you even get pls to run? | 00:46 | |
| pmichaud | jnthn: I don't even know how to invoke it properly, apparently | ||
| PerlJam | ufo is just "make install" which is just "cp ufo /usr/local/bin" or somesuch | ||
| pmichaud | or how to get the files to wherever they need to be | ||
| okay, 'ufo' I have installed then. | |||
| jnthn | pmichaud: OK, I'll share the bits I know on pls | ||
| pmichaud | but the pls branch is missing any sort of documentation | 00:47 | |
| jnthn | pmichaud: It goes through various stages, like "fetch", "build", "install" etc | ||
| pmichaud: "fetch" grabs stuff from git | |||
| pmichaud | let's start back from there | ||
| do I have to be in the proto/pls directory in order to run it? | |||
| and perl6 has to be in my path? | |||
| jnthn | It needs to be able to find the modules in lib | ||
| [Coke] | rakudo: rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say | ||
| 'xab' ~~ m/ ^ <a::b> $ / | |||
| p6eval | rakudo ac8a2a: OUTPUT«===SORRY!===Confused at line 22, near "rakudo: gr"» | ||
| [Coke] | rakudo: rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say 'xab' ~~ m/ ^ <a::b> $ / | ||
| p6eval | rakudo ac8a2a: OUTPUT«===SORRY!===Confused at line 22, near "rakudo: gr"» | 00:48 | |
| jnthn | pmichaud: Yes, it does unless the path to where you currently are is going to end up being added to the Makefile | ||
| pmichaud: I expect you need an installed Perl 6 to really install modules. | |||
| masak may be able to correct me on that though | |||
| pmichaud | jnthn: sure, but "installed Perl 6" doesn't necessarily mean that it's in my PATH yet | ||
| jnthn | pmichaud: True | ||
| I think a valid invocation is: perl6 proof_of_concept json | 00:50 | ||
| pmichaud | will Windows give me fits if I try to manipulate PATH from the makefile? | ||
| jnthn | pmichaud: Yes if you use the wrong syntax. | ||
| pmichaud: But otherwise probably not | |||
| pmichaud | so, have to use semis? | ||
| ick. | |||
| jnthn | (the syntax is iirc different) | ||
| (different between Windows and Linux) | |||
| pmichaud | yeah, I think Windows uses semis where Linux uses colons | ||
| okay, that doesn't seem plausible. | |||
| jnthn | Yes, as the sep. | ||
| The set command is a bit different too though | 00:51 | ||
| pmichaud | well, make would generally handle environment vars for me | ||
| i.e., make variables tend to automatically appear in the environment | |||
| at any rate, I should look for a different approach | |||
| ummmm | |||
| so, if I do "perl6 proof_of_concept json", what happens? | 00:52 | ||
| [Coke] | rakudo: say '(foo' ~~ / '(' ~ ')' [foo] / | ||
| p6eval | rakudo 7f5c22: OUTPUT«Unable to parse _block115, couldn't find final ')' at line 1 in <anon> at line 22:/tmp/Z0VMW4W9fV in 'Cool::match' at line 2377:CORE.setting in 'Regex::ACCEPTS' at line 5484:CORE.setting in main program body at line 22:/tmp/Z0VMW4W9fV» | ||
| pmichaud tries it. | |||
| jnthn | It should 1) fetch it from git, 2) generate a Makefile, 3) use that Makefile to build it, 4) use that Makefile to install it | ||
| colomon | [Coke]: does parrot have an "increment by one" opcode? | ||
| pmichaud | colomon: "inc" | 00:53 | |
| PerlJam | colomon: inc | ||
| colomon | pmichaud++, PerlJam++ | ||
| pmichaud | colomon: be careful, though, as it does it in-place | ||
| jnthn | pmichaud: I mostly know anything about pls 'cus I already removed a bunch of Windows-specific bits from it. | ||
| pmichaud | (for PMCs) | ||
| jnthn | pmichaud: er, *nix specific... | ||
| pmichaud: And re-did them to use Perl 6 built-ins. | |||
| pmichaud: It used to shell out to the find command! | |||
| colomon | pmichaud: oooo, thanks for pointing that out. | 00:54 | |
| pmichaud | so, where does pls get its list of projects? | ||
| more to the point, where does it expect to find the poc_projects file? | |||
| PerlJam | I'm pretty sure you can only run pls from within the proto dir | 00:56 | |
| pmichaud | so, not ready to be a standalone command line. so should it even be installed? | ||
| PerlJam | i.e. it expects the poc_projects file to be in the current dir when run | ||
| jnthn | pmichaud: What PerlJam said - I just wanted to check the code first. | 00:57 | |
| Yes, it looks for state file and projects file in cwd | |||
| pmichaud: It fetches stuff into a "cache" directory. | |||
| I think The Plan was that the distro would copy (or just have) those things in a cache directory already and a poc-projects.state file would indicate that they were already fetched | 00:58 | ||
| And thus it'd just work from those to generate a makefile, build them, install them, etc. | |||
| pmichaud | but pls itself wouldn't get installed | 00:59 | |
| ? | |||
| PerlJam | jnthn: that sounds like the only way it could work :) | ||
| jnthn | pmichaud: The way it looks at the moment, it'd seem like installing it wouldn't be too useful. :S | 01:00 | |
| pmichaud | yeah. | ||
| when it install the modules, it installs them to.... where? | 01:01 | ||
| PerlJam | IIRC ~/.perl6 | ||
| pmichaud | that won't work either :-S | 01:02 | |
| PerlJam | oh, perhaps I'm thinking of the makefile that ufo generates | ||
| jnthn | PerlJam: No, seems it's right too | ||
| pmichaud | so, pls as it sits now is really for per-account module management, but can't really handle anything at a system level | 01:03 | |
| jnthn | install: all | ||
| mkdir -p ~/.perl6/lib/JSON/Tiny | |||
| install lib/JSON/Tiny/Actions.pir ~/.perl6/lib/JSON/Tiny/Actions.pir | |||
| PerlJam | pmichaud: basically. | ||
| jnthn | That's what's in the generated Makefile. | ||
| wtf is the "install" command? | |||
| pmichaud | it's a command to install programs | 01:04 | |
| (srsly) | |||
| jnthn | C:\\Consulting\\perl6\\proto\\cache\\json>install | ||
| 'install' is not recognized as an internal or external command, | |||
| operable program or batch file. | |||
| pmichaud | it basically does a copy, but also sets permissions and the like | ||
| PerlJam | pls is very unix-centric it seems too | ||
| jnthn | PerlJam: It's makefile certainly is. | ||
| pmichaud | okay. for R* I'm guessing I can't really make use of proto/pls for global-installed modules | 01:05 | |
| jnthn | PerlJam: The whole thing used to be. | ||
| pmichaud: Not without twiddling the Makefile generation to handle that. | |||
| pmichaud | right | ||
| and if I'm doing that, it seems like 'ufo' makes more sense for that. | 01:06 | ||
| if only because it's much smaller :) | |||
| I mean, I don't need dependency checking or fetching for R* | |||
| jnthn | pmichaud: True | ||
| OTOH, tweaking pls to do stuff to the global directory, and to keep it's project list and state there, means that it's then usable if installed too. | 01:07 | ||
| pmichaud | global directory often isn't writable | ||
| pls needs to have an option that allows someone to specify the directory where the module is to be installed | |||
| jnthn | *nod* | 01:08 | |
| ./pls install --locally json | |||
| pmichaud | well, even better: | ||
| ./pls install json ~/.perl6 | |||
| ./pls install json /usr/local/.... | |||
| ./pls install json --system | |||
| jnthn | [Coke]: 63226 | ||
| [Coke]: perl6 -e 'package Foo { sub run() { say "(", @*ARGS, ")"; } }; Foo::run()' f g h | 01:09 | ||
| [Coke]: Note the sub under current spec must be declared "our sub" | |||
| [Coke]: Do that and I suspect all three will work and the ticket can be given for spectest | |||
| pmichaud: Yes. | 01:10 | ||
| pmichaud: That makes sense. | |||
| PerlJam | ufo is more "makefile template" and pls is more "generate a makefile" by my reading. The former is probably easier to hack (and it's smaller and there are fewer twisty passages :) | ||
| [Coke] | jnthn++ #63226 updated. | 01:12 | |
| rakudo: v6; $b = 1; | 01:13 | ||
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Symbol '$b' not predeclared in <anonymous> (/tmp/g2BmJ5oGHR:22)» | ||
| pmichaud | PIRS = $(patsubst %.pm6,%.pir,$(SOURCES:%.pm=%.pir)) | ||
| ...what is that? | |||
| [Coke] | my ::MyType ::= :(Num, Str) | ||
| that's a gmake-ism, I think, to do a pattern substitution. | |||
| on a glob of filenames. | 01:14 | ||
| PerlJam | luckily we have perl then | ||
| [Coke] | very likely not nmake safe. | ||
| rakudo: my ::MyType ::= :(Num, Str) | |||
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Malformed my at line 22, near "::MyType :"» | ||
| jnthn | pmichaud: It's a heap of unportability. | ||
| pmichaud | Yeah. | ||
| jnthn | pmichaud: tbh, I got some way into porting proto to Win32, got to the Makefile and was like, "oh ffs" | 01:15 | |
| :/ | |||
| er, s/proto/pls/ | |||
| pmichaud: I still think generating a Makefile to run some commands is still when we could just run 'em. | 01:16 | ||
| s:2nd/still/silly/ | |||
| [Coke] | does chromatic ever show up here? | ||
| jnthn | [Coke]: On occasion, I believe. | 01:17 | |
| [Coke] | phenny: tell chromatic - should rt.perl.org/rt3/Ticket/Display.html?id=64124 be moved to another queue? | ||
| phenny | [Coke]: I'll pass that on when chromatic is around. | ||
| [Coke] | rakudo: class A { method foo { say "OH HAI" }; method aie { say | 01:19 | |
| "AIE!" } }; role B { has A $.bar handles * }; class C does B { has A | |||
| $.bar handles "foo" }; C.new.aie | |||
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 22» | ||
| [Coke] | bah. | ||
| jnthn | fail | ||
| [Coke] | is there an irssi code for "please don't treat newlines like newlines" ? | 01:20 | |
| pmichaud | why is it that absolutely none of the module READMEs contain any information about how to build+install the module?!? | 01:22 | |
| jnthn | OK, it's sleep time her. | ||
| *here | |||
| [Coke] | rakudo: class A { multi method dispatch(@chunks, %param?) { say %param.perl, defined %param } }; A.new.dispatch([1,2,3]); A.new.dispatch([1,2,3], { "OH" => "HAI" }) | ||
| p6eval | rakudo 7f5c22: OUTPUT«Method 'perl' not found for invocant of class 'Hash' in 'A::dispatch' at line 22:/tmp/yTsgO7efY0 in main program body at line 22:/tmp/yTsgO7efY0» | ||
| jnthn | pmichaud: Probably because everyone has written them under the assumption that there's an installation tool. | 01:23 | |
| pmichaud | yes, but when the installation tools don't work, or aren't portable.... | ||
| we're in a heap of hurt. | |||
| PerlJam | welcome to the bleeding edge | 01:24 | |
| jnthn | pmichaud: Yes, pls seems further off being a proto replacement than I had first thought. :-( | ||
|
01:26
dduncan joined
|
|||
| pmichaud | yeah, I'm not quite sure what to do at this point. | 01:28 | |
| [Coke] | drop back to proto? | ||
| pmichaud | since the makefiles are broken.... and we don't have a reliable makefile generator... | ||
| [Coke]: I can try dropping back to proto... but I fear it will have very similar issues. | 01:29 | ||
| [Coke] | we have parrot. | ||
| PerlJam | I'd probably start with making ufo portable/workable and just use that since you only need an installer | ||
| [Coke] | not that it will help. =-) | ||
| PerlJam | but that's just me | ||
| pmichaud | getting ufo to work on windows is going to be a fairly big task. | 01:30 | |
| bigger since I don't have a Windows devel platform to test it with. | |||
| [Coke] | get [particle] on board? | ||
| maybe alias? | |||
| pmichaud | ufo seems to say "I can generate a Makefile for you, if you fit assumptions 1,2,c, and D; and obtw you have to be running gmake. | 01:31 | |
| sorear | [Coke]: much closer to home. jnthn | ||
| pmichaud | jnthn needs rest, undoubtedly. :) | ||
| [Coke] | yah, but he's sleepy. =-) | ||
| ha. | |||
| In any case, hit the compiler list and see if you can troll a volunteer. | |||
| jnthn | pmichaud: If you can get pls (or ufo) to actually install stuff in the Right Place tonight, and try and do it with a sane Makefile, I can probably clear it up tomorrow for Windows. | ||
| [Coke] | I can help test with strawberry perl, but I suspect that would jfw. | 01:32 | |
| AGH I THOUGHT U WAZ SLEEPIN! | |||
| jnthn | ;-) | ||
| [Coke]: Kinda wanted to know we have some way forward before I sleep. | |||
| pmichaud | jnthn: I think I'll be able to figure out something. | 01:33 | |
| I'll likely write my own 'ufo' equivalent. | |||
| jnthn | pmichaud: OK, that works too. | ||
| pmichaud | probably 'ufm', for "unidentified flying makefiles" | ||
| [Coke] needs to find his way to .eu at some point and drink bierz. | |||
| pmichaud | might just do it in perl 5 for now, too. | ||
| jnthn | [Coke]: yes, we have good beers. | ||
| [Coke]: Though, let's go to a neutrel^Wcheap beer country for that ;-) | 01:34 | ||
| pmichaud | might just do it without makefiles, for now. | ||
| jnthn | pmichaud: My first preference would be "make pls work" but I totally understand why that is unappealing to take on. | ||
| pmichaud: It is well under 1000 LOC though. | |||
| pmichaud | jnthn: pls suffers from the same problem I encounter with many o-o designed applications | ||
| it's really hard to see the control flow | |||
| PerlJam | pls/proto have too much "conceptual structure", so if it's not hack ufo into shape, then it's write something simple and workable from scratch (IMHO) | 01:35 | |
| jnthn | *nod* | ||
|
01:35
_macdaddy joined
|
|||
| jnthn | pmichaud: Do what you feel best. | 01:35 | |
| pmichaud: I'm quite happy that if you come up with something you're comfortable with, then I won't have to do contortions tomorrow to port it. | |||
| pmichaud | well, it's that first 'if' part that's a bit of a challenge at the moment :) | ||
| at this stage I'm more aiming for "willing to accept" than "comfortable with" | 01:36 | ||
| jnthn | pmichaud: We seem to be making a hard job of calling perl6 --target=pir foo.pm > foo.pir, and then a copy command. ;-) | ||
| pmichaud | jnthn: yeah, I'm thinking much the same. | ||
| jnthn | pmichaud: Because at the end of the day, that's all we really need to do. | 01:37 | |
| pmichaud | well, we need a bit more in the case of blizkost | ||
| [Coke] | moritz_: ping. | ||
| colomon | ufo seems very straightforward? | ||
| pmichaud | but yes, that's pretty much all we *need* for system-level install | ||
| jnthn | [Coke]: It's 3:40am for moritz_ :P | ||
| pmichaud: Blizkost was generated from the make Parrot language thing. | |||
| [Coke] | jnthn: If I go to sofia, I've been promised free beer. see you then. ;) | ||
| colomon | ah, but ufo is also very Unix-y. :( | 01:38 | |
| pmichaud | colomon: right | ||
| [Coke] | phenny: ask moritz_ if rt.perl.org/rt3/Ticket/Display.html?id=65258 is still happening for him. | ||
| phenny | [Coke]: I'll pass that on when moritz_ is around. | ||
| pmichaud | it's *very* unix-based | ||
| as in, little hope of doing an equivalent for winders | |||
| jnthn | pmichaud: fwiw, Blizkost does (or did recently) install just fine on Windows. | ||
| pmichaud | jnthn: sure.... but it just failed here on my system. | 01:39 | |
| jnthn | pmichaud: It just needs to have it's Configure.pl called with --parrot-config pointed at the right thing. | ||
| pmichaud | couldn't find -lperl | ||
| jnthn | pmichaud: OK, but that's a missing system dependency, I guess. | ||
| pmichaud | jnthn: yes, which we really should be checking for. | ||
| jnthn | pmichaud: *nod* | ||
| pmichaud: We should soft-fail Blizkost IMO though. | 01:40 | ||
| pmichaud | what does "soft-fail" mean here? | ||
| as in, if it doesn't install, don't worry about it? | |||
| jnthn | Right. | ||
| [Coke] | <nod> | ||
| most people are not going to have the appropriate perl, methinks. | 01:41 | ||
| [Coke] finds a comment in a ticket about block gobbling. | |||
| jnthn | And at the end of the build proccess just say something like "Could not install Perl 5 compatibility. You need to have lib perl installed and version 5.10 or greater." | ||
| pmichaud | well, "end of the build process" is likewise tricky there, unless I convert what I have now into a p5 script. | ||
| jnthn | But in a "the install was fine but we skipped this bit" sense | ||
| [Coke] | rakudo: class A { enum B <c d e>; ::c = B::c }; say A::c | 01:42 | |
| p6eval | rakudo 7f5c22: OUTPUT«Cannot modify readonly value in '&infix:<=>' at line 1 in main program body at line 22:/tmp/xfWzETH8wO» | ||
| [Coke] | rakudo: enum A::B <c d e>; constant B = A::B; say B::c | ||
| jnthn | pmichaud: *nod* | ||
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Constant type declarator not yet implemented at line 22, near "= A::B; sa"» | ||
| [Coke] | rakudo: my @a := gather { for 1..3 { take $_; say @a.perl } }; say @a.perl; | 01:43 | |
| p6eval | rakudo 7f5c22: OUTPUT«Cannot resume dead coroutine. in 'Any::join' at line 1 in 'List::perl' at line 2557:CORE.setting in <anon> at line 22:/tmp/36DxD8nLx7 in <anon> at line 1 in 'Any::join' at line 1 in 'List::perl' at line 2557:CORE.setting in main program body at line | ||
| ..22:/tmp/36DxD8nLx7… | |||
| jnthn | pmichaud: I feel less strongly about that than "Blizkost failing to install shouldn't cause the whole thing to fail" though. | ||
| pmichaud | sure | ||
| jnthn | pmichaud: It's a nice to have. | ||
| pmichaud | I agree that it shouldn't cause an install failure | ||
| [Coke] | rakudo: module M; grammar G {}; say "foo" ~~ /<M::G>/ | ||
| jnthn | Nothing later depends on it. | ||
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===regex assertion not terminated by angle bracket at line 22, near "::G>/"» | ||
| pmichaud | but we should at least make it a bit more graceful | ||
| jnthn | Aye | 01:44 | |
| [Coke] | odd. | ||
| pmichaud | [Coke]: afaik, rakudo master doesn't understand any of the <A::B> syntax yet. | ||
| [Coke] | rakudo: class A { method pack($_) { s/c// }}; A.new.pack("ccc") # discovered by cono++ | ||
| p6eval | rakudo 7f5c22: OUTPUT«Cannot modify readonly value in '&infix:<=>' at line 1 in 'A::pack' at line 22:/tmp/HIyuNvbnYe in main program body at line 22:/tmp/HIyuNvbnYe» | ||
| jnthn | rakudo: my @a := gather { for 1..3 { take $_; say @a.perl } }; say @a.perl; | ||
| pmichaud | not to mention that I will not be surprised if it's discontinued or otherwise changes soon. | ||
| p6eval | rakudo 7f5c22: OUTPUT«Cannot resume dead coroutine. in 'Any::join' at line 1 in 'List::perl' at line 2557:CORE.setting in <anon> at line 22:/tmp/PC_EjQyHIL in <anon> at line 1 in 'Any::join' at line 1 in 'List::perl' at line 2557:CORE.setting in main program body at line | ||
| ..22:/tmp/PC_EjQyHIL… | |||
| jnthn | Ouch, I thought pmichaud++ fixed that one | 01:45 | |
| pmichaud | so did I | ||
| ohhhhh | |||
| [Coke] | rakudo: sub a(%p1?){ %p1<a> = 1 };a(); | ||
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in invoke() in 'a' at line 1 in main program body at line 22:/tmp/YUbLkL8rTl» | ||
| pmichaud | I think we have a missing !sink on gather | ||
| er, sink | |||
| jnthn | A sink will let us wash the bug out. | ||
| pmichaud | ...why a bind, ooc? | 01:46 | |
| rakudo: my @a = gather { for 1..3 { take $_ } }; say @a.perl; | |||
| p6eval | rakudo 7f5c22: OUTPUT«[1, 2, 3]» | ||
| [Coke] | I am trying to go through the tickets one at a time, but will probably reach a point thursday where I just bulk open them. =-) | ||
| just fyi. =-) | |||
| pmichaud | rakudo: my @a = gather { for 1..3 { take $_; say @a.perl; } }; say @a.perl; | ||
| p6eval | rakudo 7f5c22: OUTPUT«[][][][1, 2, 3]» | ||
| jnthn | pmichaud: So you don't get that. :-) | ||
| pmichaud: I think with the bind it says [1],[1,2], etc | 01:47 | ||
| pmichaud | well, I think that falls in the realm of "depending on laziness" | ||
| jnthn | *nod* | ||
| pmichaud | rakudo: my @a := gather { for 1..3 { take $_; say @a.perl; } }; say @a.perl; | ||
| jnthn | Oh, it sure is. | ||
| p6eval | rakudo 7f5c22: OUTPUT«Cannot resume dead coroutine. in 'Any::join' at line 1 in 'List::perl' at line 2557:CORE.setting in <anon> at line 22:/tmp/LwpyMvBLAj in <anon> at line 1 in 'Any::join' at line 1 in 'List::perl' at line 2557:CORE.setting in main program body at line | ||
| ..22:/tmp/LwpyMvBLAj… | |||
| pmichaud | but yeah, I'm not sure why we'd get the dead coroutine issue there. | ||
| [Coke] | can someone applly rt.perl.org/rt3/Ticket/Display.html?id=70642, at least in spirit? | ||
| (simple readme update.) | 01:48 | ||
| sorear | phenny: ask mberends What do you think would be a good candidate for the first niecza hosted app? It can't use eval, and it ought to benefit from our one major advantage (<0.3s startup time of precompiled programs) | 01:49 | |
| phenny | sorear: I'll pass that on when mberends is around. | ||
| colomon | declare.t broken at the moment? | 01:50 | |
| jnthn | colomon: Yes | ||
| colomon: Need fudge for Instant | |||
| colomon | jnthn: k | ||
| pmichaud | is it important that R* be able to run the module tests? | 01:51 | |
| or just that the files get installed? | |||
| jnthn | pmichaud: I think the latter. | 01:52 | |
| Ok, I really should sleep. Going to Russian lesson semi-concious tomorrow would probably not win the admiration of my very lovely teacher. :-) | 01:53 | ||
| dalek | kudo: 2808a52 | (Solomon Foster)++ | src/core/Int.pm: Add Int versions of infix:�==�, infix:�!=�, and infix:�<� which go |
||
| pmichaud | jnthn: sleep well, see you tomorrow | ||
| jnthn | $dayjob should be pretty light tomorrow, so I'll have a good bit of time for Rakudo stuff. | ||
| Thanks, night o/ | |||
| colomon | \\o | 01:54 | |
| pmichaud | colomon: note that you can use isne to avoid the reversal of True/False | ||
| colomon | pmichaud: is there any real reason to do so, however? | ||
| pmichaud | consistency? | ||
| is there a strong reason for staying with iseq? | 01:55 | ||
| colomon | pmichaud: it's the way it's always been done? (ie, not really) | ||
| pmichaud | I would expect the other comparisons to end up using isgt, isge, isle | ||
| so it seems like isne would be a natural | 01:56 | ||
| colomon | they don't, actually. but if isge and isle are out there, it would be easy enough to change. | ||
| pmichaud | I don't understand "they don't". Are you looking at code already? | 01:57 | |
| colomon | The Num versions don't. (I'm looking at that code.) | ||
| pmichaud | the default ones do | 01:58 | |
| our multi infix:«<=»($a, $b) { pir::isle__INN(+$a, +$b) ?? True !! False | |||
| } | |||
| our multi infix:«>»($a, $b) { pir::isgt__INN(+$a, +$b) ?? True !! False | |||
| } | |||
| etc. | |||
| ingy | patch++ # 3 hours of backporting perl6 to perl5/pegex!!! | ||
| pmichaud | weird | ||
| colomon | pmichaud: ugh, that's actually broken. | ||
| pmichaud | yeah, the Num.pm ones don't seem to follow the pattern. That's weird. | ||
| colomon: why is that broken? | 01:59 | ||
| colomon | + calls .Numeric, which doesn't necessarily return a Num. | ||
| or even something convertible to a Num. | |||
| I'll straighten it all out later tonight. | 02:00 | ||
| pmichaud | please be careful straightening it out, we're less than 48 hours away from release | ||
| ingy <3 patch | |||
| pmichaud | I'd almost rather leave it in a known state than risk having something really awful in the release | ||
| ingy | pmichaud: don't take the release so seriously ;) | 02:02 | |
| [Coke] | rakudo: (1,2,3 Z 4,5,6).perl.say | ||
| p6eval | rakudo 7f5c22: OUTPUT«(1, 4, 2, 5, 3, 6)» | ||
| pmichaud | fail. | ||
| [Coke] | rakudo: (1,2,3 Z[,] 4,5,6).perl.say | ||
| p6eval | rakudo 7f5c22: OUTPUT«((1, 4), (2, 5), (3, 6))» | ||
| [Coke] | rakudo: (1,2 Z 3,4).perl.say | 02:03 | |
| p6eval | rakudo 7f5c22: OUTPUT«(1, 3, 2, 4)» | ||
| pmichaud | also fail. | ||
| sorear | hello ingy | 02:04 | |
| ingy | hi sorear | ||
| pugssvn | r31851 | felliott++ | document RT # for spectests for RT #76720 | ||
| pmichaud | ingy: that's good advice (don't take release seriously), but I would like to avoid a release mistake | 02:05 | |
| sorear | "avoid success at all costs" | 02:06 | |
|
02:08
snarkyboojum joined
|
|||
| [Coke] | sorear: pretty sure we can cross that one off our list. =-) | 02:11 | |
| rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say $a.find_possible_candidates(1,2); | |||
| p6eval | rakudo 7f5c22: OUTPUT«too few positional arguments: 1 passed, 2 (or more) expected in main program body at line 1» | ||
| [Coke] | rakudo: my $a = 'abc'; say $a[1]; | 02:12 | |
| p6eval | rakudo 7f5c22: ( no output ) | ||
| [Coke] | rakudo: role A[B] {} | 02:13 | |
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Invalid typename in parameter declaration at line 22, near "] {}"» | ||
| [Coke] | rakudo: say PARROT(module foo {}) | 02:14 | |
| p6eval | rakudo 7f5c22: OUTPUT«Parcel» | ||
| [Coke] | rakudo: say ClassHOW.methods(ClassHOW) | 02:15 | |
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in inspect_str() in main program body at line 22:/tmp/cVEZUx5Ho9» | ||
| [Coke] | rakudo: my $a = "string".new(''); # masakbot | ||
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in get_repr() in main program body at line 22:/tmp/a8DmUGvX38» | ||
| [Coke] | rakudo: say Associative.new{'x'} | 02:16 | |
| p6eval | rakudo 7f5c22: OUTPUT«get_pmc_keyed() not implemented in class '' in 'at_key' at line 27:CORE.setting in 'Any::postcircumfix:<{ }>' at line 1686:CORE.setting in main program body at line 1» | ||
| [Coke] | rakudo: 3.14159265358979323846264338327950288419716939937510e0 | ||
| p6eval | rakudo 7f5c22: ( no output ) | ||
| [Coke] | rakudo: ::() | 02:17 | |
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===ResizablePMCArray: Can't pop from an empty array!» | ||
| [Coke] | alright, down to 295 "new" tickets. meh. | ||
| I've been trying to apply patches, double checking bug statuses, updating if changed, assigning to moritz if fixed, opening in any case. Feel free to jump in. :) | 02:18 | ||
| colomon | [Coke]: 3.14159265358979323846264338327950288419716939937510e0 works fine now. Try it in your REPL. | 02:19 | |
| sorear | rakudo: my $a; say +$a; | ||
| p6eval | rakudo 7f5c22: OUTPUT«Use of uninitialized value in numeric context0» | ||
| sorear | [Coke]: ? | ||
| PerlJam | rakudo: my $a; say ~$a; | 02:20 | |
| p6eval | rakudo 7f5c22: OUTPUT«Any()» | ||
|
02:20
petdance joined
|
|||
| PerlJam | rakudo: my $a; say ?$a; | 02:21 | |
| [Coke] | sorear: yes? | ||
| p6eval | rakudo 7f5c22: OUTPUT«0» | ||
| [Coke] | if you could add that to the ticket, it would be spiffy. | ||
| (sorear) | |||
| whoa. robrt fixed my delayed email, I see. (it was stuck in moderation hell) | 02:24 | ||
| sorear | what was the ticket number again? | ||
| also | |||
| how do you add stuff to rt tickets | |||
| sorear only knows how to file them and subscribe to p6c | |||
| [Coke] | sorear: I login to rt.perl.org/rt3 | 02:26 | |
| sorear | Nobody's given me a RT access bit. | ||
| [Coke] | I believe I am still have meta-ops on the perl6 queue if you have an account setup there. | ||
| felliott: so is 76720 closable now? | 02:27 | ||
| felliott | [Coke]: rt.perl.org/rt3/Ticket/Display.html?id=64204 seems to be working in the repl, but the tests themselves are busted. | ||
| Yep. 71088, too (same bug). | 02:28 | ||
| [Coke] | felliott: ok. if you can update the status on the ticket, +1. | ||
| felliott | Which one? | ||
| [Coke] | I'm not sure if this bug queue/mailing are setup so you can just reply to the ticket. | ||
| the one on which I said "hey, where are the tests?" ;) | 02:29 | ||
| 76720 | |||
| felliott | Ah, shall do. | ||
| [Coke] | rakudo: rakudo: my$my | ||
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Confused at line 22, near "rakudo: my"» | ||
| [Coke] | rakudo: my$my | ||
| p6eval | rakudo 7f5c22: ( no output ) | ||
| [Coke] | rakudo: my$my.say | ||
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Confused at line 22, near "my$my.say"» | ||
| [Coke] | rakudo: my$my=2; $my.say | 02:30 | |
| p6eval | rakudo 7f5c22: OUTPUT«2» | ||
| felliott | done | ||
| [Coke] | std: my$my.say | 02:32 | |
| p6eval | std 31851: OUTPUT«ok 00:01 115m» | ||
| [Coke] | felliott++ | ||
| felliott | For the tests for 64204 in S10-packages/basic.t would it be okay to just use eval_lives_ok instead of smartmatching against fairly_conclusive_platform_error? | 02:34 | |
| [Coke] | rakudo: my $a; CHECK { $a = 42 } | 02:37 | |
| p6eval | rakudo 7f5c22: OUTPUT«===SORRY!===Null PMC access in getprop()» | ||
| [Coke] | ISTR that that the check happened before the my there. | ||
| rakudo: Perl6::Compiler.compile('say 42').WHAT | 02:38 | ||
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in get_attr_str() in main program body at line 22:/tmp/zsLTarXRPv» | ||
| sorear wonders if it might be better to not save file name in position annotations, but instead use real $?FILE | 02:39 | ||
| [Coke] | rakudo: Block.() | ||
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in invoke() in main program body at line 1» | ||
| [Coke] | rakudo: say my ::say (say $z) | 02:40 | |
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in type() in main program body at line 22:/tmp/SDFX85eW4S» | ||
| [Coke] | colomon: no, works the same in my REPL as before. | 02:41 | |
| colomon | [Coke]: what does it do for you? | ||
| [Coke] | (RT# 74640) | 02:42 | |
| same as I posted in the ticket. | |||
| rakudo: say try try try die die die | |||
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in type() in main program body at line 22:/tmp/szu1eufwWn» | ||
| [Coke] | rakudo: sub foo($a = $default, :$default = 42) { say $a }; foo | 02:43 | |
| p6eval | rakudo 7f5c22: OUTPUT«Any()» | ||
|
02:44
Eddward joined
|
|||
| [Coke] | rakudo: multi sub f(0) {}; multi sub f($n) { say $n; callwith($n - 1) }; f(3) | 02:44 | |
| p6eval | rakudo 7f5c22: OUTPUT«3Null PMC access in clone() in 'f' at line 1 in main program body at line 22:/tmp/Punr3W320m» | ||
| colomon | [Coke]: REPL is right, no? I suspect it's just too slow for p6eval. | ||
| [Coke] | rakudo: class Foo { method bar { Quux.parse('OH HAI'); } }; grammar Quux { rule TOP { .* } }; Foo.bar; | ||
| p6eval | rakudo 7f5c22: OUTPUT«Could not find sub &Quux in 'Foo::bar' at line 22:/tmp/jpWyzpF2JS in main program body at line 22:/tmp/jpWyzpF2JS» | 02:45 | |
| [Coke] | p6eval: 3.14159265358979323846264338327950288419716939937510e0.perl.say | ||
| rakudo: 3.14159265358979323846264338327950288419716939937510e0.perl.say | |||
| p6eval | rakudo 7f5c22: OUTPUT«3.14159265358979» | ||
| [Coke] | ok. they both end up with lower precision. Is that desired? | 02:46 | |
| rakudo: my $socket = IO::Socket::INET.socket(2,1,6); $socket.recv(); while $socket.accept() {}; | 02:47 | ||
| colomon | yes. the e0 at the end means it's a Num, which is machine-precision. | ||
| p6eval | rakudo 7f5c22: OUTPUT«Method 'socket' not found for invocant of class 'Failure' in main program body at line 22:/tmp/SD5TvrwxLs» | ||
| colomon | ie it's basically a C double. | 02:48 | |
| [Coke] | colomon++ | 02:49 | |
| rakudo: Rat.^add_method('lol', method ($what) { say "lol$what" }).lol('cat') | |||
| p6eval | rakudo 7f5c22: OUTPUT«Null PMC access in find_method('lol') in main program body at line 22:/tmp/Gacr5rb0jM» | ||
| [Coke] | rakudo: class A { has $!to; method x { loop { (:$!to); } } } | 02:50 | |
| p6eval | rakudo 2808a5: ( no output ) | ||
| [Coke] | rakudo: class A { has $!to; method x { loop { (:$!to); } } }; "alive".say | ||
| p6eval | rakudo 2808a5: OUTPUT«alive» | ||
| colomon | [Coke]++ for worrying about the old tickets. | 02:52 | |
| [Coke] | phenny: tell moritz I'm sorry about all the questionable testing tickets! | 02:54 | |
| phenny | [Coke]: I'll pass that on when moritz is around. | ||
| [Coke] | colomon: sadly, I've done this once before. :P | ||
| (not for rakudo, though) | |||
| rakudo: class Foo { method bar { Quux.parse('OH HAI'); } }; grammar Quux { rule TOP { .* } }; Foo.bar; | |||
| p6eval | rakudo 2808a5: OUTPUT«Could not find sub &Quux in 'Foo::bar' at line 22:/tmp/bZA2BcFVXe in main program body at line 22:/tmp/bZA2BcFVXe» | 02:55 | |
|
02:55
pmichaud joined
|
|||
| [Coke] | rakudo: class Forest { class Frog { method speak { say "ribbit ribbit" } }; has Frog $.frog; method new() { my Frog $frog .= new; self.bless(*, :$frog) } }; Forest.new | 02:56 | |
| p6eval | rakudo 2808a5: ( no output ) | ||
| [Coke] | rakudo: class Forest { class Frog { method speak { say "ribbit ribbit" } }; has Frog $.frog; method new() { my Frog $frog .= new; self.bless(*, :$frog) } }; Forest.new.say | ||
| p6eval | rakudo 2808a5: OUTPUT«Forest()<0x7b1c360>» | ||
| [Coke] | rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say join ", ", $a.candidates | 02:57 | |
| p6eval | rakudo 2808a5: OUTPUT«too few positional arguments: 1 passed, 2 (or more) expected in main program body at line 1» | 02:58 | |
| [Coke] | rakudo: my %h; sub h { say "srsly wtf" }; enum Foo %h; | 03:01 | |
| p6eval | rakudo 2808a5: OUTPUT«Could not find sub &Foo in main program body at line 22:/tmp/1zqFnhDXfg» | ||
|
03:01
high joined
|
|||
| [Coke] reads [pm_groups] running Rakudo * at your PM group InboxX | 03:03 | ||
| ewilhelm++ | |||
| sorear | niecza: my$my.say; | 03:11 | |
| p6eval | niecza 64fc764: OUTPUT«Failed to resolve lexical Any in mainline at CodeGen.pm line 529.» | ||
| sorear | niecza: my$my.say; | 03:19 | |
| p6eval | niecza 64fc764: OUTPUT«Failed to resolve lexical Any in mainline at CodeGen.pm line 529.» | ||
| sorear | very strange | 03:20 | |
| colomon | loliblogged: justrakudoit.wordpress.com/2010/07/...iteration/ | ||
| andlolibloggedagain: justrakudoit.wordpress.com/2010/07/...on-part-2/ | |||
| and now I'm going to bed. | |||
|
03:22
tylercurtis joined
|
|||
| colomon | (ps -- yes, loop unrolling is a big help in iterators. crazy world we have.) | 03:24 | |
| sorear | How is it possible for an iterator .reify to return more than one value | 03:25 | |
| in niecza-land, you need iterators in order to effectively use parcels | |||
| so my iterators wind up looking like method reify() { $!valid = 1; $!value = $i; $!next = InfIterator.new($i+1); } | 03:26 | ||
| github.com/sorear/niecza/blob/master/Test.pm6 # What do people think of this approach to finding the correct frame, instead of $Test::Builder::level ? | 03:36 | ||
| dalek | ecza: 7934168 | sorear++ | (3 files): Very fudgy implementation of CallFrame to methods as if they were instances of CallFrame. Unfortunately Mu.defined and ClassHOW.isa currently go behind the RI and access DynObject state babc770 | sorear++ | (4 files): Finish implementing our-scoped packages |
03:39 | |
| sorear | ok, maybe I should push more often. | ||
|
03:40
dalek joined
|
|||
| [Coke] | don't push me, coz I'm close to... | 03:40 | |
| sorear | I am, though, still interested in what people think about the $?TRANSPARENT trick. | 03:41 | |
| ingy | src/gen/core.pir is taking hours to build on linux | 03:44 | |
| is that right? | |||
| pugssvn | r31852 | felliott++ | fix broken tests and unfudge for RT #64204 | ||
|
03:46
fda314925 joined
|
|||
| felliott | [Coke]: 64204 seems to be already fixed. I've fixed the broken tests and unfudged them. Should I mark this as resolved? | 03:47 | |
| (I'm a n00b and not sure about the bug-tending etiquette) | 03:48 | ||
| pmichaud | ingy: core.pir takes a long time to generate if there's not sufficient memory | 03:49 | |
|
03:51
plobsing joined
03:54
snarkyboojum joined
04:07
fda314925 joined
04:11
IllvilJa joined
|
|||
| sorear | phenny: ask TimToady I feel like I'm using phenny a bit much. Does STD.pm6 have a bug tracker? | 04:15 | |
| phenny | sorear: I'll pass that on when TimToady is around. | ||
|
04:18
high left
04:19
slavik joined
|
|||
| [Coke] | felliott: yes. | 04:28 | |
| can't close bug until there are passing tests. you have those, you can try to close the ticket. | |||
| (you may not have privs to do so, however.) | |||
| felliott | Thanks, [Coke]! | 04:30 | |
| Derp. | 04:34 | ||
| My message was added, but I didn't have the privileges. | |||
| ..to close it, that is. | 04:35 | ||
| [Coke] | I'll get it. | 04:36 | |
| felliott | Thanks! [Coke]++ | ||
| [Coke] | url? | 04:37 | |
| (I don't see a msg to p6c) | |||
| felliott | rt.perl.org/rt3/Ticket/Display.html?id=64204 | 04:38 | |
| [Coke] | Done. | ||
| felliott++ | |||
|
04:48
ashleydev joined
04:51
Lasse_ joined
05:18
Su-Shee joined
|
|||
| ingy | pmichaud: oh right. I think you told me that last time I tried this. Guess I forgot. | 05:22 | |
|
05:25
petdance joined
05:27
kaare joined
05:46
tadzik joined
|
|||
| tadzik | hello #perl6 | 05:50 | |
|
05:53
IllvilJa joined
06:00
azawawi joined
|
|||
| azawawi | hi | 06:00 | |
| sorear: ping | |||
| sorear | pong | 06:01 | |
| azawawi | sorear: how r u? | 06:02 | |
| sorear | I'm fine. | ||
| azawawi | sorear: great, im going to start updating S:H:P6 today ... I noticed an STD over CPAN.. doesnt seem stable to install though and re-use. | 06:03 | |
| sorear | Paweł Murias on CPAN is pmurias here, not me | ||
|
06:04
baest joined
|
|||
| azawawi | sorear: i see i'll follow up with him | 06:04 | |
| sorear: ok, what's the status of blizkost right now? | 06:05 | ||
| sorear | it ought to still work fairly well | 06:06 | |
| strings and closures can be roundtripped to perl5 perfectly | |||
| other objects will be a bit more fiddly and you may have to turn them into closures before sending them | |||
| especially autovivifying aggregates, I basically gave up on getting those to work correctly | 06:07 | ||
| ecza: 355ef65 | sorear++ | test.pl: Tests for nested classes |
|||
| ecza: 78e1546 | sorear++ | (2 files): Implement nested class definition and access |
|||
| sorear | there's an example of using Tk.pm from Rakudo in one of the doc folders | ||
| it worked, last time blizkost was touched | |||
| azawawi | sorear: I see, so do you think wxWidgets can be used through it? | 06:09 | |
| sorear | sure | 06:10 | |
| azawawi | sorear: cool will try on win and linux to make sure | ||
| sorear | I picked Tk because 1. there is a failed grant on TPF's records to create a Tk.pm6 2. it's pretty popular | 06:11 | |
| azawawi | sorear: s/try/try it | ||
| sorear: Time to learn Perl 6 again and properly implement stuff ... coloring, refactoring, integration... :) | 06:12 | ||
| PerlJam | sorear: how do I "use" niecza? | 06:13 | |
|
06:16
uniejo joined
06:17
milki joined
|
|||
| sorear | PerlJam: it's a batch compiler; you use it more or less like a C compiler | 06:19 | |
| ./niecza_eval file.pl # parses file.pl, generates MAIN.exe (I should probably add a -o option sometime), runs it | 06:20 | ||
| dalek | ok: 7c5b65e | duff++ | (3 files): updated operators chapter to reflect Pm's review |
||
| ok: 3f1a6ec | duff++ | src/ (2 files): Add a sidebar mentioning ~= |
|||
|
06:21
azawawi joined
|
|||
| sorear | niecza_eval itself is not installable at the moment, but the generated .exes should be relocatable as long as CORE.dll and any modules you use are in MONO_PATH | 06:21 | |
| azawawi | sorear: blizkost test results on Win32 strawberryperl 5.12.0.1 | 06:22 | |
| Su-Shee | what do I read to understand as an average developer what the basic concepts of perl 6 are? | ||
| sorear | it currently produces rather bloated output - 240kb CORE.dll from 600 lines of Perl6 | ||
| azawawi | sorear: installation works, gmake is not detected instead 'make' is shown after Configure.pl is given the correct parrot_config | 06:23 | |
| dukeleto | Su-Shee: do you want to understand Perl 6 itself, or how it compares to Perl 5? | 06:24 | |
| azawawi | sorear: after trying the example in the blizkost README, i get a message box with the title "perl6.exe - Entry Point not Found" and the message is "The procedure entry point Perl_Iorigalen_ptr could not be located in the dynamic link library perl512.dll | ||
| dukeleto | Su-Shee: perlgeek.de/en/article/5-to-6 is a nice intro for the latter | ||
| azawawi | sorear: on rakudo's console, i get "===SORRY!=== Class\\n'P5Interpreter' not found" | ||
| Su-Shee | dukeleto: that's about the usage. I need something about the concepts. | 06:25 | |
| azawawi | sorear: make and make install work without any warnings/errors | 06:26 | |
| dukeleto | Su-Shee: you probably want to read the Synopses, then | ||
| Su-Shee: they live in the pugs repo | 06:27 | ||
| Su-Shee: perlcabal.org/syn/ | |||
| Su-Shee | dukeleto: yeah, I think I read those in 2003 the first time. ;) I need something for the average developer, an introduction for average people. | 06:28 | |
| hm, first chapter of the book.. | 06:29 | ||
| sorear | Su-Shee: the documentation you're looking for doesn't really exist. | 06:31 | |
| dukeleto | Su-Shee: yes, i guess you want github.com/perl6/book/ | ||
| Su-Shee | hm, then I have to mention that. :( | ||
|
06:32
dduncan left
06:35
Sanitoeter joined
|
|||
| azawawi | sorear: any idea how to fix that error? | 06:37 | |
| azawawi tries blizkost on linux vm now | |||
| sorear: feather.perl6.nl/~azawawi/blizkost_..._error.png | 06:43 | ||
|
06:48
Ross^ joined
|
|||
| sorear | azawawi: ask jnthn and/or #p5p, I haven't used Perl on Windows since 2003 | 06:48 | |
| azawawi | sorear: i see so im going to fix it :) | 06:50 | |
| sorear: thanks for your help | 07:01 | ||
| sorear: im trying blizkost now under a ubuntu vm to test it. It is so promising :) | 07:02 | ||
|
07:02
pmurias joined
|
|||
| pmurias | azawawi: you were interested in STD on CPAN? | 07:03 | |
| phenny | pmurias: 27 Jul 22:54Z <sorear> tell pmurias any time you rename files you *need* to change the makefile. On a case by case basis, so I can't help you. | ||
| azawawi | pmurias: i already did it in S:H:P6 :) | ||
| pmurias: so ofcourse im interested... | 07:04 | ||
| pmurias: it fails to install atm btw... Moose require stuff... | 07:05 | ||
| pmurias checks | |||
| Su-Shee | rakudo: my $foo = 'lala'; say "yes" if 'LaLA'.lc ~~ $foo; | ||
| p6eval | rakudo 2808a5: OUTPUT«yes» | ||
| pmurias | azawawi: ah, the dist.ini has the prereqs specified in the wrong section | 07:06 | |
| Su-Shee | rakudo: my $foo = 'LALa'; say "yes" if $foo.lc ~~ /lala/; | ||
| p6eval | rakudo 2808a5: OUTPUT«yes» | ||
| pmurias | azawawi: i'm currently working on renaming LazyMap,Actions and Cursor to STD::LazyMap... | ||
| azawawi | pmurias: what are you using to build the STD distro btw? | ||
| pmurias | azawawi: so it's not an unauthorized release | 07:07 | |
| azawawi | pmurias: nice... :) | ||
| pmurias | azawawi: Dist::Zilla | ||
| with a custom plugin | |||
| azawawi | pmurias: I remember talking to larry about renaming STD namespace a long time ago and sorear asked about it earlier this month | 07:08 | |
| pmurias: only in the p5 translation | |||
| pmurias | nothing resulted from that discussion | ||
| so i'm doing the prefixing | 07:09 | ||
| moritz_ | pmurias: TimToady was OK with prefix - maybe you need to backlog :-) | ||
| phenny | moritz_: 01:38Z <[Coke]> ask moritz_ if rt.perl.org/rt3/Ticket/Display.html?id=65258 is still happening for him. | ||
| pmurias | moritz_: i noticed that | ||
| moritz_ | ok | 07:11 | |
| azawawi | moritz_: who has commit access to blizkost? :) | 07:12 | |
|
07:13
hugme joined
|
|||
| moritz_ | hugme: add azawawi to blizkost | 07:14 | |
| hugme | moritz_: sorry, I don't know anything about project 'blizkost' | ||
| moritz_ | hum | ||
| sorear | jnthn, me | ||
| moritz_ | azawawi: me, jnthn, dukeleto, sorear iirc | ||
| azawawi | sorear: README needs to say that you need to "sudo apt-get install libperl-dev" on ubuntu... other it fails with the following error "/usr/bin/ld: cannot find -lperl" | 07:15 | |
| sorear: dunno if it is the same under a fresh debian | |||
| sorear: s/other/otherwise/ | 07:16 | ||
| sorear | I'm not even the maintainer, why do you keep dumping tips at me | ||
| we have phenny, a ticket queue, and a maintainer who loves giving commit bits | 07:17 | ||
| azawawi | sorear: sorry :) | ||
| pmurias | azawawi: so what do you need from STD? | 07:18 | |
| azawawi | pmurias: let me check | ||
| moritz_ | azawawi: or until you have a commit bit, you can also fork + send pull requests | ||
| moritz_ -> out | 07:19 | ||
| azawawi | moritz_: thx | ||
|
07:20
HarryS joined,
azawawi joined
|
|||
| sorear | argh.$GLOBAL::TEST-BUILDER = Builder.CREATE: | 07:20 | |
| $GLOBAL::TEST-BUILDER.reset; | |||
| guess what this code does | 07:21 | ||
| I have now had my first serious biting by perl 6 syntax | |||
|
07:21
zulon joined
|
|||
| Su-Shee | moritz_: does your SVG come with a Grammar? | 07:21 | |
| "your SVG module" | |||
| pmurias | sorear: where's the problem? | ||
| sorear | pmurias: it parses as $GLOBAL::TEST-BUILDER = Builder.CREATE($GLOBAL::TEST-BUILDER.reset) | 07:22 | |
| moritz_ | Su-Shee: no, it just produces SVG, no parsing involved | 07:23 | |
| pmurias | : to ; typo? | ||
| sorear | correct | ||
| Su-Shee | moritz_: I just checked JSON, I take that as an example. | ||
| sorear | ; to : actually | 07:24 | |
| azawawi | pmurias: basically re-use it in S:H:P6. I only bundled STD since i didnt find it on CPAN at that time | ||
| pmurias | azawawi: so if any files are missing from the STD on CPAN I'll add them | 07:25 | |
| pmurias hates the crapy Makfiley stage building | 07:26 | ||
| azawawi | pmurias: sure i'll tell you what i need exactly by this weekend | ||
| dalek | ecza: f506534 | sorear++ | Test.pm6: Refactor Test.pm6 to use an inner Builder |
||
| Su-Shee | rakudo: lc('HELLO'); | ||
| p6eval | rakudo 2808a5: ( no output ) | 07:27 | |
| azawawi | pmurias: thanks | ||
| azawawi work & | |||
| Su-Shee | where does in JSON Tiny the method parse come from? Is this something Grammars just deliver? | 07:28 | |
| ah, got it. | 07:31 | ||
| rakudo: grammar Name { rule name { <firstname> <lastname> } }; say "yes" if Name.parse("Susanne Schmidt"); | 07:37 | ||
| p6eval | rakudo 2808a5: OUTPUT«Method 'TOP' not found for invocant of class '' in 'Grammar::parse' at line 5547:CORE.setting in main program body at line 22:/tmp/UfsD37MLPf» | ||
| pmichaud | another R* candidate tarball: pmichaud.com/sandbox/rakudo-star-beta3.tar.gz | 07:38 | |
| comments and testing welcomed | 07:39 | ||
| (off to sleep for a bit) | |||
| Su-Shee | how do I use the grammar example correctly? | 07:41 | |
| pmichaud | Name.parse("Someone", :rule<name>) | ||
| if :rule isn't supplied, defaults to 'TOP' | |||
| Su-Shee | ah. | ||
| rakudo: grammar Name { rule name { <firstname> <lastname> } }; say "yes" if Name.parse("Susanne Schmidt", :rule<name>); | 07:42 | ||
| p6eval | rakudo 2808a5: OUTPUT«Method 'firstname' not found for invocant of class 'Name' in 'Name::name' at line 22:/tmp/l8g52qzFgu in 'Grammar::parse' at line 5547:CORE.setting in main program body at line 22:/tmp/l8g52qzFgu» | ||
|
07:46
Ross^ joined
|
|||
| Su-Shee | Can I use a grammar Email to make a new Type Email so I can declare something as Email and it gets validated automatically? | 07:48 | |
| Tene | No. :( | 07:50 | |
| au|irc | phenny: tell masak s!www.perl.com/lpt/a/482!http://www.p...6rfc.html! in the anniversary post following the perl.com relaunch :) (@BlueT++ on plurk noticed this) | ||
| phenny | au|irc: I'll pass that on when masak is around. | ||
| Tene | well | ||
| not automatically | |||
| subset Email of Str where { Email::Grammar.parse($_) }; | |||
| is something you can do. | 07:51 | ||
| mathw | I suspect you could... yes, that | ||
| Tene | that *should* work. I'm not sure of what else that might imply or fail to imply. | ||
| Su-Shee | oh. I was hoping for something like grammar Email is Type { complex email grammar here } and then something like $.email of Email is rw; or something. | 07:52 | |
|
07:53
tadzik joined
|
|||
| Su-Shee | rakudo: grammar Name { rule firstname { ucfirst(\\w+) } rule lastname { ucfirst(\\w+) } rule name { <firstname> <lastname> } } | 07:53 | |
| p6eval | rakudo 2808a5: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 22» | ||
| mathw | Well, a grammar is a type | 07:54 | |
| But carrying all the Grammar stuff around is probably not very useful past the initial parsing | |||
| So I would think keeping the grammar and the storage class separate is easier | |||
| and more flexible | 07:55 | ||
| Su-Shee | well I have at least 20 use cases where I would need some ruleset to define something and use that as a validation. and I would like to make that really simple. :) | ||
| mathw | example? | 07:56 | |
| Su-Shee | Email would be one of those cases. | ||
| Names, german cell phone telefon numbers, zipcodes.. | |||
| mathw | I wouldn't get into the business of validating names, too messy | 07:57 | |
| Su-Shee | in Moose, I can make those a trait and apply it to an attribute. | ||
| mathw | But | ||
| sorear | Su-Shee: the Moosian concept of types is basically our 'subtype' | ||
| mathw | You could still use a subset type with a where clause | 07:58 | |
| or a custom type with validating accessors | |||
| moritz_ | has Str $.email where { Email.parse($_) } | ||
| Su-Shee | hmpf. | ||
| mathw | :) | ||
| Su-Shee | where do I read up on subtypes? | 07:59 | |
| Tene | Su-Shee: you could define a role and a trait handler to set up a subset type for you | ||
| moritz_ | subset EmailStr of Str where { Email.parse($_) }; | ||
| ... | |||
| Su-Shee | I see. | ||
| moritz_ | has EmailStr $.email | ||
| sorear | What is the correct way to signature a list operator? | ||
| I mean, list-assoc | |||
| moritz_ | I guess with a slurpy | 08:00 | |
| sorear | not quite... | ||
| Tene | so that would be like: use LolGrammarType; grammar Email is LolGrammarType { ... }; my StrEmail $email = ... | ||
| sorear | rakudo: say "a" ~ 1..10 | ||
| p6eval | rakudo 2808a5: OUTPUT«» | ||
| sorear | rakudo: say "a" ~ (1..10) | ||
| p6eval | rakudo 2808a5: OUTPUT«a1 2 3 4 5 6 7 8 9 10» | ||
| cxreg | pmichaud: Makefile: git clone git@github.com:rakudo/rakudo.git $(RAKUDO_DIR) | 08:01 | |
| that should probably be a public url | |||
| sorear | rakudo: my sub infix_tilde_as_listop(*@args) { my $acc = ''; for (@args) { $acc ~= $_ }; $acc }; infix_tilde_as_listop("a", (1..10)) | ||
| cxreg | i got a permission error | ||
| p6eval | rakudo 2808a5: ( no output ) | ||
| sorear | rakudo: my sub infix_tilde_as_listop(*@args) { my $acc = ''; for (@args) { $acc ~= $_ }; $acc }; say infix_tilde_as_listop("a", (1..10)) | ||
| p6eval | rakudo 2808a5: OUTPUT«a12345678910» | ||
| sorear | ^^^ not the same | ||
| *@args is flattening | 08:02 | ||
| I need something that works mostly like *@args, but isn't | |||
| moritz_ | right | ||
| sorear: like (\\$args) ? | |||
| sorear | perhaps | 08:04 | |
| \\$args has a lot of other unpleasant baggage though | |||
| if I implement it as specced I would have to make huge changes to the binder, like moving the named/positional splitting to the call site | |||
| Tene | sorear: like |$args ? | 08:05 | |
| rakudo: my sub foo(|$args) { say $args.perl; }; foo("a", (1..10)); | 08:06 | ||
| p6eval | rakudo 2808a5: OUTPUT«\\("a", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)» | ||
| cxreg has a couple of minor bugfixes to star | |||
| Tene | cxreg: great! please make sure they get to pmichaud. | 08:07 | |
| sorear | well, now it can accept named arguments | ||
| cxreg | Tene: he's sleeping, what's the best way to do that, just ping him later? | ||
| Tene | rakudo: my sub foo(|$args) { say $args.perl; }; foo("a", (1..10), :foo<1>, :bar<lol>); | ||
| sorear | maybe I could coopt **@foo for this | ||
| p6eval | rakudo 2808a5: OUTPUT«\\("a", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, "foo" => "1", "bar" => "lol")» | ||
| moritz_ | cxreg: what's your github ID? | ||
| Tene | cxreg: you can leave a message for him with phenny | 08:08 | |
| phenny: tell cxreg OHAI | |||
| phenny | Tene: I'll pass that on when cxreg is around. | ||
|
08:08
justatheory joined
|
|||
| Tene | cxreg: you could email him | 08:08 | |
| cxreg | moritz_: cxreg | ||
| phenny | cxreg: 08:08Z <Tene> tell cxreg OHAI | ||
| Tene | or email the list | ||
| moritz_ | hugme: add cxreg to star | ||
| hugme hugs cxreg. Welcome to star! | |||
| cxreg | that works, thanks moritz_++ | ||
| Tene | he's not so happy with github pull requests, I hear. | ||
| Ah, that works! | |||
| :) | |||
| moritz_ | they don't scale, wrt commenting on the changes, tracking etc. | 08:09 | |
|
08:10
timbunce joined
|
|||
| cxreg | phenny: tell pmichaud 2 minor bugfixes to star pushed, one resulted in a missing module in beta3 | 08:12 | |
| phenny | cxreg: I'll pass that on when pmichaud is around. | ||
| cxreg | same bug exists in proto projects.list | 08:14 | |
| but not in pls | |||
| s/mattw/mathw/ | |||
| moritz_ | hugme: add cxreg to proto | 08:15 | |
| hugme hugs cxreg. Welcome to proto! | |||
| moritz_ | cxreg: you can fix that too :-) | ||
| cxreg | :D | ||
|
08:15
dakkar joined
|
|||
| cxreg | moritz_: is the branch 'pls_rstar_hacks' being used? | 08:20 | |
| moritz_ | cxreg: I don't know. My old build script in star/build/buildall.pl used it | ||
| cxreg | hrm, it does. that branch is behind by a bit. | 08:21 | |
|
08:21
zulon joined
|
|||
| cxreg | ok to "git merge pls" maybe? | 08:22 | |
| moritz_ | yes | ||
| cxreg | - $ git fetch origin pls | 08:28 | |
| + $ git fetch | |||
| the prior version did a totally confusing thing (put origin/pls in FETCH_HEAD) | |||
| git is odd sometimes | 08:29 | ||
| moritz_ | shouldn't it be checking out pls instead? | ||
| cxreg | that's the second line, still ok | ||
| "git fetch" fetches all refs and puts them in the origin/foo refs. "git fetch origin foo" does something dumb. | 08:30 | ||
| cxreg is going to heckle a "git internals" talk at $work tomorrow/today | 08:33 | ||
| sorear | unsuprisingly, a non-working ~ utterly breaks the test suite | 08:34 | |
|
08:39
thebird joined
|
|||
| pmichaud | cxreg: please add yourself to skel/docs/CREDITS in the star repo :-) | 08:55 | |
| phenny | pmichaud: 08:12Z <cxreg> tell pmichaud 2 minor bugfixes to star pushed, one resulted in a missing module in beta3 | ||
| pmichaud | afk for sleep again | 08:56 | |
| moritz_ generates the list of all contributors to rakudo (from git log) | |||
| sorear out. | 08:57 | ||
| dalek | ecza: 4563a6c | sorear++ | (4 files): Implement ~ with many arguments |
08:58 | |
|
08:59
timbunce joined
|
|||
| Su-Shee | can a Role inherit a Grammar? | 09:01 | |
| moritz_ | you can compose a role into a grammar | ||
| if you say role Foo is MyGrammar { }, then the class you compose the role into will inherit from MyGrammar | 09:02 | ||
| Su-Shee | and within the role? | 09:03 | |
| moritz_ | a grammar is really just a class that inherits from Grammar | ||
| Su-Shee | I have Grammar Atom. I'd like to write an Atom Role which contains something which uses Atom.parse. Then I make a class Feed does Atom after I've made role Atom is AtomGrammar? | ||
| moritz_ | don't make role and a grammar of the same name - it will be confusing | 09:04 | |
| Su-Shee | that doesn't really answer my question. ;) | ||
| moritz_ | if I understood it correctly, "yes" | 09:05 | |
| when in doubt, just try it out | |||
| Su-Shee | where in the book would I read up on that? | ||
|
09:06
meppl joined
|
|||
| moritz_ | I don't think it's sufficiently fleshed out yet | 09:06 | |
| Su-Shee | where do I look for all those keywords like "is", "does" and so on? | 09:08 | |
| moritz_ | search the specs for 'trait' | ||
| Su-Shee | moritz_: you realize that I essentially have to write "you can do stuff, but you can't look it up anywhere" ;) | ||
| cxreg | moritz_: do you know about "git shortlog" ? | 09:09 | |
| maybe with the -n -s switches | |||
| moritz_ | cxreg: yes | ||
| cxreg | ok | ||
| moritz_ | cxreg: but it doesn't recognized ++'ing in commit messages | 09:10 | |
| cxreg | oh sure, it just counts authors, good point | ||
| cxreg submits a --perl6 patch to shortlog :) | 09:11 | ||
| moritz_ | and since most rakudo contributors are sloppy with preserving author information (and at SVN times it simply wasn't possible), I parse for 'courtesy of' and '++' | ||
| also I need some serious duplicate removal | 09:13 | ||
| but I guess that could be a post-processing step | |||
| cognominal | rakudo: say ?('' ~~ m/ :s \\d+ ** ',' /) | ||
| p6eval | rakudo 2808a5: OUTPUT«0» | ||
| cognominal | I would expect a match even if of zero length. | ||
| someone has a explanation? | 09:14 | ||
| moritz_ | a ** b desugar to a [ b a ]* | ||
| if that's not what you want, put [ ... ]? around it | |||
| cognominal | rakudo: say ?('1' ~~ m/ :s \\d+ ** ',' /) | 09:15 | |
| p6eval | rakudo 2808a5: OUTPUT«1» | ||
| cognominal | moritz_, thx. | ||
| I am not sure this is very huffmanian though | 09:16 | ||
| avar | hrm, rakudo * tomorrow? | 09:18 | |
| moritz_ | yes | ||
| avar | I'll make sure to check it out then :) | 09:20 | |
|
09:23
envi^home joined,
vorner_ joined
09:24
zulon joined
09:25
vorner joined
09:26
daxim joined
09:50
xabbu42 joined
|
|||
| cognominal | rakudo: sub a($a?) { say $a }; a() | 10:10 | |
| p6eval | rakudo 2808a5: OUTPUT«Any()» | ||
| cognominal | The default is to return the undefined type, but when stringified this breaks expectation of perl 5 people. | 10:12 | |
| mathw | Fortunately this isn't Perl 5 | 10:13 | |
| cognominal | well, on the other hand, it is good practice to write: sub a(Str $a? = "") { say $a }; a() | 10:14 | |
| mathw | that depends on what you're doing with $a in the sub I suspect | 10:15 | |
| moritz_ | if you ahve a default value, there's no need for ? | 10:16 | |
| mathw | if you didn't have a default value, you'd check it for definedness to decide what to do in most cases | ||
| moritz_ found that in real code out there, you usually either have a default value, or you declare it as named | 10:18 | ||
| TiMBuS | is it possible to subclass a builtin type? or is it better to make a class that acts like a native type | 10:19 | |
| moritz_ | TiMBuS: non-native built-in types are subclassable | ||
| TiMBuS | class FullName is Str { has $.firstname; has $.lastname; }; | ||
| sorta, but I'm not sure how to init it | 10:20 | ||
| moritz_ | that's a bad idea, IMHO | ||
| class FullName { has $.firstname; has $.lastname; method Str { "$.firstname $.lastname" }} | 10:21 | ||
| TiMBuS | yeah | ||
| moritz_ | rakudo: class FullName { has $.firstname; has $.lastname; method Str { "$.firstname $.lastname" }}; say FullName.new(firstname => "John', lastname => "Orwant'); | ||
| p6eval | rakudo 2808a5: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | ||
| moritz_ | rakudo: class FullName { has $.firstname; has $.lastname; method Str { "$.firstname $.lastname" }}; say FullName.new(firstname => 'John', lastname => 'Orwant'); | 10:22 | |
| p6eval | rakudo 2808a5: OUTPUT«John Orwant» | ||
| cognominal | rakudo: sub a(:$a? { say $a }; a() | 10:23 | |
| oops | |||
| rakudo: sub a(:$a) { say $a }; a() | |||
| p6eval | rakudo 2808a5: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | ||
| rakudo 2808a5: OUTPUT«Any()» | |||
| TiMBuS | but I'd like it to behave like a string a little better than that. sometimes an explicit ~ prefix is needed. subs that have Str in their sig is the main one that comes to mind | 10:24 | |
| need to also define a .match and .ACCEPTS | |||
|
10:26
kokajxo joined
10:29
nwc10 joined
10:31
wamba joined
|
|||
| jnthn | o/ | 10:31 | |
| tadzik | \\o | ||
| snarkyboojum | o/ | 10:32 | |
| nwc10 | what happened to rakudosketch? wasn't useful? | ||
| jnthn | nwc10: It got renamed; irclog.perlgeek.de/phasers/ | 10:39 | |
| nwc10 | aha | 10:40 | |
| also, where does the sub_id get generated and assigned in Rakudo and in NQP? It's really not obvious. I failed to find it even with a brute force search | |||
| jnthn | nwc10: If we need to, we can force it to commit to one in Actions.pm | 10:43 | |
| nwc10: If not, it gets generated iirc in PAST::Compiler | |||
| tadzik | would it be nice for R* to have sth like docs/where_to_start, showing Perl6 newcomers what to do after installing Star, where to seek documentation and stuff, or is this alredy covered somewhere? | 10:44 | |
| nwc10 | jnthn: ah OK. | 10:45 | |
| reason I asked was it looks like the default is a sequence number, '_', epoch time with fractional seconds | |||
| jnthn | nwc10: Note that this still lives int he Parrot REPO | ||
| nwc10 | which means that every sub gets a new ID every recompile | ||
| even if it hasn't changed | |||
| creating massive amounts of diff churn on bootstrap files | 10:46 | ||
| jnthn: I *thought* I did my brute-force search on a Rakudo checkout with a Parrot checkout inside | |||
| jnthn | nwc10: Right. | ||
| nwc10: That's pretty much exactly what it's doing. And yes, it creates diff churn. | |||
| nwc10 | struck me that if the timestamp were replaced with a cryptographic hash of the textual source code of the function, it wouldn't change needlessly on recompiles | ||
| which would make it a lot easier to see what the compiler was up to | 10:47 | ||
| but that's definately "nice to have" | |||
|
10:47
vorner left
|
|||
| nwc10 | and may have downsides | 10:47 | |
| jnthn | nwc10: Takes (a) longer to compute and (b) tuits. :-) | ||
| The latter of which are never in sufficient supply. :-) | |||
| I agree it'd be nice to improve things there though. | 10:48 | ||
| nwc10 | because if (a) is optimising for the compiler's time, then it's pessimising for the humans' time. :-) | ||
| jnthn | *nod* | 10:50 | |
| Though making compiles take longer is pessimising a different bunch of human's time too. ;-) | |||
| nwc10 | yeah. | 10:51 | |
| jnthn | nwc10: Going to YAPC::EU, BTW? | 10:52 | |
| nwc10 | yeah. I can answer that question better in a few moments, I thinl | 10:53 | |
|
10:58
Trashlord joined
|
|||
| nwc10 | nwc10: better answer: conferences.yapceurope.org/ye2010/news/616 | 11:05 | |
|
11:06
lrnperl6 joined
|
|||
| jnthn | nwc10: \\o/ | 11:08 | |
| nwc10: Congrats. :-) | |||
|
11:10
sftp joined
|
|||
| Su-Shee | is thre a good example for prototype based OO in perl6? | 11:11 | |
|
11:11
azert0x joined
|
|||
| jnthn | phenny: tell pmichaud I have done a fix that gets modules-install to work on Win32. | 11:25 | |
| phenny | jnthn: I'll pass that on when pmichaud is around. | ||
| jnthn | phenny: tell pmichaud Seems the installed modules work from the installed Rakudo too. \\o/ Pushed, plus some README tweaks. | 11:26 | |
| phenny | jnthn: I'll pass that on when pmichaud is around. | ||
| jnthn | Su-Shee: Not so far as I'm aware. | 11:28 | |
|
11:29
Mowah joined
|
|||
| jnthn | Su-Shee: I didn't quite follow your question earlier about a role inheriting from a grammar. | 11:33 | |
| Su-Shee: Roles don't really inherit at all, they can just pass along a "add this parent" note to a class when composed into it. | |||
| Su-Shee: Note that you can write tokens/regexes/rules directly into a role and compose those into a grammar. But I still feel I'm missing what you're actually trying to do. | 11:34 | ||
|
11:39
hanekomu joined,
sftp_ joined
|
|||
| Su-Shee | jnthn: I've tried essentially this: grammar AtomGrammar { .... } role AtomPub is AtomGrammar { .... } class Feed does AtomPub {.... } | 11:44 | |
|
11:47
sftp joined
|
|||
| tadzik | ===SORRY!=== | 11:47 | |
| syntax error ... somewhere | |||
| …yeah | |||
| jnthn | Su-Shee: That's going to have the same result as if you'd written class Feed is AtomGrammar { } | 11:51 | |
| Su-Shee: Plus it'll compose any methods from the AtomPub role into Feed | |||
|
11:53
ggoebel joined
|
|||
| tadzik | any plans to include frontend for pir::stat in rakudo? # .oO( how about writing File::Stat? ) | 11:56 | |
| Su-Shee | *sigh* I need a handbook. | 11:57 | |
| moritz_ | tadzik: how about writing File::Stat? :-) | 11:59 | |
| tadzik | moritz_: I alredy started :) | ||
| File::Find will need this, once it gets as fun as we planned | |||
| moritz_ | tadzik: missed a pun. You should have said "I already stated" :-) | ||
| tadzik | ah, what a missed chance! /o\\ | ||
| btw moritz_, what do you think of this: | 12:00 | ||
| would it be nice for R* to have sth like docs/where_to_start, showing Perl6 newcomers what to do after installing Star, where to seek documentation and stuff, or is this alredy covered somewhere? | |||
| moritz_ | yes, would be nice | 12:03 | |
| point to the docs, the REPL, perl6.org | |||
| tadzik | will do. And about stat, maybe an IO method for Rakudo? Or we're keeping close to the specs here, no additional stuff? | 12:04 | |
| moritz_ | remeber, we have influence on the spec | 12:05 | |
| it's OK to prototype stuff where the spec is weak | |||
| and if it works out well, we add it to the spec | 12:06 | ||
| currenlty rakudo has an IO method in class Str | |||
| tadzik | so, may I try writing a path for Rakudo? | ||
| moritz_ | rakudo: say 'p1'.IO ~~ :e | ||
| tadzik | with stat | ||
| p6eval | rakudo 2808a5: OUTPUT«0» | ||
| tadzik | yeah, I know about that | ||
| so there'd be: 'filename'.IO.stat<size> or something | 12:07 | ||
| moritz_ | you could just stuff a .stat method into IO that... right | ||
| tadzik | so, yay or nay? | ||
| moritz_ | yay | ||
| or for me 'filename'.IO.size would also work | |||
| tadzik | so separate methods for fields? | ||
| moritz_ | whatever interface you prefer | ||
| tadzik | wklej.org/id/369731/ that's the current sub | 12:08 | |
| moritz_ | maybe a .stat method wouldn't be bad | ||
| tadzik | not many methods retun hashes in rakudo, do they? | ||
| moritz_ | because 1) it avoids multi calls to stat() under the hood and 2) it doesn't stuff too many methods into a basic type | ||
| tadzik | it can even have postcircumfix{} _and_ methods like .size .gid and stuff | 12:09 | |
| moritz_ | it already has .s for size, as a smart-matching artifact | ||
| tadzik | oh | 12:10 | |
| yeah, I see it | |||
| so, just more methods? | |||
| or a new class for methods and calls like 'file'.IO.stat.gid? | 12:11 | ||
|
12:11
colomon joined
|
|||
| moritz_ | I think I like the latter best | 12:11 | |
| IO::Stat or so | 12:12 | ||
| tadzik | and rewrite file test operations to use .stat? | ||
| moritz_ | yes | 12:13 | |
| tadzik | alright, two more things | ||
| 1) class IO is Cool -- what's the Cool parent? | |||
| (or maybe one more thing) | |||
| moritz_ | Cool is the class where thing like .match, .sin, .cos etc. are defined | 12:14 | |
| tadzik | so it's Cool to inherit from it? :) | ||
| moritz_ | so it's what most builtins should inherit from - those that know how turn into a string, a nubmer etc. | ||
| aye | |||
| tadzik | ok to keep IO::Stat in core/IO.pm? | ||
| moritz_ | I'd prefer it in IO/Stat.pm | 12:15 | |
| tadzik | sure thing | ||
| moritz_ | (it' just one line added to Makefile.in) | ||
|
12:18
mscha joined
12:20
ruoso joined
12:22
a8b8126d joined
|
|||
| Su-Shee | how do I install Rakudo * tomorrow? | 12:23 | |
| still with --gen-parrot? | 12:24 | ||
| moritz_ | Su-Shee: perl Configure.pl; make; make install; | ||
| Su-Shee: you can try it today | 12:25 | ||
| clone the star repo | |||
| run make | |||
| cd rakudo-star- | |||
| Su-Shee | it's for readers of tomorrow. I grab the stuff from github usally. | ||
| moritz_ | perl Configure.pl; make; make install; ./perl6 -e 'say "OH HAI"' | ||
| tadzik | moritz_: IO/Socket.pm has use v6 pragma, IO.pm does not. Any right way here? | ||
| Su-Shee | so parrot is included? | ||
| moritz_ | Su-Shee: yes | 12:26 | |
| tadzik: not necessary in the setting | |||
| Su-Shee | does make install install to /usr/* ? | ||
| moritz_ | no, unless you ask it to | 12:28 | |
|
12:28
bluescreen joined
|
|||
| moritz_ | there's a --prefix option to Configure.pl | 12:29 | |
| Su-Shee | and I can remove the source dir afterwards and that'll work with the needed parrot stuff? | ||
| moritz_ | the default is a local install | ||
| [Coke] | yay, perl6.org is now unblocked by $client's filter. | ||
| tadzik | moritz_: it's good to keep 4-spaces tab in every file? | ||
| Su-Shee | yeah, but the usal default ist /usr/local if you say nothing, why keep it locally? | ||
| moritz_ | tadzik: 4 spaces, no tabs | 12:30 | |
| tadzik | ok | ||
| moritz_ | Su-Shee: because not everbody has write access to /usr/local/ | ||
| [Coke] | pmichaud.com/sandbox/rakudo-star-beta3.tar.gz | 12:31 | |
| jnthn | moritz_, Su-Shee: whichever is the default, we should clearly document what the default is *and* how to do the Other Thing. | ||
| Su-Shee | moritz_: in that case you usally add a prefix. rakudo does it essentially the other way round now. that's confusing. | ||
| moritz_ | jnthn: agreed | 12:32 | |
|
12:33
lrnperl6 joined
12:34
Mowah joined
|
|||
| Su-Shee | What do I say on the subject of CPAN? | 12:35 | |
| moritz_ | that there's an infrastructure being built, and modules.perl6.org gives an overview of the existing modules | 12:36 | |
| wait, you do need --gen-parrot if there's no parrot available | 12:37 | ||
| Su-Shee | what do those three funny yellow thingies mean in the module list? | 12:38 | |
| moritz_ | modules.perl6.org/fame-and-profit | ||
| Su-Shee | oh. my. god. ok. | ||
| moritz_ | there's also a hover text explaining them | 12:39 | |
| Su-Shee | and me idiot thought they point to informations or suggest the state of development. ;) | ||
|
12:39
rgrau joined
|
|||
| moritz_ | well | 12:39 | |
| they do tell you something about the state of the module | |||
| Su-Shee | hrgh. empty readmes. | 12:40 | |
| compiles on linux/unix, mac and win? | 12:42 | ||
| anything I should mention about 64bit or something? | 12:43 | ||
| [Coke] | mjd++ | ||
| moritz_ dearly hopes so | |||
| Su-Shee: amd64 should be fine. | |||
| I've been using rakudo and parrot on 64bit platforms for at least a year now. Probably longer | |||
| Su-Shee | ok. | ||
| with a 64bit OS on top? | 12:44 | ||
| jnthn | Su-Shee: Confirm it works on Windows. Well, Beta-3 doesn't quite, but the next Beta will. | ||
| (I already pushed the fix.) | |||
| oh sh... | |||
| moritz_ | what's wrong? | 12:45 | |
| [Coke] | It seems that every day as I read stuff in backscroll, I inadvertently CNP it into the session again. apologies. | ||
| jnthn | moritz_: --prefix when passed over to gen_parrot doens't quote it | 12:46 | |
| tadzik | moritz_: could You give me a hand over here? wklej.org/id/369763/ | ||
| jnthn | moritz_: So my attempt to install into C:\\Program Files\\Rakudo (with a space in) was epic fail | ||
| moritz_ | jnthn: parrot can't be installed with a prefix with spaces anyway, IME | ||
| tadzik | moritz_: oh, nevermind | ||
| my bad | |||
| mathw | naughty parrot | 12:47 | |
| jnthn | moritz_: WHAT?! | ||
| for hells sake | |||
| moritz_ | jnthn: at least on linux | ||
| tadzik | moritz_: or not :) Mind taking a look? | ||
| jnthn | We'll see soon on Windows. | ||
| moritz_ | tadzik: lines 43-45 look wrong - just leave them out | 12:48 | |
| ($.stat is the same as $( self.stat ), so you're recursing there | |||
| colomon | So, I figured out how to shave 66% off the time required for a simple Range iteration last night. | ||
| tadzik | oh, sure | ||
| moritz_++, thanks | |||
| moritz_ | tadzik: use IO::Stat; is also wrong | ||
| tadzik | moritz_: why so? | 12:49 | |
| moritz_ | tadzik: don't do that, just put a :: before IO::Stat.new | ||
| jnthn | colomon: Wow! :-) | ||
| colomon | But it requires a completely new IntRangeIter. | ||
| [Coke] | colomon++ | ||
| colomon | I don't know if I should make a mad blitz to get it into R* or not. | ||
|
12:49
azawawi joined
|
|||
| azawawi | jnthn: ping | 12:49 | |
| [Coke] | ... if this were parrot, I'd say wait until just after the release. | ||
| moritz_ | tadzik: because it's not a module; it's built into the compiler - so you can't use it | ||
| colomon | [Coke]: if it were a normal Rakudo release, I'd say the same. | 12:50 | |
| tadzik | moritz_: as in: has $.stat = ::IO::Stat.new(path => $.path);? | ||
| moritz_ | tadzik: correct | ||
| tadzik | moritz_: I see | ||
| jnthn | azawawi: pong | ||
| Su-Shee | colomon: what for? there's a new release in 4 weeks, why hurry? | ||
| [Coke] | colomon: I'd defer to pmichaud in this case. but he did say tha there's probably going to be another * in a month. | 12:51 | |
| Su-Shee: because the speed is HORRENDOUS. =-) | |||
| azawawi | jnthn: I tried blizkost today on win32 (irclog.perlgeek.de/perl6/2010-07-28#i_2622456) and had this nasty message box feather.perl6.nl/~azawawi/blizkost_..._error.png | ||
| [Coke] | is the plan for R* to do all installs in . ? | ||
| Su-Shee | [Coke]: "what speed"? | 12:52 | |
| oh I though after rakudo * there still will be the monthly release? | |||
| colomon | Su-Shee: because this is the first R* release, and will be the first Perl 6 impression for a lot of people. | ||
| [Coke] | the compiler will continue to release monthly. | ||
| R* will happen to have a release in amonth, but will steady state at quarterly or so. | 12:53 | ||
|
12:53
lrnperl6 joined
|
|||
| colomon | Su-Shee: there will be monthly Rakudo releases and less-frequent R* releases | 12:53 | |
|
12:53
foodoo joined
|
|||
| jnthn | azawawi: I've only really tested it with ActiveState Perl + MS VC++. | 12:53 | |
| Su-Shee | colomon: your thingie makes entire rakudo much faster? | ||
|
12:54
sjn joined
|
|||
| azawawi | jnthn: any hints where to start looking? | 12:54 | |
| colomon | Su-Shee: not entire Rakudo, but anything like "for 1..1000" | ||
| [Coke] | colomon: when you're done speeding up rakudo, I need you over in partcl. =-) | 12:55 | |
| Su-Shee | colomon: hm. never used it. never needed it. | ||
| anyway. none of business. | |||
| [Coke] | it is a very common sort of thing when you're playing with a new language and testing the speed, though. =-) | ||
| jnthn | azawawi: The error doesn't mean much to me beyond it not being able to find a symbol in a DLL file. :( | 12:56 | |
| moritz_ | oh noes, Math::Model fails with current rakudo :( | ||
| colomon | Su-Shee: as a (vaguely) practical example, I'm pretty sure this will nearly double the speed of the Mandelbrot set generating program I have. | ||
| azawawi | jnthn: and "===SORRY!=== Class\\n'P5Interpreter' not found" on the console... nothing else | 12:57 | |
| jnthn | azawawi: Well yes, that's not so surprising if it failed to load the Perl 5 DLL. | ||
| azawawi | jnthn: i'll try debugging it tonight then | ||
| colomon | [Coke]: When I'm doing speeding up Rakudo will probably be years from now... ;) | ||
| azawawi | jnthn: thx :) | ||
| colomon | s/doing/done/ | ||
| Su-Shee | colomon: I'm average jane programmer, I don't generate Mandelbrot sets. ;) | 12:58 | |
| jnthn | azawawi: Yeah, I'm really not sure off hand what could be causing it. :( | ||
| colomon | I guess, then, the answer is I should get as much done as possible, and let pmichaud++ decide whether it goes in or not. | ||
|
12:58
zulon joined
|
|||
| [Coke] | colomon: yah. it's going in /eventually/ =-) | 12:59 | |
| azawawi | jnthn: I have tried it on an xp... i'll try it over vista also tonight to see if it is the same or not. We need blizkost :) | ||
|
13:00
molecules joined
|
|||
| colomon | okay, I'm going to have breakfast and then get hacking | 13:00 | |
| mathw has dropped the ball on Form's documentation | 13:01 | ||
| mathw has watched it bounce away down the steps and across a busy motorway | |||
| moritz_ is glad that balls usually don't break when they hit the floor :-) | |||
| tadzik | moritz_: does rakudo at master fail some spectests? | 13:02 | |
| moritz_ | phenny: tell pmichaud to please make sure to pull Math-Model again before shipping R*, I just pushed a fix that makes it work :-) | ||
| phenny | moritz_: I'll pass that on when pmichaud is around. | ||
| moritz_ | tadzik: no | 13:03 | |
| Su-Shee | *uff* I have simple perl 6, OO, Grammars, Roles & Traits, rules at least mentioned, strived operators.. anything else? | 13:04 | |
| azawawi & | 13:05 | ||
| moritz_ | Su-Shee: -Ofun :-) | ||
| Su-Shee | it's not really fun. too much searching, too much not understanding. | 13:06 | |
| it's fun if I don't use the fun stuff. ;) | |||
|
13:09
atrodo joined
|
|||
| moritz_ | phenny: tell pmichaud it seems that even with a --prefix specified, 'make install' picks up the installation location from the first perl6 in $PATH. Not fatal, but not nice either | 13:10 | |
| phenny | moritz_: I'll pass that on when pmichaud is around. | ||
|
13:11
daxim joined
|
|||
| Su-Shee | And now I can start the opinionated piece. ;) | 13:12 | |
| jnthn | moritz_: Yes, you're right, even if I pass a properly quoted path with spaces in to Parrot's Configure.pl for the prefix, it goes and installs to the wrong place. | ||
| parrot-- | |||
| moritz_ | trac.parrot.org/parrot/ticket/1716 | 13:18 | |
|
13:19
perlygatekeeper joined
|
|||
| cognominal | rakudo: grammar E { token TOP { \\" [ '\\\\"' | <-["]> ]* \\" } }; E.parse('"aa"') | 13:20 | |
| p6eval | rakudo 2808a5: ( no output ) | ||
| cognominal | rakudo: grammar E { token TOP { \\" [ '\\\\"' | <-["]> ]* \\" } }; say E.parse('"aa"') | ||
| p6eval | rakudo 2808a5: OUTPUT«"aa"» | ||
| cognominal | rakudo: grammar E { rule TOP { \\" [ '\\\\"' | <-["]> ]* \\" } }; say E.parse('"aa"') | ||
| p6eval | rakudo 2808a5: OUTPUT«» | ||
| tadzik | t/spec/S32-io/file-tests.rakudo ................................ ok | 13:22 | |
| \\o/ | |||
| looks like I didn't break anything :) | |||
| moritz_ | \\o/ indeed | ||
| jnthn | rakudo: role R { method m { say 42 } }; class C does R { }; C.new.m | 13:23 | |
| p6eval | rakudo 2808a5: OUTPUT«42» | ||
| moritz_ | \\o| | ||
| cognominal | I don't understand why substituting 'rule' to 'token' gives a parse fails here | 13:25 | |
|
13:26
petdance joined
|
|||
| moritz_ | because 'aa' doesn't match a <.ws> a | 13:26 | |
| cognominal | ho, the <.ws> is mandatory! thx. | 13:27 | |
| moritz_ | of course you can add your own ws rule that matches the empty string too | 13:28 | |
| cognominal | I should keep a log of my mistakes. Well, hopefully, I log #perl6 | ||
| moritz_ | there are public logs too :-) | 13:29 | |
| cognominal | yea, but less easy to parse :) | 13:31 | |
| moritz_ | true | ||
| I still plan to implement a better search frontend to it | |||
| with KinoSearch | |||
| cognominal | btw (:rxtrace)++ it helps very often. | ||
| KinoSearch? | 13:32 | ||
| moritz_ | but ETOOMANYPROJECTS and ETOOLITTLETIME | ||
| cognominal: a nice search engine on CPAN | |||
| search.cpan.org/perldoc?KinoSearch | 13:33 | ||
| cognominal | yea, I see. It does stemming. | 13:35 | |
| moritz_ | and lots of other things that the current search is missing | ||
| like, proper query parsing | |||
| tadzik | moritz_: self.e ?? !$.stat.isdir !! Bool; -- wouldn't it be better to use Bool::False here, just for readability? | 13:38 | |
| rakudo: say 'ok' if Bool == Bool::False | |||
| p6eval | rakudo 2808a5: OUTPUT«ok» | ||
| moritz_ | tadzik: there was a test somwhere that assumed a failed ~~ :e test returns an undefined value, or so | 13:39 | |
| gfldex | rakudo: say False.WHAT; | 13:40 | |
| p6eval | rakudo 2808a5: OUTPUT«Bool()» | ||
| moritz_ | rakudo: say Bool.defined, False.defined | ||
| tadzik | moritz_: wklej.org/id/369789/ these are the only spectests that fail for me | ||
| p6eval | rakudo 2808a5: OUTPUT«01» | ||
| pugssvn | r31853 | moritz++ | [t/spec] unfudge a passing test for rakudo | 13:41 | |
| moritz_ | tadzik: both seem unrelated... what's your OS? | ||
| tadzik | moritz_: Linux | ||
| moritz_ | hum. | ||
| tadzik | CRUX, to be more precise | ||
| moritz_ | ok 2 - We are running under 'thread' | 13:43 | |
| weird OS name | |||
| seems like parrot mis-detects your OS | |||
| tadzik | looks like isdev doesn't work too good in parrot yet | ||
| > pir::stat__isi('/dev/null', 3) | 13:44 | ||
| 0 | |||
| so isdev is basically useless for now | |||
| jnthn -> lesson, bbl | 13:45 | ||
| tadzik | same for uid. Whatever, maybe time for some bug reports. The patch seems to work though | 13:46 | |
| moritz_: format-patch? | |||
| moritz_ | yes, please | ||
|
13:46
sftp_ joined
|
|||
| tadzik | moritz_: mail, nopaste? | 13:51 | |
| moritz_ | tadzik: rakudobug@perl.org, and nopaste it in parallel :-) | ||
| tadzik | nopaste.snit.ch/22370 | 13:52 | |
| moritz_: include it as an attachment, right? | 13:53 | ||
| moritz_ | tadzik: right | ||
| [Coke] | jnthn: we can install in c:\\rakudo for now, neh? | ||
| colomon | rakudo: say (1, 2, 3).WHAT | 13:54 | |
| p6eval | rakudo 2808a5: OUTPUT«Parcel()» | ||
| colomon | rakudo: say (1, 2, 3).perl | ||
| [Coke] | say .WHAT.WHAT | ||
| p6eval | rakudo 2808a5: OUTPUT«(1, 2, 3)» | ||
| colomon | rakudo: say ((1, 2, 3), 5).perl | ||
| p6eval | rakudo 2808a5: OUTPUT«((1, 2, 3), 5)» | ||
| moritz_ | rakudo: say (1, 2, 3).Seq.perl | ||
| p6eval | rakudo 2808a5: OUTPUT«(1, 2, 3)» | ||
|
13:55
jjore joined
|
|||
| colomon | I'm trying to figure out how to return a Parcel which is another Parcel extended by one element at the end. | 13:56 | |
|
13:57
pwd joined
|
|||
| colomon | rakudo: my $a = (1, 2, 3); say &infix:<,>(!$a, 42).perl | 13:57 | |
| p6eval | rakudo 2808a5: OUTPUT«(Bool::False, 42)» | ||
| colomon | rakudo: my $a = (1, 2, 3); say &infix:<,>(|$a, 42).perl | ||
| duh | |||
| p6eval | rakudo 2808a5: OUTPUT«(1, 2, 3, 42)» | ||
| colomon | ooooo | ||
| rakudo: my $a = (1, 2, 3); say &infix:<,>(|$a, 42).WHAT | |||
| p6eval | rakudo 2808a5: OUTPUT«Parcel()» | ||
| colomon | that'll do, pig, that'll do. | 13:58 | |
| moritz_ | rakudo: say ((1, 2, 3).flat, 4).perl | ||
| p6eval | rakudo 2808a5: OUTPUT«((1, 2, 3), 4)» | ||
| colomon is constructor a very, very simple iterator type | |||
| tadzik | moritz_: sent | ||
| moritz_ | tadzik++ | 13:59 | |
| I need to finish another spectest run before I can apply and test it | |||
| tadzik | sure | ||
| running spectests is hell long -_- | |||
| 700 tests of tangent function, running like 30 per second… | 14:00 | ||
| PerlJam | colomon: for some reason, I find it funny that you use &infix:<,> *and* the comma in (|$a, 42) | ||
| colomon | strange language, eh? | ||
| PerlJam | rakudo: my $a = 1,2,3; (|$a, 42).WHAT.say | ||
| tadzik | :) | ||
| p6eval | rakudo 2808a5: OUTPUT«Parcel()» | ||
| moritz_ | :-) | ||
| rakudo: my $a = 1,2,3; (|$a, 42).perl.say | |||
| p6eval | rakudo 2808a5: OUTPUT«(\\(1), 42)» | 14:01 | |
| moritz_ | rakudo: my $a = (1,2,3); (|$a, 42).perl.say | ||
| p6eval | rakudo 2808a5: OUTPUT«(\\(1, 2, 3), 42)» | ||
| moritz_ | huh. | ||
| PerlJam | and I find that completely weird. | ||
| [Coke] | Perl 6: I find that completely weird. | 14:02 | |
| PerlJam | Coke++ :) | ||
| PerlSix | I am completely weird ... but lovable. | 14:03 | |
| tadzik | bleh, s/current Rakudo/current Parrot/ (in patch) | ||
| moritz_: ↑ | |||
| does it make sense to send another mail to underline the typo? | 14:04 | ||
| colomon | jnthn: ping/ | 14:05 | |
| moritz_ | notreally | ||
|
14:06
synth joined,
NOTevil joined
14:07
dual joined
|
|||
| [Coke] | $ ./install/bin/ufo | 14:07 | |
| PackFile_unpack: This Parrot cannot read bytecode files with version 6.21. | |||
|
14:07
tadzik1 joined
|
|||
| moritz_ | meh. old parrot lying around, and being picked up | 14:07 | |
| [Coke] | ew. old /perl6/ lying around and being picked up. | 14:09 | |
| if we're installing our own /everything/, shebang should point to those particular instances. | |||
| moritz_ | +1 | ||
| [Coke] | phenny: tell pmichaud - the shebangs in installed scripts like 'ufo' should have the path to the installed perl6, not "env perl6". | ||
| phenny | [Coke]: I'll pass that on when pmichaud is around. I'll have to use a pastebin, though, so your message may get lost. | ||
| [Coke] | phenny: you rot! | 14:10 | |
| phenny: tell pheny you rot. | |||
| phenny | [Coke]: I'll pass that on when pheny is around. | ||
| [Coke] | phenny: tell phenny *thbbtp* | ||
| phenny | Hey, I'm not as stupid as Monty you know! | ||
| [Coke] | there we go. | ||
| $ ./install/bin/perl6 ./install/bin/ufo | |||
| lib/ doesn't exist. Nothing to do. | |||
|
14:12
zulon joined,
plobsing joined
14:14
nwc10 left
|
|||
| colomon has a fencepost error | 14:16 | ||
| moritz_ hands colomon the one missing fencepost | 14:17 | ||
| colomon | Actually, Obi-Wan error would be more appropriate name considering current music. | ||
| frettled waves hand slowly. | |||
| This is not the error you are looking for. | |||
| colomon | bingo! | 14:18 | |
| tadzik | :D | ||
|
14:18
Guest23195 joined
|
|||
| pugssvn | r31854 | moritz++ | [t/spec] rakudo does not do Instant and Duration yet | 14:18 | |
|
14:20
patspam joined
|
|||
| colomon | rakudo: say (). WHAT | 14:21 | |
| p6eval | rakudo 2808a5: OUTPUT«===SORRY!===Confused at line 22, near "say (). WH"» | ||
| colomon | rakudo: say ().WHAT | ||
| p6eval | rakudo 2808a5: OUTPUT«Parcel()» | ||
| [Coke] | the blocks returned by use should probably not stringify to _blockFoo. | 14:23 | |
|
14:24
Mowah joined
14:25
javs joined
|
|||
| cono | [Coke]: hey. Sent e-mail to perl6-bugs-follow@perl.org with diff in attachment, but still have not reply... | 14:25 | |
| [Coke] | which ticket #? | 14:26 | |
| tadzik | I thought it was intentional :) | ||
| cono | [Coke]: Yup. subject: Re: [perl #75752] [PATCH] make realclean before svn update (parrot) | ||
|
14:26
patch joined
|
|||
| moritz_ | conferences.yapceurope.org/ye2010/news/617 the second one should be easy for the people in here :-) | 14:27 | |
| tadzik | something ~~ /bridge/, right? :) | 14:28 | |
| I have no idea though. Curious | |||
| [Coke] | cono: yah, I don't see it either. | ||
| cono: where did you get the "follow" address? just a reply to? | 14:29 | ||
| ;(for me it's bugs-bitbucket@rt.perl.org) | |||
| and it might be moderated because it's email. and the guy doing the moderation is, I think, on vacation or otherwise occupied, so other overworked folks are picking up the slack as possible. | 14:30 | ||
| cono | [Coke]: home.cono.org.ua/rt.png | ||
| [Coke]: yes, Just replied | |||
| [Coke] | no rush, though; it'll probably wait until after * anyway. | ||
| dolmen_ | masak: what is the state of LAST { } ? | 14:37 | |
| rakudo: my @a = <a b c> for @a { LAST { say "xx" } }; | 14:38 | ||
| p6eval | rakudo 2808a5: OUTPUT«===SORRY!===Confused at line 22, near "my @a = <a"» | ||
| dolmen_ | rakudo: my @a = <a b c>; for @a { LAST { say "xx" } }; | 14:39 | |
| p6eval | rakudo 2808a5: OUTPUT«===SORRY!===LAST phaser not yet implemented at line 22, near " };"» | ||
|
14:48
Axius joined
|
|||
| Axius | rakudo: say (35 - 35 * 3) + 34 | 14:49 | |
| p6eval | rakudo 2808a5: OUTPUT«-36» | ||
| [Coke] | colomon: please get an RT account so you can have tickets assigned to you. :P | 14:50 | |
| colomon | how does one get an RT account? | ||
| moritz_ | I think rt.perl.org/rt3/ has a link for creating an account | 14:51 | |
| colomon hates RT, for what it is worth | 14:52 | ||
| frooh_ | colomon: either a bitcard account or a PAUSE account will work | ||
| colomon: but I think you can just send mail w/o an acct.. | |||
| moritz_ | colomon: still much better than track | 14:53 | |
| tadzik | would anyone mind Perl6's File::Find not even trying to resemble Perl5's File::Find at all? | ||
| colomon | moritz_: come to think of it, I'm not sure I've ever seen a bug tracker I didn't hate. | ||
| frooh_ | tadzik: please | ||
| tadzik | frooh_: you mean? | ||
| frooh_ | tadzik: lets make new mistakes :D | 14:54 | |
| moritz_ | tadzik: wfm | ||
| [Coke] | frooh_: yes, he can send email without an account. but I cannot assign tickets to people sans accounts. | ||
| frooh_ | tadzik: I mean the old interface suxxorz | ||
| [Coke]: ah, ok | |||
| tadzik | frooh_: I'd rather make something like File::Find::Rule and not differenciate these modules at all | ||
| I'm glad no one likes File::Find :) | |||
| frooh_ | tadzik: yeah, that sounds more sane | ||
| moritz_ | tadzik: I do want a generic file iterator sometimes | ||
| tadzik | so it shall be done | ||
| [Coke] | colomon: rt may suck (it doesn't), but I remain steadfastly apathetic in regards to leaving it. (having migrated parrot, I will NEVER do that again. =-) | ||
| tadzik | moritz_: what do you mean? The good ol' callback-on-every-file interface? | 14:55 | |
| moritz_ | tadzik: but I'm fine if it's not advertized as the one-and-only approch | ||
| tadzik: yes | |||
| though of course lazy lists make the callbacks mostly unnecessary | |||
| tadzik | moritz_: F::F::Rule returns an array of matching files, and so would be our File::Find. Still adding a .callback method isn't a problem at all | ||
| [Coke] | evalbot owner, IWBNI he didn't carp on private messages, or perhaps defaulted to something sane. | 14:56 | |
| colomon | [Coke]: have RT account, e-mail there is colomon@gmail.com, user id is Solomon | ||
| moritz_ | if I can do for files('.', matching => :f) -> $f { ... } to get all plain files, that's fine too | ||
| as long as the list is lazy | |||
| [Coke] needs to dig up the "how to add someone to RT" metadata. | 14:57 | ||
| tadzik | moritz_: I was thinking about find(.).type('f') or something like this, the methods being something like grep actually | 14:58 | |
| moritz_ | [Coke]: when you have done that, you can also add colomon++ as a bug admin for the perl6 quueue (guess that was your intention, not sure though) | ||
| tadzik | but grepping a lazy list is a bit stupid maybe. And I'm not sure how to implement a lazy list there | ||
| moritz_ | tadzik: wfm too | ||
| colomon | hey, wait a minute, have I been lured into a trap here? :\\ | 14:59 | |
| tadzik | Let's make it work and the make it better maybe | ||
| colomon | loliblogged: justrakudoit.wordpress.com/2010/07/...te-design/ | ||
| [Coke] | colomon: hey, you have colomon & Solomon =-) | ||
| colomon | do I? | ||
| [Coke] | whoops. =-) | ||
| yah. must have had an old account that didn't show up in the list I was looking at. | 15:00 | ||
| I'll op Solomon. | |||
| moritz_ | tadzik: if you pass the matchers straight to find(), it's easier to do it both lazy, and abort early | ||
| tadzik | moritz_: yeah, sounds better. And this grep-like feature can be available too | ||
| [Coke] | colomon: you should be a bugadmin now. | ||
| colomon | [Coke]: happy happy. joy joy. | 15:01 | |
| tadzik | moritz_: still, I don't know how should laziness work here. I guess the subdirectories will be read only after the directory itself will be read, that's the point? Yet I still don't know how it should be implemented | 15:02 | |
| [Coke] | also, I gave you ticket 73402, because it said something about int and num! | ||
| ;) | |||
| moritz_ | tadzik: it's easy. Just return a gather { ... }, and take() a file name (or path object) once you've found a file | ||
| tadzik | waitwaitwait | 15:03 | |
| So I'll be returning a gather-take result, that's quite obvious to me. But about the things inside... hmm, let me read something more about gather-take | |||
| moritz_ | rakudo: my @a := gather { for 1..4 { take $_; say $_ } }; @a[2]; | 15:04 | |
| p6eval | rakudo 2808a5: OUTPUT«12» | ||
| moritz_ | the say 3; say 4; have never been executed, because only the three first array elements needed to be evaluated | 15:05 | |
| neat, huh? | |||
| tadzik | yeah, that's what laziness is all about I guess :) | 15:06 | |
| Hmm, using gather-take and lazy lists would be quite simple with the recursive approach I'm using now? | 15:07 | ||
| moritz_ | note that you can also call a subroutine, which calls take() | ||
| it's dynamically scoped | |||
| tadzik | ah, so it maybe is possible | ||
| oh, wait | |||
| s/simple/impossible/ | |||
| so now it looks possible | 15:08 | ||
| I have to get my head around this gather for a sedcond | |||
| moritz_ | actually it's not really harder than the non-lazy version | ||
| typically you'd do | |||
| my @a; | |||
| # some code here that pushes to @a | 15:09 | ||
| tadzik | ah, I get it now | ||
| moritz_ | return @a | ||
| instead you do | |||
| gather { | |||
| tadzik | I was thinking of gather as some specific kind of a loop | ||
| now I see it's just a magic block | |||
| moritz_ | # some code that take()s what you would push to @a | ||
| } | |||
| right | |||
| tadzik | cute | ||
| I was planning to abandon recursion here anyway, but that'd be also ok I guess | 15:10 | ||
| moritz_ | indeed | ||
| @larry++ | |||
| as long as you don't recurse into the function that has the gather-block (but maybe into a helper), that's fine | |||
| tadzik | so when we're trying to reach the forth element, gather does not really know what and where it is, it just runs until the forth take() is called, right? | 15:12 | |
| moritz_ | you could look at it that way, but that's not quite what happens | ||
| the take() interrupts the control flow | 15:13 | ||
| and as soon as items are accessed that have not been computed ("reified") yet, the execution continues | |||
| tadzik | I see | ||
| so it won't compute anything twice | |||
| moritz_ | right | ||
| dalek | ok: abcc64c | (Nikolai Prokoschenko)++ | lib/Makefile (2 files): update latex-makefile from upstream, our xelatex patches has been integrated |
15:16 | |
| kudo: 8049d92 | Coke++ | README: Apply spirit of RT #70642, Courtesy Scott Penrose |
15:21 | ||
|
15:21
huf joined
|
|||
| tadzik | erm | 15:22 | |
| Note that if you have multiple (Perl 5) C<perl>s in your path, you may need to use a fully qualified path | 15:23 | ||
| didn't you mean: Perl 6? | |||
| moritz_ | or is the perl 5 for the configuration process meant? | ||
| pmichaud | good morning, #Perl6 | 15:24 | |
| phenny | pmichaud: 11:25Z <jnthn> tell pmichaud I have done a fix that gets modules-install to work on Win32. | ||
| pmichaud: 11:26Z <jnthn> tell pmichaud Seems the installed modules work from the installed Rakudo too. \\o/ Pushed, plus some README tweaks. | |||
| pmichaud: 13:02Z <moritz_> tell pmichaud to please make sure to pull Math-Model again before shipping R*, I just pushed a fix that makes it work :-) | |||
| pmichaud: 13:10Z <moritz_> tell pmichaud it seems that even with a --prefix specified, 'make install' picks up the installation location from the first perl6 in $PATH. Not fatal, but not nice either | 15:25 | ||
| [Sorry, some messages were elided and lost...] | |||
| pmichaud | looks like I overslept | ||
| gfldex | and unhealthy amount of sleep would be worse | 15:26 | |
| [Coke] | pmichaud: when installing 'ufo' et al., we shouuld modify the shebang to point to the install directory perl6. | 15:27 | |
| dalek | kudo: 3fbd628 | (Tadeusz Sośnierz)++ | (3 files): Added IO::Stat, and a .stat method for IO |
||
| [Coke] | (otherwise when running ufo, it picks up the perl6 in your path, which might be old/wrong/borken/) | ||
| kudo: 7e8134c | moritz++ | tools/contributors.pl: [tools/contributors.pl] avoid infinite recursion, general cleanup |
|||
|
15:30
Ross^ joined
|
|||
| pmichaud | [Coke]: I think 'ufo' and friends should just have '#! perl', and not aim for a specific perl. | 15:36 | |
| is that not the standard for other perl scripts? | |||
| pmichaud@orange:~$ head -3 /usr/local/bin/ack | 15:37 | ||
| #!/usr/bin/env perl | |||
| # | |||
| # This file, ack, is generated code. | |||
| rephrase | |||
| [Coke] | pmichaud: the problem is that I already have perl6 installed, and <random dir I downloaded to>/install/bin is not in my path. | ||
| jnthn back | |||
| o/ pmichaud | |||
| pmichaud | [Coke]: I think 'ufo' and friends should just have '#! perl6', and not aim for a specific perl6 | ||
| [Coke] | then don't make them executable. | 15:38 | |
| alester | ufo? | ||
| [Coke] | well, that wouldn' thelp, nevermind. | ||
|
15:38
molecules joined
|
|||
| [Coke] | but even if they are exectuable, the only reason it even ran is because I had an /old/ perl6 in my path. | 15:38 | |
| for the default linux user, it will just die anyway. | 15:39 | ||
| jnthn | colomon: pong | ||
| pmichaud chuckles at the number of comments in backscroll that say "should we document X?" where X is already documented in the README. | |||
| [Coke] | env: perl6: No such file or directory | ||
| (that's what you'll get.) | 15:40 | ||
| (the readme does address this. I think we can do a better default, but am willing to point people to the readme. that's fine.) | 15:41 | ||
| pmichaud++ | |||
| -> afk | |||
| pmichaud | jnthn: I see you added test-mock into the list of modules, but din't add it to the Makefile.in .. Oversight? | 15:42 | |
| jnthn | pmichaud: Lack of realisation that I had to, probably not helped my insufficient coffee consumption at the time I did it. ;-) | 15:43 | |
| pmichaud | sure | ||
| jnthn | pmichaud: Now you mention it it's like "duh, of coruse" :-) | ||
| I'll add it. | |||
| The Windows fix was the more important push :-) | |||
| pmichaud | yeah, I'm not entirely happy with the way it's set up at the moment -- not enough DRY | ||
| (the modules listing) | |||
| jnthn | We can improve that in future distros. | 15:44 | |
| pmichaud | right | ||
|
15:44
molaf joined
|
|||
| pmichaud | I'm hoping/expecting we'll have better module management overall at some point | 15:44 | |
| jnthn | Same | ||
| pmichaud | I'll add a note to the Makefile that says "if you add a module here, don't forget to add it to Makefile.in" | 15:45 | |
| colomon | jnthn: was going to ask about how to quickly make a parcel. see justrakudoit.wordpress.com/2010/07/...te-design/ | ||
|
15:45
Ross^ joined
|
|||
| jnthn | pmichaud: wait, I'm tangled in a twisy maze :-) | 15:46 | |
| pmichaud | jnthn: ah, you are indeed. | ||
| jnthn | pmichaud: What is the Makefile in the root? | ||
| pmichaud | it was added to build/download-stuff.pl, which isn't used anymore. | ||
| jnthn | The committed one? | ||
| Oh | |||
| pmichaud | yeah. | ||
| jnthn | Then let's kill it :-) | ||
| pmichaud | killing | ||
| jnthn | OK, so it has to go in two makefiles | ||
| Makefile and skel/build/Makefile.in ? | 15:47 | ||
| Tene | pmichaud: I looked at beta3 last night. make still claimed 'run make test or make spectest to test rakudo', but 'make test' did not work. | ||
| make rakudo-test as mentioned in the README worked fine, of course. | 15:48 | ||
| pmichaud | hmmm. I bet that's coming from rakudo's make. | ||
| Tene | yeah | ||
| pmichaud | oh, wait. | ||
| it's coming from rakudo's Configure.pl | 15:49 | ||
| test::mock fixes pushed | |||
| huf | can you somehow "upgrade" a Block to a Sub (or any other block that's not transparent to return) | 15:50 | |
| jnthn | pmichaud: Oh, I'd justprepared them too :-) | ||
|
15:51
hexcoder joined
15:53
richard_sk_ joined
|
|||
| mscha | rakudo: sub foo(Int *@bar) { say "@bar[]"; }; foo(1, 2, 3, "apple"); | 15:54 | |
| p6eval | rakudo 2808a5: OUTPUT«1 2 3 apple» | ||
| huf | what's the top of the number type hierarchy? | 15:55 | |
| jnthn | Numeric | ||
| huf | ah. what's Num? | 15:57 | |
| or was that renamed? | |||
| jnthn | colomon: Making a Parcel is probably easiest done by my $parcel := pir::new__Ps('Parcel'); pir::push($parcel, $value); etc | ||
| huf: Num is a flaoting point number | |||
| colomon | huf: Num is a floating point number | ||
| huf | ah, thanks | ||
| jnthn | heh :-) | ||
| huf | so how about my other question? :) (can you "cast" a Block to a Sub?) | ||
| jnthn | Even if you could somehow type cast it, it won't make much difference with regard to what you can return from. | 15:58 | |
| colomon | jnthn: that didn't seem to work when I tried it earlier, but I may not have had the ideal __xx after new. | ||
| jnthn | colomon: I think I got it to wrok last night | ||
| Note := and not = | |||
| Makes an important difference here | |||
| colomon | jnthn: yeah, I definitely had = before. duh. | ||
| jnthn | colomon: Yeah, that makes it into a Seq. | ||
| Since that's what comes of parcels in item context. | 15:59 | ||
| huf: What's your use case, ooc? | |||
|
15:59
pyrimidine joined
|
|||
| huf | jnthn: i'm just trying to wrap my head around it, and wanted to know if there's a way to fiddle with the difference between different callable types | 15:59 | |
| jnthn | huf: The return exceptions work by us compiling routines to have a handler that catches return exceptions though, so just casting something to Sub if you could do so isn't going to change that. | 16:00 | |
| colomon | jnthn: in retrospect that's obvious. ;) | ||
| jnthn | colomon: In reality, I wrote = when I first tried it too ;-) | ||
| huf | jnthn: so sub (Sub &c) { ... } not working is a rakudo thing? | 16:01 | |
| jnthn | huf: What do you think that's going to do? | ||
| huf | i'd expect it to only accept subs as parameter, not blocks | ||
| but it seems i'm confused | |||
| jnthn | huf: Ah, then it's your expectations that are wrong. :-) | ||
| huf: sub foo (Int @x) { ... } # this means an array declared as having Int elements | 16:02 | ||
| huf: sub foo (Int &x) { ... } # this means a sub declared as "returns Int" | |||
| huf | ah. so how do you restrict on the type of callable? | 16:03 | |
| colomon | Sub $c | ||
| huf | the & sigil is just a shorthand for something here, no? | ||
| jnthn | huf: Sub $x will do it. | ||
| Yeah | |||
| huf | so no way to keep the nice bareword-looking subroutine name and restrict? | ||
| jnthn | &x is short for Callable $x | ||
| huf | or can i say c() after Sub $c? | ||
| jnthn | No, you can't | ||
| You can maybe do (&c where Sub) in Rakudo today | 16:04 | ||
| huf | so &x isnt Callable $x ? :) | ||
| jnthn | huf: It is so far as the dispatcher cares. ;-) | ||
| huf | yeah | ||
| this is fun | |||
| jnthn | But yes, you're correct in that it doesn't let you call it as c() | ||
| mscha | rakudo: my @fibo := gather { my $a=0; take $a; my $b=1; take $b; loop { ($a,$b) = ($b,$a+$b); take $b }}; for 3,5,3 -> $i { say @fibo[$i]; } | 16:05 | |
| p6eval | rakudo 2808a5: OUTPUT«255» | ||
| jnthn | I think that some day you should also be able to write "&c is Sub" but I'm a bit reluctant on that one because it confuses implementation type with traits in general. | ||
| mscha | Should be 2, 5, 2, no? | ||
| huf | jnthn: so there's no specced way to do this yet? oh well, we're used to sigils on callbacks anyway ;) | 16:06 | |
| jnthn | huf: I think the spec says "is Sub" should work. I'm just saying that it's one of the bits of the spec that I look at and feel quite awkward about. | ||
| pmichaud | fwiw, I'm wondering if $p := ... will also force item context on its rhs | 16:07 | |
| colomon | mscha: is that the "take $a" issue? | ||
| pmichaud | (which would invalidate the "new Parcel" bit) | ||
| huf | jnthn: i see. | ||
| colomon | rakudo: my @fibo := 1, 1, *+* ... *; for 3,5,3 -> $i { say @fibo[$i]; } | ||
| p6eval | rakudo 2808a5: ( no output ) | ||
| jnthn | huf: Anyway, the answer is "yes there should be a way, but I'm not sure the way the spec currently suggests is how it'll end up looking". | ||
| huf | i'll wait a bit before trying to understand this bit. there's other stuff | 16:08 | |
| colomon | > my @fibo := 1, 1, *+* ... *; for 3,5,3 -> $i { say @fibo[$i]; } | ||
| ===SORRY!=== | |||
| .[3] out of range for type Int() | |||
| jnthn | :-) | ||
| Tene | rakudo: my @fibo := 1, 1, *+* ... 500; for 3,5,3 -> $i { say @fibo[$i]; } | ||
| p6eval | rakudo 2808a5: ( no output ) | ||
| mscha | colomon: dunno, don't know what the "take $a" issue is. Your range version is of course simpler and more elegant, but I was just trying out gather/take. | ||
| Tene | rakudo: my @fibo := 1, 1, *+* ... 50; for 3,5,3 -> $i { say @fibo[$i]; } | ||
| p6eval | rakudo 2808a5: ( no output ) | ||
| pmichaud | rakudo: say (1, 1, *+* ... *).[3]; | 16:09 | |
| Tene | rakudo: my @fibo := 1, 1, *+* ... 50; say @fibo.perl; | ||
| p6eval | rakudo 2808a5: OUTPUT«3» | ||
| rakudo 2808a5: OUTPUT«1» | |||
| Tene | rakudo: my @fibo := 1, 1, *+* ... 50; say @fibo[0..5].perl; | ||
| p6eval | rakudo 2808a5: OUTPUT«(1, undef, undef, undef, undef, undef)» | ||
| colomon | mscha: I think what's happening is that you're not taking the values like you expect, you're actually taking the variables themselves | ||
| jnthn | Tene: Precednece maybe. | ||
| pmichaud | actually, it's item binding | ||
| not list binding | |||
| @fibo is being bound to 1 | |||
| Tene | ahh | ||
| jnthn | Right. | ||
| colomon | works if it's my @fibo := (1, 1, *+* ... *); | 16:10 | |
| mscha | rakudo: my @fibo := gather { my $a=0; take 0+$a; my $b=1; take 0+$b; loop { ($a,$b) = ($b,$a+$b); take 0+$b }}; for 3,5,3 -> $i { say @fibo[$i]; } | ||
| Tene | rakudo: my @fibo := (1, 1, *+* ... 50); say @fibo[0..5].perl; | ||
| p6eval | rakudo 2808a5: OUTPUT«252» | ||
| rakudo 2808a5: OUTPUT«(1, 1, 2, 3, 5, 8)» | |||
| pmichaud | (I'm still of the opinion that item assignment causes more confusion than it helps) | ||
| mscha | That's better. | ||
| colomon | mscha: there you go. | ||
| mscha: what you had before was basically a list that went ($a, $b, $b, $b, $b ...) | |||
| so as you changed those values, the results changed. | 16:11 | ||
| mscha | yup, got it. | ||
| thx. | |||
| Tene | That's a bug, yes? | ||
| colomon | Tene: we've debated a good bit on that. | ||
| pmichaud | yes. | ||
| Tene | I thought I remembered seeing that fixed? | 16:12 | |
| did that not happen, or am I misremembering? | |||
| pmichaud | take should de-containerize the values it returns | ||
| (so should return, unless "is rw" is set) | |||
| fixing that in rakudo at the moment will break a few places where 'return' is being abused to get a container. | 16:13 | ||
| [Coke] sort of apologizes for the huge RT churn on the mailing list. | |||
| (but not really) | |||
| colomon | "is rw" is set where? | ||
| pmichaud | colomon: on a sub | ||
| my sub xyz() is rw { ... } | |||
| NYI, of couse. | |||
| *course | 16:14 | ||
| colomon | pmichaud: how does that relate to the gather / take? | ||
| oh, never mind, I see | |||
| pmichaud | in the case of gather / take, I think take always decontainerizes | ||
| and if you really want to give access to the container, you take a capture or something like that | |||
| colomon | and in the case of "return", only if sub is rw | ||
| pmichaud | colomon: exactly. | 16:15 | |
| colomon | I read your original line there with "return" as a verb, not a p6 statement. | ||
| pmichaud | ah, yes. I forgot my C<...> :) | ||
| colomon | :) | 16:16 | |
| cxreg | why is everyone always talking about the new york islanders in here | 16:20 | |
| Tene | eh? | 16:21 | |
| oh | |||
| NYI is Not yet Implemented | |||
| pmichaud | (the islanders aren't implemented yet?) | ||
| Tene | nope | ||
| pmichaud | hmmmmm | 16:22 | |
| moritz_ | the islanders aren't new yet | ||
| jnthn | So they're still on the mainland? :-) | ||
| moritz_ starts to read Dave Whipp's latest mail on p6l, and then stops reading again | |||
| jnthn | lol | 16:23 | |
| PerlJam | moritz_: heh, I was just doing that too | ||
| moritz_ | does he *really* think that having 1..1e10 an unordered collection is a good idea? | ||
| pmichaud | Tene: Configure.pl message now reads | 16:24 | |
| "You can now use 'make' to build Rakudo Perl. | |||
| After that, you can use 'make rakudo-test' to run some local tests, | |||
| or 'make install' to create a 'perl6' executable in the local directory | |||
| and in /home/pmichaud/star/rakudo-star-beta4/install/bin/perl6 . | |||
| " | |||
| moritz_ | I mean... come on. Just because it's p6l doesn't mean you have to go all bananas | ||
| jnthn | moritz_: The subject line of your reply should be "Suggested sanity for p6l posters" ;-) | 16:25 | |
| pmichaud | "Yes, we have no bananas." | ||
| I've obviously missed this thread. | |||
| jnthn | pmichaud: Lucky you! | ||
| moritz_ | jnthn: I'm sorely tempted. But I fear I'd make myself a few enimies. Or maybe a lot | ||
| pmichaud | I'm so glad that implementation of Perl 6 can be so far removed from p6l. :-) | ||
| moritz_ should propose a second mailing list, perl6-lunatics | 16:26 | ||
| jnthn | pmichaud: Is there anything that could use my attention for star? | ||
| pmichaud: I may look later on tonight at an MSI. | |||
| pmichaud | MSI? | ||
| oh, automatic installer? neat. | |||
| moritz_ | windows installer thingy | ||
| jnthn | Gah, these *nix users know nothing :P | ||
| pmichaud | if you do a windows installer binary, perhaps see if you can fold Padre into the mix. | 16:27 | |
| moritz_ | they have .deb. Erm, .rpm.... | ||
| jnthn | pmichaud: Yes, the "standard" installer format for Windows these days. | ||
|
16:27
justatheory joined
|
|||
| [particle] | .oO(make scene investigator?) ;) |
16:27 | |
| jnthn | Where "standard" is like, "often used" | ||
| pmichaud | I hardly ever use it. :-P | ||
| jnthn | pmichaud: Folding Padre in feels like a bit of a challenge. And perhaps even the wrong way around. | ||
| [particle] | it is the wrong way around | 16:28 | |
| jnthn | pmichaud: Given I suspect the Padre installer is going to be more complex than the Rakudo one | ||
| [particle] | padre already includes rakudo, dunnit? | ||
| jnthn | ...even if I *am* planning to binary patch the exe file after installing it. | ||
| But I didn't tell you that bit. | |||
| :-) | |||
| The joy of compiled in paths... :/ | |||
|
16:30
zulon joined
|
|||
| jnthn | [particle]: Not sure | 16:30 | |
| Not everyone who wants Rakudo will want an IDE anyways | |||
| [particle] | no, it has a plugin for parrot, and maybe for rakudo | ||
| jnthn | No harm in having both options. | ||
| [particle] | with padre, it would be a different distribution, and not R*, imo | ||
| [Coke] | even if we decide to include it, I would recommend against trying to add it at *-2. | 16:37 | |
| pmichaud | wfm | ||
| [Coke] | Rant: It should be *-0, not *-1 for the last element! W(*#&@ | ||
| Is it too late to fix that? =-) | |||
| pmichaud | yes | 16:38 | |
| [Coke] | I don't mean for tomorrow, just in general. | ||
| PerlJam | [Coke]: why? * is always just beyond your reach, so *-1 should clearly be the last element. | ||
| pmichaud | ...what PerlJam said. | ||
| * corresponds to the number of elements, not the index of the last one. | |||
| [Coke] | lame, but at least explainable. | 16:39 | |
|
16:39
cdarroch joined
|
|||
| PerlJam | [Coke]: take up any lameness with TimToady :) | 16:39 | |
| pmichaud | I also suspect that *-1 preserves various modulo-arithmetic type properties that *-0 would cause to be off-by-one. | ||
| [Coke] | (I actually prefer tcl's approach here, but am SURE I'm in the minority on that one. =-) | ||
| PerlJam | [Coke]: how does tcl do it? | 16:40 | |
| [Coke] | www.tcl.tk/man/tcl8.6/TclCmd/string.htm#M9 | ||
| (same for list access as indexed string access). They use the marker "end" there, which is probably how I'm reading the * in p6. | 16:41 | ||
| NBD. All the perl5 people will want it the way it is. =-) | |||
| PerlJam | rakudo: my @a = 'a'..'z'; say @a[@a.end]; | 16:42 | |
| p6eval | rakudo 2808a5: OUTPUT«z» | ||
| PerlJam | there you go! :) | ||
| moritz_ ponders a new p6d mailing list, where d stands for 'decision' as much as 'design' | |||
| [Coke] | moritz_: or you could try not to let p6l bother you. =-) | ||
|
16:42
davidfetter joined
|
|||
| davidfetter | hello | 16:42 | |
| tadzik | moritz_: thanks for applying :) | ||
|
16:43
pyrimidine left,
pyrimidine joined
|
|||
| davidfetter | is there an equivalent in perl6 to sub foo{my $bar=shift...} ? | 16:43 | |
| moritz_ | [Coke]: occasionally there are things I want to discuss, and which are more complicated than a few lines in IRC can convey easily | ||
| PerlJam | I wonder if something like @some-long-array-name[*.end] could be made to work. | ||
| [Coke] | rakudo: my @a = 'a'..'z'; say @a[@a.end+3]; | ||
| p6eval | rakudo 2808a5: OUTPUT«Any()» | ||
| [Coke] | rakudo: my @a = 'a'..'z'; say @a[@a.end-3]; | ||
| p6eval | rakudo 2808a5: OUTPUT«w» | ||
| moritz_ | rakudo: sub foo { say @_.shift }; foo(1, 2, 3) | ||
| p6eval | rakudo 2808a5: OUTPUT«1» | ||
| [Coke] | moritz_: right, but language seems to be the place for that to happen, even if half the threads are crazy. | 16:44 | |
| moritz_ | rakudo: sub foo(*@a) { say @a.perl }; foo(1, 2, 3) | ||
| p6eval | rakudo 2808a5: OUTPUT«[1, 2, 3]» | ||
| [Coke] | (it's better than the RFC days!) | ||
| davidfetter | anybody? | ||
| moritz_ | davidfetter: yes. Just look at my two examples above | ||
|
16:44
_macdaddy joined
|
|||
| davidfetter | ah. thanks :) | 16:44 | |
| moritz_ | [Coke]: it goes so far that I don't want to send proposals to p6l, because I don't want to deal with lunatic replies | ||
| PerlJam | moritz_: :-( | 16:45 | |
| moritz_ | [Coke]: for example I want to design an exception system (maybe type hierarchy, maybe not), and now I'm wondering how to propose it | ||
| maybe nopastes with links from here in the channel | |||
| dukeleto | moritz_: i hear you. it seems that people like to hear themselves on that list, but don't consider actual implementation | 16:46 | |
| PerlJam | moritz_: I guess start here on IRC and then move to private email once you've got the right group worked out. | ||
| [Coke] | moritz_: if you can't ignore the lunatics, throw it in wiki. | ||
| dukeleto | davidfetter: you have to use shift on the object you want to shift now | ||
| moritz_ | dukeleto: it's not that they want to hear themselves - it's more like they haven't realized that Perl 6 is quite mature in many areas | ||
| right, there are no implicit defaults anymore | 16:47 | ||
| davidfetter | what have i done wrong? plparrot.privatepaste.com/2b56255434 | ||
| mscha | davidfetter: even better equivalent: sub foo($bar) { ... } | ||
| [Coke] | or, let me rephrase this: why do you think there will be any less crazy on p6d? | ||
| patch | moritz_: howdy | ||
| moritz_ | davidfetter: what kind of thing is this wrapped into? | ||
| patch | moritz_: has any work commenced on a json dumper? | ||
| davidfetter | moritz_, it's pl/perl6. cf. #plparrot | 16:48 | |
| [Coke] | moritz_, patch: basic dumper is available from parrot, fwiw. | ||
| dukeleto | davidfetter: oh boy, what have you done now? i think this question is better suited for #plparrot | ||
| davidfetter | yes | ||
| PerlJam | moritz_: I thought the lunacy on p6l was just because everybody loves a good bikeshed. | ||
| jnthn | patch: See github.com/moritz/json/ | ||
| moritz_ | [Coke]: I hope that with the right intro, FAQ and mailing list rules, and not advertising, we can have the right people in for a year or two, before the rest of the crowd arrives | ||
| patch: JSON::Tiny can dumb JSON - is there anything else you want? | 16:49 | ||
| PerlJam | moritz_: or just moderate the list yourself :) | ||
|
16:49
ashleydev joined
|
|||
| jnthn | moritz_: dump? :-) | 16:49 | |
| moritz_ | jnthn: it's a dumb dumper :-) | ||
| jnthn | ;-) | ||
| patch | moritz_: thanks, i didn't realize that | 16:50 | |
| moritz_ | jnthn: and I'm from frankonia, where b and p are essentially the same letter :-) | ||
| jnthn | .oO( Connection reset by beer ) |
16:51 | |
| moritz_ | davidfetter: point is, the code you showed is not a sub, but just code | ||
| patch | moritz_: i'm about to start work on jsync, that's why i ask | ||
| PerlJam | from #padre .... <@azawawi> Sewi: now back to blizkost under win32 :) | ||
| jnthn | :) | ||
| davidfetter | moritz_, looks like this is pl/parrot-specific | ||
| moritz_ | davidfetter: and you can only use @_ in subs that don't declare a signtaure | ||
| davidfetter: so if it's wrapped into sub f() { ... }, the () provide an empty signature -> boom | 16:52 | ||
| [Coke] | anyone working on de-podifying README? | 16:55 | |
| moritz_ | [Coke]: iirc pmichaud rejected it | 16:56 | |
| [Coke] | no, that's not what he said. =-) | ||
| I said a bit more about it as well: I think we should just eliminate | |||
| the pod from the README file altogether, and leave it as plain text." | |||
| er, missing initial ". | |||
| moritz_ | where it == the approach that I suggested, and frettled++ submitted a patch for | ||
| ingy | morning | 16:57 | |
| davidfetter | yes, it is | ||
| [particle] | (plain text)++ # i thought that's what was agreed upon | ||
| [Coke] | right. pmichaud just recommended on list just removing the POD markers from README and going with a straight text file. | ||
| [Coke] does so. | |||
|
16:59
davidfetter left
|
|||
| [Coke] is just going to a straight perldoc -otext for first pass, methinks. | 17:01 | ||
| moritz_ | [Coke]: I think the pod2text output is a reasonable first approximation | ||
| moritz_ too slow | |||
| [Coke] wonders if that looks the same. | 17:03 | ||
| dukeleto | rakudo: sub f(@a) { say ~@_ } foo(1...3) | ||
| p6eval | rakudo 3fbd62: OUTPUT«===SORRY!===Placeholder variable cannot override existing signature at line 22, near "foo(1...3)"» | 17:04 | |
| dukeleto facepalms | |||
| rakudo: sub f(@a) { say ~@_ } f(1...3) | |||
| p6eval | rakudo 3fbd62: OUTPUT«===SORRY!===Placeholder variable cannot override existing signature at line 22, near "f(1...3)"» | ||
| PerlJam | [Coke]: it does here. | ||
| dukeleto | interesting | ||
| PerlJam | [Coke]: complete with funky character after "Perl" in many (all?) places | ||
| [particle] | perl 6 assumes utf-8 | 17:05 | |
| so non-breaking spaces in readme's are legal | |||
| dukeleto | moritz_: so if any function signature is given, @_ is not valid to use within a sub ? | ||
| moritz_ | dukeleto: as I said, you can only use @_ if you don't have a signature yet (or use @_ in the signature) | ||
| right | |||
| dukeleto | moritz_: ok, just verifying, thanks | ||
| moritz_ too slow, again | |||
| PerlJam | [particle]: ah, a non breaking space. that makes sense | ||
| [particle] | it may be worth mentioning its presence in the readme, though. it will be asked. | 17:06 | |
| [Coke] | [particle]: I am removing the non-breaking spaces, especially since they were not used uniformly. Someone else can add them in if they wish. | 17:07 | |
| pmichaud | [Coke]: +1 | ||
| [particle] | fair enuff | ||
| dalek | kudo: fe29cde | Coke++ | README: README should be in text, not POD. |
17:09 | |
| [Coke] | probably time to split some of that out, too. | ||
| jnthn | moritz_: oh heh, I was just writing a reply about "hyper" and you beat me. :-) | 17:10 | |
| moritz_ | all() was clever thinking, but it's allowed to short-circuit as soon as one result is False | ||
| patch | [Coke]: how would I access the parrot json dumper from p6? Q:json { ... } ? | 17:11 | |
| jnthn | moritz_: It's not clever really because -> $x will call the block once with the junction. | ||
| moritz_ | jnthn: I know. Modulo that, of course | ||
| jnthn | :-) | ||
| moritz_ | but I didn't bother pointing that out on the list, since it's a lost cause anyway | 17:12 | |
| jnthn | moritz_: Heh, my post was like "Normal iteration with for is *ordered*. Always. End of story." :-) | 17:13 | |
| moritz_ | jnthn: pity you didn't send it | ||
| jnthn | Well, yours said exactly what I was going to with hyper :-) | ||
| pmichaud | ...should IO::Stat be part of the core language? | 17:14 | |
| [Coke] | patch: an excellent question that I don't know the answer to. =-) | ||
|
17:15
masak joined
|
|||
| pmichaud | and does it make sense at all for it to be IO::File::Stat ? | 17:15 | |
| masak | oh hai, #Perl6! | ||
| phenny | masak: 27 Jul 23:18Z <Kodi> tell masak gist.github.com/493037 A patch to implement Instants and Durations; please review at your convenience. | ||
| masak: 07:50Z <au|irc> tell masak s!www.perl.com/lpt/a/482!http://www.p...6rfc.html! in the anniversary post following the perl.com relaunch :) (@BlueT++ on plurk noticed this) | |||
| ingy | rakudo: grammar G { rule TOP { <x> }; rule x { 'xxx' } }; class A { method x($/) { say ~$/ } }; G.parse('xxxx', :actions(A)) | ||
| p6eval | rakudo 3fbd62: ( no output ) | ||
| pmichaud | masak: o/ | ||
| jnthn | lolitsmasak! | ||
| moritz_ | pmichaud: I'm not quite sure, but I think it's a corner worth exploring | ||
| [Coke] wonders how big phenny's queue is. | |||
| PerlJam | greetings masak | ||
| ingy | rakudo: grammar G { rule TOP { <x> }; rule x { 'xxx' } }; class A { method x($/) { say ~$/ } }; G.parse('xxx', :actions(A)) | ||
| p6eval | rakudo 3fbd62: OUTPUT«xxx» | ||
| jnthn | [Coke]: Next time you're away for a while, I'll research that ;-) | ||
| moritz_ | pmichaud: *some* interface to stat should be in core, IMHO - nothing wrong with makeing it a proper interface | 17:16 | |
| masak | au|irc: thanks. will change. | ||
| ingy | rakudo: grammar G { rule TOP { <x> }; rule x { 'xxx' } }; class A { method x($/) { say ~$/ } }; G.parse('xxx', :actions(A), :rule('x')) | ||
| moritz_ | as opposed to p5's stat(), which is a pure unixism | ||
| p6eval | rakudo 3fbd62: OUTPUT«xxx» | ||
| masak | Kodi: kudos. remind me if I forget. :) | ||
| pmichaud | moritz_: I'm fine with making it an interface, yes -- I'm just wondering where it fits. | ||
| ingy | rakudo: grammar G { rule x { 'xxx' } }; class A { method x($/) { say ~$/ } }; G.parse('xxx', :actions(A), :rule('x')) | ||
| pmichaud | IO::Stat itself feels... wrongish | ||
| p6eval | rakudo 3fbd62: OUTPUT«xxx» | ||
| moritz_ | pmichaud: why? | ||
| pmichaud | because the S32 specs tend to treat IO as a role | 17:17 | |
| ingy | rakudo: grammar G { rule x { 'xxx' } }; class A { method x($/) { say ~$/ } }; my $a = A.new; G.parse('xxx', :actions($a), :rule('x')) | ||
| pmichaud | and IO::File is what we often ought to be using/returning for file I/O | ||
| p6eval | rakudo 3fbd62: OUTPUT«xxx» | ||
| moritz_ | pmichaud: btw if you have concern including it in R*, feel free to revert, and we can discuss it afterwards | ||
| pmichaud | moritz_: I'm fine with it for R*, it's more of a larger question | ||
| moritz_ | pmichaud: the larger question is that we have no coherent design for IO, so we just do what we see fit. Solution is to come up with a coherent design, of course | 17:18 | |
| moritz_ looks at ingy | |||
| s/question/situation/ | |||
| ingy | :) | 17:19 | |
| I can wor on that now... | |||
| k | |||
|
17:19
hercynium joined
|
|||
| pmichaud | moritz_: agreed; fitting it into a better design spec is what I was referring to. (Sorry, I was horribly unclear there.) | 17:20 | |
| moritz_ | patch: sorry, was involved in too many discussions half an hour ago... if you're intested in adding JSYNC stuff on top of JSON::Tiny, feel free | ||
| PerlJam waits for IO::All to materialize in the Perl 6 universe | |||
| pmichaud | I'm going to grab lunch, then I'll draft the release output. | ||
| moritz_ | ++pmichaud | ||
| jnthn | pmichaud: ...announcement? | ||
| pmichaud | announcement | ||
| (sigh) | |||
| jnthn | You need lunch. :-) | ||
| masak | pmichaud: I'm getting the same intermittent segfault from applying my enums commit that caused moritz_ to revert it. the cause is likely a Parrot thing. I'm having some trouble isolating it; seems if I try to minimize too much, it disappears. | ||
| ingy | patch++ | ||
| pmichaud | yeah, and possibly some cold medicine. I picked up something icky while at OSCON, and it's been slowing me down a bit this week :-| | ||
| jnthn | Ugh :-( | 17:21 | |
| masak: Having tried to debug said segfault for a few hours - it's non-trival to find. | |||
| pmichaud | (fwiw, moritz reverted at my request :-) | ||
| [Coke] | masak: oh, sure blame parrot. :P | ||
| masak | jnthn: oh, you did? | 17:22 | |
| jnthn | [Coke]: It may or may not be. | ||
| PerlJam | T-2.5 hours (ish) until Rakudo code-freeze for R* release, yes? | ||
| masak | hugme: hug jnthn | ||
| hugme hugs jnthn | |||
| pmichaud | PerlJam: yes. | ||
| moritz_ | pmichaud: which request? i don't quite follow | ||
| jnthn | masak: Yeah but didn't get to the bottom of it. :-( | ||
| [Coke] | hugme: hug parrot | ||
| hugme hugs parrot | |||
| pmichaud | moritz_: I think I requested that masak++'s enum patch be reverted | ||
| and you did the actual reverting :) | |||
| masak | [Coke]: Parrot sits right among the likely suspects in this case. :) | ||
| moritz_ | pmichaud: oh, I didn't notice; I just bisected to find the offending patch | ||
| masak | pmichaud: you both did the Right Thing, since it seems that the commit exposes the problem. | 17:23 | |
| pmichaud | at any rate, the process worked correctly. :-) | ||
| jnthn | masak: I was quite keen that we'd not have to revert the patch, but it was turning into an epic time sink when I needed to fix the role outers bug too. | ||
| pmichaud | PerlJam: yes, 157 minutes to "freeze" | ||
| jnthn | masak: We'll return to it after R*. | ||
| pmichaud | the freeze isn't really a freeze -- commits are still possible -- it's just that I'll pick a git commit id around there to use for R* | ||
| so anything that happens after now+156 minutes isn't likely to make it into R* | 17:24 | ||
|
17:25
nwc10 joined
|
|||
| nwc10 | pmichaud: the beta 3 tarball works for me on FreeBSD | 17:25 | |
| moritz_ | nwc10++ # testing | 17:26 | |
| nwc10 | I was a bit surprised that there wasn't a test target at the top level | ||
| masak | yay -- twitter.com/freekey/status/19752653473 | ||
| nwc10 | particularly as I'd seen mention of one, but (of course) that was parrot's | ||
| pmichaud | nwc10: I'm not exactly sure what a test target at the top level should do (more | 17:27 | |
| ) | |||
| moritz_ out for some table tennis training - won't return before the freeze | |||
| pmichaud | I've been thinking that "make test" could return a list of possible test targets to try. | ||
| nwc10 | pmichaud: that was what I was going to suggest | 17:28 | |
| as I realised that there are a variety of test targets | |||
|
17:28
macroron joined
|
|||
| pmichaud | I'll add that after lunch | 17:28 | |
| which I'm going to now | |||
| bbiaw | |||
| nwc10 | OK | ||
| pmichaud: Also, if you want 5% more awesomeness (Well 5% smaller gzip files) for the distribution, try en.wikipedia.org/wiki/AdvanceCOMP | 17:29 | ||
| you might not consider that worth it. | |||
|
17:29
am0c joined
17:30
nwc10 left
|
|||
| masak | jnthn: ok, I'll give up on it for now. | 17:32 | |
|
17:32
Guest84032 joined
|
|||
| masak | jnthn: maybe it's still worth writing up a poker example for the book? hoping it'll be fixed by the time the book reaches actual readers. hm, or maybe not. :/ | 17:32 | |
| I now tried applying all four of my patches as one single patch. the segfault persists. | 17:33 | ||
| jnthn | masak: Well, knowing the minimal change that produces the segfault is probably most useful | 17:34 | |
|
17:36
tylercurtis joined
|
|||
| masak | jnthn: the most minimal I've been able to get so far is all of t/spec/S10-packages/basic.rakudo | 17:36 | |
| put otherwise, the actual conditions under which things fail have so far eluded me. | 17:37 | ||
| and "time sink" doesn't sound too promising. :) | |||
| jnthn | masak: Well, more just a matter of priorities. :-) | 17:38 | |
| masak: Shipping with the "can't say in a role method" bug woulda been really really bad. | |||
| masak | that one's fixed? o.O | ||
| jnthn | Finally. | ||
| masak | \\\\\\ooo/// | ||
| jnthn | Well | 17:39 | |
| Worked around. | |||
| masak | still. | ||
| jnthn | But the workaround gives some good hints towards a long term fix. | ||
| masak | jnthn++ | ||
| jnthn | rakudo: role R { method m { say 42 } }; class C does R { }; C.new.m | ||
| p6eval | rakudo 3fbd62: OUTPUT«42» | ||
| patch | moritz_: thanks! | ||
| masak | jnthn⨁⨁ :) | ||
|
17:41
ash__ joined
|
|||
| ash__ | ping moritz_ ? | 17:43 | |
| tadzik | ash__: gone for a while | ||
| ash__ | ah, thats cool | ||
| PerlJam finds that he really wishes colomon's .. optimization was in R* | 17:44 | ||
| colomon | PerlJam: I'm trying to work up the nerve to build a huge Int .. Int test file to gain confidence the optimization is actually reliable. | 17:45 | |
| ash__ | does anyone here know if the eval bot is in a repo publicly viewable? or is it just a kinda one off solution | ||
| tadzik | pmichaud: when will be the last module pull for R*? | ||
| sorear | good * #perl6 | ||
| tadzik | hello sorear | ||
| sorear | ash__: both. it lives in misc/evalbot | ||
| colomon | sorear: \\o | ||
| ash__ | ah, cool | ||
| sorear: in pugs, i assume | |||
| ? | 17:46 | ||
| PerlJam | tadzik: probably around 2000utc | ||
| [Coke] | (segfault) having spent years on and off trying to golf segfaults for tcl-on-parrot, I feel your pain. =-) | ||
| sorear | but I've never seen an ircbot that doesn't need massive site-specific customization | ||
| so talk to moritz | |||
| tadzik | PerlJam: today or tomorrow? | ||
| PerlJam | tadzik: today | ||
| ash__ | sorear: i would if he was here, :P | ||
| tadzik | oh crap | ||
| [Coke] | tadzik: no worries. you can get one in for next month. | ||
| tadzik | [Coke]: well, I'd rather have the brand new File::Find in Star | ||
| [Coke] | yes. Star will have another release in one month. | 17:47 | |
| (but I know what you're getting at.) | |||
| tadzik | as now there'll be 'old' F::F in Star, and another one completely different and incompatibile next month | ||
| what time in utc is now? :) | |||
| PerlJam | tadzik: you can always suggest that the old FF not be included in R* | ||
| tadzik: 1747 by my clock | 17:48 | ||
| tadzik | PerlJam: yeah, I'm considering this | ||
| ah, so plenty of time | |||
| I'm always confused, timezones in Poland change twice a year, I never know in which we are currently | |||
| PerlJam: I'll probably make it on time then | |||
| [Coke] | even more lovely with all the countries slightly out of sync. | 17:49 | |
| PerlJam | tadzik: 2000utc is when pmichaud said he'd "feature freeze" rakudo for R*. He hasn't actually said anything wrt the included modules. | ||
| tadzik | PerlJam: yeah, hence my another question | 17:50 | |
| [Coke] | phenny tell colomon - rt.perl.org/rt3/Ticket/Display.html?id=69382 is very out of date; can you update the ticket for a modern rakudo? | 17:51 | |
| colomon | [Coke]: I'll take a look at it in a few minutes, but while the exact error has probably changed, I'm pretty sure it still doesn't work correctly. | 17:52 | |
| sorear | ingy: Would you take a look at niecza's Test.pm6 and tell me if I'm on the right track? | 17:53 | |
| [Coke] | colomon: the file you reference doesn't even exist anymore. | 17:55 | |
| that was more where I was going. =-) | |||
| rakudo: say $*OUT.&say.WHAT; | 17:56 | ||
| what's up with the bool there? | |||
| p6eval | rakudo 3fbd62: OUTPUT«IO()<0x720f0f0>Bool()» | ||
| sorear | $*OUT.&say doesn't do what you think it does | ||
| [Coke] | rakudo: say $*OUT.&printf.WHAT; | ||
| p6eval | rakudo 3fbd62: OUTPUT«IO()<0x720be20>Bool()» | ||
| jnthn | rakudo: say $*OUT.&wtf-is-this-syntax.WHAT; | ||
| p6eval | rakudo 3fbd62: OUTPUT«Could not find sub &wtf-is-this-syntax in main program body at line 22:/tmp/_zGRGzCBox» | ||
| jnthn | Ah, OK. | 17:57 | |
|
17:57
nimiezko joined
|
|||
| sorear | say $*OUT.&say.WHAT === say (say($*OUT)).WHAT | 17:57 | |
| [Coke] | jnthn: trying to get at the methods. (RT #69412) | ||
| jnthn | [Coke]: That isn't what that syntax does. | ||
| sorear: Right. | |||
| [Coke] | ok. what's the right syntax? | ||
| PerlJam | rakduo: $*OUT.^methods.join(" ").say | 17:58 | |
| jnthn | [Coke]: For what, introspecting methods? | ||
| sorear | rakudo: say $*OUT.^can("say").WHAT | ||
| p6eval | rakudo 3fbd62: OUTPUT«Method 'WHAT' not found for invocant of class 'P6Invocation' in main program body at line 22:/tmp/J65cYmsc3n» | ||
| sorear | ...yow | ||
| jnthn | Oh, the joy of .^can. | ||
| PerlJam | rakudo: $*OUT.^methods.join(" ").say | ||
| p6eval | rakudo 3fbd62: OUTPUT«open printf s t close slurp eof z autoflush lines stat read get getc d e f ins write l path print say subst Numeric chomp IO index chr acotanh trim-trailing from-radians capitalize pred atanh cosec exp lc p5chop chars sinh to-radians acotan lcfirst roots lines sec trim asec | ||
| ..trim-le… | |||
| sorear | I think "Method 'WHAT' not found" means I just compelely broke Rakudo, yes? | ||
| [Coke] | PerlJam: that gets me the methods, or just the method names? | ||
| PerlJam | [Coke]: the actual methods. | 17:59 | |
| sorear | rakudo: say $*OUT.HOW.^methods.Str | ||
| p6eval | rakudo 3fbd62: OUTPUT«Method 'methods' not found for invocant of class '' in main program body at line 22:/tmp/JuZHtDr00x» | ||
| [Coke] | rakudo: say $*OUT.^methods{printf}.WHAT | ||
| p6eval | rakudo 3fbd62: OUTPUT«No applicable candidates found to dispatch to for 'printf'. Available candidates are::(Any $format, *@args) in main program body at line 22:/tmp/oR00CtPK5y» | ||
| sorear | what, ClassHOW.HOW doesn't have methods? | ||
| jnthn | sorear: Sure it does, it just doesn't provide a way to introspect them. | ||
| [Coke] | whoops. | ||
| PerlJam | sorear: I think there's already a bug report for that too | ||
| jnthn | sorear: That'll change. | 18:00 | |
| sorear | jnthn: I meant methods, the method | ||
| [Coke] | rakudo: say $*OUT.^methods.grep('printf').WHAT | ||
| jnthn | sorear: Ah, mis-read, but same answer. | ||
| p6eval | rakudo 3fbd62: OUTPUT«List()» | ||
| jnthn | sorear: P6metaclass doesn't have a methods method. | ||
| [Coke] | rakudo: say $*OUT.^methods.grep('printf')[0].WHAT | ||
| jnthn | ClassHOW goes | ||
| p6eval | rakudo 3fbd62: OUTPUT«Multi()» | ||
| [Coke] | aha! | ||
| Close enough? =-) | |||
| guess I could use .first | |||
| jnthn | Eventually ClassHOW.HOW.WHAT is going to say KnowHOW or some such I expect. | ||
| [Coke] | rakudo: say $*OUT.^methods.first('printf').WHAT | 18:01 | |
| p6eval | rakudo 3fbd62: OUTPUT«Multi()» | ||
| [Coke] | rakudo: say $*OUT.^methods.first('say').WHAT | ||
| p6eval | rakudo 3fbd62: OUTPUT«Multi()» | ||
| sorear | niecza: say ClassHOW.HOW.WHAT # Is this not an option? | 18:04 | |
| p6eval | niecza 64fc764: OUTPUT«Failed to resolve lexical &say in mainline at CodeGen.pm line 554.» | ||
| sorear | stefan@stefans:~/niecza$ ./niecza_eval -e 'say ClassHOW.HOW.WHAT' | 18:05 | |
| ClassHOW() | |||
| jnthn | Well, it's probably implementation specific :-) | ||
| sorear | I wish I knew why moritz_ 's niecza build keeps breaking like that. | ||
| masak | Class? how? how? what? | 18:06 | |
| jnthn | WHY?! | ||
| masak | "Perl 6: the deeply existential language" | 18:07 | |
| jnthn | "Perl 6: how many interegationals can you handle?" | ||
| sorear | jnthn: ClassHOW.HOW.WHAT === ClassHOW isn't an implementation artifact; I have a fair amount of code dedicated to tying that specific know | ||
| knot | |||
| jnthn | sorear: Right, I just plan to tie the knot in something more primitive. | ||
| And use that to implement ClassHOW | 18:08 | ||
| sorear: At the end of the day, it's gotta be tied somewhere though. :-) | |||
| sorear: And nothing in the spec says we gotta do it the same way. | |||
| I'm not saying you've done it rong, just that I'm going to do it different. :-) | 18:09 | ||
|
18:15
jjore joined
18:16
high joined
18:17
high_ joined
18:18
pmurias joined
18:19
high joined
18:25
lue joined
|
|||
| lue | hai o/ | 18:26 | |
| [Coke] | moritz_: what's the deal on #76772 ? | ||
| 14:23 < [Coke]> Down to 250 new tickets in Rakudo. | |||
| 14:24 < [Coke]> 635 altogether, 618 that aren't assigned to moritz. ;) | |||
| 14:25 < [Coke]> moritz_: what's the deal on #76772 ? | |||
| 14:25 < [Coke]> need tests? | |||
| (missent to phasers. :P) | |||
| masak | lue: oh hai! | ||
| tadzik | when I'm for'ing through a list, is it possible to add some more elements to the traversed list? | 18:27 | |
| [Coke] | 118 of those open-untouched tickets were opened by masak. | ||
| er, new-and-untouched. | |||
| Tene | rakudo: my @a = 1..5; for @a -> $i { say $i; @a.push($i*2) if $i %% 2; }; | 18:28 | |
| p6eval | rakudo 3fbd62: OUTPUT«12345» | ||
| tadzik | yeah, that's it | ||
| cxreg | ingy: ping | ||
| tadzik | bug, or feature? | 18:29 | |
| PerlJam | tadzik: did you mean that you wanted to iterate over the new elements too? | ||
| masak | tadzik: feature. | ||
| tadzik | PerlJam: yep | ||
| PerlJam | definitely a feature | ||
| tadzik | ok | ||
| masak | tadzik: think of `for @a, @b`. that usually helps for me. | ||
| cxreg | ClassWHY | ||
| sorry, i missed the train on that joke | |||
| tadzik | masak: I don't see the point | 18:31 | |
| masak | tadzik: the thing after 'for' should only be evaluated once. | 18:32 | |
|
18:32
mmmpork joined
|
|||
| masak | tadzik: but if you can push things to @a and those new elements should be reflected in '@a, @b', then the thing after 'for' has to be evaluated many times. | 18:32 | |
| so there's a contradiction, so one of our assumptions are wrong. | 18:33 | ||
| turns out the time-consuming assumption is wrong :) | |||
| cxreg shows #plparrot how to use pointy blocks to enforce signatures on generated subs post-facto | |||
|
18:34
bgs100 joined
|
|||
| pmichaud | back together | 18:34 | |
| cxreg | did anyone hack prototyped closures into perl 5 with Devel::Declare? sounds Moose-ish | ||
| PerlJam | I'm pretty sure D::D allows for signatures on anonymous subs. | 18:35 | |
| okay ... only like 60% sure | 18:36 | ||
|
18:36
high left
|
|||
| pmichaud | (iterators and modifying the thing being iterated) .... iirc, perl6 says that if you modify something in the midst of iterating it, the results are unspecced. | 18:37 | |
| masak | point is, you're not iterating -it-. | ||
|
18:37
rindolf joined
|
|||
| pmichaud | you may be, though. Consider $filehandle.line() | 18:37 | |
| er, .lines() | |||
| masak | oh, sure. | ||
| different case. | 18:38 | ||
| and we don't implement open(:rw) yet :P | |||
| colomon | moritz_: what are the rules for adding long tests to the spectests? | ||
| colomon has a new 500-some test file of integer ranges to add... | 18:39 | ||
| masak | [backlog] changing proof_of_concept to pls is OK by me. | 18:40 | |
| I'd prefer it to be better tested, of course. | |||
| sorear | If you need it to be tested, you're doing it wrong. | ||
| Assuming you're both talking about the test file. | |||
| masak | no, the actual tests in t/ are satisfactory. | 18:41 | |
| but there is quite a lot of variety among the projects out there; how they prefer to be built, tested and installed. | |||
| I've basically only tried pls on one project so far. | |||
| pmichaud | masak: I ended up not doing very much with proto/pls (yet) | 18:43 | |
| I wasn't sure how to fit it in to the overall build sequence. | |||
| masak | pmichaud: I'll be here to assist for the rest of the CET evening. | ||
| pmichaud | well, I didn't plan to do much more with it either. :-| | 18:44 | |
| masak | ok. | ||
| maybe wise. it's not finished yet. | |||
| pmichaud | I mean, I'm not opposed to doing more with it, but I don't know how to fit it in yet. | ||
| Should I remove it from the R* package altogether, then? | |||
| masak | maybe. depends. | ||
| pmichaud | I'm wide open for suggestions and advice. :) | ||
| masak | tell me what you want it to be, and I'll say how easy it'll be to make it that before tomorrow. | 18:45 | |
| pmichaud | but right now I've a release announcement to craft :) | ||
| pyrimidine wishes the magic range thread on p6-lang would die a very rapid death | |||
| pmichaud | well, pls looks like it's highly dependent on the projects.list file being in the current dir, or something like that. | ||
| masak | pmichaud: yes. that's wont to change. | 18:46 | |
| pmichaud | yeah; that somewhat makes it hard to add in a 'package' sense. | ||
| masak | pmichaud: I suspect we'll end up putting that file on-line. perhaps the Pugs/Mu repo. | ||
| pmichaud | I'd say it could continue to live on github, fwiw. | ||
| masak | either way's fine by me. | ||
| I was thinking Pugs/Mu, because that naturally leads to many people having write access to it. | 18:47 | ||
| which one wants for that file, but not necessarily for the rest of pls. | |||
| pmichaud | sure, that works. | ||
| I tend to think of the 'perl6' account on github as being able to have a similar liberal commit policy | 18:48 | ||
| colomon | rakudo: say -17..-15 | ||
| p6eval | rakudo 3fbd62: OUTPUT«-17-16-15» | ||
| masak | rakudo: say -1..1 | ||
| pmichaud | and it certainly could separate the metadata into a separate repo with a very liberal commit policy | ||
| p6eval | rakudo 3fbd62: OUTPUT«-101» | ||
| masak | rakudo: say :8(-1..1) | 18:49 | |
| p6eval | rakudo 3fbd62: OUTPUT«DON'T PANIC! Invalid character (-)! Please try again :)  in main program body at line 1» | ||
| masak | rakudo: say :8(abs -1..1) | ||
| p6eval | rakudo 3fbd62: OUTPUT«1» | ||
|
18:49
mrsaturns joined
|
|||
| masak | rakudo: say abs -1..1 | 18:49 | |
| p6eval | rakudo 3fbd62: OUTPUT«1» | ||
| masak | hm. | ||
| rakudo: say abs (-1..1) | |||
| p6eval | rakudo 3fbd62: OUTPUT«3» | 18:50 | |
| masak | rakudo: say abs ~(-1..1) | ||
| mrsaturns | 3? | ||
| p6eval | rakudo 3fbd62: OUTPUT«1» | ||
|
18:50
hercynium joined
|
|||
| pyrimidine | list context? | 18:50 | |
| masak | rakudo: say ~(-1..1) | ||
| p6eval | rakudo 3fbd62: OUTPUT«-1 0 1» | ||
| masak | pyrimidine: aye. | ||
| ah. spaces. | |||
| rakudo: say (-1..1).join | |||
| p6eval | rakudo 3fbd62: OUTPUT«-101» | ||
| masak | rakudo: say :8( abs join -1..1 ) | ||
| p6eval | rakudo 3fbd62: OUTPUT«0» | 18:51 | |
| masak | rakudo: say :8( abs (-1..1).join ) # 65? | ||
| whee | :8? | ||
| p6eval | rakudo 3fbd62: OUTPUT«65» | ||
| masak | \\o/ | ||
| whee: "interpret as octal" | |||
| whee | aah | ||
| PerlJam | why wasn't :8( abs join -1..1 ) 65 ? | ||
| whee | I need that on my cheat sheet :D | 18:52 | |
| masak | PerlJam: because -1 got sent in as the join string. | ||
|
18:52
dalek joined
|
|||
| masak | PerlJam: @x.join is join '', @x, not join @x | 18:52 | |
| pmichaud | I would've expected the entire range to be sent in as the join string. | ||
| masak | that's possible too. | ||
| doesn't explain the 0, though. | 18:53 | ||
| pmichaud | say (-1..1).Str | ||
| rakudo: say (-1..1).Str | |||
| p6eval | rakudo fe29cd: OUTPUT«-1 0 1» | ||
| rindolf | rakudo: [~] 1..5 | ||
|
18:53
Ross joined
|
|||
| p6eval | rakudo fe29cd: ( no output ) | 18:53 | |
| pmichaud | rakudo: say join '-1 0 1' | ||
| rindolf | rakudo: [~] (1..5) | ||
| p6eval | rakudo fe29cd: OUTPUT«» | ||
| rakudo fe29cd: ( no output ) | |||
| pmichaud | rakudo: say '"', (join '-1 0 1'), '"'; | 18:54 | |
| p6eval | rakudo fe29cd: OUTPUT«""» | ||
| pmichaud | sure, since the result from join is an empty string, it evaluates to zero. | ||
| masak | ah. | ||
| pmichaud | and C<join> returns an empty string because there were no items to join. | ||
| PerlJam | I guess that makes sense. | ||
| masak | by the way, I think I submitted a ticket asking why +"" shouldn't be NaN. | 18:55 | |
| I think that's more informative than 0. | |||
|
18:55
chromatic joined
|
|||
| masak | chromatic! \\o/ | 18:55 | |
| pmichaud | could arguably be a Failure, too. | ||
| masak | pmichaud: except that I expect it to be something Numeric. | ||
| pmichaud | +"xyz" should be a failure of some sort, +"" seems to fall into that realm as well | ||
| masak | oh, indeed. | 18:56 | |
| pmichaud | lots of operations return non-numeric results. :-) | ||
| chromatic | Ruminations on tomorrow's release, intended for publishing on Perl.com: nopaste.snit.ch/22395 | ||
| phenny | chromatic: 01:17Z <[Coke]> tell chromatic - should rt.perl.org/rt3/Ticket/Display.html?id=64124 be moved to another queue? | ||
| masak | pmichaud: but not prefix:<+> :) | ||
| pmichaud | chromatic: reading | ||
| masak: yes, even prefix:<+> | |||
| masak looks | |||
| pmichaud: you're thinking of Perl 5, no? | |||
| pmichaud | masak: can &infix:</> return a non-numeric result? | 18:58 | |
| (I say 'yes') | |||
| if &infix:</> can return a non-numeric result, I don't see why &prefix:<+> cannot. | |||
| masak | yes. | ||
|
18:58
_macdaddy joined
|
|||
| masak | pmichaud: point. | 18:58 | |
| dukeleto | chromatic: what do you mean by the "homoiconicity of syntax"? i know what homoiconicity means, but I don't know what you mean. | 18:59 | |
| colomon | chromatic++ | ||
| chromatic | Lisp | ||
| pyrimidine | chromatic: very nice write-up | ||
| masak | chromatic: while I might agree in the comfort of #perl6 that "[Perl 6]'s a philosophy...", I shudder to think what people already inclined to think Perl 6 is a big ball of academic esoterics will make of that classification. | 19:00 | |
| dukeleto | chromatic++ # good stuff | ||
| chromatic | Which classification, masak? | ||
| masak | that it's a philosophy. | ||
| what makes it a philosophy rather than, say, a set of coherent design principles? | 19:01 | ||
| colomon | pmichaud: are you suggesting that &prefix:<+> should return something Numeric or a Failure? | ||
| chromatic | I see little difference, but I can use that phrasing instead of the word "philosophy" the first time and it reads just as well or better. | 19:02 | |
| masak | I'm saying this not because I disagree, but because I've seen people on Twitter read "Perl 6 is a language specification", and ridicule that. | ||
| pmichaud | colomon: I'm saying it's possible for &prefix:<+> to return a Failure, that's all. As it's possible for any operator to do so. | ||
| PerlJam | chromatic: I think your "twenty years" is a little conservative :) | ||
| chromatic++ | |||
| chromatic | Likewise, but that's what Larry's always said. | ||
| pmichaud | PerlJam: underpromise and overdeliver :-) | ||
| masak | I also think it's conservative. but it's the usual number :) | 19:03 | |
| chromatic++ # nice text | |||
| pmichaud | I tend to think in terms of fifty years or so | ||
| masak | chromatic: ss/the second reinvention/the first reinvention/ ? | ||
| PerlJam | pmichaud: but that's at least a 0.5 meter rise in sea level from now! :) | ||
| pyrimidine is glad to see perl.com active again | 19:04 | ||
| masak | pyrimidine: aye. | ||
| chromatic++ # for that, too! :) | |||
| colomon | chromatic: did you mean "(and, oh yes, are there opportunities for optimizations)" as a statement? Right now it parses like a question, but I feel like it really wants an exclamation point.... | ||
| pmichaud | I'm not sure about the final paragraph. | ||
| chromatic | I had a LOT of help for Perl.com. | ||
| pmichaud | chromatic: this is being posted on perl.com ? | 19:05 | |
| chromatic | Yes. | ||
| masak | chromatic: did you mean "They don't like twigils." ? | ||
| chromatic | That too. | ||
| masak | makes more sense. | ||
| frettled | Regarding splitting README — I can have a look-see about doing the common README + INSTALL thing. | 19:06 | |
| pmichaud | I almost want the tone to change slightly after "Ignore the naysayers." (more) | ||
| Part of me feels like it's slightly better if we bring P5 back into the discussion again at that point (more) | |||
| masak | +1 | ||
|
19:06
cono joined
|
|||
| pmichaud | "Ignore the naysayers. If Perl 5 continues to be your thing, that's great -- it will be around for a long time to come. " | 19:07 | |
| or something like that | |||
| PerlJam | the naysayers are more broadly distributed than that though | 19:08 | |
| pmichaud | not sure how to change it, but as a perl.com article it might be nice to bring it back around to the idea of a family of languages | ||
| Su-Shee | I emphasized that one can easily use p6 as a just more polished p5 and ignore the rest. | ||
| pmichaud | PerlJam: sure, the naysayers are more broadly distributed than just p5, but there's a point to be made that perl 5 isn't dead either. | ||
| kokajxo | rakudo: my @array = gather { take 1 ; take 2 ; say "hello" } ; say "hi" ; say @array[0]; | ||
| pmichaud | and releasing Rakudo Star should make Perl 5 more valuable, not less. | ||
| p6eval | rakudo fe29cd: OUTPUT«hellohi1» | ||
| lue | chromatic++ | ||
| kokajxo | isn't that a bug ? | 19:09 | |
| pmichaud | I'm not sure how to word it, and I'd be fine with the post as it sits now. | ||
| PerlJam | pmichaud: that's an interesting point ... how does r8 make p5 more valuable? | ||
| kokajxo | (I hope not) why is "hello" printed before hi ? | ||
| PerlJam | er, s/r8/r*/ | ||
| colomon | kokajxo: because you say @array = gather, which evaluates the gather and then stores it in @array | 19:10 | |
| Su-Shee | PerlJam: by letting float ideas back into perl 5 which easily can sneak into companies or projects which make the move to p6 more likely later on. | ||
| pmichaud | I'm just thinking that the bottom line "Help us continue to make Perl more powerful" might want to allude back to the idea that "Perl" means more than just P6 | ||
| kokajxo: not a bug | |||
| kokajxo: list assignment is eager | |||
| frettled | Perhaps it is easier to just remove "Ignore the naysayers."? | ||
| pmichaud | I like the "Ignore the naysayers" line, myself. | ||
| diakopter | we naysayers feel namecalled | ||
| PerlJam | frettled: no way. I like that part best | ||
| kokajxo | oh, so should I do colomon ? | ||
| Su-Shee | diakopter: :) | ||
| colomon | rakudo: my @array := gather { take 1 ; take 2 ; say "hello" } ; say "hi" ; say @array[0]; | 19:11 | |
| p6eval | rakudo fe29cd: OUTPUT«hi1» | ||
| pmichaud | rakudo: my $array = gather { take 1; take 2; say "hello"; }; say "hi"; say $array[0]; | ||
| sorear | How long until the pugs repo officially lives in git | ||
| p6eval | rakudo fe29cd: OUTPUT«hi1» | ||
| frettled | Yes, yes, but isn't "ignore the naysayers" an oxymoron? | ||
| sorear | svn log is driving me bananas | ||
| PerlJam | There's a similar "ignore the naysayers" here samcrawley.wordpress.com/2010/07/28...he-haters/ | ||
| kokajxo | ok, I was reading perlgeek.de/en/article/5-to-6#post_12 . Thanks a lot ! | ||
| frettled | sorear: that's a bug, everything should be peachy | ||
| pmichaud | however, note that one generally cannot rely on laziness sideeffects except in the context of "strictly lazy" operators. | ||
| lue | .oO(Should I post about R* at 00:00 UTC ? [~5 hours from now]) |
19:12 | |
| pmichaud | lue: I recommend waiting for the R* release to actually come out. | ||
| chromatic | We're proud of what we've accomplished, and we've reached a point where we want | ||
| to share it with the wider world. Now begins the work of polish and | |||
| optimization and packaging. Ignore the naysayers. Perl 5 and Perl 6 are the | |||
| work of communities of people willing to make amazing things happen. That task continues--help us make Perl in all its forms more powerful, more flexible, more useful, and more fun. | |||
| Better? | |||
| pmichaud | Much better | ||
| +2 | |||
| PerlJam | chromatic++ | 19:13 | |
| masak | aye. | ||
| kokajxo | pmichaud: I know, that was just a test :) | ||
| pmichaud | my current target is to release R* at 12h00 UTC | ||
| i.e., a little less than 19h from now. | |||
| but that's not a hard target. | |||
| i.e., it may move back if needed. | 19:14 | ||
| timbunce | pmichaud: got a draft announcement ? | ||
| [Coke] | chromatic++ | ||
| pmichaud | timbunce: writing it now, if I can tear myself away from #perl6 long enough to finish it. :) | ||
| which I will do now. | |||
| Su-Shee | I already delivered. As long as the release actually happens.. :) | ||
| PerlJam | Su-Shee: when/where are your article published? | ||
| s/article/articles/ | |||
| sorear makes a 1-line fix to STD.pm6 and wanders off for 20 minutes while the thing builds | 19:15 | ||
| dukeleto | sorear++ # pugs moving to git | ||
| tadzik | pmichaud: when will the last modules pull happen? | ||
| Su-Shee | PerlJam: tomorrow "at some point" in german tech news. | ||
| tylercurtis | chromatic++, although I share colomon's uncertainty about whether "(and, oh yes, are there opportunities for optimizations)" is intended as statement or question. | ||
| frettled | chromatic++ — very good | ||
| lue | pmichaud: me too. just thinking international for a second. | ||
| sorear | One of these days I think I'm going to write a svn emulator porcelain | 19:16 | |
| pmichaud | tadzik: I don't have an exact time for that. I wouldn't plan on there being any module pulls after 0300 UTC. | ||
| sorear | since 98% of the complaints against git seem to be about the user model | ||
| chromatic | Now with revisions: nopaste.snit.ch/22396 | ||
| frettled likes git, except that I failed setting up a target for pushing myself, haha. | 19:17 | ||
| pmurias | sorear: svn emulator as in bring the horrible svn interface to git? | ||
| chromatic | sorear, what's the other 2%? Fear, Uncertainty, and Drama about rebasing? | ||
| sorear | this emulator won't be quite compatible with native git (it'll use trunk/ tags/ branches/, for a start), but it would have all the packfiley 1,000 rev/s cloney goodness | ||
| pmurias: more like, bring the awesome git technology to people who have irrevocably stockholmed the svn interface | |||
|
19:18
mtk joined
|
|||
| pmurias | are there much of those? | 19:18 | |
| pmichaud | chromatic: "meet our needs" --> "meet needs" # perhaps | ||
| diakopter | still, "Ignore the naysayers." (without qualification immediately adjacent) smacks of cultic withdrawal and "we have the Truth; don't listen to anyone who questions our Words"-ness | ||
| PerlJam wonders when the proverbial twenty years actually starts | |||
| pmichaud | maybe break the optimizations item into two statements, or move the parenthetical outside of the question. | ||
| beyond that I'm bikeshedding more than I should | 19:19 | ||
| frettled | PerlJam: Thursday ;) | ||
| masak | I slightly dislike "Ignore the naysayers." because it's defensive perhaps without needing to be so. for people who weren't aware of any naysayers, it might create naysayers in their minds. put differently, if we're to ignore the naysayers, why point them out? | 19:20 | |
| pmurias | chromatic: what i don't like in git is keeping commits hidden on my computer before they end up pushed to the main repo | ||
| chromatic | "Ignore the naysayers. Try it for yourself." ? | ||
| pmurias | chromatic: but it's a complaint against the default setup (with git-svn) not against the tool as such | ||
| frettled | masak: that's why I thought it might be an oxymoron :) (See also "Microsoft Works", "Military Intelligence") | ||
| timbunce | chromatic: I think it's important to introduce the 'Perl is now a family of languages' concept and frame it well. It's a key message for the perl5 user community | ||
| lue | to me, "Ignore the naysayers" says "don't let the naysayers influence you before you even try it" | ||
| PerlJam | chromatic: my only comment is that the "If you've seen Perl 6 solely as a research project,..." sentence doesn't quite make its point clearly IMHO | 19:21 | |
| chromatic: I mean, I had to read it twice to understand where it was going (but maybe that's just me) | |||
| timbunce | chromatic: I was just thinking the same | 19:22 | |
| chromatic | I'm pondering that right now. | ||
| The "family of languages" concept has never sat well with me, but I see your point. | |||
| masak | chromatic: "Ignore the naysayers. Try it for yourself." is certainly better. still doesn't solve my above semi-kvetch, though. | ||
| & | 19:23 | ||
| Su-Shee | you all realize that no matter what you write and say, it really doesn't change any perception or opinion one already has about perl? :) why not confidently point out the cool of p6 and be done with it? | ||
| lue | .oO(Maybe someone has never heard of perl?) |
19:24 | |
| PerlJam | lue: that's why they're on perl.com? :) | ||
| Su-Shee | lue: plenty of people actually haven't anymore. so if they really land by accident at perl.com they try it "if it sounds good and interesting" | ||
| timbunce | chromatic: the "and not the final, never ever, no more, it's completely finished that's it, install it to run your space station, release" seems a little over-done. I think it would be better without the "never ever, no more" part. | ||
| chromatic: "never-needs-updated" -> "never-needs-updating" | 19:25 | ||
| chromatic | Su-Shee, I expect that Slashdot will link to this article. | ||
| timbunce | chromatic: "because twenty years from now we intend it to have regular releases" sounds like "it'll be twenty years before we have regular releases"! | 19:26 | |
| Su-Shee | chromatic: they will and so will probably ars technica for example. but I really don't think people change their minds about perl with a few sentences. you could point out the good and interesting things about both perls very nicely. | 19:27 | |
| PerlJam | I think if we remove "Ignore the naysayers." we should also remove "Ignore those complaints" and s/Perl 6/Perl/ in that paragraph | ||
| tadzik | how do I make my class have the same methods as Str? It has the Str method, but I can't easily call e.g. IO on it | 19:28 | |
| diakopter | Naysayers shouldn't necessarily be ignored [just because they are naysaying]; naysayers can be correct in their beliefs/claims. (but with qualification as to *which* naysayers you mean, as I mentioned above, that sentence could be helped) | ||
| PerlJam | i.e. "That's neither what Perl is nor how it works." keep the other Perl 6 | ||
| cosimo | "tl;dr" | ||
|
19:28
cognominal joined
|
|||
| Tene | tadzik: does your class have a Str attribute? | 19:28 | |
| tadzik | Tene: nope, just a Str method | 19:29 | |
| Tene | tadzik: if you want all the Str methods, you should have a Str attribute like: has Str $foo handles Str; | ||
| Su-Shee | diakopter: I wrote a naysayer-ish editorial. ;) | 19:30 | |
| diakopter | Su-Shee: oh; I hadn't seen it | ||
| Tene | tadzik: I can speculate that someday you could have 'handles Str' on your method, but otherwise just write methods that call your Str method. | ||
| tadzik | Tene: thanks, will do | ||
| Tene | or do the attribute option. | ||
| tadzik | Tene: or, how about is Cool? | 19:31 | |
| Tene | (I'm not sure if that works in current rakudo) | ||
| tadzik | looks like it works | ||
| Su-Shee | diakopter: as long as you can't read german, you can't. and today I'm too tired to make quick translation. | ||
| PerlJam | Su-Shee: google! | ||
| tadzik | 'is Cool' is cool :) | ||
| diakopter | Google Translate is my friend | ||
| Su-Shee | let's see what it makes of it. ;) | ||
| lue | .oO(I've come to prefer Yahoo Babelfish) |
19:32 | |
| PerlJam | yahoo owns babelfish now? I haven't used that in years. DEC probably still owned it the last time I used it. | 19:33 | |
| diakopter | Su-Shee: url? | 19:34 | |
| kokajxo | Su-Shee: I can read german, a bit. Could I see it please ? | ||
|
19:35
eternaleye joined
|
|||
| Su-Shee | wow, google translate is seriously bogus. | 19:35 | |
| PerlJam | Su-Shee: try babelfish then :) | 19:36 | |
| chromatic | nopaste.snit.ch/22398 (much beyond this and it's rearranging flowers) | ||
| Su-Shee | sushee.no-ip.org/translation.txt | 19:37 | |
| PerlJam | chromatic++ ship it! | 19:38 | |
| cosimo | Su-Shee: I agree with you. Focus on the cool/awesome things and ignore comparisons, complaints, and "naysayers" would be good | ||
| chromatic: personally I'd remove everything from "People will complain..." to "... or how it works" | 19:39 | ||
| just my 0.02$ | |||
| diakopter | Su-Shee: "turn my wine back into water" :) | ||
| chromatic | cosimo, my intent is a little pre-emptive framing. | 19:40 | |
| cosimo | sorry if I jumped in like that | ||
| tadzik | \\o/ # File::Find now returns a lazy list | ||
| Su-Shee | diakopter: forget everything even slightly looking like a metaphor. I also didn't pun on the middle east with "Gulf region" (orginal said "without too much perl golfing" essentially :) | ||
| diakopter | heh | ||
|
19:42
davidfetter joined
|
|||
| timbunce | chromatic++ looks good. | 19:42 | |
| jnthn | chromatic: I like it. | 19:43 | |
| sorear | agh. My change to STD.pm6 *didn't work* | ||
| sorear builds again | 19:44 | ||
| nimiezko | rakudo: DateTime.now.to-epoch | ||
| p6eval | rakudo fe29cd: OUTPUT«Method 'to-epoch' not found for invocant of class 'DateTime' in main program body at line 22:/tmp/mpL6dyZris» | ||
| Su-Shee | rakudo: DateTime.now.til-release | ||
| p6eval | rakudo fe29cd: OUTPUT«Method 'til-release' not found for invocant of class 'DateTime' in main program body at line 22:/tmp/s58mzf35uu» | ||
| nimiezko | rakudo: say DateTime.now | 19:45 | |
| p6eval | rakudo fe29cd: OUTPUT«2010-07-28T19:24:56Z» | ||
| tadzik | oh, it prints the UTC time? | ||
| useful | |||
| PerlJam | someone's clock is a little off | 19:46 | |
| nimiezko | rakudo: say $*PERL | 19:47 | |
| p6eval | rakudo fe29cd: OUTPUT«name rakudoversion 2010.07-45-gfe29cde» | ||
| tadzik | hmm, why the g before revision? | ||
| sorear | that's just what git describe does | 19:48 | |
|
19:48
20QABJY3Z joined,
77CAA0BJA joined
|
|||
| tadzik | mhm | 19:48 | |
| pmichaud | here's a draft of the first part of the release announcement: gist.github.com/496016 | 19:53 | |
| I'm still working on a lot more, but it gives a sense of where I think the announcement is going. | |||
| pugssvn | r31855 | sorear++ | [STD] Actually record whether a method has a ! or ^ annotation | 19:54 | |
| cosimo | is it possible to include LWP::Simple in the start distribution? | ||
| s/start/star/ | |||
|
19:54
Mowah joined
|
|||
| lue | pmichaud++ # I like it so far | 19:55 | |
| out of curiosity, where will R* be available? (rakudo.org and such) | |||
| pmichaud | actually, I've moved my draft to pmichaud.com/sandbox/2010.07.txt | ||
| so you can all reload to see updates in real-time. :) | |||
| PerlJam | the "We'll be honest" comment irks me slightly. | ||
| pmichaud | PerlJam: I can change that. | 19:56 | |
|
19:56
simcop2387 joined
|
|||
| pmichaud | (but what part irks you? What would you like to see instead?) | 19:56 | |
| lue | .oO[ I like how it's release *zero* :) ] | 19:57 | |
| PerlJam | every time someone tells me they're being honest or going to be honest, I wonder why they felt the need to say that. Are they not normally honest? Are they not normally honest to me? etc. | ||
| tadzik | cosimo: I'd like it | ||
| any objections? | |||
| pmichaud | cosimo: where is LWP::Simple ? | ||
| cosimo | github.com/cosimo/perl6-lwp-simple/ | ||
| pmichaud: ^^ | |||
|
19:58
snarkyboojum joined
|
|||
| cosimo | that also requires MIME::Base64 | 19:58 | |
| pmichaud | I guess we'd also n.... right | ||
| chromatic | I'd have written: | ||
| nimiezko | How is �$*PERL generated for rakudo ? at build time ? statically ? | ||
| cosimo | right now I can't access modules.perl6.org. this airport thinks it's a gambling site | ||
| chromatic | Rakudo Star is aimed at "early adopters" of Perl 6. It contains bugs and is | ||
| far slower than we'd think it ought to be. This release isn't at all a | |||
| complete implementation of Perl 6. | |||
| pmichaud | chromatic: I'd like to make it clear that we're not a production release or "1.0" or "6.0.0" | 19:59 | |
| cosimo | tadzik: it's a pity that Digest::MD5 still requires a 1 line patch to parrot that isn't in yet | 20:00 | |
| chromatic | I've never liked the phrase "production release". | ||
| tadzik | cosimo: ah :| | ||
| pmichaud | I don't like it either, but if we don't explicitly disclaim it, I fear a lot of people will tag us with "falls far short of a production release" in a negative sense. | ||
| lue | |||
| cosimo | tadzik: tried to poke around a bit, but no result | ||
| chromatic | More than "early adopters" disclaims? | ||
| lue | s/perl.org/perl6.org/ | 20:01 | |
| pmichaud | lue: the location is right there in the release announcement. | ||
| Su-Shee | pmichaud: well if I managed to throw little bits of dbd in, than it's really more than "isn't at all". | ||
| PerlJam | chromatic: I don't think pmichaud can be too redundant on this point. | ||
| tadzik | rakudo: sub foo (:$a) { say 'ok' if $a}; foo(a => /regex/) # what's wrong in here? | ||
| p6eval | rakudo fe29cd: OUTPUT«Method 'match' not found for invocant of class '' in 'Regex::Bool' at line 5567:CORE.setting in 'foo' at line 1:/tmp/fV8qT_YpMn in 'foo' at line 22:/tmp/fV8qT_YpMn in main program body at line 22:/tmp/fV8qT_YpMn» | ||
| chromatic | Maybe so, but it's kind of like saying "Don't use this." | 20:02 | |
| "Why did you jerks release something I can't use?" | |||
| Why can't you use it? | |||
| "You said I can't use it!" | 20:03 | ||
| Said nothing of the sort! | |||
| pmichaud | I don't see it as "Don't use this." I see it as "Don't use this for anything you think is really important." | ||
| Su-Shee | well that's what perl haters say about perl 5 today. ;) | ||
| PerlJam | maybe explicitly state some things that it *can* be used for? | 20:04 | |
| chromatic | I think you're better off explaining why not. | ||
| Otherwise my concern is that we all get stuck explaining why we released it at all. | |||
| pmichaud | When someone comments "Rakudo Star is not ready for production", I'd like to be able to respond with "yes, we said that." | ||
| [Coke] | no call? | ||
| pmichaud | I'll call | ||
| so, phone | 20:05 | ||
| tadzik | Could someone give me a hand with this sub? | ||
| davidfetter claps | |||
| sorry | |||
| pmichaud | explaining "why release at all" seems much easier to me than anything else that might come up | 20:06 | |
| if nothing else, I can fall back on "release early, release often" | 20:07 | ||
| tadzik | alright, anyone mind me adding LWP::Simple to Star? | ||
| cosimo | tadzik: what are you matching against? | ||
| PerlJam | tadzik: looks like a bug to me (your sub problem) | ||
| tadzik | cosimo: no matching | ||
|
20:08
simcop2387 joined
|
|||
| cosimo | tadzik: i thought you wanted $something ~~ $a | 20:08 | |
| masak | pmichaud: nice announcement draft. | ||
| PerlJam | tadzik: you could be a tad more explicit and say rx/regex/ but that doesn't help you | ||
| tadzik | cosimo: look up, it's just "if $a" | ||
| pmichaud | still needs more, on phone now | ||
| tadzik | alright, adding LWP::Simple | ||
| masak | pmichaud: fwiw, I think no official text should ever self-apply the word "honest". "Just to be clear" or equiv would be better. | 20:09 | |
| PerlJam | masak++ | ||
| tadzik | PerlJam: report it? | ||
| PerlJam | tadzik: well, I'm not *sure* it's a bug. :-) | 20:10 | |
| cosimo | tadzik: LWP::Simple also needs MIME::Base64 | ||
| tadzik | cosimo: oh, sure | ||
| tylercurtis | tadzik: in Rakudo at least(will have to check if it's spec), Regex.Bool is essentially { $_ ~~ self; $match.Bool }. | ||
| PerlJam | tadzik: I mean, perhaps you're meant to do something like ... | ||
| jnthn | pmichaud: First three paragraphs look good. Less comfortable with the forth one. | ||
| PerlJam | rakudo: sub foo (:$a) { say 'ok' if $a.defined }; foo(a => /regex/); | ||
| p6eval | rakudo fe29cd: OUTPUT«ok» | ||
| tadzik | oh, better | 20:11 | |
| cosimo | rakudo: sub foo (:$a) { say $a.perl }; foo(a => /regex/); | ||
| p6eval | rakudo fe29cd: OUTPUT«{ ... }» | ||
| tadzik | but still it sounds like a bug to me | ||
| cosimo: added | |||
|
20:11
pyrimidine left
|
|||
| lue | masak: I agree | 20:11 | |
| jnthn | pmichaud: The "We'll be honest: " maybe isn't needed at all. | ||
| masak | pmichaud: or what jnthn said. | 20:12 | |
| lucs | "We are aware that ..." | ||
| masak | @darlings>>.kill | ||
| PerlJam | tadzik: How about this one ... | ||
| rakudo: my $x = rx/regex/; say ?$x; | |||
| p6eval | rakudo fe29cd: OUTPUT«Method 'match' not found for invocant of class '' in 'Regex::Bool' at line 5567:CORE.setting in 'prefix:<?>' at line 411:CORE.setting in main program body at line 22:/tmp/L3b1rhbfCD» | ||
| jnthn | pmichaud: I like the contrast between "it has issues" and "it's still useful and interesting". | 20:13 | |
| PerlJam | (same problem as your sub) | ||
| but ... | |||
| rakudo: my $x = rx/regex/; say ~$x; | |||
| p6eval | rakudo fe29cd: OUTPUT«_block115» | ||
| PerlJam | What's that all about? | ||
| tadzik | PerlJam: $a.defined works fine | ||
| PerlJam | (I call bug as it looks like rakudo's parroty guts are leaking through) | ||
| jnthn | IIRC, if you put a regex in boolean context it will match against $_ | 20:14 | |
| masak | rakudo: my $x = sub {}; say ~$x | ||
| p6eval | rakudo fe29cd: OUTPUT«_block115» | ||
| jnthn | $x contains a regex. ?$x is doing just that. | ||
| PerlJam | jnthn: but it doesn't do that in string context? | ||
| jnthn | PerlJam: No, then it just does whatever a code object would. | 20:15 | |
| PerlJam | still seems wonky to me | 20:16 | |
| tylercurtis | jnthn, even rx{foo}? | ||
| masak | Su-Shee: [backlog] that's probably Perl 6's biggest PR lack right now: that a great getting-started guide doesn't exist. | 20:17 | |
| whee | pmichaud: I'm not sure I really care for the second paragraph (Rakudo Star releases differ...) since if you're trying to attract new people they have no idea what's in the usual releases anyway | ||
| jnthn | pmichaud: While I agree with fully brining out that it's slow and has plenty of bugs, I think "isn't at all a complete implementation of Perl 6" wants toning down a bit or some constrasting note that it has got a substantial feature set. | ||
| PerlJam | whee: I think that part is fine ... but I have some doubts about R* containing "documentation" :) | 20:18 | |
| jnthn | pmichaud: Yes, sure, we haven't got *everything* in the spec, but I consider the range of features we have more of a positive point than a failure. | ||
| pmichaud: Im comparrison to our current state on speed and bugs, anyway. | 20:19 | ||
| lue | how about "It's almost a complete implementation" ? [or is that too much on the other end?] | ||
| jnthn | lue: Too far the other way. | ||
| Something in between. | |||
| masak | jnthn: ss/at all/yet/, perhaps? | 20:20 | |
| jnthn | But I think that you can try out grammars, multi dispatch, Perl 6 OO, junctions, chained comparrisions, user defiend ops, laziness, etc is a reason *to* play with Rakudo that we maybe should bring out a little more. | ||
| whee | how about a "what can I do with it" section? | ||
| lue | "It's not complete, but it's very usable" ? | ||
|
20:20
lichtkind joined
|
|||
| jnthn | (Not suggesting a laundry list of features, mind.) | 20:21 | |
| PerlJam | perhaps I like lists too much, but I think there should be a list of the major features that work and another of the major features known not to work | ||
| blah too slow | |||
| what jnthn said | |||
| jnthn | masak: Yeah, that leaves us more room. | ||
| masak: We should certainly not give the impression it's really nearly covering all the spec. I just think that as it is phrased now it understates one of the areas that we don't do quite so badly in. | 20:22 | ||
| masak | Rakudo is the least bad impl right now when it comes to spec cov'rige. | 20:23 | |
| pmichaud | "useful parts of the specification" | ||
| (still on phone) | 20:24 | ||
| avar | writing the * release announcement? | ||
| pmichaud | drafting | 20:25 | |
| masak | by the way, after all this talk about Makefiles being less-than-desirable and less-than-platform-independent, I'm thinking we(TM) should probably make an attempt at something like this: rake.rubyforge.org/ -- in the mid-to-long run, of course. | ||
| food & | 20:26 | ||
| [Coke] | stackoverflow.com/questions/142799/...tion-ready | ||
| avar | Or write a Perl 6 Makefile parser ? :) | ||
| sorear | in #toolchain yesterday mst talked about a pure Perl implementation of make | 20:27 | |
| this could be a fun small project | 20:28 | ||
| like, .signature sized | |||
| (mostly because the portable subset of Makefile syntax is so small) | |||
| rindolf | sorear: there is remake I think. | ||
| No, that's something else. | 20:29 | ||
| colomon | cons | ||
| davidfetter | my USD 0.02 re: "production ready." if RoR is, rakudo is, /a fortiori/ | 20:30 | |
| rindolf | makepp.sourceforge.net/ | ||
| colomon: no, not CONS. | |||
| PerlJam | cons is dead | ||
| pmichaud | off phone, finally | 20:31 | |
| tadzik | hmm. Is any documentation reader going into Star? Something like perldoc | ||
| rakudo: my $i = 0; loop { if $i++ == 5 { goto END; } } END: say 'ok'; # how is it supposed to work? | 20:36 | ||
| p6eval | rakudo fe29cd: OUTPUT«===SORRY!===Confused at line 22, near "loop { if "» | ||
| PerlJam | tadzik: goto NYI | ||
| tadzik | oh, ok | ||
| lue is almost done w/ promotional banner about R* for his blog :) | 20:37 | ||
| tadzik | lue: mind showing? :) | 20:39 | |
| cosimo | what's the different between $.bar and $!bar ? | ||
| difference, even | 20:40 | ||
| tadzik | cosimo: public and private accessor | ||
| lue | I plan on putting up a `preview', so yes. | ||
| jnthn | $!bar declares an attribute | ||
|
20:40
kokajxo joined
|
|||
| jnthn | $.bar declares $!bar plus an accessor method. | 20:40 | |
|
20:40
_ilbot2 joined
|
|||
| moderator | »ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | ||
| cosimo | jnthn: tadzik: thanks | 20:40 | |
| tadzik | so, what about this documentation reader? | 20:41 | |
| PerlJam | tadzik: vi, emacs, notepad, bbedit, textmate, ... your choice. | ||
| tadzik | PerlJam: I see | ||
| tylercurtis | rakudo: class Foo { method f { $.g; }; method g { say 'g!' } }; Foo.f; | 20:43 | |
| p6eval | rakudo fe29cd: OUTPUT«g!» | ||
| tylercurtis | cosimo: as well, outside of "has", "$.foo" is basically "$(self.foo)". In other words, it calls whatever method in item context. | ||
| tadzik is excited before R* | 20:44 | ||
| I hope I'll be able to sleep | |||
| moritz_ will, due to exhausting training :-) | 20:45 | ||
| pmichaud | draft revised: pmichaud.com/sandbox/2010.07.txt | ||
|
20:46
ascent_ joined
|
|||
| cosimo | tylercurtis: thanks | 20:46 | |
| moritz_ | pmichaud: /me likes it | ||
| jnthn | pmichaud: That's a huge improvement. | 20:47 | |
| pmichaud++ | |||
| pmichaud | I'd still like to work "not 6.0.0" and "not 1.0" into the text somewhere. | ||
| jnthn | pmichaud: In that paragraph or just somewhere? | 20:48 | |
| pmichaud | somewhere. | ||
| jnthn | OK | ||
| tadzik | This is awesome. People are waiting over 10 years for this moment, and now it's happening. The fact that I did something for the project is truly awesome. Thank you guys for this experience :) | ||
| tylercurtis | cosimo: for other contexts, you can also do @.foo, %.foo, &.foo, etc., as with accessors. | ||
| jnthn | OK; I don't see a good way to put it into that paragraph right off. :-) | ||
| moritz_ | tadzik: I can feel with you :-) | ||
| pmichaud | reload, adding the next section | ||
| PerlJam | tadzik: I'm not sure they were waiting for *this* moment. R* isn't quite the same dream as Perl 6 :) | 20:49 | |
| jnthn | pmichaud: s/metamodel/model/ | ||
| cosimo | well, it's great anyways | ||
| moritz_ | Lazy lists | ||
| tadzik | PerlJam: well, R* is the huge propaganda hit anyway. I mean, usable Perl 6. Now. | ||
| pmichaud | jnthn: fixed | ||
| moritz_ | junctions | ||
| tadzik | grammars | ||
| jnthn | pmichaud: Mention multipe dispatch and junc...yes those | ||
| tadzik: already there ;-) | |||
| lue | I like it. | ||
| moritz_ | MAIN and USAGE subs | ||
| pmichaud | moritz_: might be hard to explain those in a bullet point | 20:50 | |
| tylercurtis | Feeds are nice. | ||
| jnthn | Aye | ||
| Tene | I would *not* mention chained comparisons. | ||
| PerlJam | feeds++ | ||
| jnthn | tylercurtis: Feeds are one of the quite incomplete features though. | ||
| moritz_ | right; I wouldn't put those in | ||
| Tene | It's not actually a big feature, and it seems to devalue the rest by comparison. | ||
| PerlJam | jnthn: but the simple, "ordinary" cases work just fine | ||
| chromatic | I like this release announcement much more. | ||
| pmichaud | chromatic++ and others++ for suggestions | ||
| I already see now to work in "not 1.0" and "not 6.0.0".... coming up | 20:51 | ||
| avar | It could probably use pointers to online perl6 docs too.. | ||
| pmichaud | s/now/how/ | ||
| jnthn | PerlJam: The current impl is like, something I churned out in a spare hour. There's quite a bit from the spec missing. :-) | ||
| I'd rather focus on the things we have fairly significant coverage of. | |||
| tylercurtis | pmichaud: perhaps something like "MAIN subs that automatically parse command line arguments according to the sub's signature." | ||
| jnthn | tylercurtis: It's not very snappy though | 20:52 | |
| chromatic | Function signatures | ||
| Tene | I'd just say "Improved command-line handling" | ||
| PerlJam | jnthn: perhaps I'm just enamored of the novelty that my @a <== grep <== sort <== @thingy; works :) | ||
| moritz_ | "Command line parsing through function signatures" | ||
| pugssvn | r31856 | moritz++ | [t/spec] at least a very basic test for $*VM, RT #73888 | ||
| pmichaud | how about "formal parameter lists and signatures" ? | ||
| moritz_ | +1 | ||
| jnthn | pmichaud: +1 | ||
| cosimo | I just started porting Cache::Memcached to Perl6. It's amazing how much code you can just cut away | 20:53 | |
| jnthn | PerlJam: Strange, I actually more like @thingy ==> grep *.foo ==> sort ==> my @result; # more | ||
| :-) | |||
| PerlJam | that too! | ||
|
20:53
rbuels joined
|
|||
| PerlJam | :) | 20:53 | |
| moritz_ | cosimo: I've shared that experience. Especially for OO code | ||
| [particle] | i don't like "So, " in the release announcement. it's too conversational | ||
| cosimo | moritz_: yes, especially that. sub new {} anyone? :) | 20:54 | |
| cognominal | rakudo: say ({ qq| $^k="{$^v.perl}"| } )( < a b > ) | ||
| p6eval | rakudo fe29cd: OUTPUT«Lexical '$v' not found in <anon> at line 22:/tmp/_WdktGMFAg in main program body at line 22:/tmp/_WdktGMFAg» | ||
| pmichaud | [particle]: would "Thus, " be okay? | ||
| lue | .oO(@lista ==> sort ==> my @result <== sort <== @listb) |
||
| [particle] | also, starting a sentence with But... | ||
| jnthn | pmichaud: Maybe s/binary objects/native types/ maybe? It's a tad more general. | ||
| pmichaud | [particle]: nm, changing a bit more radically | ||
| [particle] | hrmm, lemme think. | ||
| pugssvn | r31857 | moritz++ | [t/spec] so my $x = 3, RT #73352 | 20:55 | |
| pmichaud | jnthn: one of the FAQs is pack/unpack | ||
| jnthn | [particle]: But can be a valid first word in a sentence. :P | ||
| tadzik | lue: what about this banner? :) | ||
| [particle] | jnthn: yes, rarely. | ||
| jnthn | pmichaud: Then mention them explicitly. | ||
| cognominal | should I file it as a bug. Or my expectation is wrong? | ||
| moritz_ | pmichaud: mention state variables as not-quite-there | ||
| pmichaud | moritz_: it's there now :) | ||
| (frequent reloads might be good here :) | |||
| lue | I'm finishing it up. (Would R*.0 be a good abbreviation for Rakudo Star Release 0 ?) | ||
| cognominal | anyway, that should be | 20:56 | |
| moritz_ | cognominal: introducing a formal parameter in a block interpolated into a string makes no sense | ||
| cognominal: because it's called without an argument | |||
| the error message could be more awesome, but it's not supposed to work | |||
| jnthn | cognominal: It's right you get an error. The error itself is dubious. | ||
| pmichaud: * multiple dispatch and junctions | 20:57 | ||
| pmichaud: I wouldn't group these | |||
| cognominal | yes indeed, the { } were there to remind me. | ||
| jnthn | pmichaud: The two aren't always related in reality, and for most people using junctions then when they are it's an implementation detail. | ||
| cognominal | and there was extraneous double quotes as well. | 20:58 | |
| [particle] | pmichaud: after the bulleted lists, say something like, "You can read more about Perl 6 and the implemented features of Rakudo at <url-here>" | ||
| pmichaud: also, you must mention the included modules and utilities in the distro, to help reduce confusion with rakudo compiler releases | 20:59 | ||
| avar | new paragraph imo at "But Rakudo Perl 6" or ' The "Star" releases', The third paragraph is a bit of a run-on | ||
| [particle] | i mean, list bullets | ||
| avar | s/As alluded earlier, // | ||
| ash__ | anyone here familiar with feather3? | 21:00 | |
| moritz_ | ash__: a bit | ||
| jnthn | pmichaud: Is it worth a kind of "Many built-in operators, functions and classes" note at the end of this? | ||
| ash__ | is there a system managed version of rakudo on it? or do i need to make my own? | ||
| [particle] | if you're open to more collaborative editing, we can create an etherpad ot make edits | ||
| moritz_ | ash__: make your own | ||
| pmichaud | jnthn: split multidispatch and junctions +1 | ||
| moritz_ | +1 | 21:01 | |
| jnthn | pmichaud: Or just something to indicate that the basic bits are there as well as all this high falutin' stuff. :-) | ||
| [particle] | like: eiximenis.wikimedia.org/rakudo-star-announce | ||
| ash__ | moritz_: kk, will do | ||
| pmichaud | [particle]: this is fine with me | ||
| [particle] | hokay | ||
| ash__ | moritz_: oh greaterthaninfinity.dyndns.info/ is working a bit better now, it retains data between calls (try my $a = 1; <enter> say $a; <enter>) | ||
| pmichaud | jnthn: added "a rich library of builtin operators, functions, and types" | 21:02 | |
| ash__ | my server is slow (very noticeably slow) for some reason... | ||
| [particle] backscrolls to look for discussion of "release 0", which comes across as quite underwhelming | |||
| pmichaud | I'm fine with leaving the release number out, if #0 causes issues. | 21:03 | |
| I don't want to call it release #1. | |||
| PerlJam | pmichaud: is there really a need to say "Perl 6 grammars" in the first bullet? (i.e. drop the "Perl 6") | ||
| moritz_ | ash__: \\o/ works | ||
| pmichaud | PerlJam: It feels different with the "Perl 6" there. | ||
| jnthn | PerlJam: It may be good to call out the distinction that regexes in Perl 6 are notably different. | ||
| pmichaud | PerlJam: maybe I'm just too close to the process, but so far.... what jnthn++ said | 21:04 | |
| avar | PerlJam: It probably helps googling.. | ||
| ash__ | moritz_: i'd like to get at least that page cleaned up by tonight/tomorrow even if the tutorial parts are still missing... | ||
| pmichaud | and several people have mentioned that at this point in time, Perl 6 grammars are its killer app | ||
| jnthn | pmichaud: Thatt'll be lost on some people, but not those who have seen/read about them. | ||
| avar | Another thing to mention -> some of the build-in-modules? | ||
| [Coke] | +1 on using the release month as the version #. | ||
| version /string/ | |||
| jnthn | ash__: It works for me too \\o/ | ||
| moritz_ | ash__: see svn.pugscode.org/pugs/misc/evalbot/evalbot.pl for some basic security measures (search for program_prefix) | ||
| ash__ | moritz_: i just ended up re-writing the perl backend since i didn't really understand cygx's work so far... | ||
| i have it already | |||
| say lines; | |||
| it has the same stdin as p6eval | 21:05 | ||
| pmichaud | [Coke]: changed version number | ||
| moritz_ | ah, great | ||
| jnthn | Land der Ãcker | ||
| moritz_ | ash__: and add a | ||
| tadzik | ash__: it works! \\o/ | ||
| jnthn | Encoding fail :-) | ||
| tadzik | ash__++ | ||
| moritz_ | ash__: use FORBID_PIR; | ||
| ash__: at the end of that list | |||
| ash__: so that pir::destructive_call is disabled | |||
|
21:06
hercynium joined,
cj joined
|
|||
| ash__ | github.com/moritz/try.rakudo.org/bl...try.pl#L32 is what i am using now, i'll append those things you just said though | 21:06 | |
| cj | diakopter: moo | ||
| tadzik | modules/mainline -- what's that? (in Star) | ||
| pmichaud | tadzik: it's HTTP::Daemon | 21:07 | |
| [particle] | am i being pedantic in saying "#2010.07" looks like the 7th release of the year? perhaps "2010-07"? | ||
| pmichaud | yes, the name is lta | ||
| [particle]: unix package managers all want periods | |||
| tylercurtis | phenny: tell masak Wikipedia tells me of a topological-sort algorithm that makes cycle-detection extremely trivial. en.wikipedia.org/wiki/Topological_s...Algorithms | ||
| phenny | tylercurtis: I'll pass that on when masak is around. | ||
| moritz_ | pmichaud: one more thing.. mention the REPL | ||
| pmichaud | I tried using hyphens and got some grief from the people creating .rpms and .debs | ||
| [particle] gives unix package managers a :P | |||
| pmichaud | moritz_: suggestion? | ||
| [particle] | ok, so drop the # | ||
| lue | wasn't there already 2010.07? .oO(maybe star.00 ?) | ||
| PerlJam | lue: that was Rakudo, not Rakudo Star | 21:08 | |
| tadzik | lue: mind showing the banner? :) | ||
| moritz_ | pmichaud: * an interaction read-evaluation-print loop | ||
| lue | yes :) just a second... | ||
| pmichaud | moritz_: added | ||
| PerlJam | pmichaud: is the announcement also going to elaborate on blizkost, zavolaj, etc? or leave that for another document? | 21:09 | |
| pmichaud | PerlJam: working on it | ||
| ash__ | how does repr know what the last thing was? like if you do "my $a = 3;" it prints 3 | ||
| pmichaud | ash__: because the result of "my $a = 3" is 3. | ||
| rakudo: say (my $a = 3); | |||
| p6eval | rakudo fe29cd: OUTPUT«3» | ||
| ingy | I think I have enough pegex working to do an initial release. the entire p5 testml impl is pegex based. One thing I want to support is a action callback before a rule, after a passing rule, and after a failing rule. | 21:10 | |
| sorear | this is so that you can do $a = ($b = 3); | ||
| ash__ | so its it just doing ( ) around the input? | ||
| (probably not) | |||
| moritz_ | print(...) basically | ||
| ingy | p6 only supports after a passing rule, right? | ||
| moritz_ | erm | ||
| say() | |||
| pmichaud | it's just looking at the result of the execution and displaying it | ||
| sorear | ingy: Oh dear, did you just implement a p6regex to p5 compiler? :( | ||
| moritz_ out | |||
|
21:10
am0c joined
|
|||
| ingy | sorear: I'm getting there | 21:10 | |
|
21:11
Guest23195 left
|
|||
| sorear | ingy: one already exists. it's called viv, and it powers STD | 21:11 | |
| ingy | sorear: and once rakudo does p5 regex, we can do fast rules :) | ||
| sorear: pegex is an acmeist project. (all langs) | |||
| sorear: it's only heavily influenced by p6r | 21:12 | ||
| cognominal | acmeist project? | ||
| ingy | cognominal: acmeism.org | ||
| PerlJam | ingy: clearly you haven't advertised acmeism enough :) | 21:13 | |
| ingy is an acmeist hacker | |||
| araujo thinks about willy coyote | |||
| ingy | PerlJam: I've given about at least 5 talks on it in the last year | ||
| anywho | 21:14 | ||
| PerlJam | araujo: "willy"? ITYM "wiley" Wile E. Coyote .... Super Genius. | ||
| pmichaud | the number of talks doesn't matter. I've given several dozen talks about Rakudo and Perl 6, but "everyone knows it's vaporware" :-P | ||
| tadzik | :) | 21:15 | |
| PerlJam | pmichaud: not to mention the 31 releases to date | ||
| cognominal | I think ingy talked to me about it in a bar in Paris, probably after I drank too much beers. That's the danger of evangelism in bars. | ||
| pmichaud | PerlJam: apparently, "those aren't real release." | ||
| *releases | |||
| araujo | PerlJam, that one :P | ||
| ingy | cognominal: :) paris++ | 21:16 | |
|
21:16
timbunce joined
|
|||
| pmichaud | announcement updateded to include "not 1.0" and "not 6.0.0" | 21:16 | |
| suggestions for short descriptive blurbs for the modules welcomed | |||
| cognominal | ingy, you are welcome to talk as osdc.fr or fpw | ||
| but importing chunk of Perl 6 syntax in other languages will make every language like Perl 6 eventually :) | 21:17 | ||
| *chunks | |||
| tadzik | they will steal features anyway :) | ||
| cognominal | ... and will realize they need the syntax as well :) | ||
| ingy | cognominal: actually I am hoping to get back to osdc.fr this year, since all the vapor I talked about last year is actually working now :) | ||
| dukeleto | tadzik: that would be the best flattery :) | ||
| PerlJam | It's just a matter of time before we see the P6CGE out there to replace (?) PCRE | 21:18 | |
| tadzik | cognominal: and they will migrate to parrot to be able to use P6 :) | ||
| dukeleto | tadzik: the parrot hackers sure are hoping for that | 21:19 | |
| ingy | acmeism is not about everyone _stealing_ from p6 but about p6 _sharing_ with everyone | ||
|
21:19
cbk joined
|
|||
| ingy plays robin hood | 21:19 | ||
| tadzik | ingy: stealing is a metaphor here | ||
| ingy | tadzik: but it's a bad metaphor | ||
| tadzik | there's hardly a thing like stealing in the world of open source software | ||
| [particle] | that's bs. | 21:20 | |
| tadzik | ingy: maybe. It sounds like a bad word | ||
| [particle] | you need to follow the license provisions, or its stealing. | ||
| PerlJam | ingy: some communities have too much of a NIH problem, so they're not into sharing | ||
| tadzik | well, sure | ||
| ingy | I think you misunderstand me | ||
| chromatic | Infringement is not stealing. That is all. | ||
| timbunce | pmichaud: " feedback about Perl 6 +language+ and Rakudo's implementation of it" | ||
| pmichaud | timbunce: changed. | 21:21 | |
| ingy | miyagawa++ has stolen great things from python and ruby, but I tell him to be acmeist and give the enhancements back | ||
| araujo | ingy, a new algorithm can be considered an acmeism? | ||
| [particle] | pmichaud: s/more widely/widely/ | 21:22 | |
| davidfetter | looks like dukeleto et al. slid pl/rakudo under the wire :) | ||
| lue | tadzik: here it is: rdstar.wordpress.com/blog-banners/ | ||
| PerlJam | I predict MiniDBI will generate the most activity from the R* release (most bugs/comments/hacking/etc) | ||
| pmichaud | [particle]: I prefer "more widely" | ||
| ingy | araujo: a new algorithm implemented equally in a dozen langs | ||
| pmichaud | [particle]: or else we should change "widely" altogether. | ||
| [particle] | ok, how about "morer widelier" :P | ||
| tadzik | lue: oh, these! :) | ||
| I've seen them few days ago :) | |||
| timbunce | pmichaud: "although we plan for them to appear" seems a little hope-full. "they will appear" perhaps | 21:23 | |
| ingy | acmeism is about caring about ideas and the people they affect more than the language you first implement them in | ||
| lue | I just finished the new one! (second) :) | ||
| araujo | ingy, well, the algorithm is invented, the people then implement it in whatever language they want | ||
| pmichaud | timbunce: changed (thanks) | ||
| sorear | pmichaud: tylercurtis: Schwern has been found | ||
| pmichaud | .oO( was I looking for Schwern? ) |
21:24 | |
| timbunce | What's the state of rakudo's unicode handling? The novel normalized form (graphemes?) is worth adding to the have or will-have list | ||
| ingy | araujo: i have committed to implementing my future ideas in all languages | ||
| pmichaud | rakudo handles unicode at the grapheme level (I think), but not at any of the other levels. | ||
| we don't have the normalized form yet. | 21:25 | ||
| ingy | so anything I'm doing here, is going to happen everywhere | ||
| but there's a lot of good energy here day to day | |||
| pmichaud | timbunce: added notes about unicode to both the "have" and "have not" lists. | ||
| PerlJam | hugme: hug ingy | ||
| hugme hugs ingy | |||
| ingy | so it's a nice place to hanf out | ||
| PerlJam beams some good energy at ingy | |||
| pmichaud | plus there's plenty of hugs about | ||
| lue | would it be wrong to call this the 0th R* release, like it did in early drafts of the release announcement? | ||
| ingy | PerlJam: \\o/ | ||
| pmichaud | lue: I'm likely to internally continue to treat it as the #0 release | 21:26 | |
| but I probably won't start numbering releases until we get to #2 or #3 :) | |||
| lue | alright, because that's what my banner calls it :) | ||
| pmichaud | lue: I did say it was worth waiting for the release to actually occur, you know. :) | ||
| lue | It's only a preview of the banner right now :) | 21:27 | |
| right here: rdstar.wordpress.com/blog-banners/ | |||
| timbunce | when will the R* be frozen? (specifically when will MiniDBI get bundled as I'd like to edit its README) | ||
| lue | .oO(I reckon I should hide it again, no need to have a preview) |
21:28 | |
|
21:29
patrickas joined
|
|||
| pmichaud | timbunce: module freeze is later this evening | 21:29 | |
| timbunce: you have at least 6 hours or so | |||
| araujo | ingy, sounds good idea, but I still think programming languages highly influence sometimes ideas and concepts | ||
|
21:33
cotto_work joined
|
|||
| ingy | araujo: of course, but then those good ideas should be proactively shared | 21:33 | |
| imao ;) | |||
|
21:33
mscha joined
|
|||
| patrickas | hello perlsixers | 21:34 | |
| araujo | that is true, they should be shared | ||
| PerlJam coughs of araujo and shares perhaps too much ;) | |||
| tadzik | patrickas: o/ | 21:35 | |
| patrickas | would it be a good idea to have a short description for modules whose functionality is not obvious from the name (like blizkost and zavolaj) in the release announcement ? | ||
| tadzik \\o | |||
| pmichaud | patrickas: yes, I'm hoping others will contribute the short descriptions :) | ||
| so far nobody has done so. :) | |||
| tadzik | pmichaud: where to put them? | 21:36 | |
| araujo | ingy, I think that is possible for many ideas .... the detail is how useful these ideas can come from one language to other, tough I guess acmeism doesn't deal with that now | ||
| pmichaud | 21:16 <pmichaud> suggestions for short descriptive blurbs for the modules welcomed | ||
| cotto_work | +1 to what patrickas said | ||
| pmichaud | tadzik: here on the channel is fine -- I'll paste them in | ||
| jnthn | Blizkost allows you to use many Perl 5 modules from within Perl 6. | 21:37 | |
| pmichaud | jnthn: capital "B" ? | ||
| jnthn | pmichaud: Yes. | ||
| tadzik | pmichaud: File::Find -- find files in a given directory; Term::ANSIColor -- Color screen output using ANSI escape sequences #`[borrowed from CPAN]; Config::INI -- parse and write configuration files | 21:38 | |
| pmichaud | jnthn: updated | ||
| jnthn | pmichaud: I tend to like to have names capitalized. :-) | ||
| pmichaud | tadzik: updated | ||
| jnthn | Zavolaj enables you to call functions from C libraries by declaring stub subroutines in Perl 6. | ||
| er | 21:39 | ||
| pmichaud | * Zavolaj - call functions in C libraries by declaring Perl 6 stubs | ||
| jnthn | pmichaud: yes, that's fine | ||
| tadzik | LWP::Sipmle -- simple interface to WWW #`[or something brighter] | 21:40 | |
| patrickas | Zavolaj - call C libraries functions from Rakudo | ||
| pmichaud | patrickas: I like your desc better -- adopted it | ||
|
21:40
alexm joined
|
|||
| tadzik | SVG -- create Scalable Vector Graphics | 21:41 | |
| jnthn | Test::Mock - create mock objects and check what methods were called | ||
| pmichaud | tadzik: LWP::Simple needs a better description. how about "fetch resources from the web?" | ||
| jnthn | JSON::Tiny - serialize Perl 6 data structures to/from JSON | ||
| tadzik | pmichaud: I thought about 'simple interface to HTTP protocol' but that's rather what HTTP::Client is for | ||
| pmichaud: your description is nice | 21:42 | ||
| jnthn: where is JSON::Tiny in Star? | |||
| jnthn | tadzik: Oh, I thought it was included? | ||
| tadzik | jnthn: I'll include it now | ||
| PerlJam | It probably should be | ||
| jnthn | +1 | ||
| It's a nice module to read the code of too | |||
| pmichaud | I think the original expectation was that proto would provide it, but I think it should be separate. | ||
| jnthn | A good example of grammars. :-) | ||
| pmichaud | yes, please add it | 21:43 | |
| tadzik | where does it live? | ||
| jnthn | github/moritz/json iirc | ||
| tadzik | so, JSON or JSON-Tiny? | ||
| I don't think it's necessary to call it Tiny, for it's the only JSON we have anyway :) | |||
| does not need to be fat to be good :) | |||
| pmichaud | Tiny, in case we have a bigger JSON later. | ||
| tadzik | added | 21:44 | |
| pmichaud | "its the only ... we have" isn't a good argument for a simple name -- we have to think about the future too. | ||
| also, we should refer to it by the module name for now. | |||
| timbunce | I've updated the MniDBI README: github.com/mberends/MiniDBI/commit/...5eb4c27907 any comments? | ||
| [particle] | pmichaud: the zavolaj description should be consistent with the others, and say Perl 6 instead of Rakudo | ||
| pmichaud | timbunce: looking | ||
| PerlJam | Math::Model - provides a way to describe and run mathematical models | 21:45 | |
| pmichaud: that first sentence makes for a great description :) | |||
| (MiniDBI) | |||
| pmichaud | [particle]: added, although I don't know if Zavolaj will ultimately be ported (or portable) to other Perl 6 implementations | ||
| [particle]: i've changed them to be "Rakudo Perl 6" | 21:46 | ||
| that seems to work okay for me | |||
| timbunce | I guess I should write a README for DBDI now! | ||
| jnthn | pmichaud: I consider Zavolaj a working draft implementation for a synopsis on native calls. | ||
| pmichaud | PerlJam: adopted the minidbi description | ||
| [particle] | great! consistency in the message is important. | ||
| pmichaud | jnthn: works for me. | 21:47 | |
| jnthn | pmichaud: But it's got a bit to go before I'm ready to propose it. | ||
| pmichaud: So yes, +1 to "Rakudo Perl 6" | |||
|
21:47
high joined
|
|||
| jnthn | pmichaud: I fully intend to port it everywhere Rakudo runs, and may at some point suggest we make it core. | 21:47 | |
| pmichaud: But anyway, that's for later. | |||
| PerlJam | XML::Writer - module for creating XML in Perl 6 | ||
| (taken from the README) | 21:48 | ||
|
21:48
isBEKaml joined
|
|||
| pmichaud | timbunce: minidbi readme looks good | 21:48 | |
| tadzik | maybe 'build XML from Perl 6'? | ||
| pmichaud | 'generate XML output from Perl 6' | 21:49 | |
| or even just 'generate XML output' | |||
| timbunce thinks it's a pity DBDI isn't quite ready to include in R* (but makes him remember fondly that DBI was almost bundled with Perl 5.0 but he asked Larry to remove it just in time) | |||
| pmichaud | timbunce: there will be another release in four weeks. Maybe even sooner. :) | ||
| timbunce: then DBI can get a prominent position in the release announcement. :) | |||
| sorear | timbunce: Why did DBI need to be removed from Perl 5.0? | ||
| pmichaud | "Rakudo Star -- now with DBI!!!!" | 21:50 | |
| tadzik | pmichaud: why output? | ||
| isBEKaml | the parrot that will be bundled with R* will be 2.6.0 ? | ||
| pmichaud | tadzik: okay, just "generate XML" | ||
| isBEKaml: yes. | |||
| PerlJam | 'DBDI' ne 'DBI' | ||
| isBEKaml | pmichaud: ok. Doing a slackbuild now. :) | ||
| tadzik | pmichaud: maybe 'generate XML documents'? | ||
| pmichaud | sorry, DBDI | ||
| davidfetter hopes pmichaud will put PL/R* in the release announcement somewhere | |||
| timbunce | pmichaud: no! (please, tell me you're joking) We're a long way from having a DBI! | ||
| pmichaud | timbunce: right, I just put the wrong acronym. :) | 21:51 | |
| timbunce | pmichaud: yeah, it's bound to be a source of confusion | ||
| davidfetter | pl.parrot.org @ pmichaud | ||
| [particle] | pmichaud: mention R* is based on rakudo #31 (or whatever) and parrot 2.6 ? | ||
| pmichaud | [particle]: I'm not quite sure where to put that. | ||
| timbunce | sorear: DBI didn't need to be removed. I decided it was best not to bundle it. That was the right choice. | 21:52 | |
| chromatic | timbunce, where were you for File::Find and CGI? | ||
| sorear | rule modifier_expr { <EXPR> } #point? | 21:53 | |
|
21:53
Mowah joined
|
|||
| dalek | ecza: c2b609a | sorear++ | STD_REVISION: Bump STD_REVISION to get method parse fixes |
21:53 | |
| ecza: cd418a6 | sorear++ | Niecza/Actions.pm: Implement parsing of "private" methods |
|||
| ecza: ebfc757 | sorear++ | Niecza/Actions.pm: Implement !method calls |
|||
| ecza: 667c147 | sorear++ | test.pl: Test for !method calls |
|||
| ecza: 02a9152 | sorear++ | Test.pm6: Use !method and listop ~ in Test.pm6 |
|||
| timbunce | pmichaud: somewhere near "planned on a monthly cycle" where you can point out that Rakudo has had monthly releases for years | ||
| pmichaud | davidfetter: PL/R* doesn't seem directly related to the R* release. Maybe I'm just missing it. | ||
| PerlJam | having DBI won't be enough these days anyway. Now you need the full stack DBDI, DBI, and an ORM | ||
| davidfetter | pmichaud, it uses R* | 21:54 | |
| PerlJam | er, and some DBDs of course :) | ||
| timbunce | chromatic: Up until *just* before the perl 5.0 release the entire library of modules was in a flat namespace. You can blame me for fixing that and for the knock-on effects of my reorg :) | ||
| davidfetter | pmichaud, won't work with versions of rakudo much earlier than R* | 21:55 | |
| pmichaud | davidfetter: I'm open for text suggestions, then. | ||
| [particle] | pmichaud: perhaps "Rakudo Star releases are based on Rakudo compiler releases[1], and differ from them in that the Star releases also contain documentation and modules to make for a more complete Perl 6 development environment. This release of Rakudo Star is based on Rakudo compiler release #31 and Parrot release 2.6.0. A partial list of modules installed as part of Rakudo Star:" | ||
| pmichaud | I added a note about rakudo compiler and parrot to the last paragraph | ||
| (refresh and see) | 21:56 | ||
| davidfetter | "Rakudo Star has already been embedded in PostgreSQL: pl.parrot.org/" | ||
| jnthn | [particle]: That's not true at all for this release. :-) | ||
| [particle] | pmichaud++ for an amazing ability to context switch | ||
| ingy | pmichaud: do you think I should put my YAML dumper into *? | ||
| I think I should | |||
| pmichaud | ingy: do you think it's ready for it? | ||
| ingy: I think it'd be a worthy module if so. | |||
| ingy | well it's 100 times better than .perl | ||
| [particle] | jnthn: i'm sad to say i don't know the specifics, just suggesting a format. | ||
| ingy | but like .perl it's not perfect | ||
| pmichaud | well, .perl still needs a lot of improvement, too. | ||
| tadzik | pmichaud: http::daemon -- a simple http server class? borrowed from cpan again | 21:57 | |
| pmichaud | .perl right now is sort of a minimal implementation | ||
| ingy | but it's for sure the best way to dump * | ||
| even if it's not always perfect YAML, it's a great visualizer | |||
| pmichaud | ingy: I'd need a location to download the yaml dumper and a one-line blurb | ||
| ingy | pmichaud: github.com/ingydotnet/yaml-pm6 + the README | 21:58 | |
| it's ufo make testable | 21:59 | ||
| if you have testml | |||
| pmichaud | at the moment I'm only doing installs; we don't have the test harnesses quite right for doing tests before install. That's a high priority for R*+1 | ||
| ingy | nod | 22:00 | |
| pmichaud | anyone have any important Rakudo changes before I tag it for R* release? last chance! :) | 22:01 | |
| chromatic | Was there a ruling on colomon's iterator improvements? | ||
| jnthn | pmichaud: None from me. | 22:02 | |
| pmichaud | I feel safer in waiting on those. | ||
| jnthn | pmichaud: Same; slow is one thing, but broken would be worse. | 22:03 | |
| pmichaud: We just haven't had enough chance to try it in the wild yet. | |||
| pmichaud | agreed. | ||
| cxreg | pmichaud: i was worried more about last-second stuff that was already pushed but would break it | ||
| pmichaud | cxreg: I plan to run a full set of tests tonight before packaging, to be sure. | 22:04 | |
| chromatic | "Rakudo Star also contains an draft" | ||
| pmichaud | chromatic++ # fixed | ||
| colomon | chromatic: I didn't actually try to move them into Rakudo today, so I wouldn't be tempted. | 22:05 | |
| I've got a new test file to stress test int ranges. | 22:06 | ||
| and I think I can integrate my standalone code pretty easily into Range. | |||
| but I think it should wait until after the release. | |||
| masak | tylercurtis: ooh, nice. didn't think of that one. | 22:09 | |
| phenny | masak: 21:07Z <tylercurtis> tell masak Wikipedia tells me of a topological-sort algorithm that makes cycle-detection extremely trivial. en.wikipedia.org/wiki/Topological_s...Algorithms | ||
|
22:10
drbean joined
|
|||
| pmichaud | tadzik: in order to add JSON::Tiny, MIME::Base64, and LWP::Simple I also need their github (or other) source locations... | 22:11 | |
| masak heads to bed | |||
| jnthn | o/ masak | ||
| masak | 'night, #p6 | ||
| pmichaud | (adding to Makefile.in isn't sufficient) | ||
| night, masak | |||
| tadzik | pmichaud: sure, give me a sec | ||
| pmichaud | (they belong in the top-level Makefile) | 22:12 | |
|
22:12
drbean_ joined
|
|||
| tadzik | github.com/moritz/json/ github.com/snarkyboojum/Perl6-MIME-Base64/ github.com/cosimo/perl6-lwp-simple/ | 22:12 | |
| pmichaud | okay, adding | ||
|
22:14
drbean joined
|
|||
| pmichaud | davidfetter: where would you see the PostgreSQL comment going in the announcement? | 22:15 | |
| davidfetter | where's the draft announcement? | ||
| tadzik | pmichaud: to be sure, which Term::ANSIColor are you pulling? | 22:16 | |
| oh ok, there are urls in makefile | |||
| pmichaud | I expect the build process to improve substantially over the next couple of releases -- at this point the important part is "make a release" more than "make a robust release process" | 22:19 | |
| davidfetter: pmichaud.com/sandbox/2010.07.txt | |||
| isBEKaml | pmichaud: would rakudo's Configure.pl automatically detect the parrot_config when installed or do we have to explicitly pass in parrot_config to it? | 22:20 | |
| so far, I have been passing in parrot_config explicitly. | 22:21 | ||
| lue | afk | ||
| pmichaud | isBEKaml: if parrot_config is in your path, it detects it. | ||
| if not, you have to supply it. | |||
| isBEKaml | ok | 22:22 | |
| timbunce | pmichaud: perhaps add something about concurrency-friendly hyper-operators | ||
| tadzik | goodnight #perl6. May the Star shine upon You :) | 22:23 | |
| davidfetter | pmichaud, probably after the modules list | 22:24 | |
| cj | sorear: just making sure you're here | 22:25 | |
| cognominal | I would like to do a .subst( /.../, given $the_match { ... } ) | ||
| sorear | cj: oh, I ... never noticed you here. | 22:26 | |
| cognominal | ...where $the_match would be the tjing matched by /.../. Is that possible? | ||
| pmichaud | Paula says the announcement doesn't make the distinction between "Rakudo Star", "Rakudo", and "Perl 6" very clear. | ||
|
22:26
azert0x joined
|
|||
| cognominal | that would be "do given" I suppose. | 22:26 | |
| pmichaud | timbunce: well, that's more of a future potential of the language than something we have today :) | 22:27 | |
|
22:27
azert0x joined
|
|||
| pmichaud | afk for a bit -- back in ~10 | 22:27 | |
| cj | sorear: I don't always idle here. I think I joined about 45 minutes ago looking for diakopter | 22:28 | |
| who doesn't seem to be around | |||
| cognominal | pmichaud, maybe a word about the thing you expect to work on the next release with a timeframe would be nice | ||
| pmichaud | cognominal: timeframe is at the bottom of the announcement | ||
| sorear | cj: diakopter is on vacation now | 22:29 | |
| pmichaud | also, somewhere (perhaps not in the announcement) we need to figure out where we'll answer "where is the Perl 6 CPAN?" | ||
| ingy | pmichaud: when is the final time that you'll pull yaml-pm6 for *? | ||
| cj | bah. how's he supposed to help me implement compiled regexen in mono if he's on vacation!? | ||
| pmichaud | ingy: sometime in the next ~6 hrs, I expect. | ||
| ingy | ! | ||
| pmichaud: is it already in there? | 22:30 | ||
| cj | ingy: did you do any strip teases this year? | ||
| pmichaud | ingy: I can pull it now or a specific commit if you want :) | ||
| ingy: it's in the build system now -- haven't done a build with it yet. | |||
| ingy | pmichaud: I'll get it ready for release | ||
| put the new stuff on a branch | |||
| pmichaud | ingy: okay, let me know if I need to remove it or something. | ||
| ingy: if you just give me a commit id or tag to pull, I can be sure to grab that. | 22:31 | ||
| ingy | pmichaud: ok | ||
| pmichaud | bbi10 | ||
|
22:33
ashleydev joined
22:34
ashleydev joined
22:36
timbunce joined
22:40
isBEKaml_ joined
|
|||
| ingy | hi cj | 22:42 | |
| isBEKaml_ | is there anywhere I can get the Rakudo source tarball without having to do a git clone? | 22:43 | |
| R* | |||
|
22:45
timbunce joined
|
|||
| timbunce | pmichaud: a couple of years ago I wrote a list of cool things in perl6 (that I thought would interest academics). I've just found it again. (more) | 22:46 | |
| pmichaud: some items to add to the 'in the future' list: Continuation Passing control flow, Resumable exceptions, Hypothetical variables, Automatic threading (concurrency) over Junctions, Constraints - pre and post conditions (design by contract). | 22:47 | ||
|
22:48
wknight8111 joined
|
|||
| dalek | ecza: d4465fa | sorear++ | (2 files): Implement postfix if/while/unless/until |
22:48 | |
| Tene | timbunce: there are resumable exceptions today. | 22:50 | |
| cxreg | isBEKaml_: rakudo star is not released yet, but it should be on the site as a tarball | ||
| isBEKaml_: you can produce such a tarball by cloning the star repo and running make | 22:51 | ||
| pmichaud | the final tarball isn't produced yet (more) | ||
| but you can get an intermediate one from | |||
| isBEKaml_ | cxreg: Yes, I'm aware of that. I'm asking for th epurpose of building a slackware package. | ||
| pmichaud | pmichaud.com/sandbox/rakudo-star-beta3.tgz | ||
| timbunce | Tene: great. that can be added to the 'available today' list. Is that also true of continuation passing? | 22:52 | |
| pmichaud: "The requested URL /sandbox/rakudo-star-beta3.tgz was not found on this server" | |||
| isBEKaml_ | pmichaud: 404 - Not Found. | ||
| cotto_work | what they said | 22:53 | |
| pmichaud | sorry, .tar.gz | ||
| pmichaud.com/sandbox/rakudo-star-beta3.tar.gz | |||
| timbunce: added some of your items to the draft announcement | 22:55 | ||
| timbunce | pmichaud: "Rakudo Star is Copyright (C) 2010 by the Rakudo Star Team" is the Rakudo Star Team an official designation? How is copyright being handled/assigned etc? | 22:56 | |
| isBEKaml_ | pmichaud: you're including parrot within rakudo star dist too? I thought you said that would be a separate dependency download? | ||
| pmichaud | isBEKaml_: I don't remember saying that. | ||
| isBEKaml_: it will use a separate parrot if you already have one, but if not, there's one there. | |||
| timbunce: it's not an official designation, no. | |||
| timbunce | pmichaud: README says "Artistic License 2.0" but doesn't include a link and there's no LICENSE file. | ||
| pmichaud | timbunce: the copyright really applies only to the build components of the tarball | ||
| timbunce: oops, I forgot the LICENSE | 22:57 | ||
| thanks | |||
| timbunce | pmichaud: "you need at least a C copmiler" - typo | ||
| Tene | timbunce: there are at least some pending significant issues with the exceptions system in rakudo. I don't remember what they are, unfortunately. | ||
| pmichaud | put another way, R* is really a compilation copyright -- each of the individual components have their own copyright. | ||
| isBEKaml_ | pmichaud: sorry, my bad. I misunderstood what you said in phaser y'day. | 22:58 | |
| timbunce | pmichaud: "On Debian GNU/Linux or Ubuntu Linux, the necessary components for building Rakudo can be installed via the command" - but no command given. | ||
| pmichaud | it's a copy-paste error -- it's following the next paragraph. | 22:59 | |
| fixing. | |||
| timbunce | pmichaud: "Blizkost wants to have" needs a few words to say what it is. "Blizkost, the XYZ, wants to have" | 23:00 | |
| pmichaud | also switched minimum Perl to 5.8.4., since that's Parrot's minimum | ||
| timbunce: you may be looking at an outdated copy | |||
| (beta3 was made quite some time ago) | |||
| jnthn | That's updated since beta3 | ||
| ash__ | gah, perl6 has spoiled me, i am getting syntax errors on all my other work because i keep doing: if $foo { } instead of if ($foo) { } | ||
| timbunce | pmichaud: ok, I was looking at the files in the beta3 tarball | 23:01 | |
| pmichaud | timbunce: github.com/rakudo/star/blob/master/skel/README # updated | ||
| Just pushed a few changes to that file from your suggestions. | |||
| Tene | ash__: obviously you need to write a source filter to take care of that for you. ;) | ||
| ash__ | maybe one day soon i can re-write the try.rakudo.org stuff in perl6 instead of using perl5... :-D | 23:02 | |
| ingy | does dalek report star commits? | 23:03 | |
| pmichaud | I thought it did at one time -- it doesn't seem to be doing so now. | ||
| ingy | pmichaud: ok, I just pushed a star commit :) | 23:04 | |
| apparent typo | |||
| pmichaud | ingy++ | ||
| ingy | um, what is this: Method 'incorporate_candidates' not found for invocant of class 'Undef' | 23:15 | |
| jnthn | A very bad thing. | 23:18 | |
| ingy: What produces it? | |||
| ingy | yaml-pm6 I think | 23:19 | |
| make test | |||
| testml seems to pass make test | |||
| cxreg | ash__: how's ffi going? | ||
| ash__ | cxreg: its done mostly, it's working, i haven't gotten it merged back into the parrot trunk yet though, i am working on a static thunk builder that does the same stuff my new nci thunk builder does, but statically | 23:20 | |
| cxreg | awesome! | ||
| ingy | jnthn: it went away | 23:21 | |
| jnthn: after upgrading * | |||
| ash__ | i have only tested in on 32 bit linux, 64 bit linux, 32 bit OS X and 64 bit OS X, so, i still need to figure out how to test it on windows... | ||
| ingy | where * means everything | ||
| jnthn | ingy: Ah, great. | ||
| cxreg | ash__: i have a good use case, plparrot needs support for some goofy signatures in SPI_* space | ||
| pmichaud | I made some significant refactors to the draft announcement -- comments welcomed | 23:22 | |
| 1. changed the announcement title to include the phrase "Perl 6" | |||
| jnthn | pmichaud: latest at? | ||
| pmichaud | pmichaud.com/sandbox/2010.07.txt # same location | ||
| added paragraph 3 to try to explain the distinction between "Perl 6", "Rakudo compiler" and "Rakudo Star" | |||
|
23:23
HarryS joined
|
|||
| pmichaud | added a sentence after the description of included modules to say that more modules can be found via proto | 23:23 | |
| jnthn | grow | ||
| the Perl 6 codebase, | |||
| cxreg | stackoverflow needs a Perl 6 category | ||
| jnthn | pmichaud: Did you mean by this "grow the amount of code out there" | 23:24 | |
| pmichaud: Some people could somehow confuse it with "make Rakudo's code base bigger" if they're still getting their head straight on the differences. | |||
| pmichaud | jnthn: I meant both meanings, I think. I'm open for a clearer phrasing. | ||
| jnthn | If you meant both, then it's OK. :-) | ||
| * Unicode at the grapheme level | 23:25 | ||
| Aren't we only doing it at the codepoint level ATM? | |||
| e.g. we don't have NGF strings yet? | 23:26 | ||
| pmichaud | I can change it to that | ||
| fixed. | |||
| jnthn | As far as I grok things, our .chars is still really .codes (whereas it should default to .graphs) | ||
| * Unicode strings at levels other than graphemes | 23:27 | ||
| That one wants fixing too | |||
| pmichaud | I fixed it too. | ||
|
23:28
bjarneh joined
|
|||
| jnthn | ah, yes :-) | 23:29 | |
| pmichaud | Added: | ||
| "In many places we've tried to make Rakudo smart enough to inform the | |||
| programmer that a given feature isn't implemented, but there are | |||
| still many that we've missed. Bug reports about missing and broken | |||
| features are welcomed. | |||
| : | |||
| " | |||
| isBEKaml_ | More information about Perl 6 modules can be found at perl6.org/ and github.com/masak/proto. | 23:30 | |
| I thought proto listed modules and perl6.org was a general info site? | |||
| jnthn | pmichaud: I suggest link to modules.perl6.org/ | ||
| isBEKaml_ | "Perl6 and modules" I think would be clear. | ||
| jnthn | Rather than github.com/masak/proto | 23:31 | |
| pmichaud | jnthn: +1 | ||
| jnthn | Since that may get renamed to pls at some point | ||
| pmichaud | I didn't realize modules.perl6.org was available. | ||
| jnthn | :-) | ||
| isBEKaml_ | :) # nor did I | ||
| snarkyboojum | proto.perl6.org redirects to modules.perl6.org now too | 23:32 | |
| pmichaud | modules.perl6.org is the perfect address. | ||
|
23:32
masonkramer joined
|
|||
| pmichaud | at some point we might want to revive the perl6-examples repository, too. | 23:33 | |
| timbunce | I've added a minimal README to DBDI. github.com/timbunce/DBDI/blob/master/README I'll flesh it out before YAPC::EU | 23:39 | |
| pmichaud | timbunce++ | ||
| ingy | rakudo: my $x = []; $x.push("foo"); say $x.perl | 23:44 | |
| p6eval | rakudo fe29cd: OUTPUT«["foo"]» | ||
| ingy | rakudo: my $x = []; $x.push($x); say $x.perl | ||
| p6eval | rakudo fe29cd: OUTPUT«maximum recursion depth exceeded in 'Block::count' at line 5501:CORE.setting in 'Block::count' at line 5505:CORE.setting in 'Any::join' at line 1 in 'Array::perl' at line 2813:CORE.setting in <anon> at line 2813:CORE.setting in 'Any::join' at line 1 in | ||
| ..'Array::perl' a… | |||
| ingy | :P | ||
| YAML++ ;) | |||
|
23:52
Guest86601 joined
|
|||
| Guest86601 | rakudo: say (10.1).succ | 23:53 | |
| p6eval | rakudo fe29cd: OUTPUT«11.1» | ||
| Guest86601 | Duh | ||
| ingy | pmichaud: github.com/ingydotnet/yaml-pm6/tree...udo-star-1 | 23:55 | |
| pmichaud: that's the tagged commit | |||
| pmichaud | ingy++ | ||
| ingy | added some string quoting cases and updated the README | 23:56 | |
| pmichaud: will we add star to the evalbot? | |||
| pmichaud | I dunno. | 23:57 | |
| that's up to the evalbot folks, I suspect :) | |||
| ingy | whodat? | ||
| pmichaud | moritz_ primarily, I think. | ||
| jnthn | pmichaud: ETA for tomorrow's release (roughly, or a "not until after")? | ||
| pmichaud | jnthn: I'm aiming for 12h00 utc | ||
|
23:58
Psyche^ joined
|
|||
| sorear | hmm, yaml-pm6 uses a few unpleasantly advanced features | 23:58 | |
| jnthn | pmichaud: As in, mid-day UTC? | ||
| pmichaud: Or mid-night UTC? | |||
| pmichaud | mid-day | ||
| (mid-night UTC would be in 2 minutes :) | |||
| jnthn | Oh, yes, duh. :-) | ||
| OK, so 12 hours. | |||
| pmichaud | right | ||
| I plan to get online around 11h00, check for any last issues, and then do the release as close to 12h00 as I can make it | 23:59 | ||
| I'm about to cut another beta.tar.gz now | |||
| jnthn | When will there be a tarball for me to check over on Win32? | ||
| Oh, great. | |||
| snarkyboojum | excellent - that'll still be 29th in Oz then :) | ||
| pmichaud | I'm guessing that 12h00 is pretty much "July 29 everywhere" :-) | ||