pugscode.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 Tene on 29 July 2008.
00:10 kulp_ joined, kulp left 00:16 justatheory left 00:22 kulp_ left 00:27 alester left 00:28 alester joined
speckbot r14592 | pmichaud++ | typo fix in S02 00:32
pmichaud TimToady++ I _like_ the new adverb approach. 00:34
00:34 alester left 00:35 Ontolog left 00:36 alanhaggai joined 00:45 jhorwitz left
pmichaud std: my $foo; ::($foo)::handler() 00:52
p6eval std 22560: OUTPUT[parsedā¤]
00:55 hercynium joined 00:56 alester joined 00:59 eternaleye joined 01:06 alanhaggai_ joined 01:07 alanhaggai left, alanhaggai_ is now known as alanhaggai 01:16 BinGOs_ joined 01:22 wknight8111 left 01:29 ab5tract left 01:30 BinGOs left
TimToady pmichaud: well, it does make life simpler for us :) 01:41
meppl good night 02:05
02:08 meppl left 02:11 araujo left 02:17 bjakb left 02:21 alester left 02:27 Lorn joined 02:39 Limbic_Region left 03:05 cls_bsd left 03:06 justatheory joined 03:11 Lorn left 03:33 Bzek joined
pmichaud TimToady: so, what happened to "Perl Philosophy is simply to torment the implementors on behalf of the user"? ;-) 03:40
03:42 alanhaggai_ joined
pmichaud although, I'm sure Perl will come up with even better torments. 03:42
03:49 alanhaggai left, z80ASM joined 04:07 alanhaggai_ is now known as alanhaggai
TimToady well, we *do* have to implement the changes, it's just simpler over the long term 04:08
rakudo_svn r31845 | pmichaud++ | [rakudo]: remove perl.t test for now until it can be re-fudged. 04:10
pmichaud I'm eager to see the STD.pm changes for it :-) 04:13
04:14 justatheory left 04:17 alester joined 04:19 alanhaggai_ joined 04:21 alanhaggai left
TimToady just about done, actually 04:34
04:34 Alias_ joined
TimToady assuming it works... 04:36
which, of course, it doesn't 04:37
but the general plan is to move adverb recognition into the infixish alternation so we don't pay for it as an extra check 04:38
it returns it to EXPR as an infix labelled fake, and if EXPR notices a fake infix (after reducing), it shoves it into the appropriate node 04:39
then tries again for an infix
rakudo_svn r31846 | pmichaud++ | [rakudo]: Adjust $?NS handling. 04:43
04:46 sri_work joined
TimToady think I got it, but running the test suite 04:47
04:53 sail0r joined 04:54 z80ASM left 04:55 sail0r left 05:00 zamolxes left 05:05 Ontolog joined 05:08 Psyche^ joined 05:11 sail0r joined, sail0r left 05:19 Patterner left, Psyche^ is now known as Patterner 05:24 alanhaggai_ is now known as alanhaggai 05:32 alester left 05:54 BinGOs_ left 06:06 Psyche^ joined 06:16 Patterner left, Psyche^ is now known as Patterner 06:19 azawawi joined 06:31 azawawi left 06:35 pbuetow joined
rakudo_svn r31855 | pmichaud++ | [rakudo]: Bring namespace parsing into closer alignment with STD.pm. 06:35
r31855 | pmichaud++ | This also adds the 'parse_name' method to Perl6::Compiler, and allows
r31855 | pmichaud++ | us to eliminate some inline PIR from actions.pm.
moritz_ pmichaud: please don't blindly trust p6eval's std: target - it sometimes reports false positives :( 06:39
06:41 pmurias joined
pmurias is the new adverb form considered better or is it choosen due to "ease" of implementation 06:44
moritz_ pmurias: I think it's related to our discussion on built-in test operators which work as adverbs 06:45
pmichaud moritz_: it's just a first approximation for me
moritz_ irclog.perlgeek.de/perl6/2008-10-09#i_613602 an onwards
lambdabot Title: IRC log for #perl6, 2008-10-09
pmichaud if std.pm comes back with "false" then I can stop looking for a bit
pmurias: ease of implementation wasn't really the consideration, I don't think
it does help with implementation a bit, but that's not what led us to it. 06:46
06:50 masak joined
pugs_svn r22561 | lwall++ | [STD] move adverb parsing into infixish and EXPR with loose_unary prec 06:50
TimToady it's really more about sanity than ease of implementation 06:53
masak sanity++
TimToady: "Note also that existence and deletion are now simply adverbs on subscript operators." what were they before? 06:54
TimToady %hash.:delete<key>
masak ah, right.
aye, the current one is arguably better
TimToady but I think it's very valuable to keep the subscript looking the same for rvalues and delete/exist 06:55
masak aye
TimToady it also keeps those words free for use by users
masak Perl 6: fewer reserverd words than you think 06:56
moritz_ sub if { say "I'm crazy" }
masak if if { if } 06:57
moritz_ you're evil, I love you ;) 06:58
masak :)
rakudo: sub if { 1 }; if if { say "whoa" }
p6eval rakudo 31855: RESULT[1]
masak that's not right. 06:59
moritz_ rakudo: sub if { 1 }; if if() { say "whoa"; }
p6eval rakudo 31855: OUTPUT[whoaā¤]
masak whoa.
moritz_ now *that's* wright
masak what's the difference?
moritz_ if -> if()
masak semantically, smartass
TimToady pugs: sub if { 1 }; if if { say "whoa" }
p6eval pugs: OUTPUT[*** ā¤ Unexpected "if"ā¤ expecting "=" or conditional expressionā¤ postfix opā¤ at /tmp/88WOMSkORo line 1, column 18ā¤]
moritz_ masak: I don't know if 'if if' is allowed, but if() forced the second to be interpreted as a sub call 07:00
which is why you can't say qw(a b c); any more
masak my questions is "why does it matter?", I guess
why wouldn't 'if' be treated as a sub call here? 07:01
(the second one)
moritz_ std: if if { 1 }
p6eval std 22561: OUTPUT[parse failureā¤]
moritz_ std: sub if { 1 }; if if { 1 } 07:02
p6eval std 22561: OUTPUT[parsedā¤]
masak it parses, but what does it mean? :)
pmurias TimToady: is it worth converting mildew from a rule_name() style recursive traversal to a VAST::emit_m0ld one?
TimToady currently STD parses it as if() if { say "whoa" }, which is probably not right
pmurias: no kloo 07:03
VAST is still mutating rather rapidly
masak ah. didn't even see that possibility. that's what you get for defining if() :) 07:04
TimToady it ought to prefer the statement_control there, not sure why it didn't 07:05
07:05 BinGOs joined
moritz_ sense the need for another test, but has to depart soon to his doom (aka diploma exams) 07:06
s/to/for/ 07:07
TimToady well, have the appropriate amount of fun
moritz_ thanks ;)
07:13 pbuetow left
masak moritz_: good luck on the exams! 07:19
after that, you'll learn more about the Spin Hall effect and then tell me ;)
07:24 orafu left 07:31 kanru left 07:32 kanru joined, viklund joined
moritz_ masak: that's only after the second exam ;/ 07:35
masak I realize that. good luck with all of 'em.
07:36 iblechbot joined
moritz_ now I have to wait 20 minutes, good opportunity to go mad ;) 07:36
masak you're in good company for that ;) 07:37
(we're developing Perl 6, at least that takes a certain strain of non-mainstream-ness) 07:38
07:51 meppl joined 07:54 cosimo joined
masak the link under the heading "caller" in S29 is broken. 07:54
perlcabal.org/syn/S29.html
lambdabot Title: S29
masak what's generating that page?
07:55 kanru left, alanhaggai left
TimToady well, source is from pugs/docs/Perl6/Spec/Functions.pod 07:56
don't know what's doing the formatting to html 07:57
masak nothing wrong with the source
but the formatter seems to believe in a no-longer-extant CPAN package
pugs_svn r22562 | lwall++ | [gimme5,STD] switch exists and delete to new form 07:58
08:00 kanru joined
masak hm, who likely knows which formatter is generating the S?? documents in perlcabal.org/syn/ ? 08:02
08:03 elmex joined 08:06 [particle]1 joined 08:22 [particle] left 08:24 smtms left 08:54 jferrero joined
moritz_ masak: tools/smartlinks.pl 09:05
masak moritz_: dz 09:06
09:07 schmalbe joined
masak moritz_: are you sure? it's not a smartlink I'm talking about, but an L<> link to an external resource. 09:12
moritz_ masak: smartlinks.pl turns the *pod files into the *.html that are displayed on perlcabal.org/syn/ 09:14
masak oki
good.
moritz_ it has a variety of options
masak will peruse it more when he has time
I don't see any quick way to fix the link
09:15 drbean joined
pmurias TimToady: what are zygs? 09:21
masak Take off every 'ZYG'!! 09:23
pmurias is even more confused 09:24
masak pmurias: sorry, that was an obscure cultural reference. please ignore ad lib. 09:26
09:33 [particle]1 left 09:34 [particle] joined 09:37 tomyan joined 09:48 [particle]1 joined 10:00 justatheory joined 10:01 smtms joined 10:02 bjakb joined 10:05 Ontolog left 10:07 [particle] left 10:13 cls_bsd joined 10:16 viklund left, zamolxes joined 10:28 riffraff joined
riffraff hi 10:28
masak riffraff: y0 10:29
10:32 meppl left 10:38 donaldh joined 10:39 ihrd joined 10:42 dzema joined
masak rakudo: say "welcome, ihrd and dzma :)" 10:46
p6eval rakudo 31857: OUTPUT[welcome, ihrd and dzma :)ā¤]
masak oops. s/dzma/dzema/
10:51 araujo joined
masak perl6: {"OH HAI".$^action}.(&say) 10:53
p6eval elf 22562: OUTPUT[Parse error in: /tmp/Jlbr4xmnQEā¤panic at line 1 column 19 (pos 19): Statement not terminated properlyā¤WHERE: {"OH HAI".$^action}.(&say)ā¤WHERE: /\<-- HEREā¤ STD_red/prelude.rb:99:in `panic'ā¤ STD_red/std.rb:355:in `eat_terminator'ā¤ STD_red/std.rb:269:in `block
..i...
..pugs: OUTPUT[*** Cannot bind to non-existing variable: "$action"ā¤ at /tmp/9ex56TGViX line 1, column 1 - line 2, column 1ā¤]
..rakudo 31857: OUTPUT[OH HAIā¤]
10:53 tomyan left, tomyan joined
masak should the above really work, or is it a coincidence in Rakudo that it does? 10:54
pmurias perl6: {"OH HAI".$^action}.(sub($arg) {say ">>>$arg<<<"}) 11:03
p6eval elf 22562: OUTPUT[Parse error in: /tmp/goNpxUy10uā¤panic at line 1 column 19 (pos 19): Statement not terminated properlyā¤WHERE: {"OH HAI".$^action}.(sub($arg) {say ">>>$arg<<<"}ā¤WHERE: /\<-- HEREā¤ STD_red/prelude.rb:99:in `panic'ā¤ STD_red/std.rb:355:in `eat_terminator'ā¤
..STD_red...
..pugs: OUTPUT[*** Cannot bind to non-existing variable: "$action"ā¤ at /tmp/Ni2Ohkwuc7 line 1, column 1 - line 2, column 1ā¤]
..rakudo 31857: OUTPUT[>>>OH HAI<<<ā¤]
11:04 rff joined 11:08 [particle] joined 11:20 riffraff left 11:21 kst left, kst joined 11:25 tomyan left, [particle]1 left 11:30 donaldh left 11:32 alanhaggai joined
moritz_ masak: I think it should work 11:33
11:34 pmurias left 11:38 pmurias joined 11:42 dzema left 11:46 ashizawa joined 11:48 kst left, kst joined 12:10 MMnet05 joined 12:12 kst left, kst joined 12:13 MMnet05 is now known as DJ-DONGDOT 12:18 BinGOs left, BinGOs joined 12:21 DJ-DONGDOT left 12:26 ihrd left 12:37 kst left 12:38 kst joined 12:46 zamolxes left 12:49 z80ASM joined 13:01 kst left, kst joined 13:06 Lorn joined 13:15 jan_ left 13:18 ihrd joined, schmalbe left 13:27 rff left 13:29 jhorwitz joined
pmurias TimToady: what would be usefull in AST is some way to retrive the orginal Match object for a given node or at least the .from and .to information to set the line information for error messages 13:46
13:47 ruoso joined 13:49 TJCRI joined
pmurias ruoso: hi 13:52
ruoso hi pmurias 13:53
13:57 kst left, kst joined 14:01 jferrero left
pmurias ruoso: are you blocking on anything? 14:13
14:14 alester joined
ruoso pmurias, not really.. I'm just getting all my ideas straight on how to implement multi sub dispatch 14:19
pugs_svn r22563 | pmurias++ | [mildew] switch from a simple recursive traversal to viv and VAST and traversing with emit_m0ld
14:20 PZt left 14:27 z80ASM left
pmurias ruoso: i think we will need signature comparison, to choose the most specific variant 14:27
ruoso pmurias, yeah... I've been trying to figure out an easy way to do that... 14:28
pmurias it's hard to compare closures... so i suppose we need a Signature with some structure 14:29
ruoso or some more specific API
14:30 Pzt3 joined
ruoso maybe $signature[0] gets the type of the first parameter... 14:30
and $signature{foo} gets the type of the name parameter 'foo'
(doing it in terms of API instead of structure is more polymorphic... that's important, since Signature is not a native type) 14:31
pmurias the API sounds sensible 14:32
ruoso too bad for the AdhocSignature... :( 14:34
pmurias we need to handle slurpy named and positionals too 14:36
and sub foo( 14:37
|$capture) {...}
14:38 jan_ joined
ruoso sub foo(|$capture) is already implemented 14:40
by a lowlevel one
bindcapture
which is actually :(|$_)
pmurias, hmmm... slurpy named and positionals looks like trouble... 14:41
how to check the type of a slurpy without causing the eager evaluation? 14:42
moritz_ ruoso: lazily, if possible.
14:42 hercynium left
moritz_ ruoso: as long as you have no tie-breakers in slurpy params that shouldn't be a problem 14:42
ruoso so we need to make very clear that (Array of Int *@a) causes eager evaluation 14:43
moritz_ for most dispatches it should be enough to evaluate the first item of @a 14:44
but perhaps you have to attach type checks to @a 14:45
that are run when @a's generator produces more items
pmurias ruoso: it think it would be ok if we didn't support (typed) slurpies in the S1P::Signature 14:52
ruoso typed slurpies maybe... but we do need slurpies
14:55 jhorwitz left 15:04 Exodist joined, apeiron left 15:11 apeiron_ joined 15:30 zamolxes joined
TimToady pmurias: I tend to use "zygotes" for "kids" because it sorts later in the yaml output :) 15:33
and yes, there needs to be match info in the ast, but I was leaving it out for the moment so that I didn't have to read through *both* trees intermingled 15:34
maybe we could have options on ast generation
[particle] yes please!
moritz_ if so, maybe I finally manage to write a syntax hilighter based on it ;) 15:35
TimToady gah, users!!!
moritz_ heh ;) 15:36
TimToady: think of it as a "visual aid to evaluate correctness of the AST" 15:37
TimToady but users are even pickier than a Haskell compiler, and less consistent! 15:39
moritz_ but users don't complain at compile time ;) 15:40
PerlJam was wondering what zygs where in viv's output 15:41
pmurias moritz_: that's a bad thing
15:41 ofer joined
[particle] users don't complain at runtime, either--only after it doesn't run 15:42
TimToady yes, they tend to harbor unthrown exceptions 15:43
which is probably the solution to binding lazy lists to typed slurpies
the type is a promise to turn type mismatches into unthrown exceptions 15:44
it's not a promise to catch all mismatches at bind time
ofer Heya Larry!
TimToady howdy doody
pmurias TimToady: what is --p6 supposed to output? identical p6 or clearer p6 or properly indented p6? 15:47
15:47 eternaleye left
[particle] hrmm 15:47
moritz_ or uglier p6? ;-) 15:48
15:50 ihrd left
TimToady the idea was to spit out identical to make sure I hadn't lost an info 15:51
which means I need to attach whitespace info as well somehow, if only by ref to the _ array
*any info
pmurias and --p5 is supposed to spit out perl 5 "good enough" to run STD? 15:59
TimToady initially it's supposed to do everything gimme5 does 16:03
only correctly
16:04 alanhaggai left
pugs_svn r22564 | lwall++ | [viv] add --pos option 16:04
TimToady I figured there wasn't much point in working on --p5 before --p6 works, since the ast will keep mutating till that happens 16:06
and making --p6 work involves not forgetting anything, which is a self-imposed requirement these days 16:07
(after having to make p5 not forget via MAD)
I'd rather not forget up front rather than having to unforget later
moritz_ TimToady: is there a good reason for using a hand-rolled command liine parser instead of GetOpt::Long? 16:14
[particle] i believe he knows how to use the hand-rolled code without reading any pod :) 16:22
TimToady I enjoy rolling my own. :) 16:25
PerlJam TimToady: admit it. you're obsessive compulsive about certain things (command lines being one) 16:26
:-)
ruoso TimToady, re "the type is a promise to turn type mismatches into unthrown exceptions".... PLEASE!!! :) 16:27
[particle] yes, i like that too, ruoso 16:31
very much, in fact
pugs_svn r22565 | lwall++ | [viv] add whitespace-before info under --pos
ruoso [particle], The People against Eager Evaluation ;) 16:32
16:32 alanhaggai joined
TimToady PerlJam: certainly, I have a productive blend of OCD and AS, with occasional fits of a 16:34
ADHD and OD
[particle] the drug companies want you for clinical trials of a new pill 16:35
TimToady but sometimes SWMBO is also involved
pugs_svn r22566 | putter++ | [on_sbcl] README: Add TODO section. 16:37
r22566 | putter++ | [elf_h] Sync test results with current t/.
TimToady but yeah, you can't really make it in my business without OCD
16:38 masak left
TimToady the only way I ever let it go is by going and obsessing about something else for a while 16:38
ruoso later & 16:41
16:41 ruoso left
pugs_svn r22567 | lwall++ | [viv] --match to attach match objects 16:43
TimToady okay, I've probably obsessed about that enough for now... 16:44
16:46 meppl joined
pugs_svn r22568 | pmurias++ | changed require to do to avoid having to add an 1; to viv 16:47
16:48 ashizawa left
pugs_svn r22569 | lwall++ | [viv] change MAIN to take @ARGV args as arguments 16:53
TimToady pmurias: see above
16:54 schmalbe joined
pmurias TimToady: you mean 22569? 17:05
17:07 arguile left
TimToady yes, in case you want to call into MAIN 17:08
pmurias i don't invoke MAIN
TimToady but maybe you need the args processor separate
well, feel free to whack on viv's API 17:09
pmurias i just need an extra --m0ld
TimToady or split out some of it into a viv.pm
pmurias i propably should do it as "do 'viv'" is a bit hackish... 17:10
17:11 Pzt3 left 17:13 zamolxes left
pmurias TimToady: does --match meet the no info is lost criteria? 17:14
&
17:15 Pzt3 joined 17:37 Alias_ left 17:47 alanhaggai left, Lorn__ joined
TimToady pmurias: yes, presuming the match tree itself has not lost any info. but there's a lot of duplicate data 17:48
I don't think we have a ref back to the rule that matched yet either. It's a bit tricky since subs aren't real objects in Perl 5...
17:49 ofer left
TimToady but _reduced at least tells you the reduction tag for each rule 17:50
17:56 rdice joined 17:59 Lorn_ left 18:00 Lorn left 18:10 justatheory left 18:12 sri_work_ joined, apeiron_ is now known as apeiron 18:15 hercynium joined 18:22 sri_work left
rakudo_svn r31862 | tene++ | Merge hllmagic branch into trunk. 18:23
r31862 | tene++ | Mostly looks okay.
r31862 | tene++ | If anyone runs into problems fixing the last few issues with their languages, address issues to Tene or pmichaud.
18:31 Bzek left 18:40 cosimo left 18:52 meppl left 19:03 [particle]1 joined 19:06 TreyHarris left, TreyHarris joined 19:10 lambdabot left, Lorn joined 19:12 lambdabot joined 19:20 [particle] left 19:22 Lorn__ left 19:29 sirhc left, sirhc joined
pugs_svn r22570 | moritz++ | [t/TASKS] remove some outdated tasks 19:31
19:57 [particle] joined 20:12 [particle]1 left 20:22 [particle]1 joined 20:36 [particle] left 20:41 schmalbe left
pugs_svn r22571 | lwall++ | [t] excise exists and delete functions 20:43
r22572 | lwall++ | [STD] add missing TEMP block 20:45
20:48 araujo left 20:49 araujo joined 21:10 TJCRI left 21:23 iblechbot left, rdice left
rakudo_svn r31868 | moritz++ | [rakudo] remove S29-hash/delete.t from spectest_regression. Its syntax has 21:26
r31868 | moritz++ | changed, and is not yet supported. I'll open a TODO ticket.
21:33 Limbic_Region joined 21:48 Lorn_ joined, zamolxes joined
Juerd I have to shutdown feather0 22:02
Which means that feather1..3 will be paused
When using an ssh session, don't press any keys and it will probably survive the outage 22:03
22:04 Lorn left
Juerd (Oh, by the way, it's back up) 22:10
22:17 Pzt3 left 22:23 wknight8111 joined 22:25 zamolxes left 22:36 Pzt3 joined 22:37 Pzt3 is now known as PZt, alester left 22:44 cj is now known as da_man, da_man is now known as cj 22:53 justatheory joined 23:04 hercynium left 23:08 Exodist left 23:46 rdice joined 23:53 justatheory left 23:54 eternaleye joined 23:57 alanhaggai joined