The topic for #perl6 is: pugscode.org/ planetsix.perl.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/ Set by TimToady on 25 November 2008. |
|||
jnthn got a nice bit of thinking, planning and scribbling done on various things he needs to implement for his grant done today. | 00:04 | ||
Maybe we get some code tomorrow too. :) | 00:05 | ||
Leon_ | That would be nice | ||
jnthn | @tell TimToady I'm interested in working to get together a draft on S14. A lot of it seems it will involve moving stuff from other areas of the synopses to there. Are you (a) interested in me working on this, and if so (b) would you prefer me to just copy and reference stuff from other synopses so we can remove it from them later, or just to move stuff? | 00:11 | |
lambdabot | Consider it noted. | ||
Leon_ | What's supposed to be in S14? | ||
Hinrik | "Roles and Parametric Types" is what perlcabal.org/syn says | 00:12 | |
Leon_ | Sounds interesting | ||
jnthn | Basically, S12 is really huge, and the idea is to split some stuff (the roles stuff) out of that in to S14. | 00:13 | |
Just to keep it more managable. | |||
Plus I want to flesh a few things out a bit more than I feel could use some more details/speccing. | |||
But much of it is moving stuff around rather than adding anything new. | 00:14 | ||
Leon_ | Some are really big, some are so small that I don't understand why they aren't merged | ||
00:15
iblechbot left
00:17
vixey left
00:20
ZuLuuuuuu joined
00:50
Leon_ left
00:52
aindilis joined
01:10
km2 joined
01:20
Eevee joined
01:34
ZuLuuuuuu left
01:37
DemoFreak left
01:44
FurnaceBoy left
|
|||
meppl | good night | 02:33 | |
02:34
meppl left
02:48
kanru left
02:54
kanru joined
03:10
Psyche^ joined
03:22
Patterner left,
Psyche^ is now known as Patterner
03:24
rhr_ left,
kcwu left,
smg left,
TimToady left,
lizsac left,
zostay left,
dalek left
03:25
TimToady joined,
rhr_ joined,
kcwu joined,
smg joined,
zostay joined,
lizsac joined,
dalek joined,
irc.freenode.net sets mode: +o TimToady
|
|||
literal | @tell azawawi from [Syntax/Highlight/]Perl6.pm: "This library is free software; you can redistribute it and/or modify it under the same terms asssssss at your option, any later version of Perl 5 you may have available." | 03:30 | |
lambdabot | Consider it noted. | ||
03:35
jhorwitz left
03:39
[particle] left
03:41
agentzh left,
agentzh joined
03:54
[particle] joined
03:58
eternaleye joined
04:01
elmex_ joined
04:16
lambdabot left
04:17
elmex left,
elmex_ is now known as elmex
04:23
[particle] left
04:36
lambdabot joined
04:56
stephens left
05:05
[particle] joined
05:11
eternaleye left
|
|||
[particle] | how much room does a pugs working copy take? i'm low on disk | 05:12 | |
literal | an svn checkout? 375MB here it seems | 05:16 | |
PerlJam | My git-svn checkout takes 126M but that's not a full-history version | 05:17 | |
[particle]: why do you ask? | |||
you'll need a lot more disk to build pugs | |||
[particle] | i'm low on disk, is why | ||
i won't build pugs there, just need src/ t/ ext/ etc | 05:18 | ||
PerlJam | oh, then just get those individually. If you're using svn 1.5, you can even do a sparse checkout of just he pieces you need | 05:19 | |
(or so I hear) | |||
rakudo_svn | r33823 | particle++ | [rakudo] parse submethod declarations | 05:20 | |
PerlJam | btw, my versions of src t and ext are about 15M It's misc and v6 where most of the disk is used it seems | 05:22 | |
pasteling | "literal" at 194.144.99.91 pasted "hello world" (2 lines, 57B) at sial.org/pbot/33636 | ||
Hinrik | huh | ||
is pbot using Perl 5.10 highlighting there? | 05:23 | ||
05:28
eternaleye joined
05:40
alester_ joined
|
|||
pugs_svn | r24287 | hinrik++ | [util/perl6.vim] some operator fixes, add the XopX hyperoperator | 05:50 | |
r24288 | hinrik++ | [util/perl6.vim] small whitespace-related fixes | 05:55 | ||
06:01
azawawi joined
|
|||
azawawi | good morning | 06:01 | |
06:05
justatheory joined
06:22
REPLeffect left
06:26
bmnjuuu7 joined,
bmnjuuu7 left
06:29
r0bby left
|
|||
pugs_svn | r24289 | azawawi++ | [Syntax::Highlight::Perl6] Bumped version to 0.02 | 07:10 | |
r24289 | azawawi++ | [Syntax::Highlight::Perl6] Major refactoring and documentation fixes | |||
07:12
c9s_ left,
c9s joined
|
|||
pugs_svn | r24290 | azawawi++ | [Perl6::Syntax::Highlight] Adding version 0.01 release for future reference | 07:14 | |
r24291 | moritz++ | [t/spec] TODO a test that was accidentially un-TODO'ed in r24283 | 07:36 | ||
07:46
ryanc left
|
|||
rakudo_svn | r33824 | pmichaud++ | [rakudo]: spectest-progress.csv update: 240 files, 5004 passing, 1 failing | 07:50 | |
r33824 | pmichaud++ | Failure summary: | |||
r33824 | pmichaud++ | S04-statements/given.rakudo 17 - should not fall into default in this case | |||
r33824 | pmichaud++ | | |||
r33824 | pmichaud++ | NOTE: This update also changes the ordering of columns in the file, | |||
r33824 | pmichaud++ | see the new headers line for the new ordering. | |||
r33825 | pmichaud++ | [rakudo]: Updates to test_summary.pl and progress-graph.pl scripts. | |||
r33825 | pmichaud++ | * Revise the summary output to be csv compliant (easier spreadsheet import) | |||
r33825 | pmichaud++ | * Reorder columns | |||
r33825 | pmichaud++ | * Update progress-graph.pl to use new column ordering and labels | |||
07:50
alester_ left
|
|||
pugs_svn | r24292 | azawawi++ | [Syntax::Highlight::Perl6] More fixes and refactorings... | 07:52 | |
r24292 | azawawi++ | [Syntax::Highlight::Perl6] No more dependency on YAML::Dumper; | |||
r24292 | azawawi++ | [Syntax::Highlight::Perl6] Replaced yaml() method with parse_trees | |||
07:59
km2 left
08:04
iblechbot joined
08:10
billy- left
|
|||
pugs_svn | r24293 | azawawi++ | [Syntax::Highlight::Perl6] Removed dependency on File::Slurp | 08:14 | |
08:17
pbuetow joined
08:23
dr_df0 joined
08:33
DemoFreak joined
08:36
pbuetow left
09:09
araujo left
|
|||
pugs_svn | r24294 | azawawi++ | [Syntax::Highlight::Perl6] Moved resources inside the lib/rsc folder for 0.02 | 09:14 | |
09:21
bacek joined
09:25
ejs joined
09:29
km2 joined
09:30
justatheory left
09:48
justatheory joined
|
|||
pugs_svn | r24295 | azawawi++ | [Syntax::Highlight::Perl6] deleted a resource that moved to lib/rsc | 09:59 | |
r24295 | azawawi++ | [Syntax::Highlight::Perl6] LICENSE section updated including STD.pm and JQuery | |||
r24295 | azawawi++ | [Syntax::Highlight::Perl6] fixed META.yml license to correct Artistic 2.0 constant | |||
r24295 | azawawi++ | [Syntax::Highlight::Perl6] The resources are now read from the package's rsc dir | |||
10:01
cognominal left
10:04
km2 left
10:19
alanhaggai joined
10:26
dr_df0 left,
dr_df0 joined
|
|||
pugs_svn | r24296 | azawawi++ | [Syntax::Highlight::Perl6] Lazily parse (once) when a method is called | 10:28 | |
r24296 | azawawi++ | [Syntax::Highlight::Perl6] Better validation for possible errors | |||
rakudo_svn | r33829 | moritz++ | [rakudo] Test.pm fix calls to proclaim() in is_deeply, bacek++ | 10:30 | |
r33829 | moritz++ | Patch courtesy by Vasily Chekalkin. Closes RT #61210. | |||
azawawi | moritz_: how do i set "Developer Release" in red in my CPAN account? | 10:31 | |
moritz_ | azawawi: set the version number to something that contains an underscore | ||
10:31
ashizawa joined
|
|||
azawawi | moritz_: thx | 10:32 | |
10:32
meteorjay joined
10:57
bacek left
10:58
bacek joined,
ruoso joined
11:01
Lorn joined
11:04
vixey joined
|
|||
ruoso | Hello! | 11:11 | |
azawawi | hi | ||
moritz_ leaves for lunch... | 11:12 | ||
11:17
SamB joined
|
|||
pugs_svn | r24297 | bacek++ | [spec] Replace "unknown reason" with "want function" for rakudo fudging | 11:22 | |
ruoso having to install all pugs dependencies again... *sigh* | 11:30 | ||
11:32
sri_kraih joined
11:34
spx2 left
11:38
meppl joined
|
|||
pugs_svn | r24298 | azawawi++ | [Syntax::Highlight::Perl6] The version is now 0.01_01 (0.1 developer release) | 11:45 | |
r24298 | azawawi++ | [Syntax::Highlight::Perl6] Added changes history from svn. | |||
r24298 | azawawi++ | [Syntax::Highlight::Perl6] More pod fixes... Nearly there. | |||
r24298 | azawawi++ | [Syntax::Highlight::Perl6] Manifest now includes lib/rsc folder | |||
11:51
alexn_org joined
12:02
spx2 joined
|
|||
ruoso | pmurias++ # v6/smop/test/39 is awesome... | 12:10 | |
12:10
alanhaggai left
12:15
smtms left
|
|||
pugs_svn | r24299 | moritz++ | [t/spec] unfudge a test, bacek++ | 12:21 | |
r24300 | moritz++ | [t/spec] some fudge changes in chomp.t | 12:26 | ||
ruoso | valgrind and libpcl don't get together nicely | 12:28 | |
baest | I'm playing with the grammar stuff under rakudo. I'm trying to parse comments as <ws> which is working, but for some reason it is captured. It is possible to to remove it from capture groups when using rules | 12:35 | |
12:37
bacek left
|
|||
pugs_svn | r24301 | moritz++ | [irclogs] update link to parrot (now parrot.org) | 12:37 | |
moritz_ | baest: when you call them as <.ws> it's not captured | ||
pugs_svn | r24302 | azawawi++ | [Syntax::Highlight::Perl6] More POD fixes... release soon.. | 12:38 | |
baest | moritz_: in my ws rule if have as <.ws_all>*. Itsn't that good enough. The rule applies <ws> automatically so I can't change it there | ||
moritz_ | baest: it should be good enough, and if you have a rule, it should imply <.ws>, not <ws> | 12:39 | |
baest: so maybe you found a bug in rakudo | |||
baest | moritz_: wheee, happy days :) | ||
moritz_ | (oh, and last time I tried, it didn't work to override ws from within rakudo - does that work for you?) | 12:40 | |
baest | moritz_: but thanks | ||
moritz_ | baest: [email@hidden.address] for bug reports, please | ||
baest | moritz_: yep, I copied some code from pipp which works nicely the way I wanted | ||
moritz_: will do | |||
pugs_svn | r24303 | azawawi++ | [Syntax::Highlight::Perl6] Archiving release sent to CPAN | 12:46 | |
12:48
masak joined
12:54
sri_kraih left
|
|||
pmichaud | overriding ws from within rakudo works, if you call the rule properly. | 13:00 | |
moritz_ | pmichaud: properly = explicitly? | 13:02 | |
pmichaud | $str ~~ / <Grammar::rule> / | 13:03 | |
that will honor any <ws> tokens defined in Grammar (or its superclasses) | |||
13:03
araujo joined
|
|||
pmichaud | many have been doing | 13:03 | |
13:04
araujo left
|
|||
pmichaud | $str ~~ Grammar::rule # not correct, and fails to call ws rule | 13:04 | |
moritz_ | rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say 'xab' ~~ m/ ^ <a::b> $ / | 13:05 | |
p6eval | rakudo 33829: OUTPUT[get_string() not implemented in class 'ResizableStringArray'ā¤current instr.: 'parrot;PGE;Match;new' pc 176 (compilers/pge/PGE/Match.pir:115)ā¤] | ||
moritz_ | rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say "yes" if 'xab' ~~ m/ ^ <a::b> $ / | ||
p6eval | rakudo 33829: OUTPUT[get_string() not implemented in class 'ResizableStringArray'ā¤current instr.: 'parrot;PGE;Match;new' pc 176 (compilers/pge/PGE/Match.pir:115)ā¤] | ||
13:05
araujo joined
|
|||
masak | new bug? :) | 13:08 | |
moritz_ | it seems so, yes | 13:09 | |
masak reports | |||
pmichaud | rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say 'xab' ~~ m/ ^ <A::b> $/ | 13:12 | |
p6eval | rakudo 33829: OUTPUT[ā¤] | ||
pmichaud | rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say 'xab' ~~ / ^ <A::b> $/ | ||
p6eval | rakudo 33829: OUTPUT[ā¤] | ||
pmichaud | hmm. | ||
masak | ah, so it was the lower-case 'a'? | ||
pmichaud | yes, because nothing was defined as 'a' | ||
masak | still shouldn't throw that error. | 13:13 | |
pmichaud | agreed, should throw a better one. | ||
masak | (better errors++) | ||
hm, (better errors)++ | |||
:) | |||
pmichaud | (better errors++) has a not-so-good error in it. :-) | 13:14 | |
masak | indeed. :) | ||
moritz_ | rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say "yes" if 'xab' ~~ m/ ^ <A::b> $ / | 13:16 | |
p6eval | rakudo 33829: RESULT[Method 'perl' not found for invocant of class 'PGE;Match'ā¤current instr.: '_block11' pc 29 (EVAL_14:16)ā¤] | 13:17 | |
masak | eh? where does 'perl' get into it? | ||
pmichaud | from the bot | ||
masak | ah. | 13:18 | |
moritz_ | rakudo: grammar A { token ws { 'a' }; rule b {x y}; }; say "yes" if 'xab' ~~ m/ ^ <A::b> $ /; say "done" | ||
p6eval | rakudo 33829: OUTPUT[doneā¤] | ||
masak | Match doesn't have a .perl? | ||
pmichaud | okay, obviously it's not working. | ||
Match doesn't have a .perl yet. | |||
masak thought it did. | |||
pmichaud | yes, I thought it worked also. Maybe I'm just not thinking about it correctly yet. | 13:19 | |
(still waking up here, getting kids to school) | |||
13:20
aindilis left
|
|||
jnthn | pmichaud: You going to be around a bit later on today? | 13:20 | |
jnthn wants to discuss a couple of thingies | |||
13:20
aindilis joined
|
|||
pmichaud | jnthn: I should be around, yes | 13:22 | |
jnthn | OK, great. | ||
jnthn is doing @other_stuff at the moment | |||
Expect to look at Perl 6 things in an hour or so. | |||
pmichaud | sounds good | 13:23 | |
ruoso | I think I'll start a more stable documentation on SMOP... a lot of it is fairly stable now... | 13:36 | |
13:49
xinming_ joined
13:50
xinming left
13:54
araujo left
13:59
xinming_ left
14:00
alech joined,
alech_ left
14:01
Guest26759 left
14:11
rindolf joined
14:12
alanhaggai joined
14:21
ejs left
14:25
araujo joined
14:44
cognominal joined
14:51
spx2 left
15:09
justatheory left
|
|||
pugs_svn | r24304 | ruoso++ | [smop/lowdoc] starting documenting the internals of smop in a more "definitive" way, as the core is getting more stable now. | 15:11 | |
15:19
jhorwitz joined
15:35
jan_ joined
15:40
smtms joined
15:42
jfroebe joined
15:44
spx2 joined
15:57
justatheory joined
|
|||
rakudo_svn | r33833 | jonathan++ | [rakudo] Add Abstraction role. | 16:00 | |
pugs_svn | r24305 | pmurias++ | [lowdoc] fixed typo | 16:06 | |
16:06
pmurias joined
|
|||
rakudo_svn | r33834 | pmichaud++ | [rakudo]: Fix .list method on Mapping and Hash. | 16:10 | |
16:12
adc_penner joined
|
|||
pugs_svn | r24306 | pmichaud++ | [t/spec]: Clean up a few tests. | 16:13 | |
16:18
jfroebe left
|
|||
rakudo_svn | r33835 | pmichaud++ | [rakudo]: Add by-value sort for e.g., %hash.sort { .value } | 16:20 | |
16:28
ruoso left
|
|||
pugs_svn | r24307 | azawawi++ | [Syntax::Highlight::Perl6] LazyMap.pm -> LazyMap.pmc and updated MANIFEST | 16:29 | |
16:31
ashizawa left,
stephens joined
|
|||
pugs_svn | r24308 | azawawi++ | [Syntax::Highlight::Perl6] Bumped version to 0.02 | 16:38 | |
16:40
pmurias_ joined,
pmurias_ left,
pmurias left
16:41
pmurias joined
|
|||
pmurias | @tell ruoso $!foo compiles to self.^!instance_storage.{"..current package..."}{"foo"}? | 16:42 | |
lambdabot | Consider it noted. | ||
moritz_ | perl6: say <a b c>.end | 16:56 | |
p6eval | elf 24308, pugs: OUTPUT[2ā¤] | ||
..rakudo 33837: OUTPUT[cā¤] | |||
pugs_svn | r24309 | azawawi++ | [Syntax::Highlight::Perl6] Removed dependency on YAML::Dumper added by mistake | 16:57 | |
17:00
hanekomu_ joined
17:02
pbuetow joined
|
|||
pugs_svn | r24310 | azawawi++ | [Syntax::Highlight::Perl] No more die-ing just croak-ing ;-) | 17:09 | |
17:11
maerzhase joined
17:25
sri_kraih joined,
dr_df0 left
17:27
iblechbot left
17:29
REPLeffect joined
17:38
iblechbot joined
|
|||
pugs_svn | r24311 | azawawi++ | [Syntax::Highlight::Perl6] refactored string into use constant-s | 17:48 | |
r24311 | azawawi++ | [Syntax::Highlight::Perl6] refactored reading css and ansi files code | |||
17:59
ryanc joined
18:02
hercynium joined
|
|||
pugs_svn | r24312 | azawawi++ | [Syntax::Highlight::Perl6] 'file' option is now called 'page_title' | 18:03 | |
18:08
ruoso joined
|
|||
ruoso | Hello! | 18:10 | |
lambdabot | ruoso: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
masak | y0 | 18:11 | |
ruoso | pmurias, yes... that's the plan | ||
but... one difference actually | 18:17 | ||
$!foo turns into self.^!instance_storage.{$?PACKAGE}<foo> | |||
although hash now has string as keys... hmm | 18:18 | ||
and this also doesn't fit well for private attributes declared inside a role | |||
or not... hmmm | |||
private attributes in roles is something that just feel weird | 18:19 | ||
jnthn | I'm cheating a bit and name-mangling those at the moment... | ||
I think... | |||
pmurias | ruoso: hi | ||
ruoso | hi pmurias | ||
jnthn, the problem is that the private attributes declared by roles are composed as if they were declared by the class itself | 18:20 | ||
which would make then end into the class instance_storage space, not the role | |||
18:21
pete85 joined
|
|||
jnthn | Right, thus why I handled it by mangling 'em... | 18:22 | |
So they were "invisible" to the class. | |||
But it's not really a good long term solution. | |||
ruoso | hmm.. | 18:23 | |
now thinking better... | |||
if we mangle not the attribute name | 18:24 | ||
but the outer scope of the method being installed in the class | |||
thus changing the meaning of $?PACKAGE | |||
pmurias | ruoso: is the roles attribute composed into the class or just the accessor? | 18:25 | |
s/roles/ | |||
ruoso | the attribute itself | ||
I think the accessor isn't | |||
the accessor is generated at a later time, I guess | |||
or not | |||
pmurias | Within a role the C<has> declarator always indicates the declaration | 18:26 | |
from the viewpoint of the class. | |||
pugs_svn | r24313 | azawawi++ | [Syntax::Highlight::Perl6] 'clean_html' option is now 'inline_resources' | ||
r24313 | azawawi++ | [Syntax::Highlight::Perl6] added option 'resource_url' to prefix resources | |||
r24313 | azawawi++ | [Syntax::Highlight::Perl6] when externalized | |||
pmurias | S12:1182 | ||
ruoso | pmurias, you're right | ||
jnthn | Right. Role privates are declared with my, however. | ||
ruoso | that is something different | ||
"Role Attributes", as in "Class attributes" are different from "Attributes declared by the Role" | 18:27 | ||
class Ć instance attributes | |||
jnthn | Are we talking about e.g. role Foo { my $!x; } stuff? | ||
ruoso | no | ||
jnthn | Ah. I was. :-) | ||
jnthn keeps quiet and stops causing confusion. | |||
ruoso | we're talking about role Foo { has $!bar } | 18:28 | |
pete85 | rakudo: ("\r" ~~ token { <[\x00..\x7F]> }) && say 'match' | ||
p6eval | rakudo 33837: RESULT[Method 'perl' not found for invocant of class 'PGE;Match'ā¤current instr.: '_block11' pc 29 (EVAL_14:16)ā¤] | ||
pete85 | rakudo: ("0" ~~ token { <[\x00..\x7F]> }) && say 'match' | ||
p6eval | rakudo 33837: OUTPUT[matchā¤] | ||
jnthn | ruoso: That just uses the classes slot. | ||
It's as if you declared it on the class itself. | |||
ruoso | jnthn, role Foo { my $!x } is simply a lexical variable | ||
jnthn | Nope, it's a role private attr. | ||
ruoso | ok... that's a previous question | ||
it's not clear that "class storage" is really needed | 18:29 | ||
pete85 | shouldn't "\r" ~~ token { <[\x00..\x7F]> } match? | ||
jnthn | You may wish to declare an attribute that is hidden even from the class; a completely private role attribute may be declared like this: | ||
my $!spleen; | |||
(from S12) | |||
ruoso | right... right... | ||
what I mean is that it *can* be done with lexical variables | |||
and that "class storage" might be unnecessary | 18:30 | ||
jnthn | But you get one per instance of the class that this role is composed into, right? | ||
So it's like an attribute. | |||
The scoping is lexical, I completely agree there. | |||
pmurias | ruoso: we don't have proper "class storage" in perl 6 | 18:31 | |
ruoso | jnthn, hm? | ||
jnthn | role R { my $!x; method a { $!x = 42 }; method b { say $!x } } | 18:32 | |
oh, bad example | 18:33 | ||
pmurias | my $!spleen declares an attribute which is only accesible from within that lexical scope, right? | ||
jnthn | role R { my $!x; method a($y) { $!x = $y }; method b { say $!x } } | ||
Yes. | |||
ruoso | pugs: Role Foo { my $!bar; method bla($a) { $!bar = $a }; method ble { say $!bar } }; class A does Foo {}; class B does Foo {}; A.bla(1); B.bla(2); a.ble; b.ble; | ||
p6eval | pugs: OUTPUT[*** ā¤ Unexpected "Foo"ā¤ expecting "=", "(", ":" or operatorā¤ at /tmp/JPD5QnJIYt line 1, column 6ā¤] | ||
jnthn | But it's still a real attribute. | ||
ruoso | pugs: role Foo { my $!bar; method bla($a) { $!bar = $a }; method ble { say $!bar } }; class A does Foo {}; class B does Foo {}; A.bla(1); B.bla(2); a.ble; b.ble; | ||
p6eval | pugs: OUTPUT[*** Class prototype occured where its instance object expected: Aā¤ at /tmp/f4bqj0f3bF line 1, column 39-50ā¤ /tmp/f4bqj0f3bF line 1, column 39-50ā¤] | ||
ruoso | pugs: role Foo { my $!bar; method bla($a) { $!bar = $a }; method ble { say $!bar } }; class A does Foo {}; class B does Foo {}; A.new.bla(1); B.new.bla(2); a.new.ble; b.new.ble; | ||
p6eval | pugs: OUTPUT[*** No such subroutine: "&a"ā¤ at /tmp/6LY4dT6FxC line 1, column 151-160ā¤] | 18:34 | |
ruoso | pugs: role Foo { my $!bar; method bla($a) { $!bar = $a }; method ble { say $!bar } }; class A does Foo {}; class B does Foo {}; A.new.bla(1); B.new.bla(2); A.new.ble; B.new.ble; | ||
p6eval | pugs: OUTPUT[ā¤ā¤] | ||
ruoso | ok... pugs is just wrong here | ||
rakudo: role Foo { my $!bar; method bla($a) { $!bar = $a }; method ble { say $!bar } }; class A does Foo {}; class B does Foo {}; A.new.bla(1); B.new.bla(2); A.new.ble; B.new.ble; | |||
p6eval | rakudo 33837: OUTPUT[ā¤ā¤] | ||
ruoso | rakudo too | ||
jnthn | rakudo: role R { my $!x; method set($y) { $!x = $y; }; method get { $!x } }; class C does R { }; my C $c .= new; $c.set(42); say $c.get; | ||
p6eval | rakudo 33837: OUTPUT[42ā¤] | ||
jnthn | rakudo: role R { my $!x; method set($y) { $!x = $y; }; method get { $!x } }; class C does R { }; my C $c .= new; my C $d .= new; $c.set(42); $d.set(100); say $c.get; say $d.get; | 18:35 | |
p6eval | rakudo 33837: OUTPUT[42ā¤100ā¤] | ||
ruoso | ok... you're doing it as if it were a instance attribute | ||
jnthn | Right. It's an attribute. | ||
ruoso | but it is a "Role Attribute", as if it were a "Class Attribute" | ||
which means that it's visible cross-instances | 18:36 | ||
jnthn | I think the point is that it's not visible to the class. | ||
If it was just a lexical, it'd not call it an attribute in the spec, I don't imagine. | 18:37 | ||
"The name of such a private attribute is always considered lexically scoped." | |||
It's saying the name is lexically scoped rather than the thing itself. | |||
ruoso | hmmm... | 18:38 | |
jnthn | I could be wrong, but it seemed like the obvious interpretation. | ||
ruoso | considering "my $!a" is used to handle "Class Attributes" | 18:39 | |
jnthn | True... | ||
Oh, can you write that in a class? | |||
ruoso | I'd think "my $!a" in a role to have the same behavior | ||
yes | |||
you can | |||
jnthn | It's not mentioned in S12. | 18:40 | |
my $.count; # generates a public read-only .count accessor | |||
But not a $! case. | |||
ruoso | hmm... | ||
let me check... | |||
jnthn | my $!count; # would be no different from my $count, surely? | ||
ruoso | yes... | 18:41 | |
jnthn, S12 mentions my $!foo | 18:42 | ||
jnthn | In a role... | ||
18:42
spx2 left
|
|||
ruoso | let me get the line number | 18:42 | |
jnthn | I meant it doesn't mention it in the context of a class. | ||
Hang on, dev.perl.org/perl6/doc/design/syn/S12.html is up to date, right? | |||
ruoso | it's because it uses %!cache in the class exampel | 18:43 | |
that's why you can't find it ;) | |||
S12:623 | |||
[particle] | jnthn: it's no longer canon. now see pugs/docs/Perl6/Spec/ | ||
ruoso | but S12:623 is there for a long time... ;) | 18:44 | |
jnthn | Hmm. | ||
Yes. | |||
[particle] | hrmm, actually, i wonder if those html docs are generated from the pugs repo now | ||
jnthn | I was searching for my $!foo... | ||
Well, my $! | |||
ruoso | tricky | ||
jnthn | Hmm | ||
Yes. | |||
I don't see the benefit of my $!foo over my $foo in a class. What am I missing? | 18:45 | ||
ruoso | syntax sugar | ||
jnthn | Aha. | ||
ruoso | so it looks like an attribute | ||
18:45
jferrero joined
|
|||
ruoso | and it's consistent with has $.a and has $!a | 18:46 | |
jnthn | True. | ||
ruoso | because my $.foo generates the accessor | ||
jnthn | I'm now pondering how you do declare something in a role that's not visible to the clas... | ||
And is per-instance. | |||
If we're taking my $!foo in a role to mean "one per role nad just a lexical really" | |||
masak | maybe it's not possible. | 18:47 | |
ruoso | my guess is: it's just a lexical variable | ||
oh... right... that was the problem I was talking about in the first place | |||
18:47
hanekom__ joined
|
|||
ruoso | state? | 18:47 | |
no... state is also just lexical | |||
18:47
pbuetow left
|
|||
ruoso | but maybe it's because it really doesn't make sense | 18:47 | |
because there's no "instance of role" | 18:48 | ||
pmurias, btw... I've just realized... $!foo should be actually: self.^!instance_storage{$?CLASS}<foo> | 18:49 | ||
instead of $?PACKAGE | |||
that way | |||
jnthn | The thing that seemed to make having the ability to declare something that was per instance of the class, but only visible inside the role, was that you could write roles that had some state, but you knew wouldn't conflict with attributes coming from elsewhere. | ||
ruoso | when composing the methods of a role into the class, | 18:50 | |
the outer scope of the method is mangled so that $?CLASS is available as the class where the method was composed into | |||
jnthn, yeah... I share your concern, but I understand that a role is invisible after it's composed | 18:51 | ||
18:55
jferrero left
18:56
cognominal left
|
|||
pmurias | ruoso: i don't really understand why my $!spleen should be shared between role instances | 18:56 | |
jnthn | pmurias: It'd just be consistency with my $!spleen in a class, where it'd be shared between class instances. | 18:58 | |
18:59
cognominal joined
|
|||
pmurias | jnthn: where is my $!spleen in a class specced? | 19:00 | |
jnthn | S12 ;-) | 19:02 | |
It's my %!cache though. | 19:03 | ||
Which is why I didn't find it until ruoso pointed it out. :-) | |||
19:08
hanekomu_ left
19:13
pete85 left,
pete85 joined
|
|||
pugs_svn | r24314 | azawawi++ | [Syntax::Highlight::Perl6] Major refactoring of ugly File::Spec->joins and | 19:17 | |
r24314 | azawawi++ | [Syntax::Highlight::Perl6] inlining js/css code. Everything works as expected. | |||
r24314 | azawawi++ | [Syntax::Highlight::Perl6] 0.2 is going soon to CPAN... Have fun;-) | |||
19:24
justatheory left
|
|||
pugs_svn | r24315 | azawawi++ | [Syntax::Highlight::Perl6] Updated Changes prior to 0.2 release | 19:29 | |
19:32
jfroebe joined
|
|||
pmurias | ruoso: $?CLASS is a bit tricky to do correctly in our compiler separate from runtime model | 19:33 | |
pugs_svn | r24316 | azawawi++ | [Syntax::Highlight::Perl6] Archiving 0.02 release | 19:35 | |
ruoso | pmurias, not at all | 19:36 | |
pmurias, $?CLASS is already available | |||
mildew: knowhow Foo { method bar { $?CLASS.baz }; method baz { $OUT.print("1") }; }; Foo.bar; | 19:37 | ||
p6eval | mildew: OUTPUT[Could not find variable $CLASS in the lexical scope.ā¤] | ||
ruoso | hm | ||
? | |||
ah... ok | |||
the problem is in the emitting of $?CLASS | |||
but the variable is there | |||
19:37
jfroebe left
19:39
bacek joined
|
|||
pmurias | szabgab: padre has vim keybindings now? | 19:40 | |
ruoso | pmurias, could you try to fix $?CLASS in mildew? | 19:41 | |
it's ignoring the twigil | |||
pmurias | ruoso: ok | ||
19:43
ejs1 joined
19:47
hanekom__ is now known as hanekomu_
|
|||
pugs_svn | r24317 | pmurias++ | [mildew] hack - the twigil is part of the name | 19:49 | |
pmurias | ruoso: having the twigil be part of the name is a bit of hack | ||
ruoso | why | 19:50 | |
19:50
masak left
|
|||
ruoso | ? | 19:50 | |
pmurias | ruoso: does the sigil affect the way lookup happens? | 19:51 | |
pmurias is sleep deprived so dosn't think very clearly | 19:52 | ||
azawawi wonders what's the schedule for the CPAN indexer... | 19:54 | ||
19:55
ejs1 left
|
|||
ruoso | pmurias, the ? twigil doesn't affect | 19:57 | |
the + does affect | |||
mildew: knowhow Foo { method bar { $?CLASS.baz }; method baz { $OUT.print("is mildew evalbot updated?") }; }; Foo.bar; | |||
p6eval | mildew: OUTPUT[is mildew evalbot updated?] | ||
ruoso | :D | 19:58 | |
19:59
rindolf left
|
|||
pmurias wanders if moving /usr to /home is really good idea | 20:04 | ||
20:05
Lorn left
|
|||
pmurias wanders if moving /usr to /home is really good idea | 20:06 | ||
s/really/really a/ | |||
ruoso | it sure doesn't look like one | ||
pmurias | resizing the partitions is propably the option i should have choosen instead of attempting a symlink | 20:12 | |
20:18
rindolf joined
20:19
masak joined
20:30
alexn_org left
20:37
pmurias left
20:43
pmurias joined
|
|||
ruoso | pugs: class Foo { method bar { say $?CLASS }; }; Foo.bar; | 20:44 | |
p6eval | pugs: OUTPUT[Fooā¤] | ||
ruoso | right... a class stringifies to its name | 20:45 | |
that means that the method Str from Object returns the class name | |||
perl6: say Object.Str(); | 20:46 | ||
p6eval | rakudo 33838: OUTPUT[Object<0x8164c10>ā¤] | ||
..elf 24317: OUTPUT[Can't locate object method "Str" via package "Object" at (eval 117) line 3.ā¤ at ./elf_f line 3861ā¤] | |||
..pugs: OUTPUT[*** No such method in class Object: "&Str"ā¤ at /tmp/yJq660MRxA line 1, column 5-17ā¤] | |||
20:46
pete85 left
|
|||
ruoso | rakudo: say Object; | 20:46 | |
p6eval | rakudo 33838: OUTPUT[Objectā¤] | ||
ruoso | interesting | ||
rakudo: say ~Object; | |||
p6eval | rakudo 33838: OUTPUT[Objectā¤] | ||
ruoso | how does ~Object is different from Object.Str()? | ||
(now that was a badly built sentence...) | 20:47 | ||
20:57
vixey left
|
|||
ruoso later & | 20:59 | ||
20:59
ruoso left
|
|||
rakudo_svn | r33839 | masak++ | [rakudo] made .end return highest index, not last element | 21:00 | |
21:01
hanekomu_ left
21:07
r0bby joined
|
|||
szabgab | pmurias: there is a very limited support of vi key binding | 21:15 | |
azawawi | hi szabgab | ||
szabgab | hi azawawi | ||
azawawi is waiting for the cpan indexer... | 21:16 | ||
21:16
vixey joined
|
|||
azawawi | szabgab: what kind of interfaces do u need for Padre - Syntax::Highlight::Perl6 integration? | 21:17 | |
pmurias | szabgab: very limited but extensible? ;) | 21:20 | |
azawawi | lol | 21:21 | |
szabgab | pmurias: very limited but you are welcome to further patch it, | ||
it is a separate plugin now | |||
21:21
maerzhase1 joined
|
|||
azawawi | how does one contribute to Padre? | 21:21 | |
szabgab | just sign up on padre.perlide.org | ||
on the trac thing and join us on #padre | 21:22 | ||
and I can give you a commit bit | |||
21:22
mberends joined
|
|||
azawawi | cool maybe later once i finish polishing my module... ;-) | 21:23 | |
szabgab | sure, I have to go to sleep anyway :-) | 21:24 | |
azawawi: oh and about interface, I don't know yet | |||
21:25
ryanc left
|
|||
szabgab | I'll look at the module and then talk to you about that but I am not sure I'll have time next week | 21:25 | |
azawawi | szabgab: plz take a look at the $highlighter->parse_trees(); maybe that will help u. | 21:26 | |
szabgab: ofcourse after cpan wakes up to process my 0.02 upload ;-) | |||
azawawi good night & | 21:27 | ||
szabgab | night & | ||
21:28
Lorn joined
|
|||
[particle] | ok, now that i've made that commit (just wait), it's time for lunch and errands! & | 21:31 | |
pugs_svn | r24318 | particle++ | [spec] first incomplete draft of S19. needs fleshing out in many places, but it's at the point where more eyes are sorely needed and very welcome. | ||
21:49
rindolf left
21:54
ryanc joined
22:04
bacek left
22:07
alester left
22:08
mberends left
22:11
pmurias left
22:20
jferrero joined,
ryanc left
22:21
justatheory joined
22:25
slavik joined
|
|||
slavik | what about using mod_perl5 and mod_rewrite have it call rakudo with whatever script needs to be called? | 22:25 | |
22:27
adc_penner2 joined
22:29
Lorn left
22:32
adc_penner2 left
22:33
hanekomu_ joined
22:36
adc_penner left
22:38
ryanc joined
22:43
masak left
22:50
ruoso joined
|
|||
ruoso | Hello! | 22:51 | |
slavik | hi | 22:54 | |
22:59
Limbic_Region joined
23:00
|mjk| joined
23:09
iblechbot left
|
|||
pugs_svn | r24319 | azawawi++ | [Syntax::Highlight::Perl6] META.yml is now copied correctly in 'make dist' | 23:12 | |
r24319 | azawawi++ | [Syntax::Highlight::Perl6] Bumped version to 0.021 | |||
23:13
eternaleye_ joined
|
|||
pugs_svn | r24320 | azawawi++ | [Syntax::Highlight::Perl6] Archived version 0.021 | 23:16 | |
23:25
eternaleye left,
azawawi left
23:32
Eevee left
23:36
ruoso left
23:40
ruoso joined
23:41
vixey left
23:46
spx2 joined
23:56
justatheory left
23:57
jferrero left
|