Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-10-20

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:00 FurnaceBoy joined #perl6
00:09 bbkr joined #perl6
00:11 bbkr hi, i need to debug some grammar and print the captures value from token. but "token foo { someregex  <{ say $1 }> }" syntax returns parse error on today's SVN rakudo. what am i doing wrong here?
00:23 bsb joined #perl6
00:24 Guest70230 joined #perl6
00:43 [particle] bbkr: try using .panic. <{...}> isn't implemented in rakudo yet
00:47 bbkr how to use it? it compiles but doesn't print anything
00:49 bbkr S05 only describes "The new :panic modifier causes this regex and all invoked subrules to try to backtrack on any rules that would otherwise default to not backtracking" ....
00:49 bbkr i guess it's not what you mean?
00:51 bbkr some other method to print whole parsed tree would also be sufficient
00:52 [particle] <panic: "foo bar"> iirc
00:53 [particle] it'll end there, though
00:53 [particle] if you want to inspect your parse tree, you can pass --target=parse to perl6.pbc
00:54 [particle] seems from rereading your question, that is what you really want
00:54 [particle] errands &
00:54 justatheory joined #perl6
01:00 bbkr something is wrong with today's SVN version (it ain't matching basic grammar). i switched to 0.71 release but there it says - "Unable to find regex 'panic'". i'll try this --target option
01:04 bbkr and what i really want to do is to write some *.ini to hash mapping just like in PERL5 Parse::RecDescent or Parse::Eyapp where some code can be executed on token match... looks like Rakudo is not mature enough yet :(
01:08 mberends bbkr: if today's Rakudo is broken for regex don't despair - regression testing will restore it soon. Have a read of the November wiki engine for some examples of Rakudo regex in action...
01:09 bbkr browsing it ATM:)
01:15 bbkr and i'm not despairing, just trying to do some studies project on P6 (i love to piss off C/Java professors with oneliners :P)
01:32 alanhaggai joined #Perl6
01:43 literal does Perl 6 have a nifty way to return a list of all permutations of another list?
02:11 TimToady literal: not built in, no
02:13 literal ok, so a port of Algorithm::Permute would be needed...
02:16 TimToady it would hopefully be much easier to write in Perl 6 :)
02:34 alanhaggai_ joined #Perl6
02:37 FireMinion Is there an easy way to find out what has been implemented so far for Rakudo without doing trial and error ?
02:39 TimToady look at the tests and see which of them have been "fudged" into todo
02:40 jamtech__ joined #perl6
02:42 FireMinion Thank you
02:55 LCamel joined #perl6
02:55 LCamel joined #perl6
03:00 meppl joined #perl6
03:02 elmex joined #perl6
03:22 araujo joined #perl6
03:36 eternaleye literal: I think this will work in Pugs: my $string_length = 3; my @list = ( 1, 2, 3 ); say ( [X] (map {[@list]}, ^${string_length}) ).perl
03:36 eternaleye pugs: my $string_length = 3; my @list = ( 1, 2, 3 ); say ( [X] (map {[@list]}, ^${string_length}) ).perl
03:36 p6eval pugs: OUTPUT[*** ␤    Unexpected "{"␤    expecting "::"␤    at /tmp/bPtvC8RiUY line 1, column 76␤]
03:36 eternaleye pugs: my $string_length = 3; my @list = ( 1, 2, 3 ); say ( [X] (map {[@list]}, ^$string_length) ).perl
03:36 p6eval pugs: OUTPUT[((1, 1, 1), (1, 1, 2), (1, 1, 3), (1, 2, 1), (1, 2, 2), (1, 2, 3), (1, 3, 1), (1, 3, 2), (1, 3, 3), (2, 1, 1), (2, 1, 2), (2, 1, 3), (2, 2, 1), (2, 2, 2), (2, 2, 3), (2, 3, 1), (2, 3, 2), (2, 3, 3), (3, 1, 1), (3, 1, 2), (3, 1, 3), (3, 2, 1), (3, 2, 2), (3, 2, 3), (3, 3, 1), (3, ...
03:37 eternaleye There we go.
03:37 literal neat
03:37 eternaleye No Algorithm::Permute, just a oneliner :D
03:38 literal why does it return stuff like (2, 2, 2) ?
03:38 literal that's not a permutation of the set (1, 2, 3)
03:39 eternaleye Oh, that's what you wanted
03:40 eternaleye Mine was every possible array of length $string_length in which valid values are listed in @list
03:40 literal ah, that is indeed different
03:46 eternaleye Might /examples/algorithms/combinations.pl in the Pugs distribution do what you want?
03:46 literal it might, if I understood the code...
03:47 eternaleye I don't quite understand it either, but it might be. If only run.pugs.org was still up!
03:48 eternaleye *run.pugscode.org
03:48 literal pugs: @list = (1, 2, 3); my @ans; for 1 .. 2**@list.elems-1-> $num { push @ans, [ @list[ (0 .. sqrt($num)).grep:{ $num +& (2**$_) } ] ]; @list.perl
03:48 p6eval pugs: OUTPUT[*** ␤    Unexpected " ="␤    expecting "::"␤    Variable "@list" requires predeclaration or explicit package name␤    at /tmp/RyTh3lFclT line 1, column 6␤]
03:48 literal pugs: my @list = (1, 2, 3); my @ans; for 1 .. 2**@list.elems-1-> $num { push @ans, [ @list[ (0 .. sqrt($num)).grep:{ $num +& (2**$_) } ] ]; @list.perl
03:48 p6eval pugs: OUTPUT[*** ␤    Unexpected end of input␤    expecting operator or "}"␤    at /tmp/LTK02TX9Bs line 2, column 1␤]
03:49 literal pugs: my @list = (1, 2, 3); my @ans; for 1 .. 2**@list.elems-1-> $num { push @ans, [ @list[ (0 .. sqrt($num)).grep:{ $num +& (2**$_) } ] ]; } @list.perl
03:49 p6eval pugs: RESULT["\\(1, 2, 3)"]
03:49 literal not quite
03:54 eternaleye http://www.perlmonks.org/?node_id=24270 has something that might be translatable into perl6
03:54 lambdabot Title: Permutations and combinations
04:04 eternaleye Nope, on running it, it seems that it does the same thing as mine except that the acceptable characters list for each position are passed in as a separate arrayref. I'll keep looking.
04:19 eternaleye Doesn't look like there's anything specific to Perl 6 out there to permute a list. The examples in recipe 4.19 of the Perl [5] Cookbook shouldn't be too far from valid Perl 6, but there are probably ways to make a Perl 6 implementation more terse. (Perl 6 seems to be good at terseness - like the oneliner above that does nested loops)
04:28 literal perhaps check out Algorithm::Permute and try to make a Perl 6 one-liner out of it :P
04:47 mj41_ joined #perl6
05:16 meppl good night
05:27 Bzek joined #perl6
06:06 wayland76 joined #perl6
06:06 wayland76 Rejoice, for the next Rakudo release is near!
06:06 wayland76 (well, I read somewhere that it's on the 21st, anyway :) ).
06:06 adc_Penner joined #perl6
06:06 wayland76 oops, s/near/nigh/ :)
06:23 ashizawa joined #perl6
06:27 literal rakudo has releases?
06:31 azawawi joined #perl6
06:39 mjk joined #perl6
06:52 pbuetow joined #perl6
07:01 azawawi ping
07:15 pugs_svn r22661 | azawawi++ | [src/perl6] svn:ignore *.log
07:22 pugs_svn r22662 | azawawi++ | [src/perl6] set svn:ignore property to ignore temporary files
07:30 adc_Penner joined #perl6
07:37 cosimo joined #perl6
07:47 ludan joined #perl6
07:51 adc_Penner2 joined #perl6
07:58 explorer joined #perl6
08:01 iblechbot joined #perl6
08:14 ejs joined #perl6
08:14 adc_Penner joined #perl6
08:18 Jmaxxx joined #perl6
08:26 azawawi moritz_: ping
08:31 azawawi_ joined #perl6
08:39 Ontolog joined #perl6
08:42 penk joined #perl6
08:44 alanhaggai_ joined #perl6
08:45 pugs_svn r22663 | pmurias++ | [mildew] removed incorrect FETCH of arguments to methods
08:45 pugs_svn r22663 | pmurias++ | [smop] bool and S1P::Str supports FETCH, defaultblocksignature uses BIND to install the scalar in the lexicalpad
08:46 azawawi_ pmurias: hi
08:50 viklund joined #perl6
09:04 tomyan joined #perl6
09:05 gr1d joined #perl6
09:05 gr1d wasup w/ perl6
09:05 gr1d when is it droppin?
09:06 vxp joined #perl6
09:06 tomyan joined #perl6
09:06 infid3l joined #perl6
09:06 infid3l whats up
09:06 gr1d word
09:06 crimsont joined #perl6
09:07 gr1d n e 1 know when the new perl6 is droppin?
09:07 Im4u joined #perl6
09:07 crimsont left #perl6
09:07 Im4u left #perl6
09:07 ro[]V[]e joined #perl6
09:08 ro[]V[]e left #perl6
09:08 |DADE| joined #perl6
09:08 |DADE| left #perl6
09:08 Hawaiian joined #perl6
09:09 Duke|12 joined #perl6
09:09 broquaint Xmas
09:09 Hawaiian left #perl6
09:09 Duke|12 left #perl6
09:10 |DADE| joined #perl6
09:21 vxp joined #perl6
09:24 gr1d joined #perl6
09:25 vxp left #perl6
09:33 pugs_svn r22664 | azawawi++ | STD_syntax_highlight has a javascript parse tree viewer ;-)
10:07 xiaoyafeng joined #perl6
10:38 pugs_svn r22665 | azawawi++ | added --clean-html to generate external javascript files
10:38 pugs_svn r22665 | azawawi++ | cleaned up code a little
10:46 azawawi_ @seen moritz_
10:46 lambdabot moritz_ is in #perl6. I last heard moritz_ speak 13h 11m 11s ago.
10:46 azawawi_ @seen pmurias
10:46 lambdabot I saw pmurias leaving #perl6 12h 9m 29s ago, and .
10:50 azawawi_ @tell moritz_ i added the js tree viewer that we talked about yesterday.
10:50 lambdabot Consider it noted.
10:57 kane_ joined #perl6
11:07 pugs_svn r22666 | azawawi++ | [STD_syntax_highlight] increased the % width for larger trees.
11:43 Psyche^ joined #perl6
11:52 alanhaggai_ joined #Perl6
12:08 DietCoke joined #perl6
12:09 moritz_ azawawi++
12:09 lambdabot moritz_: You have 1 new message. '/msg lambdabot @messages' to read it.
12:09 moritz_ I know lambdabot, thank you.
12:09 alanhaggai joined #Perl6
12:20 abra joined #perl6
12:20 abra joined #perl6
12:22 penk left #perl6
12:25 azawawi joined #perl6
12:27 azawawi ping
12:28 moritz_ Destination Net Unreachable
12:28 azawawi ;-)
12:29 * moritz_ wonders if t/spec/S05-modifier/ignorecase.t is actually correct
12:29 moritz_ it assumes that a :i has recursive meaning in subrules
12:29 moritz_ I don't think that's the case.
12:29 iblechbot joined #perl6
12:31 * moritz_ wonders why it takes so many rules to match variables
12:31 azawawi "The :i (or :ignorecase) modifier causes case distinctions to be ignored in its lexical scope, but not in its dynamic scope. That is, subrules always use their own case settings."
12:31 moritz_ right, that's what I had in mind.
12:32 literal moritz_: does the '...' construct have Unicode shorthand of '…' in Perl 6?
12:32 pedrob joined #perl6
12:32 pugs_svn r22667 | moritz++ | [STD_syntax_highlight] some color changes/additions
12:33 moritz_ azawawi: I like the match tree in the html output ;)
12:33 moritz_ literal: not that I'm aware of
12:33 moritz_ literal: I think most "Unicode" builtins actually map to Latin-1, like «...»
12:34 literal I don't think … is in Latin-1, though
12:34 moritz_ aye
12:35 literal why would that be a problem, though?
12:35 moritz_ it wouldn't
12:35 moritz_ &infix:<…> ::= &infix<...> # eh voila!
12:36 literal ... is also used as a code placeholder in methods, right?
12:36 moritz_ yes
12:36 azawawi moritz_: what's the perl6 program that uses most of the perl6 syntax [to be used as a test case for syntax highlighting]
12:36 moritz_ but I think it's not an infix in that case
12:37 moritz_ azawawi: STD.pm
12:38 azawawi moritz_: i think we should re-organize src/perl6 into src/perl6/highlighter or something like that
12:38 moritz_ azawawi: yes, but that's premature optimization ;)
12:41 pugs_svn r22668 | moritz++ | [t/spec] correct ignorecase.t
12:41 * azawawi is executing 'perl STD_syntax_highlight STD.pm'
12:42 azawawi moritz_: Malformed UTF-8 character (unexpected end of string) in match position at (eval 1562) line 31.
12:45 pasteling "azawawi" at 212.38.144.4 pasted "'perl STD_syntax_highlight STD.pm' output" (7 lines, 369B) at http://sial.org/pbot/32726
12:46 moritz_ azawawi: that's the first occurence of the ¢ character
12:49 moritz_ now running it myself... so far no error
12:57 apeiron_ joined #perl6
13:00 apeiron_ joined #perl6
13:04 pugs_svn r22669 | azawawi++ | [STD_syntax_highlight] a box is now shown when you hover over the span node
13:07 moritz_ azawawi: it's a bit unfortunate that the list of rules doesn't scroll...
13:07 moritz_ when I'm a bit further down the file I can't see the list at all
13:09 * explorer is away: Ocupado... ahora vuelvo...
13:10 Lorn joined #perl6
13:15 sri_work_ joined #perl6
13:20 * explorer is back (gone 00:10:54)
13:20 * explorer is away: Ocupado... ahora vuelvo...
13:22 moritz_ explorer: please don't spam us with your away messages ;)
13:37 pedrob joined #perl6
13:37 pugs_svn r22670 | azawawi++ | [STD_syntax_highlight] sticky-note colors and box width is no longer fixed
13:40 justatheory joined #perl6
14:03 alanhaggai joined #Perl6
14:05 pugs_svn r22671 | azawawi++ | [STD_syntax_highlight] the parse tree viewer is now a tooltip
14:14 azawawi moritz_: ?
14:14 moritz_ azawawi: yes?
14:14 azawawi moritz_: i noticed that you removed 'identifier' from the coloring table.. Any reason for that?
14:15 pmurias joined #perl6
14:15 moritz_ azawawi: yes.. it colored basically everything that's not quoted
14:15 moritz_ azawawi: so variable names, sub names, package names etc... that was a bit too broad for my taste
14:17 azawawi moritz_: i think this tool is quite educational... i learnt quite a lot about the Perl6 grammar since yesterday...
14:17 azawawi pmurias++, moritz++
14:17 moritz_ indeed
14:17 moritz_ and azawawi++ for implementing it ;)
14:17 alester joined #perl6
14:19 moritz_ it's nice, even interpolated variables are coloured correctly
14:20 azawawi being generic can sometimes have its merits ;-)
14:21 azawawi so STD.pm is the perfect perl6 script that uses most of the grammar
14:21 moritz_ not quite
14:21 moritz_ but it's one of the biggest nonetheless
14:21 moritz_ doesn't use meta ops, for example
14:22 * azawawi ponders about running STD_syntax_highlighter on t/spec
14:22 moritz_ ETOOMUCHTIME ;)
14:24 azawawi one of the nice things about google chrome browser is that it shows you how much memory each tab consumes...
14:25 pmurias azawawi: STD doesn't use the fancy stuff
14:25 azawawi t/spec/S02-names_and_variables/varnames.t is like 10-12M on chrome
14:31 pmurias azawawi: why do you recreate the whole tree when the topmost rule is highlighted?
14:32 azawawi pmurias: because it is not optimized ;-)
14:34 TJCRI joined #perl6
14:37 pugs_svn r22672 | pmurias++ | [STD_syntax_highlight] the tree is not recreated when the topmost node is highlighted
14:37 pmurias azawawi: i rewrote the event handler hopes i hope it works correctly now
14:39 azawawi pmurias: ah; now the tooltip is not going to work
14:39 pmurias fixing
14:39 * azawawi sees lots of red lines in http://perlcabal.org/svn/pugs/revision/?rev=22672
14:39 lambdabot Title: revision: /pugs (Rev: 22672, via SVN::Web)
14:40 azawawi pmurias: i need to do that to display the parse tree viewer tooltip on each mouseover of the span
14:41 azawawi pmurias: it is tested and it is lightweight... sorry i didnt understand your question earlier
14:42 azawawi pmurias: $("span").mouseover attaches mouseover for all span
14:43 pmurias azawawi: i misunderstood the code and tried to be too smart, reverting...
14:43 azawawi pmurias: worst case is that we have lots of braces (statementlist,statement,...)
14:44 moritz_ std: 3!
14:44 p6eval std 22672: OUTPUT[parse failure␤]
14:45 moritz_ std: sub postifx:<!>($x) { [*] 1..$x }; 3!
14:45 p6eval std 22672: OUTPUT[Out of memory!␤]
14:45 [particle] hee
14:45 moritz_ :/
14:46 pugs_svn r22673 | pmurias++ | [STD_syntax_highlight] reverted previous commit
14:46 * azawawi wonders how much memory is needed to not get the "Out of memory" errors ;-)
14:48 moritz_ azawawi: look in evalbot.pl or the modules it loads...
14:49 pmurias moritz_: it would have been a parse failure anyway post>>i<<fx
14:50 moritz_ std: sub postfix:<!>($x) { [*] 1..$x }; 3!
14:50 moritz_ pmurias: thanks
14:51 p6eval std 22673: OUTPUT[Out of memory!␤]
14:51 moritz_ std: sub postfix:<!>($x) { 1 }; 3!
14:51 p6eval std 22673: OUTPUT[parsed␤]
14:52 pmurias moritz_: btw. how is the mildew evalbot growing?
14:53 azawawi why is STD.pm a bit slow?
14:54 moritz_ azawawi: because the regex engine isn't suitable for longest token matching
14:54 pmurias azawawi: when you do stuff like postfix:<!> it generates a new grammar
14:54 moritz_ pmurias: not at all, I should change that
14:57 jhorwitz joined #perl6
14:57 pugs_svn r22674 | moritz++ | [evalbot] pixie is gone, mildew is the new player in town.
14:59 pmurias mildew: $OUT.print("hello from mildew\n");
14:59 moritz_ pmurias: won't work yet, I guess
15:00 moritz_ evalbot control restart
15:00 pmurias mildew: $OUT.print("hello from mildew\n");
15:00 p6eval joined #perl6
15:00 pmurias mildew: $OUT.print("hello from mildew\n");
15:00 p6eval mildew: OUTPUT[Can't create mildew.log: Permission denied at ../../src/perl6/Cursor.pm line 89.␤BEGIN failed--compilation aborted at ../../src/perl6/Cursor.pm line 92.␤Compilation failed in require at ../../src/perl6/STD.pm line 34.␤BEGIN failed--compilation aborted at ../../src/perl6/STD.pm li...
15:00 ruoso joined #perl6
15:01 pmurias ruoso: hi
15:01 ruoso hi pmurias
15:01 pugs_svn r22675 | moritz++ | [evalbot] mildew likely needs a umask...
15:02 ruoso sorry... been off the rest of the weekend, I've seen that you had much progress
15:02 moritz_ evalbot control restart
15:02 p6eval joined #perl6
15:02 moritz_ mildew: $OUT.print("hello from mildew\n");
15:02 p6eval mildew: OUTPUT[Can't locate Data/Dump/Streamer.pm in @INC (@INC contains: src ../../src/perl6 /etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) at src/AST.pm line 53.␤BEGIN failed...
15:03 moritz_ mildew: $OUT.print("hello from mildew\n");
15:03 p6eval mildew: OUTPUT[Can't exec "../smop/m0ld/dist/build/m0ld/m0ld": No such file or directory at mildew line 345.␤print() on closed filehandle $m0ld_exe at mildew line 346.␤]
15:03 pedrob joined #perl6
15:04 ruoso moritz_, ./Setup configure --flags=SMOP; ./Setup build inside ../smop/m0dl
15:04 ruoso *m0ld
15:05 moritz_ ruoso: there's no ./Setup in v6/smop/m0ld/
15:05 ruoso moritz_, sorry... ghc --make Setup.lhs
15:06 PartclCoke left #perl6
15:06 moritz_ Setup: At least the following dependencies are missing:
15:06 moritz_ utf8-string >=0.3.1.1
15:06 pmurias ruoso: i think we are just a few features away from running a rephrased P6Meta.pm
15:06 moritz_ man, this is just as bad as cpan :/
15:07 ruoso pmurias, that's very cool
15:07 pmurias hmm, cabal is suposed to automatic dependency checking...
15:07 moritz_ should a 'cabal install utf8-string' fix that?
15:07 pmurias yes
15:07 ruoso moritz_, apt-get install even
15:07 ruoso libghc6-utf8-string-dev
15:08 moritz_ thanks, doing that now
15:08 moritz_ apt++
15:08 moritz_ mildew: $OUT.print("hello from mildew\n");
15:09 p6eval mildew: OUTPUT[unable to fetch SMOP__S1P__RootNamespace␤unable to fetch SMOP__S1P__RootNamespace␤]
15:09 pmurias moritz_: do you have a recently make'd smop in the evalbot?
15:09 moritz_ ah no, make gives an error
15:10 moritz_ rm -rf build/; make # trying again now
15:10 pmurias if i'm sshed to www.timtoady.org how should i enter the evalbot environment?
15:10 masak joined #perl6
15:10 pasteling "moritz_" at 89.13.207.138 pasted "smop build failure" (7 lines, 293B) at http://sial.org/pbot/32738
15:11 moritz_ pmurias: sudo chroot /chroot; su - evalenv
15:11 pmurias ruoso: what would be nice for the sanity of the C part of smop would be to have the GlobalInterpreter exists before at least all of the s1p stuff is initialised
15:12 ruoso I see
15:13 ruoso moritz_, it might be related to STD lex cache
15:13 moritz_ I removed that, and now I get Can't locate sm0p5.pm in @INC
15:14 ruoso you have to 'make' in src/perl6
15:15 moritz_ pmurias: did you happen to run some commands in ~evalenv/pugs/v6/smop as root?
15:15 pmurias yes
15:15 moritz_ don't do that ;)
15:15 pmurias i shouldn't...?
15:15 pugs_svn r22676 | azawawi++ | Added a ETOOMUCHTIME script to test STD_syntax_highlight over t/spec.
15:15 moritz_ no
15:15 pmurias moritz_: OK
15:16 moritz_ pmurias: only user evalenv should modify that directory, otherwise we get a permission mess
15:16 moritz_ I've delete the root owned build/ now
15:16 pmurias moritz_: the problem was that a make in v6/smop/sm0p is nessesary due to my sloppiness
15:17 moritz_ mildew: $OUT.print("hello from mildew\n");
15:18 p6eval mildew: OUTPUT[unable to fetch SMOP__S1P__RootNamespace␤unable to fetch SMOP__S1P__RootNamespace␤]
15:18 ruoso and a lack of a not-crappy build system...
15:18 ruoso moritz_, rm m0ld/dist -rf
15:18 ruoso ?
15:18 * ruoso wonders why old bugs seem to appear there
15:18 pmurias cabal is a none-crappy build system unfortunatly it's haskell only
15:19 moritz_ ok, removed m0ld/build/, and re-built
15:20 moritz_ mildew: $OUT.print("hello from mildew\n");
15:20 p6eval mildew: OUTPUT[hello from mildew␤]
15:20 ruoso cool
15:20 ruoso this is a step in the very right direction
15:21 ruoso now we need to populate the runtime (er... just after implementing multi)
15:21 ruoso mildew: $OUT.print(1 < 2)
15:21 p6eval mildew: OUTPUT[unimplemented at mildew line 22␤  Mildew::XXX() called at mildew line 264␤ Mildew::EXPR('VAST::EXPR=HASH(0xa409c88)') called at mildew line 268␤     VAST::EXPR::emit_m0ld('VAS​T::EXPR=HASH(0xa409c88)') called at mildew line 301␤
15:21 p6eval ..VAST::statement::emit_m0ld('V​AST::statement=HASH(0xa341ea...
15:22 ruoso oops
15:22 pugs_svn r22677 | azawawi++ | STD_syntax_highlight is now an exectuable script (svn:executable)
15:23 pmurias ruoso: multis could be implemented in p6, couldn't they?
15:23 ruoso pmurias, yes... they could
15:24 ruoso pmurias, in fact, if not in p6, at least in m0ld
15:24 ruoso in C it's very unlikely to be doable
15:24 ruoso but it's basically $s1p_multi.()
15:25 ruoso where the $multi holds some variants and a pointer to its outer scope
15:25 ruoso and its name
15:25 zamolxes joined #perl6
15:25 pmurias it's better to do stuff in p6 then in m0ld
15:25 ruoso then it goes traversing the scopes to find all variants
15:26 ruoso grep { $_.signature.ACCEPTS($capture) }, @variants
15:26 * ruoso lunch &
15:27 pmurias why does it need to traverse scopes it can just hold a pointer to the outer variant
15:28 * pmurias buys some chocolate
15:29 smg joined #perl6
15:30 pugs_svn r22678 | azawawi++ | Improved the usability of teststd by catching pesky CTRL-Cs from child process
15:34 * explorer is back (gone 02:13:47)
15:36 Exodist joined #perl6
15:41 Exodist joined #perl6
15:45 moritz_ TimToady: STD.pm doesn't like S03-operators/also.t, even though it knows about infix:also
15:45 moritz_ ah, it should be sym<also<
15:47 moritz_ pmurias: which steps does the rebuild script for mildew need?
15:53 hercynium joined #perl6
15:59 pugs_svn r22679 | azawawi++ | ETOOMUCHTIME now writes all of its results into an
15:59 pugs_svn r22679 | azawawi++ | html directory like t/spec
16:01 rindolf joined #perl6
16:03 * azawawi is running ETOOMUCHTIME to generate html for t/spec...
16:05 pugs_svn r22680 | moritz++ | [STD.pm] fix infix:<also>
16:08 masak moritz_: in http://rt.perl.org/rt3/Tic​ket/Display.html?id=57652 , does bacek mean "leave" instead of "break"?
16:08 lambdabot Title: #57652: [BUG] successfull 'when' does not skip the following tests.
16:10 moritz_ masak: I hope so ;)
16:11 masak good. I'm thinking of implementing that, that's why I'm asking.
16:11 masak gotta run
16:11 pmurias moritz_: cd v6/smop/sm0p;make;cd v6/smop;make;cd v6/smop/m0ld;...
16:12 pmurias ... being rm -fr dist;ghc --make Setup.lhs;./Setup configure --flags=SMOP; ./Setup build
16:13 ruoso pmurias, it needs to traverse because it needs to find all the variants...
16:14 ruoso pmurias, if we just make a "lookup" we won't find *all* the varianta
16:15 zamolxes_ joined #perl6
16:16 pmurias ruoso: the outer multi would have a pointer for the one outer for it
16:16 [particle]1 joined #perl6
16:16 pmurias it's propably easier to just use the lexical scope for now
16:17 ruoso pmurias, yeah... I thought using the scope is easier
16:17 * ruoso later&
16:20 abra joined #perl6
16:21 apeiron_ joined #perl6
16:28 azawawi moritz_: the script is now at S03-operators/assign.t
16:28 azawawi moritz_: 25 mins to reach there
16:29 [particle]1 does it run in parallel?
16:30 azawawi nop
16:30 [particle] it's probably all cpu time, so || would speed it up if you have manycore
16:31 azawawi look at feather1, cpu is like 70%
16:31 [particle] oh, you're running on feather
16:31 [particle] better to be nice to other users, then
16:31 azawawi load avg: 2.20
16:32 pmurias azawawi: how is it possible to browse the results thus far?
16:33 [particle] rakudo: my $a = 2; $a **= 10; say $a
16:33 p6eval rakudo 31963: OUTPUT[2␤]
16:33 [particle] grr
16:34 azawawi pmurias: /home/azawawi/pugs/src/perl6/html/
16:35 pmurias azawawi: you should make it avalible through the web browser
16:35 azawawi sure through feather3
16:35 pmurias OTOH i could just make generate a local copy of stuff i want to look at
16:35 musiKk joined #perl6
16:38 pasteling "azawawi" at 212.38.144.4 pasted "html file byte size and line count so far" (92 lines, 4.8K) at http://sial.org/pbot/32742
16:40 azawawi ./S03-operators/assign.html is the biggest so far (lines:1067, bytes:708711)
16:46 musiKk left #perl6
16:53 pmurias azawawi: you know what would be really cool, integrating the syntax highlighting with http://www.perlcabal.org/syn
16:53 lambdabot Title: Official Perl 6 Documentation
16:54 azawawi pmurias: gr8 idea
16:55 moritz_ and before somebody asks - that page is generated by util/smartlinks.pl  ;)
16:55 azawawi pmurias: where is the code that does the smartlinking and syn stuff?
16:55 azawawi moritz_: lol
16:57 azawawi moritz_: judging from speed of things, we need to have a smart update of the html output...
16:58 moritz_ I wouldn't add more stuff the the S\d\d.html pages themselves, they are already rather heavy-weight (and take some time to load on slow browsers)
16:58 azawawi moritz_: we dont wanna slow down your precious ;-)
16:58 moritz_ rather add a link to an index of the  syntax hilighted files
16:58 azawawi moritz_: ajax comes to the rescue...
16:58 [particle] ajax++
16:59 pmurias moritz_: slow browser = slow internet connections?
16:59 [particle] it'd be nice to have syntax-highlighted examples and inlined tests
16:59 moritz_ pmurias: no, slow page building
16:59 moritz_ ajax only makes that worse
16:59 azawawi i think we could cut a lot of fat from the Sxx pages when we ajax them
17:00 pmurias moritz_: you seem to like obsolete technology a lot ;)
17:00 moritz_ pmurias: I like usable technology a lot. If it's all coloured and animated but takes 20s to load, I'm out.
17:01 * azawawi investigating how to speed up things
17:04 pmurias azawawi: js or STD_syntax_highlight?
17:04 azawawi S11 scores A on YSlow FF plugin ;-) moritz_++
17:04 azawawi how about p6_hilite?
17:05 pmurias isn't A the best score?
17:05 moritz_ S11 is quite small - use S12 or S05 for testing
17:05 moritz_ or even S03 ;)
17:06 azawawi lol YSlow borked on S12
17:06 pmurias we could have a static css only highlighted version
17:06 azawawi still 95 (A) on S12
17:06 * moritz_ heads off to play some table tennis, ttfn folks
17:09 pedrob joined #perl6
17:10 pmurias azawawi: i don't think it's worth spending time to optimise js
17:11 azawawi pmurias: yeah, i will look into it...
17:11 pbuetow joined #perl6
17:12 pmurias azawawi: your answer was a bit contradictory
17:12 azawawi sorry i was looking at something else
17:12 azawawi im not going to optimize js
17:12 pmurias ok
17:14 azawawi the key thing here is updating output html when the spec file is changed and putting the output on a webserver...
17:15 azawawi i.e. when the test .t is actually changed, generate the html
17:16 adc_Penner joined #perl6
17:19 TimToady well, the fact of the matter is that as long as STD is implemented in P5, we have to compile close to 3 megabytes of P5 code to start up.
17:20 [particle] pmc!
17:21 azawawi STD takes forever on t/spec/S05-mass/rx.t (2720 lines)
17:21 pmurias TimToady: TRE leaks memory so running a persistent STD is not really an option
17:22 pmurias CD
17:22 pmurias sorry
17:22 pmurias (caps lock--)
17:24 TimToady it really depends on how TRE leaks memory
17:25 pmurias having checked it in a while put when i run a persistent STD a long time before it eat >2G of it and segfaulted
17:26 TimToady we can cut out 1meg of whitespace by making gimme5's indent an identity function
17:26 TimToady it would appear that it still works after that
17:27 TimToady Cursor caches all lexers it has ever generated, so maybe you were seeing that
17:28 pmurias maybe, the TRE using part is the one i don't undestand much so it's likely i just blamed the leaks on the unknown ;)
17:28 TimToady (at the moment I'm working on cutting down the number of lexers it needs to build, so we can have a series of macros efficiently)
17:29 TimToady oops, gotta commute to work right now &
17:31 azawawi pmurias: t/spec/S05-mass/rx.t is the worst case so far [455m memory]
17:31 pmurias the memory used or the size of the highlighted output?
17:32 azawawi it is virt memory used; the output is flushed at the end
17:48 meppl joined #perl6
18:04 azawawi has anyone tried to run t/spec/S05-mass/rx.t with STD? does it ever finish?
18:04 TimToady certainly
18:04 TimToady STD parses everything in t
18:04 azawawi time estimate?
18:05 TimToady hang on (in a meeting)
18:06 azawawi ok
18:08 TimToady if lex cache already exists, 27 seconds on my machine.  2-3 times longer if it has to generate lexers
18:08 TimToady are you short on memory?
18:08 azawawi feather1... dont think so
18:09 pasteling "azawawi" at 212.38.144.4 pasted "STD_syntax_highlight summary so far..." (164 lines, 9.3K) at http://sial.org/pbot/32746
18:10 TimToady if you're using something that traverses the std tree, could well have an infinite loop in it
18:11 azawawi it is basically stuck at 460mb virtual memory and just continues to eat CPU
18:11 azawawi 63:21.06 cpu time so far...
18:12 TimToady you've gotta be looping somehow then
18:13 azawawi and yes it is traversing the std tree to generate the syntax hilighted html...
18:13 TimToady some of the routines in Cursor like ->clean are known to have infinite loops for some inputs
18:13 TimToady are you using STD directly or viv?
18:14 azawawi STD and DumpMatch
18:14 azawawi directly i guess since i dont know the other one ;-)
18:15 azawawi STD_syntax_highlight in src/perl6
18:18 PZt joined #perl6
18:18 pmurias TimToady: it's a STD5_dump_match mutant
18:19 TimToady well, you could run it under perl -d and ^C it when you think it's looping to see where it is
18:20 TimToady maybe set STD5DEBUG=-1 to get debugging log to screen
18:26 TimToady removing indent in STD.pmc speeds startup by about 25%
18:28 azawawi it finished
18:28 azawawi 2822  1554141 ./html/S05-mass/rx.html
18:28 azawawi lines,bytes
18:29 TimToady well, the .t is 2720 lines
18:29 pmurias js and stuff
18:31 pmurias we could always rewrite parts of STD_syntax_highlight in C...
18:31 TimToady it's a trivial change to Cursor to map positions to what reductions were done at that position, since the _ array is already indexed by position
18:41 TimToady so it would be easy to implement a scan of positions that were not matched by any subrule of the current rule
18:45 ruoso joined #perl6
18:54 pmurias ruoso: do you think multis are necessary for P6Meta?
18:54 ruoso pmurias, well... we could have some only subs installed in the prelude scope for it to work
18:54 ruoso and then we could overwrite it
18:55 ruoso pmurias, one thing I've been thinking is how to build the src-s1p files...
18:56 ruoso and I think we should have a .so file built for each .pm file
18:56 ruoso with two methods in its api
18:56 ruoso init_order() and initialize()
18:56 ruoso then smop would find all .so files in the s1p directory, load them, sort by init_order and call initialize in each one of them...
19:03 pugs_svn r22681 | ruoso++ | [smop] we dont really need feed or gather/take in P6Meta.can
19:05 explorer joined #perl6
19:07 pmurias ruoso: alternatively we could link the haskell m0ld parser in and use it to dynamicly load .m0ld files in
19:08 ruoso pmurias, I'm not sure about that... because I do think the s1p part will always be compiled down to C
19:08 ruoso or else it will mean parsing the prelude *everytime*
19:08 azawawi pmurias: nearly finished, processing S29-scalar ;-)
19:08 ruoso which doesn't seem optimal
19:09 pmurias parsing .m0ld files is fast
19:10 ruoso I know, but not parsing them is even faster ;)
19:13 hercynium joined #perl6
19:16 pasteling "azawawi" at 212.38.144.4 pasted "Pass/fail & html file sizes report for STD_syntax_highlight over all of t/spec" (407 lines, 21.2K) at http://sial.org/pbot/32750
19:18 pmurias ruoso: do you think we should have a seperate simpilfied P6Meta?
19:18 azawawi done ;-)
19:18 ruoso pmurias, I think it doesn't need to be separate...
19:18 ruoso we can have it simplified
19:18 ruoso and then we complexify it as we evolve
19:20 pmurias ruoso: ok
19:21 pugs_svn r22682 | azawawi++ | svn ignore generated html directory under src/perl
19:21 pmurias gather/push can be turned into eager @array.push
19:21 pmurias and types can be droped
19:26 pugs_svn r22683 | pmurias++ | [smop] turned gather/take in P6Meta.pm into Array.push
19:26 azawawi who would have guessed S29-str/index.t -> index.html ;-)
19:28 ruoso pmurias, yeah... we can also drop the types...
19:29 alanhaggai joined #Perl6
19:30 pugs_svn r22684 | ruoso++ | [smop] removing some types left in the signature...
19:31 pmurias ruoso: the compiler could've just ignored them but np
19:32 ruoso better to have the code simplified than the compiler with misimplementations to support that
19:32 pedrob joined #perl6
19:33 pugs_svn r22685 | ruoso++ | [smop] small typo got by STD5_dump...
19:34 pmurias ruoso: what do you think of implementing Str in perl6 with a bug
19:34 pmurias s/bug/buf/
19:34 ruoso pmurias, I do think that every builtin type wilkl be written in Perl 6
19:34 ruoso needs to be
19:34 ruoso (every one except the native ones, of course)
19:35 azawawi here it is: http://feather.perl6.nl/~azawawi/
19:35 lambdabot Title: My humble homepage (Ahmad Zawawi on feather1.perl6.nl)
19:36 ruoso azawawi++
19:37 pmurias azawawi: one annoying thing is that the tooltip/highlight doesn't disappear when move the mouse from under the code
19:37 azawawi but dont go to rx.html... it will break the 15-second time for sure...
19:38 azawawi pmurias: will fix it soon
19:38 ruoso er... while the tooltip is cool... it is kinda heavyweight...
19:39 azawawi what browser r u using?
19:39 ruoso firefox
19:39 azawawi 3?
19:39 ruoso yesajh
19:39 ruoso S02-builtin_data_types/nested_arrays.html
19:39 ruoso this one is a heavy one
19:40 pmurias azawawi: i went to rx.html but the tooltip is a bit sluggish
19:41 ruoso yeah... I think the tooltip needs a different visualization
19:41 ruoso maybe not being a tooltip
19:41 ruoso but rather a side tree
19:41 azawawi it was a side tree in the beginning ;-)
19:41 ruoso that you can expand and see the referring code
19:42 azawawi but somebody thought it was a good idea to make it a tooltip ;-)
19:42 ruoso heh...
19:42 azawawi for scrolling reasons
19:42 ruoso make it collapsed by default
19:42 ruoso and the user goes expanding it as pleased
19:43 ruoso and while the user expands it the referring code for that node of the tree is highlighted
19:43 azawawi got it... side tree... on expand hilight...
19:46 azawawi pmurias: do u think getting pod comments in the syntax tree a bit too much?
19:47 pmurias it would mean using a modified STD
19:47 pmurias azawawi: do you think it's important?
19:48 azawawi not that much
19:48 azawawi i think being able to see a syntax tree visually is way more important
19:49 pmurias pod doesn't require very much highlighting
19:49 azawawi google chrome (chromium) dev release does not run rx.html well
19:50 azawawi memory keeps rising on its tab
19:53 azawawi but after a while, tooltip is way too fast on chrome compared to firefox
19:53 azawawi must be the inlining/caching that have in their v8 engine
19:54 pmurias azawawi: should i commit fixes to the tooltip?
19:55 azawawi sure
19:57 pugs_svn r22686 | pmurias++ | [STD_syntax_highlight] the tooltips is 30% transparent and closes when doesn't have the cursor over the code
19:57 azawawi --clean-html must be enabled by default since it doesnt inline javascript and that's more easier to maintain
20:01 pmurias azawawi: the changes are ok?
20:01 azawawi pmurias++
20:02 azawawi 3:10 hours to finish a full STD_syntax_highlight on all of t/spec (feather1)
20:04 pmurias hmm, we could try using inline C
20:04 literal can example results from this syntax highlighter be seen somewhere?
20:04 azawawi http://feather.perl6.nl/~azawawi/html/
20:04 lambdabot Title: Index of /~azawawi/html
20:05 literal neat
20:05 pmurias OTOH if the javascript and the CSS will be kept seperated speed shouldn't be a big issue
20:06 azawawi yeah that's why --clean-html must be on by default
20:06 * azawawi working on reversing logic to --inline-js
20:07 Juerd_ Orange is hard to read on a bright background
20:07 Juerd_ Other than that, pretty stuff!
20:07 azawawi thx
20:07 Juerd_ Also, impressive if this was written in 3 hours :)
20:08 Juerd_ Tooltip doesn't fit on my small screen :)
20:08 Juerd_ (smaller letters could help perhaps)
20:08 pmurias Juerd_: the initial version was propably written in much less
20:10 pmurias 3:10 hours is the time it took to generate the syntax highlightning
20:11 pmurias ruoso: the HOW api needs an add_method
20:15 zamolxes joined #perl6
20:16 pugs_svn r22687 | azawawi++ | ETOOMUCHTIME now uses --clean-html for better maintenance
20:18 [particle] http://www.infoworld.com/article/08​/10/13/42TC-dynamic-futures_1.html
20:19 lambdabot Title: Dynamic programming futures | InfoWorld | Analysis | 2008-10-13 | By Peter Wayne ..., http://tinyurl.com/3qfawf
20:19 * azawawi running ETOOMUCHTIME again. Updated results will come in 3 hours
20:21 ruoso pmurias, er... good point
20:24 azawawi [particle]: nice article... reading...
20:45 * ruoso later &
20:50 pedrob joined #perl6
21:18 pmurias SU
21:25 fridim_ joined #perl6
21:47 [particle] joined #perl6
22:01 zamolxes joined #perl6
22:19 pugs_svn r22688 | azawawi++ | [STD_syntax_highlight] removed unused modules
22:37 pugs_svn r22689 | azawawi++ | [ETOOMUCHTIME] added benchmarks and improved messages
22:42 ruoso joined #perl6
22:43 ruoso Hello!
22:46 meppl joined #perl6
22:47 FurnaceBoy joined #perl6
22:49 wknight8111 joined #perl6
22:58 literal does rakudo (or any other implementation) make it easy to write one-liners?
22:59 literal like perl(1)'s -n, -p, -i, etc
23:01 * ruoso .oO(running make test in src/perl6 is not a good idea)
23:01 [particle] literal: rakudo supports -e
23:02 [particle] but only -c -h -e -v
23:03 literal ok
23:04 literal will code executed with -e be treated the same as code from a file? i.e. same level of strictness
23:04 [particle] yes
23:04 literal ok
23:04 [particle] you need -e6 to turn off strict, which is not implemented
23:04 literal ok
23:05 literal is the "loose mode" discussed anywhere in the synopses?
23:05 [particle] yes, search for e6
23:06 [particle] apparently it's mentioned in S11
23:06 [particle] once, and that's it
23:06 literal yeah, saw that
23:06 [particle] how i remember this stuff, i don't know
23:09 literal will there 'strict' and 'warnings' pragmas?
23:10 literal will there be*
23:14 [particle] hrmm, actually, S02 says strict is in effect by default, except for one-liners
23:14 literal yeah, I knew about that
23:14 [particle] so, S11 seems wrong about -e6
23:14 literal but I was wondering if there will be a strict pragma so that you could turn of some strictures manually
23:14 literal ah
23:15 [particle] yes, there will be a way to adjust strictures and warnings by category
23:16 TimToady the only one you could possibly have from p5 is 'vars', since refs and syms aren't handled the same way in p6
23:16 literal has there been any discussion about pragmas? I see there's no apocalypse/synopsis draft
23:17 TimToady there are a few pragmas mentioned here or there, but generally we considered the need for a pragma to be a design smell
23:17 literal I see
23:17 TimToady there's a general principle that if you're going to have a pragma that modifies a builtin with keyword "foo", the pragma should also be named "foo"
23:18 eternaleye joined #perl6
23:18 TimToady "use open :x" modifies the meaning of open(), for instance
23:20 [particle] so, you could modify all quoting ops to warn on undefineds by something like "use Q :warn<undef>" i suppose
23:20 [particle] perhaps :WARN
23:21 TimToady that looks like an abuse of pair syntax to me
23:22 TimToady but my brain is in sideways at the moment due to migraine, so ignore most of what I say
23:23 [particle] i'll keep my arthritis, you can keep your migraine
23:23 TimToady I got that too...
23:24 [particle] just don't ask me to turn my head or lift my arms over my shoulders today
23:24 TimToady I'm seeing a specialist for my shoulder tomorrow...
23:25 TimToady hopefully they'll actually do something after a year of "conservative" treatment...
23:25 TimToady (not strictly arthritis, this shoulder...)
23:25 TimToady actually calcific tendon
23:26 [particle] urk
23:26 [particle] i'll get treated for the arthritis wednesday, and have another six pain-free weeks followed by another painful one
23:26 [particle] the cycle continues...
23:27 TimToady osteo or rheumatoid?
23:29 [particle] crohn's. like rheumatoid, but non-destructive
23:29 TimToady now why does making macro languages anonymous cause the fates to come out all wrong, grr...
23:50 wayland76 @tell pmichaud Any chance someone could update the perl6 ROADMAP before the Parrot release later today?
23:50 lambdabot Consider it noted.
23:51 [particle] the parrot release is ~18-24 hours away
23:51 [particle] what needs updating? anything specific?
23:55 * [particle] heads out to do errands &

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo