»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! | Rakudo Star Released!
Set by diakopter on 6 September 2010.
dalek ok: 0d35866 | jest++ | README:
Added info about required texlive-font-util Ubuntu package.
00:33
sorear diakopter: Why kill dalek@feather? 01:16
Juerd++ #feathe1
Juerd Oh, forgot to explicitly mention 01:24
feather1 is back
With half the RAM it had, but we'll see how that works out 01:25
Might not be an issue, given the memory usage drop since svn[web]? was disabled 01:26
colomon Ack, Null PMC access error, but it's in the ABC project, and seems to have something to do with using a pm file.
Juerd++
Juerd Downtime was 30 hours 01:28
sorear Juerd: well, it does mean nobody will be able to build Rakudo on feather anymore
*ducks*
Juerd sorear: How come? Isn't 1200 MB enough?
colomon perlcabal is back! \o/ 01:31
colomon ooo, think I've got the error golfed. never imagined that would be reasonably possible. 01:49
ooo, ack, just me being stupid. colomon--
ash_ wooo perl cabal! 02:06
does that mean try.rakudo.org is online?
Util ash_: looks like, no :( 02:12
rakudo: enum eAB <A B>; enum eXY <X Y>; say eAB.enums.perl, eXY.enums.perl;
p6eval rakudo 8827d0: OUTPUT«{"X" => 0, "Y" => 1}{"X" => 0, "Y" => 1}␤»
Util ???
ash_ sad day, i am sure it will get fixed soon
Util Well, that looks like a bug.
sorear ash_: aren't you supposed to fix it? 02:14
seen jnthn 02:19
aloha jnthn was last seen in #perl6 3 hours 33 mins ago saying "So for arrays and hashes it's the type of the value. my Foo &x menas that you want a sub that declares itself as returning foo, because you get a value out of a sub by calling it.".
sorear jnthn: what do you think about S12:936 02:20
ash_ well, the server is not responding to ssh
so... if i can't ssh, i can't get to the box, plus its hosted in the netherlands, it would be fun to visit, but i live in the us 02:21
sorear TimToady: re. S12:1028, do sub foo($x where { $_ %% 2 }) and sub foo($x where { $_ %%2}) have the same long name? 02:22
s:g/sub/multi sub/ 02:23
sorear FOSSIL ALERT: S12:1365 03:05
sorear colomon: I don't really understand how you're seeing durations as roles 03:13
hudnix rakudo: class A is rw {has A $.next}; my A $x .=new; my A $y .= new; $x.next = $y; $y.next=$x; $x.perl.say 03:16
p6eval rakudo 8827d0: OUTPUT«maximum recursion depth exceeded␤ in 'Mu::item' at line 1191:CORE.setting␤ in 'Mu::item' at line 1191:CORE.setting␤ in '&infix:<=>' at line 1␤ in 'Cool::substr' at line 2253:CORE.setting␤ in <anon> at line 1214:CORE.setting␤ in 'Any::join' at line 1␤ in 'Mu::attribs' at 03:17
..line…
hudnix ".perl" doesn't like recursive data structures very much.
nymacro rakudo: class A { has $.b is rw; }; my $c = A.new(); $c.b := $c; say $c.perl; 03:19
p6eval rakudo 8827d0: OUTPUT«maximum recursion depth exceeded␤ in 'Mu::item' at line 1191:CORE.setting␤ in 'Mu::item' at line 1191:CORE.setting␤ in '&infix:<=>' at line 1␤ in 'Cool::substr' at line 2253:CORE.setting␤ in <anon> at line 1214:CORE.setting␤ in 'Any::join' at line 1␤ in 'Mu::attribs' at
..line…
nymacro rakudo: my $c := $c; 03:20
p6eval rakudo 8827d0: ( no output )
nymacro > my $c := $c; Segmentation fault
std: my $c := $c; 03:22
p6eval std 237d266: OUTPUT«ok 00:01 118m␤»
sorear niecza: my $c := $c; $c = 2; say $c; 03:25
p6eval niecza 4f60774: OUTPUT«2␤»
nymacro hmm, mine just segfaults on $c := $c; 03:26
hudnix mine too.
nymacro backtrace has Parrot_ObjectRef_type () recursing ad infinitum 03:27
sorear yeah 03:28
I wouldn't bother reporting a bug, it's not really fixable
an unavoidable limitation of the current implementation 03:29
basically, := in rakudo replaces the LHS with a reference to the the RHS
nymacro yup
sorear what it should do is replace *the specific reference to the LHS* with a reference to the RHS
rakudo: my $a = 1; my $b = 2; my $c = 3; $a := $b; $b := $c; say $a; 03:30
p6eval rakudo 8827d0: OUTPUT«3␤»
sorear niecza: my $a = 1; my $b = 2; my $c = 3; $a := $b; $b := $c; say $a;
p6eval niecza 4f60774: OUTPUT«2␤»
sorear that should make it pretty obvious what's going on
nymacro sorear, yeah. I know what it does; I was just trying to break things :)
sorear my $c := $c creates an infinite recursion as soon as you try to access the variable
sorear phenny, tell TimToady re. S12:1028, "multi subs with the same long name shadow", do 'multi sub foo($x where { $_ %% 2 })' and 'multi sub foo($x where { $_ % 2 == 0 })' have the same long name? 06:54
phenny sorear: I'll pass that on when TimToady is around.
sorear phenny: tell jnthn I'd like to hear your opinion on S12:936.
phenny sorear: I'll pass that on when jnthn is around.
sorear phenny: tell moritz_ Now that Substitution is gone, I think S12:1365 is a fossil. 06:55
phenny sorear: I'll pass that on when moritz_ is around.
dalek ecza/master: 747ffe7 | sorear++ | / (2 files):
Use a portable API for low-level list ops
07:06
ecza/master: 2be14a1 | sorear++ | / (8 files):
First real implementation of private methods

They are now stored disjointly from regular methods, and are never inherited or overriden. The $foo!Foo::bar syntax is available for calling private methods from other classes; trusts is not implemented.
sjohnson yo dudes 08:30
+ dudettes
sorear hell 08:33
sjohnson o 08:36
sjohnson i wonder how hard it would be to write a cute cipher like blowfish in perl 08:38
moritz_ good morning 08:46
phenny moritz_: 06:55Z <sorear> tell moritz_ Now that Substitution is gone, I think S12:1365 is a fossil.
moritz_ sorear: why do you think it's a fossile? it's just a smart-match 08:48
sorear Because s/// generates an immediate call now, and there's no topicalization 08:51
moritz_ when topicalizes
erm, there's no when 08:52
then it probably needs curlies
handles { s/foo/bar/ }
moritz_ which-dwarf-are-you.blogspot.com/20...l6_30.html 09:10
x3nU ok, i've created r* 2010.09 windows installer ;d 09:34
sorear nice 09:49
x3nU there it is: ftp://x3n.info/pub/apps/win32/x86/rakudo-star/ 10:06
sorear win32/x86 eh 10:09
does nt/mips really count as win32?
x3nU yes
last version of windows for mips was nt4 10:10
which certainly is win32
(nt 3.51, 3.5, 3.1 were 32 too) 10:11
sorear yeah 10:21
dalek kudo: d2e8634 | ronaldxs++ | build/Makefile.in:
Don't require backticks for smolder submissions

Contains code from flussence++
Signed-off-by: Moritz Lenz [email@hidden.address]
10:23
PhatEddy moritz_: what happened to the part of the patch for win32/backticks for Configure.pl ? Thx. 10:38
moritz_ PhatEddy: oh, I missed that 10:39
PhatEddy If you have any questions please let me know ... 10:40
dalek kudo: 7c74c0c | ronaldxs++ | Configure.pl:
Fix git:// URLs on win32; escape %

Signed-off-by: Moritz Lenz [email@hidden.address]
10:45
dalek odel: f3bd7b1 | mberends++ | java/ (5 files):
[java/compiler] generating anonymous funcs to compile the Setting
13:06
moritz_ wow, pugs has a startup time of 0.178s 13:25
au|irc++
moritz_ just made good use of the if $thing -> $var { } construct 13:53
drake1 hello, I bet you were planning perl6 to Squeek! in websites etc. how's the status? 14:05
I would love to add a perl6 object with some animated character 14:07
moritz_ has no idea, what Squeek! is 14:08
drake1 you know like the sound made by a parrot shot by a santa rocket
flussence moritz_: I think he means making it fast 14:09
...enough for direct FCGI, anyway
drake1 easy to distribute VM code objects
ie. cross browser compatible 14:10
and fast 14:11
moritz_
.oO( patches welcome :-)
14:12
drake1 maybe some kind of subclass for the video output task 14:17
better call it studio or stdio 14:18
since the sound and other inputs should be synchronized
moritz_ just added SVG output to his Sudoku class 14:21
nymacro just got his blackjack to 406 chars 14:22
drake1 might be far away 14:41
there's no such thing as a character class for creatures in perl6? 14:42
moritz_ we have character classes... in regexes 14:43
drake1 good point
thank you
perl6 might not be able to do the scene without a world translator 14:44
more than fine 14:46
moritz_ wonders whos fault it is that he doesn't understand most of what drake1 writes
x3nU i've created perl6 syntax definition file for textpad 14:47
drake1 all I thought perl6 would be able to represent a parrot in a native object
x3nU github.com/xenu/perl6-textpad-syntax/ 14:48
moritz_ x3nU++
x3nU it's pretty simple
and probably i forgot to put something in it
moritz_ x3nU: perl6.org/whatever/ has a section on editor support... want to add the link there? 14:49
x3nU why not
moritz_ you have commit access to the perl6.org repo
x3nU done 14:55
dalek href="https://perl6.org:">perl6.org: c88e13a | xenu++ | source/whatever/index.html:
added perl6-textpad-syntax
14:57
drake1 leaves with his Grep Awk Sed. Why even make it faster. 14:58
frettled GAS? 15:00
mberends frettled: perl is also known as awk++ ;) 15:04
dalek href="https://perl6.org:">perl6.org: 9b9eef8 | moritz++ | / (2 files):
update README with more guidelines

Also remove unused jquery file
15:07
href="https://perl6.org:">perl6.org: 1cfd841 | moritz++ | page.js:
remove another stale file
frettled mberends: GAPS! 15:08
mberends frettled: GASP! 15:10
moritz_ GRAPES 15:11
frettled moritz_: what's the 'E'?
moritz_ frettled: it's Extensible, of course 15:12
frettled Grep Ruby Awk Sed Extensible Perl?
mberends Escape Meta Alt Control Shift
moritz_ frettled: the R stands for rm, an invaluable tool for software development 15:17
frettled Of course!
How could I mistake it for 'Ruby'! 15:18
mberends rm: the Swiss Army annihilator 15:22
jnthn
.oO( Why annihalate the Swiss Army? )
15:23
phenny jnthn: 06:54Z <sorear> tell jnthn I'd like to hear your opinion on S12:936.
tadzik 'afternoon 15:26
mberends \o 15:27
moritz_ decides to upgrade his laptop to Debian Squeeze 15:38
moritz_ "what could possibly go wrong" :-) 15:38
dalek p-rx/nom: 77c63c7 | jnthn++ | / (3 files):
Start to build the HOW bits as part of building NQP. Means that one can now write knowhows with attributes in NQP without having to declare an attribute meta-object up front, plus the fledgeling ClassHOW is also getting built.
16:36
p-rx/nom: e33ff5d | jnthn++ | .gitignore:
Update .gitignore to keep status clean.
p-rx/nom: 61e4a50 | jnthn++ | t/nqp/53-knowhow.t:
Some basic tests for knowhow.
rindolf Hi all. 16:53
Today I built a new Parrot and Rakudo for Mandriva Cooker. It went relatively painlessly so thanks. 16:54
diakopter hi 17:28
tadzik hi
rindolf Hi diakopter , tadzik 17:30
x3nU gorzow.gazeta.pl/gorzow/1,35211,845...lowym.html 17:34
ooops
not that window
dalek href="https://perl6.org:">perl6.org: 48dad52 | diakopter++ | source/compilers/index.html:
compilers/index.html updates emailed from putter++ (Mitchell N. Charity)
17:37
moritz_ diakopter: do you know if mncharity has a github account? if yes, we can just give him write access 17:42
diakopter yeah he does 17:45
diakopter I mean, I assume he's mncharity 17:46
dalek href="https://perl6.org:">perl6.org: aa89ccd | diakopter++ | source/compilers/index.html:
mention viv on /compilers/index.html edit STD's entry a bit
17:47
sorear good * #perl6 17:48
moritz_: the docs for the bind_llsig op are a bit outdated 17:49
moritz_ sorear: I know nothing about that op 18:00
mncharity now has commit access to perl6.org
dalek p-rx/nom: 5ece5ae | jnthn++ | src/NQP/Actions.pm:
.WHAT and .HOW become macro-ish.
18:11
p-rx/nom: c3553ca | jnthn++ | src/metamodel/reprs/P6opaque.c:
Forgot to allocate some memory zeroed, which caused all manner of fun.
p-rx/nom: df779fc | jnthn++ | src/metamodel/how/NQPClassHOW.pm:
Get NQPClassHOW up to the point where methods can be added and dispatched within a given class.
p-rx/nom: bab7ae7 | jnthn++ | src/ (8 files):
Implement REPR instance marking/freeing, so that slot mapping tables won't go missing and anonymous types won't leak memory.
dalek p-rx/nom: 5328d08 | jnthn++ | src/metamodel/reprs/P6opaque.c:
The precedence game. Some days you lose it.
18:16
p-rx/nom: 2914f84 | jnthn++ | / (2 files):
Add NQPAttribute attribute meta-object. Very basic for now - just holds a name.
p-rx/nom: 5295760 | jnthn++ | src/metamodel/how/NQPClassHOW.pm:
Fix a language-o, which results in ClassHOW's attribute support now working.
moritz_ jnthn++ # very productive 18:20
sorear rakudo: (-> $x [$y] { })(class { method Capture { [] } }) 18:44
p6eval rakudo 7c74c0: OUTPUT«Internal Error: Rakudo_binding_bind_llsig passed invalid Capture␤ in <anon> at line 2:/tmp/t_1TUlJ8Jb␤ in main program body at line 22:/tmp/t_1TUlJ8Jb␤»
jnthn If you play with capture coercion, you'll get burnt. :-)
sorear jnthn: my tell stands. 18:45
jnthn Suggestions of what error it should give welcome. :-) 18:46
Though the one there is pretty much spot on.
sorear No, not that.
I want you to comment on S12:936
jnthn Oh!!
Sorry.
sorear It doesn't make any sense to me
jnthn Got distracted when I saw it and then just forgot...
jnthn looks
sorear unrelatedly, I see that Rakudo's binder does exactly the one thing I was trying to avoid by generating inline code for signatures 18:47
so maybe it isn't so unacceptable after all :-)
jnthn Which is?
Inferior runloop probby?
sorear Yes
jnthn Yeah. Ugly.
My hope is Lorito will save us some day... 18:48
But given that I'm not sure we've got a single RT ticket related to this case of the inferior runloop, my conclusion is that it's rare enough not to worry over too much for now. 18:49
sorear If Lorito lives up to the plans I'm ditching .NET.
I wonder if we should spec a list of contexts where &take calls are legal 18:50
since almost every implementation has ad-hoc restrictions 18:51
but there is a common notion of "normality"
moritz_ it's OK for implementaitons to have limitations
sorear jnthn: so. lastcall; nextsame. Does it make any sense? 18:52
jnthn gah, my local copy of the spec is still the svn one. 18:53
sorear: It doesn't look insane to me. 18:57
sorear: I think lastcall isn't excetion-throwy like last
But rather mark-y
That's the way I have it in Rakudo now
It just says "oh, throw away the rest of the candidate list you have" but returns control after it's notified the dispatcher to throw stuff away
Oh but hmm 18:58
How does nextsame know to skip up a level when it'd not do so normally...
Oh, the spec talks about a dispatcher stack.
sorear: Anyway, I think if that's going to work lastcall returns after doing something. 19:00
sorear: But I agree it could be rather messy to implement.
sorear jnthn: if lastcall; returns, how does lastcall; nextsame; work? 19:14
jnthn sorear: I can think of ways it could work, but none of them seem appealing or likely off hand. 19:16
sorear: Thing is, this bit of the spec is new since I implemented lastcall/nextsame etc
sorear: I think this may be a good one to punt to TimToady++. 19:17
bbl, noms 19:23
dalek odel: 2947a00 | jnthn++ | dotnet/runtime/Metamodel/Representations/P6opaque.cs:
[dotnet] Fix a silly bug in P6opaque's slot computation logic.
21:38
p-rx/nom: 9a575ba | jnthn++ | src/metamodel/reprs/P6opaque.c:
Fix a silly bug in P6opaque's slot computation.
21:41
p-rx/nom: 301e63e | jnthn++ | src/metamodel/how/NQPClassHOW.pm:
Get class inheritance working.
dalek p-rx/nom: ded349e | jnthn++ | src/NQP/Compiler.pir:
Ensure init of the meta-model is the first thing that happens, even before we load the HOWs. First step on the way to enabling us to switch class keyword to ClassHOW.
21:57
sorear jnthn, the great motivator 22:00
jnthn Motivator? 22:01
If my commits cause motivation, I should get my $dayjob ones reported here too. :-) 22:03
plobsing can one get a job as a "motivational commiter"? 22:04
moritz_ plobsing: sure... just give me your github ID, and you'll get access to most Perl 6 repos :-) 22:05
jnthn mmmm...Krusovice \o/ 22:08
moritz_ shouldn't promise commit bits when his computer is stuck in an unfinished upgrade, and he doesn't know if he even has a working graphical browser 22:10
sorear elinks++ # was my favorite browser once 22:13
dalek odel: 1c5881f | mberends++ | java/runtime/Rakudo/Metamodel/Representations/P6opaque.java:
[java] sync the latest P6opaque slot allocation change from dotnet
22:26
sorear There is something off about signatures 22:27
plobsing moritz_: I adhere to the traditional definition of job. (ie: that which gets you paid)
sorear Sometimes they need to be cloned, sometimes they need to existstatically
araujo wonders if it is useful enough to create the concept of numeric range "1 .. 9" in a language 22:43
dalek p-rx/nom: 3c25cb5 | jnthn++ | src/NQP/Actions.pm:
Get 'is Parent' to actually call .^add_parent.
22:45
p-rx/nom: 3514c77 | jnthn++ | src/NQP/Actions.pm:
Get package decls with :: in the name working for new-style packages.
jnthn phenny: tell pmichaud I've got to the point where my next blocker is PCT::HLLCompiler needing to be moved into the nqp-rx repo and (at lesat somewhat) nqp-ized. 22:50
phenny jnthn: I'll pass that on when pmichaud is around.
jnthn sorear: (siggies) Yeah...parametric roles are the most obvious place where we probably need to be doing cloning of them, if we want to really get stuff right. 23:31
(to reify the nominal type constraints when they're type parameters) 23:32
sorear jnthn: the problem with cloning sigs is that it makes &foo.signature not work at all 23:48
or rather, &foo.signature needs to return some kind of StaticSignature 23:49
which can be introspected, but doesn't have ACCEPTS 23:50
jnthn Is there a situation where you get an un-reified sig? 23:52
In role Foo[::T] { our sub foo(T $x) { } } you'd probably have to provide a T to get at that. 23:53
I guess I see role declarations as really being factories that build a parametrized version of all the stuff in them.
e.g. roles are "uninstantiable" to the degree that you can't do anything with one until you give some parameters (which may be the empty set of parameters). 23:55
Including looking at stuff inside of it.
Foo.^methods where Foo is a role almost certainly means Foo[].^methods