pugscode.org/ | nopaste: sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/
Set by diakopter on 11 July 2007.
00:05 theorb joined 00:11 devogon left, jjore-w left 00:18 theorbtwo left 00:22 [particle1 joined, tlb left, justatheory joined 00:34 [particle] left 00:38 daxim_ left 00:55 ingy joined 00:59 ac joined 01:00 nipotaway is now known as nipotan_ 01:06 JBoofy joined, Limbic_Region left 01:08 lyokato joined 01:10 ac left 01:32 nipotan_ is now known as nipotan 01:33 Daveman left 01:39 nipotan left 01:41 nipotan joined 02:15 ofer0 left
pugs_svn r18663 | agentz++ | [PCR] various bug fixes in the tracer 02:38
agentzh heh, i see huge number of commits everyday here :)
(kp6 folks)++
pugs_svn r18664 | agentz++ | PCR - fixed a p5 regex 02:40
02:44 cnhackTNT joined
agentzh heh, rule XXX {...} also works in the tracer :) 02:51
agentzh.org/misc/tracer/langs2/index.html 02:53
lambdabot Title: Test
agentzh regex XXX {...} does not work with the tracer since it uses the backtracking engine into which i haven't planted hooks. 02:55
03:05 elmex joined 03:06 cnhackTNT left 03:11 cnhackTNT joined 03:20 elmex_ left
agentzh wow, this also works! take a look at how PCR's own regex parser works in detail! agentzh.org/misc/tracer/grammar/index.html 03:25
lambdabot Title: Test
agentzh you shouldn't miss this!
;)
pugs_svn r18665 | agentz++ | [PCR] made the tracer scroll the grammar iframe automatically when the grammar is too large 03:27
03:29 weinig left 04:11 thoughtpolice joined 04:23 cnhackTNT left, funktio joined 04:25 cnhackTNT joined 04:28 cnhackTNT left 04:53 lyokato left 05:00 lyokato joined 05:25 weinig joined, jisom joined 05:26 penk left 05:33 devogon joined 05:34 cnhackTNT joined 05:36 pina joined 05:39 thoughtpolice left 05:42 cnhackTNT left, cnhackTNT joined 06:02 Daveman joined 06:21 toshinori left 06:22 araujo joined 06:29 cognominal_ joined 06:40 justatheory left 06:46 gorax joined 06:52 [particle1 is now known as [particle] 06:59 dduncan left 07:05 amnesiac left 07:09 viklund joined
bloonix q! 07:19
oops
07:32 franck___ joined, riffraff joined 07:33 moritz_ left 07:35 daxim_ joined, moritz joined 07:51 rindolf joined 07:52 viklund left 08:06 ruoso left 08:08 ruoso joined 08:18 penk joined 08:37 [particle1 joined 08:41 viklund joined
meppl good morning 08:46
08:50 lichtkind joined 08:52 iblechbot joined 08:55 [particle] left 09:11 BinGOs left 09:16 masak joined 09:17 BinGOs_ joined 09:29 pina left 09:30 masaks_evil_twin joined 09:31 masak left, masaks_evil_twin left 09:32 masak joined 09:50 lichtkind_ joined 09:58 fglock joined
pugs_svn r18666 | fglock++ | [kp6-kp6] added script/kp6-kp6.pl to Makefile 10:08
10:08 lichtkind left 10:19 ruoso left 10:36 ruoso joined 10:59 gugod joined 11:05 ruoso left
pugs_svn r18667 | fglock++ | [kp6-perl5] redirect MiniPerl6::* calls to KindaPerl6::* 11:12
11:14 BinGOs_ is now known as BinGOs 11:20 cnhackTNT left 11:22 lyokato left 11:23 lichtkind_ left 11:24 ruoso joined 11:25 rindolf left 11:31 jisom left 11:32 moritz is now known as moritz_ 11:40 lumi_ is now known as lumi 11:47 nipotan is now known as nipotaway 11:48 ruoso left 12:05 arcady left 12:31 theorb left 12:32 polettix joined 12:33 gorax left 12:38 cmarcelo joined 12:50 OuLouFu left 13:12 cognominal_ left
pugs_svn r18668 | fglock++ | [kp6] for 1 .. Inf -> $x,$y { say $x,$y } 13:46
masak fglock: nice
13:47 [particle1 is now known as [particle]
pugs_svn r18669 | fglock++ | [kp6] Range - unused $var 13:49
fglock kp6: my $a = gather { for 1 .. Inf -> $x,$y { take [ $x,$y ] } }; say $a[10]; 13:50
exp_evalbot r18668: OUTPUT[21 22␤]
fglock :)
kp6: my $a = gather { for 1 .. Inf -> $x { take [ $x ] } }; say $a[10]; 13:59
exp_evalbot r18669: OUTPUT[11␤]
fglock kp6: my $a = gather { for 1 .. Inf -> $x { take $x } }; say $a[10]; 14:00
exp_evalbot r18669: OUTPUT[11␤]
masak kp6: my $a = gather { for 1 .. Inf -> $x,$y 14:02
{ take $y,$x } }; say $a[10];
14:02 perlbot left
exp_evalbot r18669: OUTPUT[error in Block at compiled/perl5-kp6-mp6/lib/KindaPerl6/Grammar/Sub.pm line 753, <> line 1.␤*** Syntax Error in Block: missing closing curly bracket } ␤] 14:02
masak oops
kp6: my $a = gather { for 1 .. Inf -> $x,$y { take $y,$x } }; say $a[10];
exp_evalbot r18669: OUTPUT[22␤]
masak hm... yes, that's right :)
14:07 TJCRI joined 14:11 ruoso joined
pugs_svn r18670 | fglock++ | [kp6] Range smartmatch 14:14
fglock kp6: say 2 ~~ 1 .. 5, 2 ~~ 3 .. 7
exp_evalbot r18669: OUTPUT[DISPATCH: calling APPLY KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch=HASH(0x869937c) KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch=HASH(0x86a0d8c) on invalid object:$VAR1 = {};␤␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 33␤
..main::DISPATCH('undef', 'APPLY', 'KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatc...]
fglock sleep 60 14:15
kp6: say 2 ~~ 1 .. 5, 2 ~~ 3 .. 7 14:16
exp_evalbot r18670: OUTPUT[1 0␤]
[particle] damn!
nice work, fglock. looks like you'll be finishing perl 6 by christmas, after all :) 14:17
fglock :)
[particle]: it depends on your definition of "finished" 14:18
and "Perl 6", and "christmas" :P 14:20
[particle] but we're clear on "you" and "by", right? ;) 14:21
14:26 amnesiac joined, pmurias joined
fglock most of the runtime is low hanging fruit, see 'for' and 'smartmatch' in svn.pugscode.org/pugs/v6/v6-KindaPe...6/Range.pm 14:29
lambdabot tinyurl.com/yrqcu9
fglock but there several hard things to do 14:30
* there are 14:32
14:38 chris2 joined, ruoso left, ruoso joined, ruoso left 14:41 ruoso joined 14:53 jhorwitz joined
pmurias fglock: repeating moritz_ question is onion meant to start as a copy of kp6? 14:55
avar presumably yes, like kp6 started with mp6 14:56
fglock pmurias: maybe, but it will not be an exact copy - all non-runtime perl5 should be rewritten to Perl 6
avar the point is to always have a stable target runtime
pugs_svn r18671 | fglock++ | [kp6] smartmatch on Array, List, Integer 15:00
15:01 Limbic_Region joined
amnesiac runs avar inside a prolog inference machine 15:05
pugs_svn r18672 | fglock++ | [kp6] fixed say() in Prelude
fglock kp6: say 42 ~~ ( 1, 2, 4, 42 ), 7 ~~ ( 0, 1, 2 )
exp_evalbot r18671: OUTPUT[1 0␤]
avar low hanging fruit indeed 15:09
pugs_svn r18673 | avar++ | [kp6] implemented Array.min, Array.max
pmurias fglock: how should one run kp6-kp6.pl? 15:10
fglock pmurias: it doesn't run yet 15:11
moritz_ there's a test script in script/ 15:12
that should run the tests
pugs_svn r18674 | fglock++ | [kp6] range index 15:13
pmurias moritz_: there are several
fglock you may need to fix the lib paths
moritz_ kp6: say 2 .. 3; 15:14
exp_evalbot r18673: OUTPUT[2..3␤]
fglock kp6: ( 123456789 .. 987654321 )[ 56789 ]
exp_evalbot r18673: OUTPUT[no method 'INDEX' in Class 'Range'␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 132␤ KindaPerl6::Runtime::Perl5::MOP::__ANON__('KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch=HASH(0x86...', 'INDEX',
pugs_svn r18675 | avar++ | [kp6] Implemented List.min, List.max. This is duped between the Array and List classes
exp_evalbot ..'KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch=HASH(0x86...') called at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runt...]
pmurias by the way most of the run_test_*.pl should die
moritz_ fglock: try again 15:15
fglock kp6: ( 123456789 .. 987654321 )[ 56789 ]
exp_evalbot r18675: OUTPUT[no method 'say' in Class 'Str'␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 132␤ KindaPerl6::Runtime::Perl5::MOP::__ANON__('KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch=HASH(0x86...', 'say') called at
..compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 36␤ main::DISPATCH('KindaPerl6::Runtime::Perl5::Disp...]
fglock kp6: say ( 123456789 .. 987654321 )[ 56789 ]
pmurias run_tests.pl takes a --backend option to determine on what backend to run the tests
exp_evalbot r18675: OUTPUT[123513577␤]
15:15 theorbtwo joined
pmurias kp6: say (1234 .. 6789).min(); 15:16
exp_evalbot r18675: OUTPUT[no method 'min' in Class 'Range'␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 132␤ KindaPerl6::Runtime::Perl5::MOP::__ANON__('KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch=HASH(0x81...', 'min') called at
..compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 36␤ main::DISPATCH('KindaPerl6::Runtime::Perl5::Di...]
fglock I didn't sleep enough this night - can't hack the bootstrap today
TimToady please take good care of yourself 15:17
pmurias fglock: no problem
avar fglock: what needs to be done?
fglock kp6: say (1234 .. 6789).start
exp_evalbot r18675: OUTPUT[1234␤]
avar Maybe I can hack some on it 15:18
fglock avar: rename the Range attributes
avar: re bootstrap?
avar fglock: Yes 15:19
class Range is Value {
has $.start;
has $.end;
15:19 kyrbe joined
avar TimToady: should .array on Range explode the range? 15:19
fglock try to find out the problems in kp6-kp6 15:20
avar: that's the eager method
.eager
avar ah, ok
15:20 kyrbe left
avar can kp6-kp6 even run tests now? last I tried it the files didn't even compile properly 15:20
fglock they compile now - $ KP6_TARGET=KP6-BOOT perl Makefile.PL; make 15:21
avar okey, I'll try to peek at it later 15:22
fglock.sleep
fglock but there are several internal dependencies problems, mostly because of the mp6/kp6 runtime differences 15:23
15:24 vbattsAtWork joined 15:25 cognominal_ joined
pugs_svn r18676 | fglock++ | [kp6] Range .min, .max 15:26
avar $ perl script/kp6 -r kp6 -e '1'
Can't locate object method "new" via package "KindaPerl6::Visitor::Emit::AstPerl" at compiled/perl5-kp6-kp6/lib/KindaPerl6/Runtime/Perl5/Pad.pm line 14.
Compilation failed in require at compiled/perl5-kp6-kp6/lib/KindaPerl6/Runtime/Perl5/Runtime.pm line 7.
I don't think I can be very useful with that sort of stuff
$ perl script/kp6 -r kp6 -e '1' 15:27
*** Could not load runtime class HASH(0xbdd410) at compiled/perl5-kp6-kp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 1004.
whee new exciting errors:)
fglock Pad would be better rewritten in Perl 6 instead
avar fglock: roger 15:28
fglock avar: there is quite a few libs to rewrite - bootstrapping can take a few weeks :P
15:30 vbattsAtWork left
moritz_ but kp6 syntax is now a supersot of mp6 syntax, right? 15:30
15:31 kanru left
fglock yes 15:32
15:32 f0rth left 15:35 f0rth joined
pmurias avar: you fixed the first error? 15:36
throwing the begin-time side effects support away could simplify the bootstrap 15:38
* \BEGIN time
s{\}{} 15:39
moritz_ pmurias: you still have to escape that \ ;-)
pmurias: but we all know what you meant ;)
fglock pmurias: begin-time side effects is the main kp6 feature :P 15:40
[particle] humans are error-correcting parsers
15:41 f0rth_ joined
pmurias moritz_: arg i mistook the \ for an / 15:41
s/\\// # ;) 15:42
15:43 f0rth left
pmurias fglock: i feel that files in KindaPerl6::Runtime::Perl5 should be moved somewhere 15:45
KindaPerl6::Runtime::Perl5MP6 or KindaPerl6::Compiletime::Something?
avar pmurias: no, I just got new and exciting ones 15:47
pmurias avar: errors?
avar: or filename proposal? 15:48
* proposals
fglock pmurias: these changes can go in the v6-Onion version; kp6 should be frozen IMO
moritz_ fglock: why? I get the impression it's still quite hackable 15:49
pmurias fglock: sorry forgot to add that i meant the ones using the mp6 runtime
fglock: the won't exist in Onion
*they
fglock: you mean instead of trying to compile itself one should just copy the right bits to v6-Onion 15:51
* trying to get a working kp6-kp6
fglock pmurias: yes, create a copy and remove the parts you don't need
pmurias i'm fine with that 15:52
fglock k
coffee &
15:57 kanru joined 15:58 Ashizawa joined
pugs_svn r18677 | pmurias++ | [onion] - copied some files over 16:03
pmurias avar: we now need some sort of build system for onion 16:04
16:06 Timmy joined, Timmy is now known as Timm3h, weinig left
moritz_ I think mostly we need a plan for onion ;) 16:06
16:07 Ashizawa left
pmurias 1. make it compiled under kp6 16:07
2. make it compile itself
3. add features to it
fglock 1.5 add unit tests to specific subsystems, such as the Pad and a few Grammar tokens 16:08
pmurias TDD+ 16:09
+
fglock t/kp6/self/ 16:10
pmurias t/onion/internals 16:11
16:11 ruoso left
fglock it might need eval-string 16:12
16:12 ruoso joined
fglock pmurias: wasn't kp6-kp6 working already? 16:13
some weeks ago
pmurias it used to semi-work
it parsed little code snippets and return AST 16:14
ruoso got it to that stage
ruoso++
ruoso but then I gave up for performance reasons 16:15
:)
ruoso--
heh
pmurias karma ruso
@karma ruoso
lambdabot ruoso has a karma of 110
fglock but the perl5rx option should fix that a bit
kp6: print " ruoso++ " x 5 16:16
exp_evalbot r18677: OUTPUT[ ruoso++ ruoso++ ruoso++ ruoso++ ruoso++ ]
pmurias karma pmurias
@karma pmurias 16:17
lambdabot You have a karma of 90
fglock kp6: print " pmurias++ " x 5
exp_evalbot r18677: OUTPUT[ pmurias++ pmurias++ pmurias++ pmurias++ pmurias++ ]
fglock @karma pmurias
lambdabot pmurias has a karma of 96
fglock :P
pmurias ;) 16:18
ruoso kp6: my @a = gather for 1..Inf -> $x { say "fglock++"; take $x }; $a[5]++
exp_evalbot r18677: OUTPUT[syntax error at position 66, line 1 column 66:␤my @a = gather for 1..Inf -> $x { say "fglock++"; take $x }; $a[5]+␤ ^ HERE␤]
ruoso hmm
fglock gather { .. } 16:19
ruoso kp6: my @a = gather { for 1..Inf -> $x { say "fglock++ "; take $x }}; $a[5]++
exp_evalbot r18677: OUTPUT[error in Block at compiled/perl5-kp6-mp6/lib/KindaPerl6/Grammar/Sub.pm line 753, <> line 1.␤*** Syntax Error in Block: missing closing curly bracket } ␤]
ruoso kp6: my @a = gather { for 1..Inf -> $x { say "fglock++ "; take $x; }}; $a[5]++
fglock ah - it only works with $a
exp_evalbot r18677: OUTPUT[error in Block at compiled/perl5-kp6-mp6/lib/KindaPerl6/Grammar/Sub.pm line 753, <> line 1.␤*** Syntax Error in Block: missing closing curly bracket } ␤]
ruoso weird
fglock, wasn't that supposed to work? 16:20
moritz_ ruoso: btw it should be @a[5]++, not $a[5]
ruoso kp6: my @a = gather { for 1..Inf -> $x { say "fglock++ "; take $x; }}; @a[5]++
exp_evalbot r18677: OUTPUT[error in Block at compiled/perl5-kp6-mp6/lib/KindaPerl6/Grammar/Sub.pm line 753, <> line 1.␤*** Syntax Error in Block: missing closing curly bracket } ␤]
ruoso moritz_, thanks... I've been working in p5 lately ;)
moritz_ and I think postfix ++ is not yet implemented
kp6: my $a = 3; $a++
exp_evalbot r18677: OUTPUT[syntax error at position 13, line 1 column 13:␤my $a = 3; $a+␤ ^ HERE␤] 16:21
fglock hmm
ruoso kp6: my @a = gather { for 1..Inf -> $x { say "fglock++ "; take $x; }}; say @a[5] ;
exp_evalbot r18677: OUTPUT[error in Block at compiled/perl5-kp6-mp6/lib/KindaPerl6/Grammar/Sub.pm line 753, <> line 1.␤*** Syntax Error in Block: missing closing curly bracket } ␤]
fglock 1 .. Inf - needs spaces
ruoso kp6: my @a = gather { for 1 .. Inf -> $x { say "fglock++ "; take $x; }}; say @a[5] ;
exp_evalbot r18677: OUTPUT[Can't use an undefined value as an ARRAY reference at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/Array.pm line 32.␤]
moritz_ kp6: gather { take 1; };
exp_evalbot r18677: OUTPUT[no method 'say' in Class 'Str'␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 132␤ KindaPerl6::Runtime::Perl5::MOP::__ANON__('KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch=HASH(0x86...', 'say') called at 16:22
..compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 36␤ main::DISPATCH('KindaPerl6::Runtime::Perl5::Disp...]
fglock and $a instead of @a
moritz_ kp6: say(gather { take 1; });
exp_evalbot r18677: OUTPUT[1␤]
ruoso kp6: my @a = gather { for 1 .. Inf -> $x { say "fglock++ "; take $x; }}; @a[5];
exp_evalbot r18677: OUTPUT[Can't use an undefined value as an ARRAY reference at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/Array.pm line 32.␤]
fglock because @a is coerced to Array with bad side effects
ruoso kp6: my $a = gather { for 1 .. Inf -> $x { say "fglock++ "; take $x; }}; $a[5];
exp_evalbot r18677: OUTPUT[fglock++ ␤fglock++ ␤fglock++ ␤fglock++ ␤fglock++ ␤fglock++ ␤]
moritz_ kp6: my @a = gather { take 1; }; @a.say
ruoso heh
exp_evalbot r18677: OUTPUT[Can't use an undefined value as an ARRAY reference at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/Array.pm line 32.␤]
ruoso kp6: my $a = gather { for 1 .. Inf -> $x { print "fglock++ "; take $x; }}; $a[5]; 16:23
exp_evalbot r18677: OUTPUT[fglock++ fglock++ fglock++ fglock++ fglock++ fglock++ ]
ruoso list lazyness is a cool thing...
fglock there are several minor bugs around
ruoso heh
fglock :)
laziness impl is about 10% done 16:24
masak fglock: why didn't moritz_'s code work?
fglock lazy list slicing requires a lot of code 16:25
masak: looking
it's a bug - the lazy list is wrongly converted to Array, which doesn't know about laziness yet 16:26
16:26 pmurias_ joined
fglock so you need $a= for now 16:26
avar pmurias_: sorry, not very active a.t.m. 16:27
pmurias_ avar: np 16:28
16:28 pmurias left
fglock besides slicing, lazy list cloning is also a problem 16:28
masak fglock: ah
pmurias_ avar: sleepy or doing something else?
16:28 franck___ left 16:29 pmurias_ is now known as pmurias
avar pmurias: working mostly:) 16:30
pmurias avar: won't distract you the ;) 16:33
*then
16:34 justatheory joined
avar pmurias: irc is async, I'll just answer later 16:34
fglock .map is not lazy, right? I remember something like "it works like 'for' "
16:35 pmurias left
fglock trying to find a spec 16:35
TimToady map and for are essentially identical
fglock which means "always start from index zero" 16:36
moritz_ and both are eager?
TimToady not in the sense that they evaluate the list eagerly
they evaluate the list lazily
or "for 1..Inf" wouldn't work
fglock but (1..Inf).map:{} would never finish? 16:37
I was about to implement that
TimToady depends on whether you use something inside to return early
we don't currently spec that next and last work there, but they could 16:38
fglock ok - it's easier that way :)
amnesiac returns the unreturnable
TimToady note that it goes the other way too: a for in list context is supposed to return all the resulting values like a map 16:40
which saves a lot wear and tear on the gather/take operators... :) 16:41
moritz_ so the only difference is the order of the arguments?
TimToady yes
16:42 ruoso left
TimToady and whether people yell at you for using one in a void context :P 16:42
moritz_ ;-)
[particle] NO FOR IN VOID CONTEXT!!!!!
avar will for $my_obj -> $item {} call .array on $my_obj or .for ? I.e. is C<for $obj {}> like C<C$obj.for(...)> ?
TimToady what is .array? 16:43
avar "get a list out of this"
16:43 chris2 left
avar I'm just wondering whether for desugars to method calls 16:43
[particle] .eager?
TimToady no, it doesn't
it just binds $obj to the formal
avar .array is kp6ism:)
amnesiac spanish-ism 16:44
TimToady $foo never assumes @() in list context
amnesiac .quieroarray
TimToady but .foo supplies scalar context on its left, so .foo can do whatever it likes with the container 16:45
pugs_svn r18678 | fglock++ | [kp6] Range.map 16:46
TimToady it really desugars to a function, not a method, for @x {...} <==> map {...}, @x
and, in fact {...} for @x should produce the same result, on the assumption that {...} is where a bare block might be expected to assume a "do" on the front 16:48
moritz_ TimToady: the question is how to get the elements out of that @x object
TimToady you just iterate through it 16:49
moritz_ how?
you shouldn't compare the index to .end, right?
because that wouldn't work lazily 16:50
TimToady no, you just keep asking the list for its next element until it complains
moritz_ so there is some kind of iterator method on list objects
TimToady whatever prefix:<=> desugars to 16:51
moritz_ ah right, that's it
TimToady maybe related to .shift
fglock moritz_: see Runtime::Perl6::Gather
TimToady but you don't actually want to do @x.shift
it's only destructive of the list value, not the objects used to create the list 16:52
so iterating is perhaps closer to the right model
16:52 rindolf joined
TimToady and in fact, that's the basic difference between a list and an array 16:53
an array prefers to be indexed, while a list prefers to be iterated
moritz_ but you can do both to both
TimToady tagmemics is very much in favor of "I want to use an X as if it were a Y, so just let me" 16:54
verbing nouns being the prototypical example of that in English
avar fglock: Is v6::Onion aiming for full-p6? 16:55
TimToady but it works in many different ways
moritz_ avar: of course it does. kp6 did it too ;)
TimToady "I want to use Perl as if it were a functional programming language..."
fglock avar: hmm 16:56
[empty.............half-full.............full] 16:57
avar Well, we'll have macros and hopefully STD.pm, so we'll see:)
TimToady by "full-p6" do you mean the full standard grammar, or the fully extensible grammar?
fglock it's more like half-full than half-empty 16:58
avar I meant whether it was the last layer of the onion:)
TimToady the main constraint on extensibility is whether I finish up the longest-token stuff
because if that doesn't work, grammars won't derive correctly
fglock avar: it is more likely yet another layer 16:59
TimToady and if we launch with that broken, we'll break programs when we fix it.
avar fglock: I think we need a better naming convention:)
"Onion" and something that conveys layers which we won't run out of:) 17:00
fglock avar: version numbers?
"Pentium"
oops - that's taken
avar MiniPerl6 => Onion::One, KindaPerl6 => Onion::Two
tee hee 17:01
[particle] i think you should use something like precedence levels
fglock we are somewhere like Milestone 5.1 in the roadmap - we could use that number
TimToady that's what parentheses are for: see Lisp
(((onion)))
[particle] teehee 17:02
masak :)
fglock TimToady: yes :)
are we adding or taking parenthesis?
avar (onion) = mp6, ((onion)) = kp6
the center of the onion is the essence of Perl 6:) 17:03
fglock onion, binium, trinium
TimToady (...(onion)...) works for me
but all countdown schemes are attempts to predict an unpredictable future
fglock (*..(onion)..*) 17:04
avar Then there's the question of how to map that to cpan and version numbers
TimToady fortunately, the usual alpha, beta, gamma scheme is (somewhat) openended
fglock you can always go transfinite
avar there's a more practical side to this which is that I'd like to make an executable called "onion" which interfaced to layer 1, layer 2 etc.
17:05 CapNemo joined
avar merge mp6.pl, kp6 into 'onion' 17:05
fglock avar: it's better than 'v6'
CapNemo hello 17:06
avar But I still need something in Onion::(.*):: to map kp6,mp6 to, KindaPerl6::Grammar => Onion::(.*)::Grammar 17:07
preferably something that sorts according to the order, i.e. not One, Two etc.
[particle] kp6 is looser mp6 is tighter onion 17:08
...all is relative. 17:09
avar Yes but mp6->kp6->...
What I really want to do is package this all up in one package and release it like that, and make it easy to work on different layers 17:10
Since mp6 compiles kp6 you could write an emitter on the kp6 OR mp6 level for a target runtime
CapNemo is there a page on pugscode.org that show the current status/roadmap of p6 ?
fglock avar: how about make v6.pm plugins? 17:11
TimToady not necessarily what you want here, but see S02:2809 for how to name "countdown" versions 17:12
what you want here is something more like a policy module that imports other modules on your behalf
or the preference rules that the library uses to handle wildcards
17:13 Psyche^ joined
fglock CapNemo: there are status pages for the several subprojects, but the most up to date information is in the mailing lists and blogs 17:13
CapNemo fglock, ahh sounds good thanks
avar TimToady: I'd like a cpan-able name instead of version number 17:14
I.e. Onion::(\w+)::*
fglock: do you object to any of this?:)
fglock do you mean Onion::KindaPerl6 ? 17:15
avar Ye
Except I was pondering renaming it to something where we wouldn't have to come up with "sorta" synonyms 17:16
:)
and names that made it obvious in what order they were
fglock MiniPerl6 to Onion::V1, KP6 to Onion::V2, ...? 17:18
17:18 weinig joined
fglock V001 17:18
[particle] ::Layer1 17:19
Onion::Core, Onion::Skin
avar Onion::Yummy::Tasty::Bits
TimToady Perl 6 versioning is *not* going to be bound by the limitations of CPAN as it is currently implemented!!! 17:20
fglock Onion::Ring
qmole Onion::SlightlyBurnt
masak Onion::Pickled
fglock fresh, frozen, canned, pickled, dehydrated 17:21
[particle] or you could name the releases Onion, Shallot, GreenOnion, Vidalia, WallaWalla
qmole you guys know your onions huh 17:24
17:24 masak left
CapNemo red onion ;) 17:24
TimToady dead onion ;) 17:25
allbery_b leek? (would have to be a close relative but not quite p6, I guess) 17:26
TimToady and, of course, pearl onion... 17:27
CapNemo ah much better
[particle] do you know PEARL? i need help. 17:28
TimToady see en.wikipedia.org/wiki/PEARL_programming_language 17:29
lambdabot Title: PEARL (programming language) - Wikipedia, the free encyclopedia
17:30 Patterner left, Psyche^ is now known as Patterner
[particle] ooh, thanks! i'm still a nube. 17:30
fglock avar: re object, no :) 17:31
but renaming all those files and directories will take some work 17:32
CapNemo ahh a new grammar to produce in parrot ;) ...
17:46 xinming_ joined
fglock & 17:51
17:55 theorbtwo left 18:10 jisom joined 18:11 fglock left 18:14 barney joined 18:17 pugs_svn left, exp_evalbot left 18:20 exp_evalbot joined 18:23 Jamtech joined 18:31 Jedai joined 18:43 Notrix joined 18:47 Notrix left 18:49 Torment left 18:50 Jamtech left 18:54 pmurias joined, barney left
pmurias avar: you can't write an emitter for kp6 on the kp6 level 18:55
why would anyone want to use kp6 when Onion is working? 18:56
19:03 lambdabot left 19:04 lambdabot joined
pmurias avar: withought going throught an enormous amout of trouble 19:04
19:13 Timmy joined 19:17 funktio left 19:23 Timm3h left 19:26 Timmy is now known as Timm3h 19:41 theorbtwo joined 19:42 jisom left 19:43 Jamtech joined 19:47 rindolf left, amnesiac left 19:49 Timmy joined 19:58 Timm3h left
cj Can someone point me to some perl6 exception specs? 20:01
moritz_ S02 iirc 20:02
cj danke
is this in sync? 20:03
dev.perl.org/perl6/doc/design/syn/S02.html
lambdabot Title: Synopsis 2: Bits and Pieces - perl6
moritz_ cj: not sure, use perlcabal.org/syn/S02.html instead
lambdabot Title: S02
20:04 fglock joined
moritz_ but wait, S02 isn't right 20:04
perlcabal.org/syn/S04.html#Exception_handlers and the following
lambdabot Title: S04
moritz_ perlcabal.org/syn/ is synced hourly 20:05
fglock pmurias: "emitter for kp6 on the kp6 level" you mean write in mp6?
20:12 CapNemo left 20:13 `nipra left, Limbic_Region left, `nipra joined, Silence joined
moritz_ pugs: "foo" ~~ m/oo/; say $/.str 20:15
exp_evalbot OUTPUT[*** No such method in class Match: "&str"␤ at /tmp/xg9xjZkRzh line 1, column 21 - line 2, column 1␤]
moritz_ pugs: "foo" ~~ m/oo/; say $/.Str 20:16
exp_evalbot OUTPUT[*** No such method in class Match: "&Str"␤ at /tmp/Y20oe5joKN line 1, column 21 - line 2, column 1␤]
20:16 pmurias left
moritz_ pugs: "foo" ~~ m/oo/; say ~$/ 20:16
exp_evalbot OUTPUT[oo␤]
20:24 Silence left 20:31 Timmy left 20:44 avar left, avar joined 20:59 perlbot joined 21:04 avar left 21:05 avar joined 21:11 TJCRI left 21:18 avar left 21:30 iblechbot left 21:33 jhorwitz left 21:34 riffraff left 21:36 fglock left 21:41 avar joined 21:43 Daveman left 21:52 Jamtech left 21:56 Daveman joined 21:58 marmic left 22:00 avar left, avar joined 22:02 silug left 22:07 marmic joined 22:10 thoughtpolice joined 22:38 Limbic_Region joined 22:45 IllvilJa left 22:56 xinming_ left 23:11 BinGOs_ joined 23:14 BinGOs left 23:18 silug joined 23:21 devogon left 23:23 devogon joined 23:33 elmex left 23:58 justatheory left