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 tries to gets his bags packed for the flight to the UK tomorrow | 00:05 | ||
pugs_svn | r24475 | particle++ | [spec] whitespace after commas is not allowed when passing multiple values to a command-line option | 00:06 | |
r24476 | wayland++ | S22 will now be just about the package format; repositories and the build | |||
r24476 | wayland++ | process will be discussed elsewhere. | |||
[particle] | wow. two unrelated spec commits at the same time. | ||
community++ | 00:07 | ||
pugs_svn | r24477 | wayland++ | Removed stuff about repositories and build and install software. | ||
r24478 | particle++ | [spec] ideas on run-time system option and environment variables; minor updates and corrections | 00:08 | ||
[particle] | looks like the index for the spec website may need an update now that S22 has been renamed | 00:10 | |
00:22
iblechbot left
|
|||
mpeter | what's the shebang line in windows? :D i've never used perl in windows before | 00:23 | |
jnthn | mpeter: Windows pays no attention to it anyway. | 00:24 | |
mpeter | hmm | 00:25 | |
lichtkind | mpeter: under win there is no shebang | ||
its association per l file ending | |||
mpeter | k | 00:28 | |
i just spent 20 minutes trying to fix a problem on a website, and it turned out that the problem was only in software that interfaced with the site | 00:29 | ||
that had already been updated 3 times since i installed it >:O | |||
jnthn | OK folks, I'm going to take some sleep... Will be sketchily about for next few days. | 00:31 | |
jnthn -> bed | |||
masak | jnthn: 'night | ||
pmichaud | masak: that error is .... odd. | 00:34 | |
maybe I need to just download and compile november | 00:35 | ||
masak | pmichaud: that sounds like a good idea. | 00:36 | |
pmichaud: I'm pretty sure I realcleaned and built parrot/perl6 by the book before attempting to build November p6w. | 00:37 | ||
pmichaud | I'm building now. | 00:38 | |
yes, I get the same error. | |||
ENOTENOUGHTESTS | |||
okay, let's track it down :-) | 00:39 | ||
masak | :) | ||
pmichaud | fwiw, it might be worthwhile to use the --output=November.pir option instead of > November.pir | ||
that way a failed compile doesn't generate an empty (and more recent) November.pir file | |||
masak | pmichaud: oh! good idea. | ||
masak changes that | 00:40 | ||
mpeter | hey all you perl hackers | 00:41 | |
listen to me play "lucy in the sky" | |||
71.192.179.132/ :D | |||
i wrote it in tribute to larry | |||
pmichaud | looks like the problem is in Dispatcher.pm | 00:42 | |
masak | I'll be mostly cheering by the sidelines during this bug hunt, because I'm struggling with a school task, due sunrise. | 00:47 | |
pmichaud | no problem, I think I've got it. | 00:48 | |
I think we're not restoring all of the $?CLASS etc. variables properly on exit. | |||
(from "use") | 00:49 | ||
masak | oh, ok. | ||
00:50
DemoFreak left
|
|||
eternaleye | masak: You still looking for bugs? `./perl6 -e 'say map{ [ 1,2,3 ] }, ^3;'` segfaults, while p6eval doesn't | 01:00 | |
masak | eternaleye: is that so? | 01:01 | |
masak tests | |||
eternaleye: no segfault over here. | 01:02 | ||
eternaleye | Oh, that's weird. ./perl6 --version reports 33874, while svn reports 34090 | ||
And I just recompiled 2 min ago | |||
masak | eternaleye: we discussed this earlier today, see logs about tools/rebase-rakudo.pl | ||
eternaleye | Okay, thanks | ||
masak | most of the time, I just recompile Parrot, to avoid this kind of problems. | 01:03 | |
eternaleye | I did recompile parrot - make clean, Configure.pl, make world, make perl6 | 01:04 | |
and `find tools -name "*rebase*"` returns nothing | 01:05 | ||
Or is it in the pugs repo? | |||
TimToady | rakudo: class A { has $foo = 7; method x { say $foo } }; A.new.x | ||
p6eval | rakudo 34090: OUTPUT[7] | ||
01:05
apeiron left
|
|||
TimToady | rakudo: class A { { has $foo = 7; }; method x { say $foo } }; A.new.x | 01:06 | |
p6eval | rakudo 34090: OUTPUT[Scope not found for PAST::Var '$foo'current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (src/PCT/HLLCompiler.pir:102)] | ||
TimToady | rakudo: class A { { has $foo = 7; }; method x { say $!foo } }; A.new.x | ||
p6eval | rakudo 34090: OUTPUT[7] | ||
TimToady | that's what it's talking about | ||
when it says "block" | |||
masak | why would anyone use a block like that? | ||
eternaleye | Oh, it's in languages/perl6/tools/ | ||
masak | eternaleye: yes, sorry if I was unclear. | 01:07 | |
TimToady | dunno, but $foo is scoped to the block, and outside it you have to use $!foo, assuming that works at all | ||
masak | TimToady: oki. | ||
TimToady | which it does in places that have access to the private attr | ||
the derived class is just returning undef for a non-existent attr, I presume | |||
should probably have a more violent warning though | 01:08 | ||
a class ought to know what its own private attrs are | |||
and carp on a typo | |||
masak | TimToady: what should the following print? | ||
rakudo: class A { if 0 { has $.a } }; say A.new(a => 5).a | |||
p6eval | rakudo 34090: OUTPUT[5] | 01:09 | |
mpeter | how do you do subscripts in IRC | ||
TimToady | well, that's fine as far as it goes, but any code in there with the has is unlikely to execute | ||
masak | mpeter: how do you do subscripts over the radio? | 01:10 | |
TimToady | it certainly doesn't make the attribute itself conditional | ||
mpeter | you say "subscript" | ||
and "endsubscript" | |||
01:10
hanekomu_ left
|
|||
masak | mpeter: works for me on IRC, too, then. | 01:10 | |
mpeter: or any other similar convention. | |||
TimToady | left lateral click and right lateral click :) | ||
masak | TimToady: so, in effect, 'has' statements are not deterred by conditionals, loops or other things. is that specced? can they occur mid-method? | 01:11 | |
rakudo: class A { method x { has $.a } }; say A.new( a => 5).a | 01:12 | ||
p6eval | rakudo 34090: OUTPUT[5] | ||
TimToady | well, there's no problem with putting the declaration anywhere as long as you don't rely on run-time behavior | ||
it's just like "my" that way | |||
masak | oki. | 01:13 | |
TimToady | if you say 'my $x if 0' you still get $x declared | ||
masak | aye. | ||
TimToady | it's only if you rely on 'my $x = 0 if 0' that you're in trouble | ||
these declarations are all a bit like placeholder vars in finding some outer scope to attach the declaration to | 01:14 | ||
masak | that's a nice way of viewing it. | 01:15 | |
TimToady | 'has $foo' just looks for two scopes, a lexical scope and a class scope | ||
'has $.foo' only has to look for the class scope | 01:16 | ||
one could argue that $^a is really short for 'param $a' or some such | 01:17 | ||
masak | Aristotle++ # in the latest p6l mail, using goto for good. | 01:18 | |
will Perl 6 have a goto? | |||
mpeter | did you guys like my song | 01:21 | |
use of perl 6 considered harmful | 01:23 | ||
masak | mpeter: I went to the page, but my browser lacked the proper plugins. I would have loved to hear your song. | ||
TimToady | masak: see S04:894 | 01:24 | |
01:25
bacek__ joined
|
|||
masak | TimToady: oh, yes. now I remember. | 01:28 | |
from my quick reading, I conclude that Aristotle will be able to do his trick in Perl 6 also. | |||
TimToady | as my response to him indicated... | 01:29 | |
and I hope we can leave it at that :) | |||
pmichaud | r34091 should fix November. And I'm a little surprised it ever worked before. :-) | 01:30 | |
TimToady | I wonder how many people realize Perl can do Duff's Device with computed goto... | ||
pmichaud | ("fix November" => "fix Rakudo so November runs again") | 01:31 | |
masak | pmichaud: :) | ||
TimToady: whoa. | 01:32 | ||
TimToady | [particle]: tainting is supposed to be a built-in role for every object | 01:33 | |
but it's underspecified, fer shure | 01:35 | ||
one of those like-P5 things | |||
pmichaud | I like to read things like "it is specced to work correctly in Perl 6". I find more and more evidence of that every day. | ||
01:35
stephens left
|
|||
TimToady | where "correctly" often means a pain in the patoot to implement | 01:36 | |
pmichaud | yes, I was just looking at how we're going to handle INVARIANT: in Parrot. | ||
TimToady | the goto scan in P5 is quite spectacular | 01:37 | |
pmichaud | but "Perl is all about tormenting the implementors on behalf of the users", so we're on target. :-) | ||
TimToady | we might need to special-case goto to not complain about the bareword following it... | 01:38 | |
since it can refer to a following label | |||
masak | .oO( the waterbed theory of tormentity ) |
||
pmichaud | heh. | ||
TimToady | or require a forward goto to quote the label, maybe | ||
pmichaud | "thus quoth the label, nevermore." | 01:39 | |
or something like that | |||
time for a short break -- bbiab | |||
masak | protolabels :) | ||
pmichaud | masak: if you hear independent confirmation that November is working for others, let me know | ||
rakudo_svn | r34091 | pmichaud++ | [rakudo]: Fix handling of $?PACKAGE, @?PACKAGE, $?CLASS, @?CLASS, etc. | 01:40 | |
r34091 | pmichaud++ | These were pushing null values onto the stacks, which meant they weren't | |||
r34091 | pmichaud++ | being restored properly on exit (as discovered by November++). | |||
TimToady | I can just see someone getting an error message: Label INVARIANT must be quoted | ||
masak | pmichaud: oki. | ||
TimToady | and saying "well, if you can figure that out, why don't you quote it yourself!!!" | ||
masak thought the same thing | 01:41 | ||
TimToady | but then what if you want a computed goto to the return value of an argumentless function call? | ||
or even not argumentless: goto somefunc() | 01:42 | ||
masak | what's the issue? | 01:43 | |
TimToady | we can't just madly autoquote the next identifier after a goto | ||
masak | no... | ||
check if it matches a function first? | |||
TimToady | so I'm thinking we require "goto 'INVARIANT'" unless INVARIANT is predeclared as a label | ||
masak | how do you predeclare a label? | 01:44 | |
TimToady | INVARANT: establishes INVARIANT as a pseudo-type | ||
so it can be used as a bareword afterwards | |||
such as 'next LINE' and such | |||
01:44
Hinrik joined
|
|||
TimToady | that only works because the LINE: came first | 01:45 | |
masak | I guess my question is: "how do you predeclare a label without declaring it?" | 01:46 | |
as in the cases when you have the goto before the label. | |||
TimToady | you don't, you just quote the label in the goto | 01:47 | |
since we allow computed labels | |||
masak | ok. | ||
TimToady | it's easy to recognize a quoted string as immutable | ||
so it doesn't hurt the optimizer much | |||
Hinrik | line 3425 of S05 implies that @() is interpolated in a "" string, while S02 gives me the impression that only variables and method calls/indexes on said variables interpolate, and of course {} | 01:48 | |
01:48
c9s joined
|
|||
TimToady | @() counts as a variable | 01:48 | |
lambdabot | Maybe you meant: . ? @ bf ft id pl rc v wn | ||
Hinrik | I see | 01:49 | |
TimToady | whoops, late for dinner | 01:51 | |
decommuting & | |||
masak | lambdabot: you're funny. | ||
01:53
apeiron joined
01:54
sail0r joined
01:55
alester joined
|
|||
mpeter | why use 'goto' when you can just write functions | 01:56 | |
pugs_svn | r24479 | hinrik++ | [util/perl6.vim] expanded some comments, add interpolated contextualizers, fix problem with some interpolated variables | 01:57 | |
01:58
sail0r left
|
|||
masak | mpeter: I'm not sure if you're kidding, but the discussion centered around a particular problem that Aristotle aired on p6l. | 01:59 | |
it was not solvable by using functions instead of goto. | |||
02:05
alc joined
|
|||
mpeter | link? | 02:35 | |
i'm not aware of a problem that can't be solved using functions that's validly computable | 02:36 | ||
then again, i'm a drug addict | 02:38 | ||
Hinrik | mpeter: www.nntp.perl.org/group/perl.perl6....30031.html | 02:39 | |
and the post that mentions goto -> www.nntp.perl.org/group/perl.perl6....30212.html | |||
rakudo_svn | r34097 | util++ | [codingstd] Added coda to Rakudo's Exception.pir | 02:40 | |
02:41
ChrisDavaz joined
02:46
masak left
02:54
alester left
02:56
PZt joined
|
|||
pugs_svn | r24480 | pmichaud++ | [t/spec]: Add some tests for MAIN sub. | 03:01 | |
03:13
spx2_ joined
|
|||
pugs_svn | r24481 | hinrik++ | [util/perl6.vim] only allow a digit or [ after \c | 03:15 | |
TimToady | Hinrik: \c also allows <[ ? .. _ ]> as a control char | 03:21 | |
Hinrik | yeah, I just realized | ||
pugs_svn | r24482 | hinrik++ | [util/perl6.vim] undo that little bit | 03:22 | |
03:35
cspencer joined
03:45
meppuru joined
03:49
lizsac left
03:50
lizsac joined
03:59
Psyche^ joined
04:02
meppl left,
orafu left,
orafu joined,
alester joined
04:03
meppuru is now known as meppl
|
|||
meppl | good night | 04:06 | |
azawawi | hi | 04:07 | |
04:10
meppl left,
Patterner left,
Psyche^ is now known as Patterner
04:13
alc left
04:17
hercynium joined
04:21
hercynium left
04:31
jimmy__ joined
04:32
jimmy__ left
04:37
c9s left
|
|||
pugs_svn | r24483 | lwall++ | [STD] kludge in X!=:=X and friends | 04:48 | |
azawawi | TimToady: ping | ||
TimToady | you pang? | 04:49 | |
pugs_svn | r24484 | lwall++ | [STD] remove debugging statement | ||
azawawi | yes ;-) | ||
TimToady: i think i found the bug when using STD.pm, context var emulation assumes that 'our var1' will be in main:: but that is not true when you use it in another package | |||
TimToady | yes, I run into that one periodically; usually indicates a missing :: in a $var that should be $::var | 04:50 | |
that emulation is also one of the reasons threading won't work | |||
(I think) | |||
azawawi | TimToady: that's the only method we can do it? so threads out of the question and this bug remains also? | 04:51 | |
TimToady | can you reduce it to a small test case? | ||
there are a few other spots where I gave up on thread safety for the moment too, if I recall correctly | 04:52 | ||
azawawi | it is simple, package Foo { use STD; } and then use Foo; in your script | ||
and then bless error on undefined $:PARSER in statementlist | 04:53 | ||
TimToady | okay, may have a chance to look at it tomorrow | ||
azawawi | cool thx | ||
TimToady | are you running your code through gimme5? | 04:54 | |
azawawi | make clean all | 04:55 | |
and bundling STD.pmc, Cursor.pmc (and renamed LazyMap.pmc) in Syntax::Highlight::Perl6 (misc/Syntax-Highlight-Perl6) | 04:56 | ||
TimToady | but your package Foo is p6 code, so you have to translate to p5 code somehow | ||
azawawi | it is all Perl5 code im using STD.pmc | ||
search.cpan.org/~azawawi/Syntax-Hig...t/Perl6.pm | 04:57 | ||
TimToady | package Foo {...} is p6 syntax | 05:00 | |
azawawi | somehow braces always affect my way of thinking ;-) | 05:03 | |
azawawi writing a test case | |||
05:06
Hinrik left
|
|||
pasteling | "azawawi" at 212.38.154.37 pasted "Testcase for 'Can't call method "bless" on an undefined value at STD.pm line 5269'" (12 lines, 294B) at sial.org/pbot/33912 | 05:10 | |
azawawi | TimToady: done | ||
Hinrik: hi | 05:11 | ||
05:11
Caelum left
|
|||
azawawi | Yay i have #perl6 all to 'my $self' ;-) | 05:12 | |
TimToady | okay, I've reproduced it here, thanks | 05:13 | |
will look at it tomorrow | |||
azawawi | cool | ||
05:25
BinGOs left,
BinGOs joined
05:26
sail0r joined
05:27
sail0r left
|
|||
lichtkind | if i declare a sub in a class, cann i call it with KlassName::subname ? | 05:44 | |
TimToady | yes, a class is just a package | 05:45 | |
cspencer | has the rakudo "($cond) ?? ... :: ..." not been implemented yet or is it just currently broken? | ||
lichtkind | thanks, yes thats consequent | ||
TimToady | use !! instead of :: | ||
cspencer | ah, thank you! | ||
much better! :) | 05:46 | ||
do simple patches go to the request tracker? | 05:47 | ||
TimToady | dunno, I stay out of that end of it | ||
cspencer | alrighty | 05:48 | |
05:53
BinGOs left
05:58
kanru left
06:01
BinGOs joined
06:08
kanru joined
06:09
alech left
06:11
alech joined
06:15
redicaps joined
06:16
redicaps left
06:22
BinGOs left,
BinGOs joined
06:24
bacek__ left
06:30
cspencer left
06:38
alech_ joined
06:39
alester left
06:44
alech left
06:52
pbuetow joined
06:53
justatheory joined,
alc joined
07:24
maerzhase joined
07:26
pbuetow left
07:49
iblechbot joined,
funktio joined
07:53
adc_penner joined
07:54
ejs joined
07:58
kanru left
08:08
lichtkind_ joined
08:09
elmex joined
08:12
mpeter left,
kanru joined
08:13
sail0r joined
08:14
sail0r left
08:15
lichtkind left
08:21
DemoFreak joined
08:26
pmurias joined
08:28
kanru left,
kanru joined
08:33
hanekomu_ joined
|
|||
pugs_svn | r24485 | azawawi++ | [Syntax::Highlight::Perl6] Bumped version to 0.0293 | 08:35 | |
r24485 | azawawi++ | [Syntax::Highlight::Perl6] Renamed parse_trees to tokens and | |||
r24485 | azawawi++ | [Syntax::Highlight::Perl6] it now returns an array of hashes | |||
r24485 | azawawi++ | [Syntax::Highlight::Perl6] Added more tests to check tokens | |||
r24485 | azawawi++ | [Syntax::Highlight::Perl6] Bundled the latest STD.pm and perl6.vim | |||
08:41
rindolf joined
08:50
xiaoyafeng left,
ejs left,
ejs joined
08:54
ejs left,
lumi_ left,
ejs joined
08:57
alech_ left
08:58
alech joined
08:59
pmurias left
|
|||
moritz_ | rakudo: say for 1 | 09:00 | |
09:00
lumi joined
|
|||
p6eval | rakudo 34100: OUTPUT[] | 09:00 | |
09:00
mj41 left
|
|||
moritz_ | rakudo: say for 1 | 09:00 | |
p6eval | rakudo 34100: OUTPUT[Could not find non-existent sub forcurrent instr.: '_block14' pc 55 (EVAL_13:38)] | ||
09:01
kanru left,
kanru joined
|
|||
moritz_ | rakudo: .say for 1 | 09:02 | |
p6eval | rakudo 34100: OUTPUT[1] | ||
moritz_ | rakudo: say $_ for 1 | ||
p6eval | rakudo 34100: OUTPUT[1] | ||
moritz_ | rakudo: say $_ for 1 | ||
p6eval | rakudo 34100: OUTPUT[1] | ||
09:07
hanekomu_ left
|
|||
rindolf | rakudo: .say for "moritz_" | 09:08 | |
p6eval | rakudo 34100: OUTPUT[moritz_] | ||
moritz_ | (I was testing RT #61494) | 09:10 | |
09:21
maerzhase left
09:22
adc_penner left
|
|||
eternaleye | Is it normal for rebase-rakudo.pl to run for 8h 15m? | 09:25 | |
moritz_ | I've never run it, but I seriously doubt it | ||
eternaleye | Hm. Attaching strace to it gives 'read(3,' and no further output | 09:27 | |
moritz_ | eternaleye: maybe press Ctrl+D? | 09:28 | |
eternaleye | Well, that FD is a pipe, so I figure it did an open with '|', so I checked for processes with that ppid, which is svn up. Stracing that gives 'restart_syscall(<... resuming interrupted call ...>' | 09:30 | |
Guess I'll kill that | |||
09:30
ChrisDavaz left
09:43
aindilis left,
aindilis joined
|
|||
moritz_ | pmichaud: novemeber compiles fine for me with trunk (the tests barf, but I think that's a harness error, not a rakudo problem) | 09:47 | |
pugs_svn | r24486 | azawawi++ | [Syntax::Highlight::Perl6] Fixed ->new croak bug about text => q{} | 09:49 | |
r24486 | azawawi++ | [Syntax::Highlight::Perl6] Add a test to check for this bug | |||
r24487 | azawawi++ | [Syntax::Highlight::Perl6] $VERSION is now 0.0294 # releasing to CPAN | 09:51 | ||
09:52
smtms left
09:55
kanru left,
kanru joined
10:01
jferrero joined
10:07
jferrero left
10:13
kanru left
10:16
alc left
10:19
drbean left
10:33
iblechbot left
10:37
gfldex is now known as Guest88559,
gfldex_ joined
10:49
Guest88559 left
10:52
sail0r joined,
agentzh left
10:53
agentzh joined
10:54
justatheory left,
kane_ joined
10:59
kanru joined
11:08
pmurias joined
11:13
kanru left
11:18
kanru joined
11:46
pmurias left
11:47
pmurias joined
12:00
jan_ left
12:01
iblechbot joined
|
|||
spx2_ | does perl6 hasve threads or sockets yet ? | 12:08 | |
does it have IPC ? | |||
does it have bindings with some popular windows framework ? | |||
like wx,Qt or Gtk ? (or mayeb others ?) | 12:09 | ||
I'm trying to find out if I can use it for one of my projects :) | |||
it would be very nice if I could use it | |||
but I'm not sure how much of it is finished yet | 12:10 | ||
also,the Object oriented system , is it finished or in progress ? | |||
12:10
pmurias left
12:23
Limbic_Region joined,
alech left
12:24
ejs left
12:26
alech joined
12:28
iblechbot left
12:42
masak joined
|
|||
masak | spx2_: threads, sockets, IPC: I don't think so | 12:43 | |
spx2_: bindings to windowing frameworks: there is a project related to that, yes. other people here are bound to know more about it than I. | |||
spx2_: much of the object system has been implemented, but not everything. submethods are still missing, for example. | 12:45 | ||
spx2_: all in all, check out Rakudo and try it. take a look at the spectests to see what's been implemented already. | |||
12:45
c9s joined
12:47
jan_ joined
|
|||
masak | moritz_: sometimes parsing in Perl 6 still surprises me. so `say for 1` looks for the sub &for? | 12:49 | |
pugs_svn | r24488 | azawawi++ | [Syntax::Highlight::Perl6] Fixed _escape_html to actually work | 12:50 | |
r24488 | azawawi++ | [Syntax::Highlight::Perl6] Added tests to verify that html escaping works | |||
r24488 | azawawi++ | [Syntax::Highlight::Perl6] $VERSION eq '0.0295'; #Releasing to CPAN | |||
azawawi Not bad... Padre can now generate the simple, snippet and full HTMLs and open them in your default browser | 12:58 | ||
12:59
justatheory joined
|
|||
lichtkind_ | is it right that in p6 metaclasses and protoobjects are the same thing? | 12:59 | |
12:59
riffraff joined
13:00
justatheory left
|
|||
masak doesn't think so | 13:00 | ||
lichtkind_: when you say `my Int $a`, you get a prototype Int object. | 13:03 | ||
lichtkind_ | but? | 13:04 | |
masak | lichtkind_: when you say `$a.HOW`, you get the metaclass object. | ||
13:04
lichtkind_ is now known as lichtkind
|
|||
masak | those are two different things. | 13:04 | |
lichtkind | that reminds me that how means in german beating :) | ||
13:04
pmurias joined
|
|||
lichtkind | masak: thanks but im not wiser than before | 13:05 | |
masak | lichtkind: how can that be? you ask whether they are the same thing, and I say "no". :) | 13:06 | |
that's exactly one unit of wisdom, right there. | |||
lichtkind | masak: yes im now better informed but still clueless what mtaclasses are :) | 13:08 | |
masak | lichtkind: I haven't used them much yet, since they are not implemented in Rakudo. | 13:09 | |
lichtkind | masak: thats how science works, tons of infos but seldom insight | ||
masak | lichtkind: but apparently they contain information about their class. | ||
13:09
Limbic_Region left
|
|||
masak | lichtkind: so you can ask ^Dog about the methods defined in the Dog class. | 13:10 | |
lichtkind | masak: but there are no klasses in p6 i think i read | ||
masak | lichtkind: no, but classes :) | ||
lichtkind: you need to ack for 'classes' with a 'c' :) | |||
there's plenty of those. | |||
lichtkind | masak: but class generates a protoobject | 13:11 | |
anyway, have to leave | |||
tanks for answers | |||
masak | np | ||
good luck! | |||
pmurias | metaclass is the class of the metaclass instance (the thing .HOW returns) | 13:12 | |
lambdabot | pmurias: You have 2 new messages. '/msg lambdabot @messages' to read them. | ||
pmurias | the metaclass instance is the thing you use for manipulating a class | 13:13 | |
masak | pmurias: oh, that's true. | 13:15 | |
lichtkind | pmurias: yes but i thought thats the protoobject :) | ||
masak | lichtkind: it isn't. | ||
pmurias | the protoobject is used to call methods without a real object | 13:16 | |
masak | a protoobject is just an uninstantiated object. | 13:17 | |
pmurias | masak: you can use metaclasses in perl5 with Moose | ||
masak | pmurias: true. haven't done that yet, though. | ||
seems very powerful. | |||
13:18
Limbic_Region joined
|
|||
masak | perl6: class A { method foo {} }; my $a = A.new; foo $a: # should this work? | 13:18 | |
pmurias | using a metaclass instance is easier then using tons of strange perl5ish syntax | ||
p6eval | rakudo 34104: OUTPUT[Statement not terminated properly at line 1, near ": # should"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)] | ||
..elf 24488: OUTPUT[Undefined subroutine &GLOBAL::infix_58_58 called at (eval 121) line 9. at ./elf_f line 3861] | |||
..pugs: RESULT[undef] | |||
13:18
vixey joined
|
|||
masak | Pugs++ | 13:18 | |
pmurias | one confusing thing with metaclasses is that people tend to call the "metaclass instance" the metaclass | 13:20 | |
masak | I guess "metaclass object" would work fine as well. | ||
using "instance" right next to "class" feels strange. | 13:21 | ||
pmurias | the metaclass instance is an instance of the metaclass | ||
masak | I know that. | 13:22 | |
but an instance is just an object. | |||
13:23
alc joined,
justatheory joined
13:25
riffraff left,
rindolf left
13:26
araujo left
13:37
justatheory left
13:42
riffraff joined
13:47
pdcawley joined
14:12
meppl joined
14:17
alester joined,
alester left
|
|||
spx2_ | and how can I implement new stuff for perl6 if I want to ? | 14:36 | |
masak | spx2_: you mean contribute to Perl 6 development? | ||
well, download Rakudo and give it a spin. find something that isn't implemented. come back here and complain. submit bug reports. herd spectests. submit patches. | 14:37 | ||
that's what I did. :) | 14:38 | ||
spx2_ | that sounds interesting | ||
moritz_ | or: pick a project, implement it in Perl 6, come here to report bugs ;-) | 14:40 | |
that's also what masak did | |||
masak | :) | ||
14:41
lichtkind left
|
|||
azawawi wonders what to do next ;-) | 14:41 | ||
14:42
meteorjay joined
|
|||
moritz_ | azawawi: goto t/TASKS. Read. Implement. Get karma ;-) | 14:43 | |
masak | moritz_++ # always full of good ideas :) | ||
14:45
alexn_org joined
14:46
cspencer joined
14:53
sail0r left
14:54
sail0r joined
15:01
sail0r left
15:05
iblechbot joined
|
|||
pugs_svn | r24489 | moritz++ | [t/spec] more tests for infix:<...> | 15:06 | |
15:11
rindolf joined
15:14
azawawi left
|
|||
moritz_ | @tell TimToady S12:307 $obj.@candidates seems underspecced to me. Does it call all methods in @candidates? in order? parallel? or the first item in @candidate with a matching signature? | 15:19 | |
lambdabot | Consider it noted. | ||
15:19
justatheory joined
|
|||
eric256 | couldn't things like infix:<...> be implemented in pure perl as part of modules? | 15:22 | |
guess thats the normal where do you draw the line between part of the language and additions to the language | 15:23 | ||
15:26
donaldh joined
15:27
smtms joined
15:31
Lorn joined,
ft left
15:32
xinming joined
|
|||
moritz_ | what's the Perl 6 equivalent to $^X? | 15:35 | |
15:36
gfldex_ is now known as gfldex
15:37
kane_ left
15:38
azawawi joined
|
|||
eric256 | :q | 15:39 | |
dear god, me and my freaking windows :) this is the problem with having three monitors | |||
15:40
alc left
15:41
alech left
|
|||
azawawi | moritz_: ping | 15:42 | |
moritz_ | azawawi: poin | 15:43 | |
azawawi ping timeout ;-) | |||
moritz_: given that perl6.vim is all regexp, it can be processed by a perl5 library to produce highlighting... | 15:44 | ||
azawawi thinks... | |||
moritz_ | azawawi: aye. But the regex syntax in vim is different, so you'll have lots of fun converting them to perl regexes ;) | 15:45 | |
pmurias | azawawi: you mean turning perl6.vim into perl5 code | ||
? | |||
azawawi | pmurias: no i mean intepreting vim regexp... | ||
15:45
Limbic_Region left
|
|||
azawawi | pmurias: vim regexp interpreter | 15:46 | |
pmurias | what would be the point? | ||
azawawi Syntax::Highlight::Perl6Vim... | |||
faster | |||
pmurias | no | ||
azawawi | why not? | 15:47 | |
pmurias | interpreting them doesn't seem much faster ;) | ||
eric256 | is pod working in rakudo? | ||
moritz_ | eric256: it is ignored by the compiler | ||
eric256: pod6 as described by S26, at least | |||
eric256 | then i must be doing pod wrong | ||
azawawi | pmurias: oh well, im gonna try it for fun ;-) | ||
moritz_ | =begin something\n...\n=end something | ||
eric256 | oh maybe its just "=begin end" thats not working yet | 15:48 | |
pmurias | otoh if you translated them to perl5 regexes... | ||
moritz_ | azawawi: well, if you compile the vim regexes into perl regexes, you might find it's quite fast | ||
15:49
hercynium joined
|
|||
azawawi | moritz_: you mean something like to compile perl6.vim -> regexp and then run the perl5 code | 15:49 | |
moritz_ | azawawi: aye | ||
azawawi | moritz_: gimmeVim5? ;-) | 15:50 | |
moritz_ | azawawi: yes ;-) | ||
azawawi is going to start on that project tomorrow | 15:51 | ||
moritz_: export highlighted html is now functional in Padre::Plugin::Perl6 btw | 15:52 | ||
cspencer | good morning all | ||
eric256 | ahh the start and end tags have to match (yes thats obvious but i never did pod and just wanted an __END__ :) ) | ||
pmurias | azawawi: speeding up STD would be a harder but much more usefull project | 15:53 | |
azawawi | pmurias: sure | ||
azawawi takes a note of that suggestion | 15:54 | ||
pugs_svn | r24490 | moritz++ | [t/spec] basic first tests for say together with array refs | 16:00 | |
pmurias | azawawi: re log file in the S::H::P6 it's created by STD | 16:03 | |
16:04
c9s left,
c9s joined
|
|||
eric256 | is modifying grammar.pg and then make perl6 enough to play with changing the grammar? /me assumes so but just wants to check | 16:04 | |
cspencer | i've got a question if anyone's free to take it :) | ||
moritz_ | eric256: that's enough, yes | 16:05 | |
cspencer: feel free to ask, maybe somebody can help you | |||
cspencer | according to S29, some of the math builtins are supposed to return values of Int, but they're currently returning Num's, so something like: my Int $x = floor(4.3); will fail on account of type mismatch | ||
should that be fixed in the math.pir? | |||
i'll submit a patch in a bit if so | 16:06 | ||
moritz_ | rakudo: my Int $x = floo(3.4); say $x; | ||
p6eval | rakudo 34109: OUTPUT[Could not find non-existent sub floocurrent instr.: '_block14' pc 114 (EVAL_12:63)] | ||
moritz_ | cspencer: good catch, please submit patch | ||
cspencer | shoud i put it into the RT? | ||
moritz_ | yes | 16:07 | |
cspencer | will do | ||
eric256 | rakduo: my Int $x = floor(3.4); say $x; | ||
moritz_ | eric256: you have a zero-width non-breaking space after the colon, which p6eval doesn't like | 16:08 | |
cspencer | rakudo: my Int $x = floor(3.4); say $x; | ||
p6eval | rakudo 34109: OUTPUT[Type mismatch in assignment.current instr.: 'die' pc 14378 (src/builtins/control.pir:188)] | ||
cspencer | rakudo: my $x = floor(3.4); say $x; | 16:09 | |
p6eval | rakudo 34109: OUTPUT[3] | ||
eric256 | rakudo: my $x = floo(3.4); say $x.WHAT; | ||
p6eval | rakudo 34109: OUTPUT[Could not find non-existent sub floocurrent instr.: '_block14' pc 58 (EVAL_12:40)] | ||
eric256 | oh shoot | ||
rakudo: my $x = floor(3.4); say $x.WHAT; | |||
p6eval | rakudo 34109: OUTPUT[Num] | ||
eric256 | how do you rewrite "begin \h+ end .*?" to match everything that follows? .*? doesn't seem to work, i want to match all the way to the end of the string | 16:10 | |
16:10
spx2_ left
|
|||
masak | eric256: then you shouldn't use the question mark. | 16:12 | |
it makes the quantifier reluctant instead of greedy. | 16:13 | ||
eric256 | oh of coures it does. lol | 16:14 | |
azawawi | pmurias: yes, what about the log? | ||
pmurias | azawawi: so it in the BUGS section and wanted to confirm it's created by STD | 16:15 | |
azawawi | pmurias: yup | 16:16 | |
pmurias: do u know how to parse error messages from STD? | 16:17 | ||
pmurias | s/so/saw/ | 16:18 | |
eric256 wonders how long make spectest takes to run ;) | |||
is there a report page showing nightly builds / test success? | |||
pmurias thinks about the errors | 16:19 | ||
azawawi: why do you want to parse them (editor integration?) | 16:21 | ||
masak | eric256: rakudo.de/ | 16:22 | |
azawawi | pmurias: im already STD->parse while highlighting things and i thought why not expose the extra information... | ||
masak | eric256: maybe not exactly what you want, though. | ||
azawawi tries to load STD.pm inside Padre | 16:25 | ||
pmurias | azawawi: i think looking at the part of STD which generates them and seeing how it does it is the best way | ||
eric256 | yea i was hoping for a chart of test files and pass/fail rates for each file...would be nice to have one that runs unfudged too to see if any tests pass unexepectidly ;) | 16:27 | |
azawawi | moritz_: in .p6 -> perl 6 what about .pm? .pm6? | 16:28 | |
16:28
alech joined,
hercynium left
|
|||
masak | eric256: svn.perl.org/parrot/trunk/language...ogress.csv | 16:29 | |
cspencer | this is a dumb question, but how do i get a patch into RT? can i do that via the web interface? | ||
avar | yes | ||
masak | cspencer: no. | 16:30 | |
cspencer: send an email to rakudobug | |||
cspencer | ah, ok, thanks masak | ||
masak | (if it's a Rakudo patch) | ||
cspencer | it is :) | ||
16:30
c9s_ joined
|
|||
masak | cspencer++ # submitting Rakudo patches | 16:32 | |
16:33
araujo joined,
hercynium joined
|
|||
cspencer | ok, sent! | 16:34 | |
16:35
stephens joined
|
|||
eric256 | okay i've got a patch ready for =begin END and =END, but i don't have a clue how to test it ;) any ideas how to test pod? | 16:35 | |
moritz_ | azawawi: perl scripts end with .pl, modules with .pm. With Perl 6 as well. | 16:37 | |
masak | eric256: make a set of minimal pieces of code and POD mixed, whose syntactic legality you want to test. | 16:38 | |
eric256: then test them with eval() and see if they compile. | |||
eric256 | okay..but everything after an =END gets ignored... | 16:39 | |
16:39
alech left
|
|||
moritz_ | so write something that would cause a syntax error after the =END | 16:39 | |
16:40
alech joined,
ihrd joined
|
|||
cspencer | rakudo: sub foo (Int $x?) { say "x = $x" }; foo(); | 16:42 | |
p6eval | rakudo 34110: OUTPUT[Parameter type check failed in call to foocurrent instr.: 'die' pc 14378 (src/builtins/control.pir:188)] | ||
cspencer | how should optional typed parameters be dealt with in the above case? | 16:43 | |
masak | cspencer: looks like a bug to me. | 16:44 | |
cspencer | is there an uninitialized value that should be used? | ||
ok | |||
masak | cspencer: care to submit to rakudobug? | ||
cspencer | will do | ||
masak | cspencer++ | ||
ihrd | hi there | 16:45 | |
If I have class Foo {}; and do Foo.method; Foo.another_method; Foo.yet_another_method; I have new instance of Foo each of that call? I think so, but mb I miss something. | 16:47 | ||
masak | ihrd: no, I don't think so. | 16:48 | |
all those calls are made on the proto object. | 16:49 | ||
16:49
c9s left,
masak left
|
|||
pugs_svn | r24491 | pmurias++ | [mildew] moved some stuff into AST::Helper | 16:49 | |
r24491 | pmurias++ | a large part of mold for AST::Package is created by creating simpler AST nodes | |||
ihrd | Foo read file for fill its attributes | 16:50 | |
thats file readed only once? | |||
16:50
adc_penner joined
|
|||
eric256 | there we go, had to make it two test files | 16:51 | |
16:51
riffraff left
|
|||
cspencer | is it possible to add methods written in perl 6 onto builtin classes? | 16:52 | |
ie) add a p6 method onto the List builtin class | |||
pugs_svn | r24492 | eric256++ | [t/spec/S02-whitespace_and_comments] Added test files for =END and =begin END | ||
16:55
donaldh left
|
|||
eric256 | rakudo: class B is Int { method t { say "hello"} }; my B $b = 5; | 16:56 | |
p6eval | rakudo 34110: OUTPUT[Type mismatch in assignment.current instr.: 'die' pc 14378 (src/builtins/control.pir:188)] | ||
eric256 | masak: i was thinking something more like perlcabal.org/smoke.html | 17:01 | |
17:09
c9s joined
17:11
c9s_ left
17:14
alexn_org left
17:15
samlh left
17:20
hercynium left
|
|||
eric256 submited PATCH#61534 and tests for =END and =begin END ;) | 17:23 | ||
17:27
alester joined
|
|||
pmichaud | STD.pm doesn't seem to support =END ...? Or am I just missing it? | 17:30 | |
rakudo_svn | r34112 | pmichaud++ | [rakudo]: spectest-progress.csv update: 250 files, 5213 passing, 0 failing | ||
r34114 | pmichaud++ | [rakudo]: Add another spectest file (S06-other/main.t) | |||
pmichaud | afk # xmas shopping | 17:32 | |
17:33
Ferran is now known as FerranZzZz
17:34
ihrd left
17:37
smtms left
17:38
adc_penner left
|
|||
eric256 | i have no idea on STD.pm don't even know what that is ;) | 17:40 | |
17:41
pmurias left
17:44
pbuetow joined
17:46
smtms joined
18:05
DemoFreak left,
pbuetow left
18:06
pbuetow joined
|
|||
TimToady | eric256: =END is not valid p6, it has to be =end END | 18:20 | |
lambdabot | TimToady: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
TimToady | eric256: and STD.pm is the standard p6 grammar | 18:22 | |
which the other implementations are converging on | |||
18:22
c9s_ joined
|
|||
TimToady | all the tests in the test suite must be compilable by STD | 18:22 | |
s/compilable/parseable/ | 18:23 | ||
pmichaud | the S26 draft mentions =END | ||
eric256 | yea i was going to say S26 line 520 | ||
pmichaud | (the one in the pugs repo) | ||
eric256 isn't arguing, just pointing ;) | |||
pmichaud | right, same here :-) | ||
TimToady | well, S26 is getting rewritten anyway :) | ||
eric256 | ohhh. well i was going with the implement early implement often ;) | 18:24 | |
pmichaud | maybe a quick note that =END isn't "real" in S26 then | ||
eric256 | i like =begin END better any way, but S26 mentions alot of POD skipping the begin part | ||
TimToady | still waiting to see what TheDamian comes up with | 18:25 | |
pmichaud | that's fine. | ||
eric256 | okay S26:1222 mentions a bunch that seem to be missing the begin, unless that was just shorthand for the documentation, in which case i was realy confused ;) | ||
18:26
bloonix left,
kcwu left,
buu left
|
|||
eric256 | any problem with implementing it to see how it works out? i thought that was the idea | 18:26 | |
TimToady | the last iteration of S26 did something completely different, so I'm not worrying about it much yet | ||
pmichaud | where's the last iteration of S26? We should probably check it in. | ||
18:26
bloonix joined,
kcwu joined,
buu joined
|
|||
TimToady | I think it was on sixperl maybe? | 18:27 | |
pmichaud | I'll check my archives. | ||
18:27
c9s__ joined
|
|||
TimToady | was doing something with comments and brackets, which I shuddered at and didn't read | 18:27 | |
but I'm more interested in the underlying design goals anyway | 18:28 | ||
who's active and who's passive, and such | |||
I think that last draft was using the notion that you always run p6 to parse, but with an option if you just want the docs | 18:29 | ||
pmichaud | I'm not seeing a later draft in my local archive | 18:30 | |
TimToady | that's about all I remember | ||
anyway, it's still basically in the design phase, one way or another, so don't put too much effort into the current S26 | 18:31 | ||
pmichaud adds a note to S26. | 18:32 | ||
TimToady | thanks | ||
eric256 | i just wanted __END__ to comment out a bunch of code (debug from the bottom up) so i implemented it localy | ||
TimToady | there is no __END__ anyore | ||
*anymore | |||
it's just =begin END | |||
eric256 | yea i know, i was saying thats how come i implemented =begin END localy, then found =END in the docs an implemented it too | 18:33 | |
pugs_svn | r24493 | pmichaud++ | Add note at top that the current S26 draft is known to be out-of-date | 18:35 | |
r24493 | pmichaud++ | with respect to current design. | |||
pmichaud | anyone is feel free to wordsmith the note. | 18:36 | |
18:37
c9s left
18:42
kanru left
18:44
kanru joined
18:46
c9s_ left
|
|||
literal | out of date? oh, damn | 18:53 | |
18:56
DemoFreak joined
18:58
justatheory left
|
|||
literal | looking at the pod_comment token in STD.pm, it seems to me that it matches S26 | 19:02 | |
I don't see any other Pod stuff | |||
the actual Pod comments in STD.pm are not according to spec, though :) | 19:04 | ||
i.e. doesn't make sense to out something like "=begin comment overview", should just be "=overview" or =begin comment\n=head1 Overview" | |||
am I wrong here? | |||
s/out/put/ | 19:05 | ||
19:06
ruoso_ joined
19:08
justatheory joined,
ruoso_ is now known as ruoso
|
|||
literal | or "=for Overview" rather than "=overview" | 19:08 | |
19:08
c9s joined
|
|||
TimToady | the latest design of TheDamian wasn't even using an initial =, so there's not much point in language lawyering yet... | 19:12 | |
we're still kinda at the Declaration of Independence stage... | 19:13 | ||
or maybe we're writing the constitution... | 19:14 | ||
19:14
stephens left
|
|||
literal | oh, I see | 19:14 | |
is there something I can read about this latest design? mailing list archives maybe? | 19:15 | ||
19:15
DemoFreak left
|
|||
TimToady | we're still looking for it | 19:16 | |
19:17
stephens joined
19:19
c9s__ left
19:20
Whiteknight joined
19:35
Psyche^ joined
19:36
Psyche^ left,
Psyche^ joined
19:43
c9s_ joined
19:46
c9s left
19:49
c9s joined
19:51
c9s_ left
19:57
rindolf left,
Limbic_Region joined
19:59
Patterner left,
Psyche^ is now known as Patterner
20:11
alech left,
abe[G] joined
20:17
c9s_ joined
20:18
c9s left
20:25
justatheory left
20:26
mj41 joined
20:27
Lorn left,
jhorwitz left
20:36
justatheory joined
20:37
mberends joined,
justatheory left,
DemoFreak joined
|
|||
eric256 | where the heck does TAP::Harness come from in Parrot::Test::Harness? i can't find a definition of runtests anywhere! ;) or any TAP/Harness.pm on my system...i must be dense | 20:41 | |
moritz_ | eric256: try perldoc -l TAP::Harness | 20:46 | |
eric256 | no documentation found. ;( i must be misreading something lol | ||
was trying to figure out if i could smoke rakudo ;) | 20:47 | ||
i'm guessing line numbers it probably blocking that though, but even a smoke without line numbers would be usefull | |||
[particle] | cpan TAP::Harness | 20:49 | |
eric256 | tests run fine, thats why i'm confused | ||
hehe | |||
moritz_ | it's in lib/Parrot/Test/Harness.pm | 20:50 | |
bundled with parrot | |||
eric256 | the call to runtests is, but there doesn't seem to be any definition of runtests | 20:51 | |
oh well | |||
oh duh, its in perl5's libe in Test::Harness | 20:52 | ||
eric256 goes to take a nap | |||
:q | 20:54 | ||
20:55
Eevee left
20:57
rindolf joined
|
|||
pugs_svn | r24494 | moritz++ | [t/spec] check that the rounder functions return Int values (RT #61526) | 21:03 | |
21:04
Eevee joined
21:06
Whiteknight left
|
|||
pugs_svn | r24495 | lwall++ | [STD] allow say for() to not treat for as terminator | 21:08 | |
21:08
Patterner left
21:09
justatheory joined
|
|||
rakudo_svn | r34116 | moritz++ | [rakudo] make ceil(), floor() etc. return Int values, not Num. cspencer++, | 21:10 | |
r34116 | moritz++ | patch courtesy by Cory Spencer (cspencer at sprocket.org). Closes RT #61526. | |||
21:13
ruoso left
21:16
rindolf left
|
|||
cspencer | i'm trying to add some methods written in perl 6 to one of the builtin classes, but the "is also" seems to cause subroutine parameters to be correctly scoped | 21:17 | |
is this a known issue at the moment? | 21:18 | ||
pmichaud | yes | ||
cspencer | alrighty | ||
pmichaud | we don't have "builtins in perl 6" working quite yet. | ||
cspencer | ah ok | ||
pmichaud | it's high on my list of things to do. | ||
but I've got to clean up class construction first, as you've noticed. | |||
and we need to refactor parameter handling. | |||
cspencer | sure, ok :) i'd seen a ticket where you'd suggested implementing pick() is p6 and had taken a stab at it | 21:19 | |
as well as splice() in the process | |||
pmichaud | can go ahead and submit it to rakudo bug as a proposed patch. | 21:20 | |
I'm really hoping that I can get prelude in p6 working before the end of the month. | |||
cspencer | sure, will do | ||
21:22
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
eric256 thinks the end of the month is approaching pretty quick ;) | 21:25 | ||
pmichaud | yes. on the other hand, I don't have any events or kid duties for another week | 21:26 | |
vixey | it is | ||
I'm so glad christmas is cancelled this year, I don't have the time for it | 21:27 | ||
PerlJam | pm: you guys aren't planning anything for christmas or new years? | ||
pmichaud | PerlJam: at the moment, no. | ||
we may make last-minute plans, though. | |||
21:28
pmurias joined
|
|||
pugs_svn | r24496 | pmichaud++ | [STD] convert <nofun> to <.nofun> | 21:36 | |
pmichaud | it's sad that some part of Perl is <nofun>, though. | ||
21:36
donaldh joined
21:37
Limbic_Region left
|
|||
moritz_ | which is why we do Perl 6. Oh, wait... | 21:38 | |
pugs_svn | r24497 | pmurias++ | [mildew] a &code helper is used to create Codes | 21:40 | |
21:42
Spreadsheet joined,
Spreadsheet left
|
|||
cspencer | rakudo: my (@a, @b); @a.push(2); | 21:43 | |
p6eval | rakudo 34116: OUTPUT[Method 'push' not found for invocant of class 'Undef'current instr.: '_block14' pc 85 (EVAL_15:47)] | ||
moritz_ | cspencer: care to open another ticket? ;-) | 21:44 | |
cspencer | will do :) | ||
pmichaud | currently array variables declared in my lists are initialized (incorrectly) to Undef | ||
moritz_ | rakudo: my @a; @a.push(2); say @a; | ||
p6eval | rakudo 34116: OUTPUT[2] | ||
pmichaud | that's also why array assignment fails with my ($x, @a) = ... ; | ||
feel free to file the ticket, though. :-) | |||
cspencer | it seems to only happen when declared in list syntax | ||
on its way! | 21:45 | ||
pmichaud | correct, it only happens in list syntax. | ||
The list syntax handler is overriding the default for @a with its own idea that it should be Undef. | |||
(and it's wrong for doing that.) | |||
21:45
mj41_ joined
|
|||
pmichaud | fixing it to be correct requires some refactoring to a number of items, which is why it hasn't been done yet. | 21:45 | |
pugs_svn | r24498 | moritz++ | [t/spec] tests for optional parameters, typed and untyped (RT #61528) | 21:52 | |
pmichaud | moritz++ # fixing integer returns from floor, etc. | 21:53 | |
moritz_ | that was cspencer++ | 21:57 | |
pugs_svn | r24499 | moritz++ | [t/spec] set some svn props, and clean up inconsistent newlines | ||
pmichaud | cspencer++ # fixing integer returns from floor, etc. | ||
moritz++ # applying patch | |||
21:59
DemoFreak left,
justatheory left
|
|||
cspencer | i'm going to take a wild guess and assume that the error thrown when an optional parameter is declared, but no default value is provided is also part of the coming refactoring? :) | 22:03 | |
ie | |||
rakudo: sub foo (Int $size?) { say "bar" }; foo(); | |||
p6eval | rakudo 34116: OUTPUT[Parameter type check failed in call to foocurrent instr.: 'die' pc 14378 (src/builtins/control.pir:188)] | ||
pmichaud | yes, it is part of that refactoring. | 22:04 | |
basically all of parameter handling needs a huge refactor. | |||
cspencer | okay | ||
moritz_ | rakudo: sub foo(Str $a?) { say $a }; foo('a'); | 22:05 | |
p6eval | rakudo 34116: OUTPUT[a] | ||
moritz_ | rakudo: sub foo(Str $a?, Str $b?) { say "$a|$b" }; foo('a', 'b'); | ||
p6eval | rakudo 34116: OUTPUT[a|b] | ||
pmichaud | unfortunately, doing that has a direct impact on multi-dispatch and a whole bunch of other things which kinda depend on the current implementation. | ||
which is why it's not a trivial fix. | |||
moritz_ | I thought the latter failed for me locally | ||
pugs_svn | r24500 | moritz++ | [t/spec] more tests for passing optional arguments | 22:06 | |
cspencer | moritz: the latter works for me | ||
pugs_svn | r24501 | particle++ | [spec] updates to notes, and minor clarifications | 22:07 | |
r24502 | moritz++ | [t/spec] oops, fudged the wrong test | |||
22:15
justatheory joined
22:16
Caelum joined
22:19
mncharity joined
|
|||
pugs_svn | r24503 | lwall++ | [gimme5] fix localization of "context" vars such as $::PARSER for azawawi++ | 22:20 | |
22:22
cls_bsd left
|
|||
mncharity | lwall: I find src/perl6 make is still failing with STD.pmc has too many errors. | 22:22 | |
TimToady: ^^ | 22:23 | ||
22:25
mj41 left,
mj41_ is now known as mj41
22:38
Whiteknight joined
|
|||
TimToady | works fine here, what version of perl are you running? | 22:40 | |
mncharity: please nopaste the errors and perl -V | 22:41 | ||
@messages | 22:43 | ||
lambdabot | moritz_ said 7h 23m 36s ago: S12:307 $obj.@candidates seems underspecced to me. Does it call all methods in @candidates? in order? parallel? or the first item in @candidate with a matching signature? | ||
22:45
c9s joined
|
|||
pmurias | mncharity: hi | 22:45 | |
mncharity | checking/pasting/hi | 22:46 | |
pmurias | heh | ||
22:46
c9s_ left
22:47
justatheory left
22:48
oria joined
|
|||
pasteling | "mncharity" at 98.216.110.149 pasted "src/perl6 make and perl -V" (99 lines, 6.9K) at sial.org/pbot/33932 | 22:48 | |
22:48
adc_penner joined
|
|||
mncharity | ran clean as of a few days ago | 22:49 | |
pmurias | mncharity: what are you working on atm? | 22:50 | |
mncharity | trying to decide. | ||
plan was get STD_blue+rx_on_re passing rx_on_re tests, then either work on rx t/ files, or start in on running STD.pm . but STD.pm support for p5 re turns out to be a bit broken. so... not sure. | 22:51 | ||
22:53
thepler left
|
|||
mncharity | answering question by looking backwards instead, have misc/elfish/rx_on_re make check_blue running, which is the rx_on_re test suite with the regex tests passed through STD_blue (ie, through STD.pm+gimme5), into elf IR, emitted to p5, and run. | 22:54 | |
22:56
Limbic_Region joined
|
|||
pugs_svn | r24504 | lwall++ | [S12] clarify $object.@candidates for moritz_++ | 22:58 | |
rakudo_svn | r34120 | moritz++ | [rakudo] another file for spectest.data: test passing of optional parameters | 23:00 | |
mncharity | the p5 portion of the test suite is obviously more valid that the somewhat out of date p6 rx portion. and has more >95% passing. so I was going to use that to shake everthing down hard. but the STD.pm p5 re parsing turns out to need some more work. I was finding slow and very non -Ofun going. :/ Anyone want to work on STD.pm? I can give a list of parsefailing regexps. | ||
:) | |||
pmurias | mncharity: how would parsing p5 regexes better help the bootstrap | 23:01 | |
? | |||
TimToady | mncharity: I think your problem must be in somewhere in the P5Regex code--are you in sync with svn head? | ||
assuming you have some custom code in there, likely you are doing something that is giving fooling gimme5 into emitting bad code | 23:03 | ||
gimme5 is rather picky about the code it will translate | 23:04 | ||
I give it about a 50% shot that you need to double the curlies in some closure somewhere to avoid confusing gimme5 | |||
s/in/around/ | 23:05 | ||
23:05
alester left
|
|||
TimToady | one of my goals was to replace gimme5 with viv, but haven't got back to that | 23:05 | |
mncharity | drat. ok, I rm -rf perl6; svn up'ed; and make works. :( so I through away to ability to experiment with what make distclean wasn't cleaning that rm -rf did. sorry about that. upside is I'm working now (re make). | 23:06 | |
re p5re, | |||
$ ./try5 comp_unit -e '/:P5 (?!a)/' Parse failed. See try5.err. | 23:07 | ||
$ ./try5 comp_unit -e '/:P5 (?i:a)/' Parse failed. See try5.err. | |||
$ ./try5 comp_unit -e '/:P5 ()\1/' Parse failed. See try5.err. | 23:08 | ||
moritz_ | is the :P5 modifier even legal inside a rule? | ||
avar | isn't the modifier supposed to be outside the pattern/ | ||
moritz_ | ./try5 comp_unit -e 'rx:P5/(?i:a)/' # win! | 23:09 | |
mncharity | re :P5, I note it's sufficient to get me into the STD.pm P5Regex grammar. other than that, no idea. | ||
moritz_ | same with rx:P5/()\1/ | 23:10 | |
mncharity | ok, that's unexpected. I have m:P5/.../ logged as not working at all. | 23:11 | |
moritz_ tries to give mncharity some hope back | 23:12 | ||
TimToady | the Regex grammar does define :P5 as an internal modifier, but it could well be messing up the linguistic handshake somehow | ||
eric256 | rakudo: (1..5).map: {rand} | ||
p6eval | rakudo 34119: OUTPUT[Method 'map' not found for invocant of class 'Range'current instr.: '_block14' pc 82 (EVAL_16:43)] | ||
moritz_ | rakudo: list(1..5).map: { rand } | 23:13 | |
p6eval | rakudo 34119: RESULT[[0.180863697621138, 0.590340837693901, 0.733011155194742, 0.324590001345264, 0.339733926474839]] | ||
eric256 | yea. but is that a workaround or the way its going to be? | 23:14 | |
TimToady | actually m/:P5 xxx/ works fine, so it's probably just missing P5Regex stuff | ||
actually, m:P5// only works because it's parsing the // as a string | 23:15 | ||
pmichaud | eric256: .map should work on Range -- the problem is that the '.map' method needs to move to Any | ||
TimToady | it doesn't actually call into P5Regex correctly | ||
pmichaud | I think right now it's defined in List, which isn't (completely) correct. | ||
eric256 | ahh okay | ||
moritz_ notes that we need more tests | |||
pmichaud | stated slightly differently: .map is defined in src/classes/List.pir, but it needs to be in src/builtins/any-list.pir | ||
eric256 is porting perlmonks.org/?node_id=731651 to perl6 for fun | 23:16 | ||
is it as simple as cut & paste ? cause i can do that and test and right tests if so | |||
pmichaud | if someone wants to move the map definition from List.pir to any-list.pir, that'd be a worthy patch. | ||
TimToady | there's a sense in which parsing // as a string is more P5ish though | ||
pmichaud | it's not _quite_ cut & paste. | ||
TimToady | and it should only be fed to the P5Regex parser after interpolation, but maybe that's going to far in accommodating P5 semantics... | 23:17 | |
eric256 | okay, i'll add it to my list | ||
TimToady | s/to/too/ | ||
pmichaud | eric256: also, you might submit it as a rakudobug. That will at least remind me it needs to be done. | 23:18 | |
mncharity | sorry, got sucked into analysis. moritz_: re hope, yes, much appreciated, thanks. re string, yeah, rx:P5/foo/ is regrettably not actually parsing the p5 re. | 23:19 | |
TimToady | but that is how the P5 lexer does it, alas | ||
well, with some preprocessing knowing it's really a regex | |||
but it's all a big hairy kludge in p5 | 23:20 | ||
mncharity | /:P5 foo/ *is* parsing the p5 re, but yes, it's not entirely working. | ||
TimToady | not clear how much :P5 wants to emulate that | ||
also not clear if external :P5 and internal :P5 need to do it the same way :) | |||
mncharity | lol sigh | 23:21 | |
pugs_svn | r24505 | moritz++ | [t/spec] a test for Range.map | ||
TimToady | arguably it might be correct the way it is, and external :P5 should interpolate and then call P5Regex on the result | ||
and internal :P5 remains blissfully ignorant of interpolation | 23:22 | ||
moritz_ calls it a day, TTFN folks | |||
TimToady | ciao | ||
mncharity | moritz_: thanks again | ||
TimToady | ciao = calls it an o<mumble> | 23:23 | |
23:26
c9s_ joined
|
|||
mncharity | the rx:P5/I am a string, call P5Regex to parse me at compile or runtime/ story sounds plausible. | 23:32 | |
but still leaves me with a only partially working STD-based p5 re parser. | 23:33 | ||
no (?:a) groups in particular. | 23:34 | ||
23:36
c9s__ joined
|
|||
mncharity | pmurias: sorry for the delay, re | 23:36 | |
23:38
c9s_ left
|
|||
eric256 | does "is copy" not work yet? | 23:38 | |
23:39
donaldh left
|
|||
mncharity | "how would parsing p5 regexes better help the bootstrap", there's a solid p5 re test suite. absent that, there indeed wouldn't be much point. it permits robust incremental development. | 23:39 | |
23:40
c9s left,
hercynium joined
|
|||
mncharity | test driven, keep-it-working development. "the p5 library passes the tests, then the p6-ified elf-ification of that library passes the tests, then using STD_blue for parsing passes the tests (and keeps them passing through STD.pm changes and syncronizing with STD/current dialect p6 rx), then STD-running-on-elf passes the tests". | 23:42 | |
well, solid is overstating it. there's a quite partial but still non-trivial p5 re test suite. compared to the complexity of p5 re, the perl5 test suite could use several 100% expansion. but... beats nothing. | 23:45 | ||
eric256 | its kinda surprising but perl6 does still feel like perl5 when you get right down to coding in it ;) and its worth it just to get real parameters for subs ;) | 23:46 | |
mncharity | lol :) | ||
eric256 | perlmonks.org/?node_id=731696 can someone check that out and see if i missed any easy advantages? only gained like 4 lines on the perl5 implementation, doesn't seem like enough | 23:47 | |
hehe | |||
mncharity | looking | ||
eric256 | oh and rand feels klunky, looking for some specs on it now | ||
23:48
ruoso joined
23:50
c9s joined
|
|||
eric256 | i think part of what threw me off was rand suddenly returning 0 | 23:51 | |
mncharity | @weights.int seems odd. hmm, a good exercise might be to try writing it in idiomatic somethingelse. ruby or python. and then translate back to p6. | 23:52 | |
lambdabot | Unknown command, try @list | ||
eric256 | yea whats a good way to get the length of an array in p6? .int works but maybe isn't the prettiest ;) | ||
mncharity | pmurias: ? | 23:53 | |
cspencer | @a.elems | ||
lambdabot | Unknown command, try @list | ||
23:53
vixey left
|
|||
cspencer | rakudo: @a = (1, 2, 3); say @.elems | 23:53 | |
p6eval | rakudo 34120: OUTPUT[Scope not found for PAST::Var '@a'current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (src/PCT/HLLCompiler.pir:102)] | ||
mncharity | cspencer: and probably implicit in the for 1..@a -> $i { | ||
eric256 | actualy for @weights { works just fine in that case | ||
cspencer | ah, right | 23:54 | |
eric256 | hey, with .clone implemented shouldn't (is copy) just do a clone? | 23:55 | |
eric256 guesses that probably is in the refactoring that he keeps hearing about | 23:56 | ||
23:56
iblechbot left
|
|||
mncharity anticipates a need for p6 katas and annotated refactoring exercises | 23:56 |