Please check your feather e-mail | search.cpan.org/dist/SVN-Mirror/ | paste: sial.org/pbot/perl6 | pugs.blogs.com | pugscode.org | pugs.kwiki.org | www.treehugger.com/files/th_images/paradigm.jpg
Set by Juerd on 27 August 2006.
00:00 tewk joined, kcwu joined, TreyHarris joined, Khisanth joined, ludan joined, gantrixx joined 00:01 ilogger2 joined, Khisanth joined, Odin- joined, Eidolos joined, radian joined, gantrixx joined 00:02 lambdabot joined, ajs joined 00:03 mauke joined 00:04 bsb joined, ludan joined 00:05 obra joined, clkao joined, JarJarBinks joined, gugod_ joined, marcus joined, LCamel joined, cognominal joined, Revision17 joined, broquaint joined, bcorn joined, Lorn joined 00:06 cookys joined, kolibrie joined, pmurias joined, markstos joined 00:07 lumi joined
markstos I recommend now adding feather.perl6.nl to the topic since the page has now been updated to be a good Perl6 resource. 00:07
lambdabot Title: Perl6 Community Development Server
00:08 SamB joined, kanru joined 00:09 kcwu joined, merlyn joined, typester joined, miyagawa_ joined, rnorwood joined, mtve joined 00:10 cj joined, masak joined, araujo joined, notsri joined, xinming joined, glasser joined, Eimi joined, Bit-Man joined 00:11 integral joined, avar joined 00:12 Southen joined 00:13 ingy joined, silug joined 00:14 pasteling joined, lisppaste3 joined 00:15 nothingmuch joined, tewk joined, awwaiid joined, TimToady joined
markstos Which of these syntax is prefered to passed name/value pairs to subs in Perl6? 00:19
foo ( name => 'value' );
foo ( :name<value> ); ?
ayrnieu which do you prefer? 00:20
clkao likes :name<value>
markstos s/passed/pass/
For me, it's not currently a matter of preference, it's matter of getting either work well with pugs ATM. :)
clkao i thought both works? 00:21
00:21 Grrrr joined
markstos The both do, at different times. :) I'm still a little confused about when one works and the other doesn't, but I've seen issues. 00:21
00:21 Maddingue joined
markstos Hold on, I think I remember a quick example. 00:21
00:21 xern joined 00:23 dvorak joined 00:25 Psyche^ joined, Psyche^ is now known as Patterner, TreyHarris joined 00:26 nekokak joined
markstos I guess my confusion is around when the slurpy modifier is needed. Here it won't work until it's added: 00:26
?eval sub foo (*%args) { say %args.perl; } foo( :a<b> ); foo( a => 'b' );
clkao i thought it's always needed if you are not having named arg in the foo signature 00:28
markstos Sounds right. I'm just used to the looseness of Perl5, and am still adapting to Perl6. 00:29
However, whenever I figure out a "Perl6" way to address something, the code seems to be shorter and simpler...
clkao also you can use \ in signature to get the capture object. and just deref it 00:30
00:31 araujo joined
araujo :-) 00:31
cmarcelo, not sure about the difference either
markstos Capture objects are a mental leap. In Perl5, it was always an array to unpack. With Captures, I can get the named part, or the positioinal part, but I didn't see a way to get Whole Thing As An Array like I'm used to. 00:32
araujo cmarcelo, here on pugs, (1 .. 9) , [1 .. 9] , behave apparently the same
markstos However, I'm also trying to learn differnet ways to think about things, and not just translate what I know about P5 into a new syntax. 00:33
I like multi methods, also I still get surprising results sometimes.
00:33 PolettiX joined
markstos s/also/although/ 00:33
clkao markstos: i thought by default it's *@_ 00:35
which is same as perl
5
markstos Oh. :) I hadn't discovered that yet. I'm enjoying trying out the newer style syntax, though. 00:36
00:36 ludan joined
markstos I did notice that @_ didn't work the same. 00:36
clkao *@_ is rw, actually ;)
markstos Hmm.. Is that a good thing ? 00:37
ayrnieu markstos - yes.
00:38 ludan joined 00:40 ludan joined 00:45 lisppaste3 joined 00:46 PolettiX joined 01:01 vel joined
markstos I think declaring two multi subs where all the arguments are optional should generate a warning. Here's an example: 01:05
multi sub foo ($b?) { say "b: ".$b.perl } multi sub foo ($a?) { say "a: ".$a.perl } foo('boo');
I've already do this twice accidently... 01:06
s/do/done/
I guess that's just a variation of generating two multi subs with the same signature. Currently, pugs just chooses one, although there is no clear correct answer: 01:08
multi sub foo () { say "b: " } multi sub foo () { say "a: " } foo();
Perhaps that should even be an error, not a warning.
01:10 justatheory joined 01:16 soisoisoi joined 01:26 dolmans joined 01:37 bsb left
markstos I'm still confused about "references are gone in Perl6", but yet, using the [] and {} notations make a difference: 01:43
?eval sub foo { say *@_.perl; } foo( <a>, %(d=>2) ); foo([<a>], {d=>2}); 01:44
Is this a case of pugs lagging behind the spec, or are references sorta present, even outside of Captures ?
01:54 bsb joined, lambdabot joined 02:10 lambdabot joined, jferrero joined 02:11 mdiep joined 02:18 justatheory joined
TreyHarris markstos: no... references are not present. but remember, the default signature when no signature is present is (*@_). So there's a slurpy making an implicit [,] in your call 02:26
so <a> gets unwound into "a" 02:30
markstos TreyHarris: /something/ is present, because [<a>] produces a different result than <a>, and {} produces a different result than %()... and the result looks like references to me. 02:46
Perhaps you could say they are "embedded arrays" and "embedded hashes", but they look like references to me. 02:47
02:53 DaGo joined
markstos I was wondering about the difference between %h<<$a>> and %h{$a}. The first is an interpolated string. The second is an evaluated expression. 02:53
?eval my $a = 1; my %h; %h{$a+1} = 'expression'; %h<<$a+2>> = 'interpolated string'; say %h.perl;
Surprisingly, though, this can be used for to pass a named params: 02:56
:name<<$value>> 02:57
But this throws an error:
:name{$value}
03:05 crem_ joined 03:21 Yappo joined 03:31 markstos left
audreyt markstos: that's a simple bug... fixed 03:31
marcus: allso, re feather.perl6.nl 03:32
I'd like to simply point pugscode.org there.
03:32 agentzh joined
TreyHarris audreyt: oh, was i wrong? slurpy param doesn't effect [,] reduction on args? 03:32
audreyt marcus: but that means the essential info on pugscode.org needs to be present as well 03:33
agentzh markstos: the :name{$value} syntax seems weird. i think you should use :name($value) instead. :)
audreyt TreyHarris: slurpy and [,] are different 03:34
*@_ makes the incoming %hash into list of pairs
while [,]%hash becomes named
which is partly why they now look different...
TreyHarris ah, ok. so foo(<a>) and foo('a') should always look different to foo, no matter how it's declared? 03:35
audreyt actually, <a> is currently just the same as 'a' 03:36
I'm not sure if it should make a 1-elem List or not, actually
TreyHarris that's what i thought
i just can't put it into words... but i feel it should work that way
audreyt because in perl5, qw<1>
also means just '1'
TreyHarris well, should foo(<a b>) always work like foo('a', 'b') then? i'd say yes 03:38
audreyt it should always work like
foo( ('a','b') )
following that logic, perhaps it's wrong for <a> to just mean 'a' 03:39
perhaps it should mean ('a',) after al
that is, a List object, not a Str object.
TreyHarris hmmm.... word-calling subs seems like a common think to do though 03:44
audreyt foo([,]<a b c>) still gets you that. 03:45
agentzh (thought 03:46
(though not beautifully)
:) 03:47
audreyt sure... it depends on which way you are optimizing for 03:48
03:54 evalbot_12770 joined
TreyHarris well, captures will help there too 03:55
04:01 svnbot6 joined
audreyt r12772 (orig r12771): audreyt | 2006-08-28 11:52:12 +0800 04:02
* <a> is now ('a',) and never just 'a'.
r12770 (orig r12769): audreyt | 2006-08-28 11:35:39 +0800
* :name{...block...} and :name{hash=>'val'} now works, prompted by markstos++.
TreyHarris smoking
oh... damn
smoking r12771 ;-)
audreyt well I'm smoking r12772 04:03
so that's actually a useful diff
TreyHarris hmmm... do i need to do something about the "Smoker info not found. Please create a file named .smoker.yml" message? i've just ignored it up till now 04:05
audreyt no that's fine 04:06
agentzh audreyt: are you smoking ~audreyt/pugs? 04:19
audreyt no. rebuilding
evalbot was down
agentzh ah, okay.
04:19 Khisanth joined 04:21 dolmans joined 04:22 SubStack joined
TreyHarris i love how my dock cpu monitor quickly tells me when makes or smokes are done... :-) 04:27
audreyt so how mail fails are for you?
TreyHarris ? 04:28
audreyt s/mail/many/
the last line in smoke.html
TreyHarris oh, it's still smoking :-)
i was just noting that i don't have to look at the window to tell :-) 04:29
it's just doing ext/Pod-Event-Parser now, so it still has quite a ways to go
oh, audreyt, i've been noticing that if by mistake i run /usr/bin/pugs with a sourcetree PERL6LIB, or my sourcetree pugs without a PERL6LIB, they both start being very unhappy from then on. segfaults and "illegal hardware instruction" errors all over the place. i've put a ~/bin/pugs script in that looks at my cwd to decide what to do in order to keep that from happening in the future, but just fyi 04:31
audreyt ok. 04:33
bbiab
TimToady: this idiom 04:34
s:g{123}{456}
is actually wrong, right?
needs to write as
s:g {123}{456}
or s:g/123/456/
I've changed it to s:g"123"456" 04:40
svnbot6 r12772 | audreyt++ | * File::Spec::Unix: Remove the invalid quoting syntax s:g{}{} as it'd be taken as s:g({}).
04:42 evalbot_12772 joined 04:43 kanru joined
svnbot6 r12773 | agentz++ | [util/smartlinks.pl] 04:46
r12773 | agentz++ | - simplified the HTML template a bit. (now we're using
r12773 | agentz++ | ``<a href="#" ...''
TimToady audreyt: yes, that's wrong 04:57
audreyt there's... a huge amount of corpus that's wrong, then 05:02
svnbot6 r12774 | audreyt++ | * pugs -Ifoo -Ibar should put bar in front of @*INC.
audreyt I finished changing ext/
but can't focus long enough to finish t/
svnbot6 r12775 | audreyt++ | * ':g{}' now always mean pair, never backtracks. 05:05
r12776 | audreyt++ | * Change s:P5{}{} and rx:P5{} and m:P5{} etc in ext/ 05:08
r12776 | audreyt++ | to use some other delimiter, usually / or ".
05:09 Aankhen`` joined
TimToady I don't think <a> should assume a , 05:14
I think it should be equivalent to ('a') 05:15
TreyHarris but <a b> will always be equivalent to ['a', 'b']? 05:17
TimToady yes.
er, no
not in list context
it's equivalent to ('a', 'b'), and the parens go away
parens do not construct sublists in list context. 05:18
TreyHarris yes
ok, good
TimToady and <...> is equivalent to a parenthesized list.
we use this all the time in :foo<string> to pass a single string.
TreyHarris right
TimToady turning it into ['string'] would be tragicomic 05:19
TreyHarris ok, so the behavior markstos was seeing was almost correct, and the behavior he expected would not be correct
audreyt hm. ok, reverting
but then, f(<a b>)
if it's equiv to f(('a','b'))
then it still won't bind to "sub f ($x, $y)"
right?
TimToady right, since those aren't list context 05:20
(...) autointerpolates only in list context.
except, of course, that ('a') is a perfectly good scalar too.
audreyt though ('a',) would not be 05:21
TimToady correct
audreyt and <a> is equiv to the former not the latter
TimToady yes
it's one of those syntactic literal thingies that kinda means different things, like 42 05:22
which might or might end up thinking of itself as Int or Num.
audreyt can you clarify the spec to say that <a> stands for ('a') not ('a',), then?
TimToady I'll have a look at it. 05:24
Need to pack for Birmingham though...
audreyt oh, right. have fun!
svnbot6 r12777 | audreyt++ | * <a> now means ('a') again, not ('a',), to narrowly avoid the tragicomical doom.
TreyHarris lol 05:27
audreyt :) 05:28
05:31 evalbot_12777 joined 05:32 agentzh left
svnbot6 r12778 | gaal++ | (minor) avoid redefining subs when subtest fails 05:32
05:36 evalbot_12777 joined 05:44 christo joined
svnbot6 r12779 | audreyt++ | * Pugs.Internals: don't let evalbot die whenever someone throws big5 or latin1 at her -- instead just warn about bad UTF8 sequence. 05:44
audreyt it should be much harder to accidentally kill evalbot now.. 05:45
TimToady Actually, under adverbs it already says: Bare C<< <a> >> turns into C<('a')> rather than C<('a',)>. 05:47
but I will clarify the preceding section as well.
05:48 Khisanth joined
audreyt k, danke 05:50
05:53 evalbot_12779 joined
audreyt ?eval "這äøę˜Æ UTF8 ē…™ę–—" 05:55
evalbot_12779 decodeUTF8: bad data: '\151' "\d[25]\r/ UTF8 Y\d[151]" 05:56
audreyt good, it didn't die.
(fwiw, that's "this is not a UTF8 pipe" in big5.)
?eval "Ceci n'est pas une pipe" 05:57
evalbot_12779 "Ceci n\'est pas une pipe"
05:57 christo left
TimToady Um, then why did it print right in my irssi? 05:58
audreyt that'd be... surprising
TimToady not the evalbot, but your eval
audreyt consults her /recode settings
and indeed I set it wrong so I was sending UTf8 05:59
TimToady I see: ?eval "這äøę˜Æ UTF8 ē…™ę–—"
audreyt most weird.
06:00 kasei joined
audreyt ?eval "test" 06:01
evalbot_12779 "test"
06:06 b00t joined
TimToady Interesting, it's ē…™ē®” in Japanese, concentrating more on the tubiness like English. I presume the Chinese is more of a reference to its ladle-like shape. 06:07
audreyt aye. ē…™ē®” is valid Chinese too
TimToady or that you "scoop smoke" with it?
And maybe the ē…™ę–— would work in Japan too, for all that... 06:08
svnbot6 r12780 | audreyt++ | * system() should pass utf8 through as well.
audreyt though, as in the La trahison des images painting, the shape is more ladle-ish than tube-ish
TimToady "this is not a ladle or a tube either..."
audreyt "sometimes a UTF8 string is just a UTF8 string" 06:09
TimToady on the other hand, the first several pages of google hits on ē…™ę–— are all Chinese, so probably not used in Japan. 06:12
audreyt *nod*
06:14 onsen joined, evalbot_12780 joined
audreyt ?eval "å±±ęœ‰ę‰¶č˜‡, éš°ęœ‰č·čÆ, äøč¦‹ē…™ē®”, ä¹ƒč¦‹å­—äø²" 06:16
evalbot_12780 decodeUTF8: bad data: '\176' decodeUTF8: bad data: '\239' decodeUTF8: bad data: '\139' decodeUTF8: bad data: '\161' decodeUTF8: bad data: '\139' "q\tv\d[7], \d[176]\tw\d[239], \r\d[139]Y\d[161], C\d[139]W2"
audreyt hrm.
SamB huh, looks good to me! 06:19
I guess evalbot doesn't work right?
audreyt yeah. I think it's because %ENV<> doesn't handle high bits
06:21 mauke_ joined
audreyt ?eval 1 06:21
evalbot_12780 1
audreyt ?eval "ē…™ē®”"
evalbot_12780 decodeUTF8: bad data: '\161' "Y\d[161]"
audreyt yup, that's it.
06:22 zgh joined
gaal ?eval "this is not a lugged steel tube of a cuspy Rivendell bike" 06:25
evalbot_12780 "this is not a lugged steel tube of a cuspy Rivendell bike"
svnbot6 r12781 | audreyt++ | * ENV values are now assumed to be encoded in UTF8.
TimToady mountains have handrails, swamps have lotus flowers, you don't see a pipe, so you see a character string? 06:28
audreyt "On the mountain is the mulberry tree ; In the marshes is the lotus flower." 06:29
06:30 onsen_ joined
audreyt # www.afpc.asso.fr/wengu/wg/wengu.php...&no=84 06:30
svnbot6 r12782 | audreyt++ | * oops, typo. 06:31
TimToady I suppose a mulberry is "rail plant", meaning you make a walking stick from it, or some such. 06:34
06:35 mauke_ is now known as mauke
TimToady no, I'm just misreading the character, railing is only if you combine it with "hand"... 06:37
"support plant" is more like it, or "help plant"...
06:38 Khisanth joined
audreyt yup 06:39
TimToady but mulberry is ꔑ in my dictionary.
durn poets, always using fancy words...
audreyt ę‰¶č˜‡ means the same as ꉶꔑ 06:40
which means the same as ꔑ...
TimToady my dict gives different pronunciations, or is that dialectical? 06:41
audreyt different pronounciations 06:43
TimToady agentzh: I'm not going to have time to hack on the smoke uploader to send the .yml along with, so if you want to work on that, feel free.
audreyt ę‰¶č˜‡ is -u and ꉶꔑ is -ang
the poet is constrained by rhyming
because the original third sentence is "äøč¦‹å­éƒ½", which only rhymes with ę‰¶č˜‡.
TimToady both tone 1
audreyt yup 06:44
TimToady one of these decades I'm gonna have to get serious about my Mandarin...
06:45 drrho joined 06:46 onsen joined 06:48 evalbot_12782 joined
audreyt ditto for me re Japanese... 06:49
?eval "子都"
evalbot_12782 decodeUTF8: bad data: '\229' decodeUTF8: bad data: '\173' decodeUTF8: bad data: '\144' decodeUTF8: bad data: '\233' decodeUTF8: bad data: '\131' decodeUTF8: bad data: '\189' "\d[229]\d[173]\d[144]\d[233]\d[131]\d[189]"
ayrnieu easiest way to force seriousness is to start paying someone to help you, probably. Also, get a dictionary from www.pleco.com , and consult www.bokee.com/ (podcast.bokee.com/ has much awesomeness)
audreyt cool, at least it doesn't drop data anymore
lambdabot Title: 博客ē½‘-Bokee.com-ōæ½xE4ōæ½xBD ꈑēš„ē½‘ē»œ
xinming ?eval "子都" 06:50
evalbot_12782 decodeUTF8: bad data: '\229' decodeUTF8: bad data: '\173' decodeUTF8: bad data: '\144' decodeUTF8: bad data: '\233' decodeUTF8: bad data: '\131' decodeUTF8: bad data: '\189' "\d[229]\d[173]\d[144]\d[233]\d[131]\d[189]"
xinming ?eval "你儽"
evalbot_12782 decodeUTF8: bad data: '\228' decodeUTF8: bad data: '\189' decodeUTF8: bad data: '\160' decodeUTF8: bad data: '\229' decodeUTF8: bad data: '\165' decodeUTF8: bad data: '\189' "\d[228]\d[189]\d[160]\d[229]\d[165]\d[189]"
audreyt ?eval "ē‹‚äø”" 06:52
evalbot_12782 "\d[29378]\d[19988]"
audreyt yay
06:52 christo joined
audreyt ?eval "äø€äŗŒäø‰".chars 06:53
evalbot_12782 3
audreyt ?eval q怐Some strange quotes怑 06:55
06:55 onsen_ joined
evalbot_12782 "Some strange quotes" 06:55
audreyt excellent.
?eval 1|2 06:56
evalbot_12782 (1 | 2)
TimToady 'druther see it default to \x than \d
or is that something hardwired into Haskell?
audreyt it's not
haskell uses the "\29378" form
which is invalid :)
TimToady yay 06:57
actually, I'd rather see the ē‹‚äø” form...
audreyt test for isPrint?
TimToady I've also been tempted to sneak ā¤ in inplace of the newline, but wasn't sure how irssi would treat a spaceless long line... 06:58
well, now that today is 06:59
audreyt trying isPrint 07:00
TimToady tomorrow, I'd better go to bed.
audreyt sleep well :)
...and don't let bed pugs bite
TreyHarris oh dear... you have bedpugs? 07:02
audreyt s/which, because the list is in scalar context/which, because the list is assigned to a scalar/ 07:03
is perhaps more accurate... (:= wouldn't Array-isy it) 07:04
TreyHarris how so? isn't it in scalar context? 07:05
TimToady question is, whether ($a, $b) := (1,2) dwyms?
audreyt it is, but "scalar context" alone doesn't Array-ify a list 07:06
that works, because there's an implicit : and \ on both ends, iirc
sub f ($x) {} f (1,2);
is where it's scalar context but not scalar assignment 07:07
TimToady yeah, I guess you get one paren set free anyway
audreyt and therefore no Arrayification is performed
TimToady right, it's f((1,2),3) that does f([1,2],3) 07:08
if sub f ($x, $y)
TreyHarris urrrr. i know i read this in synopses, but my mind's addled and i'm not remembering nor finding it quickly... what's the difference between ($x, $y) = (1, 2) and ($x, $y) := (1, 2)?
audreyt TimToady: but does it? I thought $x will get the List
and the Array(mutable)ness only happens on scalar= 07:09
not any form of :=
TreyHarris ?eval my ($x, $y) = (1, 2); <<$x $y>>.say
07:09 evalbot_12782 is now known as evalbot_12783
evalbot_12783 OUTPUT[2 ] Bool::True 07:09
TreyHarris ?eval my ($x, $y) := (1, 2); <<$x $y>>.say
evalbot_12783 OUTPUT[2 ] Bool::True
TreyHarris hrm
?eval my ($x, $y) := (1, 2); [<<$x $y>>].say
evalbot_12783 OUTPUT[1 2 ] Bool::True
TreyHarris ?eval my ($x, $y) = (1, 2); [<<$x $y>>].say
evalbot_12783 OUTPUT[1 2 ] Bool::True
TimToady well, it gets listified, even if not to the extent that [...] does... 07:10
audreyt right...
clarified that, and the grammat nit, as r11509 07:12
to S02.
TimToady k
TreyHarris ?eval (1, 2).say 07:13
evalbot_12783 OUTPUT[12 ] Bool::True
TreyHarris ?eval <1 2>.say 07:14
evalbot_12783 OUTPUT[12 ] Bool::True
TimToady TreyHarris: = is defined to work very much like Perl 5's assignment, including copy semantics. := is the new P6 binding semantics like parameter binding. = is mostly discussed in S02, the := and binding are kinda scattered around.
TreyHarris ?eval my ($x, $y) = (1, 2); <<$x $y>>.say
evalbot_12783 OUTPUT[2 ] Bool::True
TreyHarris why?
TimToady ?eval my ($x, $y) = 1,2; <<$x $y>>.say 07:15
TreyHarris TimToady: yes, i know about :=, but I specifically wondered about the difference between := (1, 2) and = (1, 2), since they're both values on the RHS
evalbot_12783 OUTPUT[2 ] Bool::True
TimToady looks like a bug to me.
TreyHarris ok, i'll write a test
but i guess my smoke has to finish before i save it lest it give weird results... 07:16
TimToady the main difference between := and = on the right is that = is always only completely list or scalar context
whereas := can provide some mixture, like a sub signature can.
TreyHarris ah, right. so in that particular example there was no reason to use := rather than = 07:17
TimToady arguably, though, if you bind to immutable values, you then can't modify them without at least undoing the binding. 07:18
TreyHarris right 07:19
?eval 1 = 2
evalbot_12783 Error: Can't modify constant item: VInt 1
TreyHarris ?eval $x := 1; $x = 2
evalbot_12783 Error: Bind to undeclared variable: "$x"
TreyHarris ?eval my $x := 1; $x = 2
evalbot_12783 Error: Can't modify constant item: VInt 1
TimToady right, you can foo(1) even if the parameter is rw, as long as you don't actually w it.
though I can argue it the other way too. 07:20
TreyHarris yes. :-) stricture?
TimToady at least if the declaration is visible at compile time.
TreyHarris that's wild....
?eval my ($x, $y) = (1,2)
evalbot_12783 (\1, \2)
audreyt the <<$a $b>> bug is fixed
TreyHarris oh.
my pugs is printing "(#<Scalar:0x42469a8>, #<Scalar:0x42469c0>)" when i do that last 07:21
audreyt pugs> my ($x, $y) := (1, 2) 07:22
(#<Scalar::Const:0x12cd018>, #<Scalar::Const:0x12cd010>)
pugs> my ($x, $y) = (1,2)
(#<Scalar:0x12fba8c>, #<Scalar:0x12fbaa0>)
ideally the Scalar::Const will go away
and replaced by UInt
I mean Int
TreyHarris ok, good 07:23
07:25 onsen joined
audreyt ?eval my ($x, $y) = 1,2; <<$x $y>>.say 07:27
evalbot_12783 OUTPUT[2 ] Bool::True
audreyt hm, still rebuilding r12784
TreyHarris oh, svnbot6 is gone 07:29
audreyt ?eval my ($x, $y) = 1,2; <<$x $y>>.say
07:29 evalbot_12783 is now known as evalbot_12784
evalbot_12784 OUTPUT[12 ] Bool::True 07:29
TreyHarris yay 07:30
audreyt svnbot6 syntax errored out ;) 07:32
fixed
TreyHarris agentzh: the synopses on feather are out of date. at least S02 is, by almost two weeks 07:33
oh, he's not here
07:34 carrumba joined, svnbot6 joined
audreyt a simple :name{foo} change took 4 hours to settle down... 07:35
TreyHarris do you feel like stability is getting harder lately? 07:39
07:40 kane-xs joined
xinming audreyt: what the stage of making the self-hosting perl 6? 07:40
07:40 onsen_ joined
audreyt TreyHarris: mostly it's the unforseen consequences that shows up in t/ and examples/ 07:42
svnbot6 r12787 | lwall++ | more fixing s:foo{ and m:foo{
07:42 nothingmuch joined
audreyt TreyHarris: and yeah, because the sheer number of them compared to, say, 1 year ago, it's steadily more work to fix them 07:42
xinming: not sure I understand.. 07:43
xinming hmm, I think I wonder how many percentage of pugs self-hosting is finished. v6 can parse the sainty test, Does it mean the self-hosting perl 6 (with many bugs is ok >_<) can be out in this christmas? 07:45
v6.pm 07:46
audreyt well, that question amounts to asking whether v6/v6-Compiler/ can take over perl5/Pugs-Compiler-Perl6/
by this christmas; I'm not qualified to answer that... try fglock :) 07:47
TimToady audreyt: why is all_examples.t disabled?
audreyt is it?
TimToady svn blames you. say "finito"
audreyt ah. sorry. was debugging 07:48
TreyHarris fglock's making lots of progress lately from the svn logs... but like audreyt, i'm sure the closer the goal gets, the harder it'll get. hopefully it's not xeno's paradox though
audreyt fixing
fixed
r12788. 07:49
TimToady k, that should take my failures back down into the 600s
audreyt 573 here
TimToady sleep smokin' & 07:50
svnbot6 r12788 | audreyt++ | * oops, miscommitted a debugging all_parse.t
audreyt g'nite :) 07:51
audreyt reboots to freebsd
07:54 onsen__ joined
TreyHarris ?eval (1, 2) === <1 2> 07:54
07:54 evalbot_12784 is now known as evalbot_12788
evalbot_12788 Bool::False 07:54
TreyHarris 11466 test cases: 10790 ok, 676 failed, 1451 todo, 815 skipped and 79 unexpectedly succeeded 07:57
audreyt TreyHarris: if you have some cycles, can you help unTODO the 79? 08:02
it involves looking at smoke.html, find yellow boxes, and go in to edit the test files to take the :todo away.
TreyHarris audreyt: was already underway :-) 08:04
audreyt ooh :) 08:05
TreyHarris++
bbiab 08:06
08:20 pdcawley joined 08:41 ruoso joined 08:51 kattana_ joined 08:52 ofer0 joined
svnbot6 r12789 | trey++ | Added test that <<$x $y>> interpolates correctly 09:24
09:25 b_jonas joined 09:44 ruz joined 09:53 onsen joined 09:59 onsen_ joined 10:06 buetow joined 10:25 marcus_ joined 10:32 lumi joined
svnbot6 r12790 | audreyt++ | * On FreeBSD, gmake must be used to build Judy, not make. 10:32
r12791 | trey++ | Un-todoing 77 tests that now pass. There are still 10:54
r12791 | trey++ | a couple passing todos that are inside loops.
TreyHarris and with that, i'm too bed 10:58
s/oo/o/
audreyt thanks and good night :) 11:00
svnbot6 r12792 | audreyt++ | * Tighten up a few source nits that trips GHC 6.5-HEAD. 11:03
Juerd I'm glad Perl minor versions don't need code changes in everything 11:05
audreyt 6.4 to 6.6 is a major version, though
comparable to, say, 5.6 to 5.8 11:06
Juerd I call that minor :)
major.minor.revision
audreyt er, 5.8 was not much better then...
Juerd Maybe my jargon is off
audreyt no, your jargon was standard
I had to fix a large number of perl 5.6 programs for 5.8
though 5.10 looks like it'd be much less painful. 11:07
Juerd Hm 11:08
My upgrade was painless
audreyt ...your programs were largely in ASCII, dealing largely with ASCII data only, I bet. 11:09
Juerd Indeed
Well, iso-8859-1
But that's all the same as far as Perl cares
audreyt which is a bug, but yeah.
Juerd :) 11:10
It's an unpleasant feature the way I see it
audreyt lathos, jhi and friends optimized for making your life painless
Juerd Perl 6 has Str always be utf-8, right?
audreyt when they designed the 5.8 unicode model.
which made my life rather painful :)
Str is always unicode, and the preferred unicode encoding is utf8, yes.
Juerd Can I request that the default encoding be the bitwise negation of utf8, instead of utf8 itself? 11:11
That way, forgetting to encode your output at least is a bug you easily notice, instead of ignore for a few years and then get bitten by
audreyt much better is that mixing Buf and Str gives raise to fail"".
same as per the perl5 encoding::warnings module 11:12
which, imvvho, should've been the default anyway.
Juerd Outputting happens in bufs, I hope? With some conversion specified on the filehandle, or otherwise an exception?
audreyt exactly.
IO entities deal in Buf, and only gives/takes Str when there are encoding information available to them. 11:13
Juerd That's great.
Then I drop my request :)
audreyt pugs currently just pretends the utf8 encoding is impicitly irrevocably given everywhere, but that'll change once we have at least one other encoding available :) 11:14
woot :)
Juerd It was based on the Perl 5 notion of having a single string type
But I forgot that we have bufs now.
audreyt *nod*
well actually perl5 also has Buf and Str
it's just they are autopromoted
bothways
using *asymmetrical* encodings
Juerd I saw that Pugs doesn't know ==>, but I think I used it before. Is this regression, or have I not used it before? 11:15
audreyt (Buf->Str was using latin1, and Str->Buf was using utf8)
you have not used it before.
Juerd Okay
Your model of how Perl 5 has buf and str isn't entirely correct
b_jonas so it will be an error if you attempt to mix byte and char strings in any way? 11:16
Juerd buf->str could actually be utf8->latin1, as a result of several things
b_jonas: I really do hope so!
audreyt b_jonas: I'll see to it :)
Juerd b_jonas: Although - maybe bufs can have an encoding property
my Buf $foo :encoding<iso-8859-1>;
audreyt Juerd: "buf" in perl5 is SV with SVUTF8 off
and "str" in perl5 is SV with SVUTF8 on 11:17
b_jonas Juerd: I mostly think it's a good thing but I think it could have some problems as well
Juerd my Str $bar = "some text with only <256 characters"
;
$foo = $bar # autoconvert?
b_jonas like, when I just write $foo . " " . $bar in perl5, imagine that failing because " " is a byte string 11:18
audreyt Juerd: that's a thought.
audreyt ponders Buf::Encoded
b_jonas: string literals are always unicode Str inperl6
as with perl5's "use utf8" in effect 11:19
b_jonas audreyt: then it's an error the other way
audreyt (which is a very weirdly named pragma.)
b_jonas when I just write $foo . " " . $bar and it fails because $foo and $bar are byte strings
audreyt right. you can't simply concat two byte buffers with a string without somehow let perl know how it should promote them 11:20
b_jonas anyway, I think if you have a variant of Buf which knows its encoding and it's fully supported (meaning you can do any operation with it and it keeps its encoding and doesn't get converted to utf8) then there's no need for a Str
only that's very difficult to implement
having everything encoded as utf8 simplifies lots of things 11:21
audreyt the thing is though, unless the encoding is a unicode encoding
(UTF8, UTF16, UTF32, GB18030)
then it's partial and you can put into it something that cannot be encoded into it
b_jonas yes, in some exotic encoding you can't even do index the easy way
audreyt er, well, for me s/exotic/everyday/, but yeah 11:22
b_jonas oh yes
audreyt I think it's far saner to simply allow Str operations on Str
and have buffers with attached encodings be able to convert in/out with Str 11:23
the way Juerd proposed
but there's no Buf.chars method
even when you know the encoding of it
masak I like the look of "s/exotic/everyday/", out of context. sounds like a great motto 11:24
b_jonas wouldn't it be possible to have some simple type for ascii-only string literals in the code that promote to Str or Buf as needed?
audreyt instead you need to coerce to Str using $buf.Str.chars
b_jonas: buffer literals? I think it's not too much ask for 11:25
b_jonas I'm not sure it's a good idea though
audreyt Buf("this is some buffer", :encoding<ascii>) 11:26
b_jonas "buffer literals"? do you mean some kind of exmplcit mark that marks a qquoted string as a buffer?
audreyt q:buf<ascii>"big moose"
b_jonas like, I don't know, qb"foo" or use bytes;
audreyt q:buf<big5>"now it's five moose"
and default to <ascii> 11:27
is perhaps sane.
b_jonas only, I guess, you'd also need a pragma to make every literal like that because it would be a pain to write that before every string 11:28
audreyt I guess qb"" isn't that bad 11:29
b_jonas I like qb because I can think of "bytes" instead of "Buf"
TreyHarris make ; make smoke
audreyt yup
TreyHarris reset 11:30
b_jonas but there already seems to make a :b flag for strings
TreyHarris tset
b_jonas string literals I mean
audreyt there is?
oh, backslash.
TreyHarris clear ; tset; stty sane ; clear ; reset
audreyt TreyHarris: you are not typing to the tty you think you are typing in...
TreyHarris oh! 11:31
lol
sorry
audreyt np :)
TreyHarris i couldn't figure out why nothing was happening. focus was not following window activation :-)
audreyt I think the existing qb can be renamed to qe
q:escape qe
and then leave room to q:bytes q:b 11:32
b_jonas then you also need a name for the opposite I think
audreyt or q:buf q:b
b_jonas character strings
audreyt er no
strings are character strings
unless otherwise noted
via :b or otherwise
Juerd 13:16 < audreyt> Juerd: "buf" in perl5 is SV with SVUTF8 off 11:33
13:17 < audreyt> and "str" in perl5 is SV with SVUTF8 on
Not really consistently.
b_jonas that's it, if I give a pragma to make all strings byte strings I might still want to make a character string literal
11:33 onsen joined
Juerd It's possible to have the Str equivalent with the utf8 flag off, if there's no special character in it. 11:33
audreyt b_jonas: then you say q:!b/.../
b_jonas oh
I see 11:34
Juerd The utf8 flag is therefor not a reliable thing to check. If it's on, you should certainly not output, but if it's off, it's not always needed to decode it -- it could actually be the *result* of decode() already.
audreyt $ perl -MDevel::Peek -MEncode -e 'Dump decode(ascii=>"x")' 11:35
SV = PV(0x8058610) at 0x8057148 REFCNT = 1 FLAGS = (TEMP,POK,pPOK,UTF8)
PV = 0x805aec8 "x"\0 [UTF8 "x"]
that seems to work. not sure what case you are talking about
Juerd audreyt: If bufs have encodings, you could say that a filehandle that knows its encoding simply has a buf of that encoding internally that is used as a gateway. (virtually)
It may even be a simple way to implement it consistently in the beginning :P 11:36
audreyt Juerd: Str already is going to be a list of Buf
tagged with encoding info
but you can't get its encoding directly 11:37
Juerd audreyt: I was talking about a file with :utf8, properly utf8 encoded, with only latin1 chars in the first line. On readline, you get a non-utf8 bytestring, properly converted back into latin1. The 2nd line may be different yet.
audreyt I'm sorry, but latin1 chars in a utf8 encoded string 11:38
Juerd No, latin1-compatible chars
audreyt doesn't look like latin1 chars in an ascii string
Juerd They are properly utf8 encoded.
audreyt oh. then you mean ascii chars.
Juerd No, latin1
audreyt I'm thoroughly confused. example?
Juerd i.e. 2 bytes in the input, 1 byte in Perl's result.
Perl tries to be smart and use less memory, by decoding it into an octet string instead of utf8 11:39
This is no problem if you properly encode on output, though
Many people think that decode() always returns an utf8 string with flag on, and they get bitten by this. They think encoding isn't needed.
b_jonas I'm quite confused about perl5's character strings as well, and there are some points I still don't understand
Juerd But it is.
b_jonas especially with regexen 11:40
audreyt Juerd: wait, you mean my file is
C2 AA
Juerd "use utf8" also fixes it, but as a side-effect, not as a documented rule.
audreyt and then you open it up as :utf8
and then readline in perl5 returns something that's SVUTF8 off?
Juerd Yes, unless you "use utf8"
b_jonas but I think I know enough to consistently use either byte strings or byte strings with locales or character strings
Juerd I have to go; if you want, I'll send you an example tgz later today 11:41
audreyt er no.
$ perl -MDevel::Peek -e 'open FH, "<:utf8", "z"; my $line = <FH>; Dum
SV = PV(0x8058064) at 0x8057b50 REFCNT = 1 FLAGS = (PADBUSY,PADMY,POK,pPOK,UTF8) PV = 0x8059490 "\302\252"\0 [UTF8 "\x{aa}"]
$ hexdump -C z
00000000 c2 aa
it's still with utf8 on.
(and I didn't have implicit "use utf8".)
perl 5.8.8, i386-freebsd-64int. 11:42
sure, send me the .tgz
because it's designed to not break in this case :) 11:43
in particular, 11:44
13:39 < Juerd> Perl tries to be smart and use less memory, by decoding it into an octet string instead of utf8
I havn't seen this behaviour before. it's most common when people forgot to say "<:utf8".
in which case it's reading in Buf, not Str, as is the default.
11:47 plisk joined
b_jonas I wonder what you think about this alternative syntax for comments: a # makes a comment until end of line if it's preceded by whitespace or newline, while a # _preceded_ by one or more brackets makes a long comment. 11:48
I think it would be better then the current proposal of S02 because people usually put whitespace before comments anyway unless they're at bol, 11:49
audreyt {# .... #}
b_jonas but not always after a # sign
audreyt you mean like this?
b_jonas audreyt: possibly
my point is that I don't like #{ as a bracketing comment 11:50
because I want to comment out lines of code with a # with no space aftert
audreyt but we already said that you can do that at bol
b_jonas yes, but I don't always do it at bol
audreyt but if bol includes spaces after bol 11:51
b_jonas oh
audreyt would that make it work?
b_jonas I'm not sure
then how would I use the current bracketing comment syntax to make a multi-line comment? 11:52
do I have to add something before the #{ ?
but I admit that the {# syntax looks sort of ugly
audreyt yup
say #{ 11:53
...embcomment...
}# $x;
b_jonas yes, I see that but what if I want a long comment without a statement
like, before the code
#{
audreyt then you say
b_jonas ... lots of docs stuff
}
audreyt =begin comment 11:54
...
=end
b_jonas ah yes, pod syntax. tricky
audreyt as is currently practiced
b_jonas I still don't think I like the current rules for block comment. 11:55
audreyt the haskell 98 committee observed that comments are the most contentioustopic, followed by layout, syntax, grammar, and finally semantics. 11:56
11:57 elmex joined
b_jonas there's yet another alternative of course but that's just as ugly: 11:57
making # always a line comment and making a special macro similar to q that creates a block comment 11:58
audreyt obviously, q#< .... >
b_jonas heh
that's a wierd name
the drawback of that is that it doesn't give a short syntax for short in-line comments 11:59
which is an important thing
audreyt which was the original motivation.
b_jonas yes
so let's just forget that alternative
audreyt (for multiline comments, S02 strongly suggests pod)
b_jonas and I guess you don't want to make /* a comment marker either 12:00
audreyt "you can use a macro for that" </standard-chant> 12:01
b_jonas surely
and I can redefine what # does with a macro as well 12:02
audreyt right.
svnbot6 r12793 | audreyt++ | * Probe for threaded GHC should make sure that it runs instead 12:09
r12793 | audreyt++ | of just compiles.
12:12 drbean joined
svnbot6 r12794 | audreyt++ | * user-defined postfix now works again. 12:15
r12794 | audreyt++ | * also cleans up some unused imports and cases.
r12795 | audreyt++ | * take away another debug print from File::Find 12:21
12:24 onsen_ joined
svnbot6 r12796 | audreyt++ | * hq9+: "subset of Str" 12:24
12:28 bpphillips joined 12:41 theorbtwo joined 12:48 foo\ joined 12:55 jferrero joined
wolverian audreyt, hey, feather's /usr/bin/pugs is pointing to nullspace. is that intentional? 12:56
audreyt no. investigating 13:02
13:12 mago joined 13:18 iblechbot joined
audreyt back now 13:22
13:23 xdg joined, evalbot_12796 joined
audreyt ?eval (1,2,3) ōæ½xBB+ōæ½xAB (4,5,6) 13:30
evalbot_12796 (5, 7, 9)
13:48 bpphillips joined 13:49 vel joined 13:51 Qiang joined
svnbot6 r12797 | audreyt++ | * (minor) Test.pm: rewrite "unless" to ??!! to save a opcode. 13:51
r12798 | audreyt++ | * repair wizard.pl: 14:04
r12798 | audreyt++ | .foo
r12798 | audreyt++ | must be written (in methods) as
r12798 | audreyt++ | self.foo
r12798 | audreyt++ | if foo(){...}
r12798 | audreyt++ | must be written as
r12798 | audreyt++ | if foo() {...}
r12799 | audreyt++ | * more fix for rx:P5{} into rx:P5//. 14:07
r12800 | audreyt++ | * Put IArray into the IO monad, not the STM monad;
r12800 | audreyt++ | a STM-friendly array will need an explicitly-defined
r12800 | audreyt++ | data structure, most likely.
14:11 mako132 joined
Juerd audreyt: shadow must be readable by www-data because of mail/irc authentication 14:18
I will restore that, now that people can no longer use PHP 14:19
audreyt Juerd: gotcha.
Juerd And will separate apache by running two different servers concerns soon.
audreyt 'k
Juerd s/concerns//
(huh)
14:21 onsen joined 14:22 weinig joined
audreyt cmarcelo: I just finished the final review of your SoC. congrats. :) 14:31
Juerd What was the project? 14:32
audreyt Judy bindings 14:34
Juerd I see
audreyt the thing that made Pugs really fast :)
?eval my @x[999999] = 1; @x.push(1); @x[-1] 14:35
14:35 evalbot_12796 is now known as evalbot_12800
evalbot_12800 \1 14:35
audreyt ?eval my @x[99999999] = 1; @x.elems
evalbot_12800 100000000
audreyt try that in perl5 :)
clkao giggles 14:36
is there perl5 bindings yet?
audreyt yes
Tie::Judy
but it's missing JudyHs, but that's fine
oh, it's missing judy arrays as well. 14:37
so just StrMap.
b_jonas audreyt: I tried, it takes 0m0.526s
audreyt b_jonas: wow.
b_jonas it's fast because it doesn't have to create scalars for the intermediate elements
audreyt $ perl -e 'my @x; $x[99999999] = 1'
Out of memory during "large" request for 536875008 bytes, total sbrk() is 98304
yup. i.e. it's sparse 14:38
14:38 Limbic_Region joined
b_jonas ah, if I my @x it, it takes 0m1.436s 14:38
audreyt Limbic_Region: welcome back
Limbic_Region thanks - Juerd probably thinks I was stalking him 14:39
in reality, I just needed my #perl6 fix
b_jonas audreyt: is it ulimited down so that it can't eat the whole memory? 14:40
audreyt not here
so maybe a freebsd thing
14:41 penk joined
Limbic_Region audreyt - I couldn't tell from the recent checkins - is debug no longer needed for Win32 on File::Find? 14:41
audreyt Limbic_Region: in fact... I'm on freebsd now, and cannot test 14:43
b_jonas this is on linux, and perl allocates 400M of memory with mmap (because that's how glibc malloc handles large chunks)
svnbot6 r12801 | audreyt++ | * some t/ unbreaking using new syntax.
r12801 | audreyt++ | (note that "&f = {...}" was erroneously allowed; now must always use :=)
r12802 | audreyt++ | * all_parse.t: use pass() and flunk() for clearer meaning
audreyt can you see if r12802 renders the bug away?
b_jonas: ah. it's plain old libc here, so the behaviour will differ
(no, r12802 is not the fix itself)
b_jonas yes, that's normal. freebsd doesn't have gnu libc 14:44
I still think it should be able to allocate 400M of memory and address space though 14:45
I mean freebsd
Limbic_Region tried to use pass() and flunk() but couldn't get it to work quite right 14:46
quite possible though that non-related problems were masking the issue
I am currently building 12799
svnbot6 r12803 | audreyt++ | * more test unbreaking
TimToady I'm building r12800 while packing... 14:47
Limbic_Region will svn up and build again upon completion - check .debug as well as list the examples that are still failing (locally)
audreyt - did you expect your change to hq9+ (plus) to result in the example parsing or just a syntax error to fix but still not passing? 14:50
14:52 DaGo joined
audreyt still not passing 14:57
Limbic_Region k 14:59
if this machine had another 1/2 gig of memory I think it would not struggle so hard with the builds
Jean's new laptop flies through
b_jonas (you need so much memory for hq9+?) 15:05
Limbic_Region b_jonas - no, building pugs 15:09
I can get through it in one pass (thanks audreyt) but it is s-l-o-w
15:10 penk left
audreyt it's certainly memory bound 15:11
15:11 marmic joined
svnbot6 r12804 | audreyt++ | * Repair scan metaops: ([\+] 1, 2, 3) is now (1,3,6) again. 15:11
15:11 eden_c joined 15:14 hexmode joined, eden_c left 15:15 bernhard joined, kanru joined 15:28 onsen_ joined 15:29 elmex joined
Limbic_Region waits patiently as the second compile nears completion 15:32
integral anyone have any ideas on what would make the pugs link fail with undefined symbol errors for lots of _Judy* things?
PerlJam The judy libs weren't compiled? :) 15:33
integral well both judy and HsJudy are definately compiled :)
But I have no idea how the cabal magic to get it to link works :-/
PerlJam Are you *sure* they're compiled? I had a problem once where compilation failed but and empty output file was produced anyway, thus fooling the make system. (not in pugs,but some other project) 15:34
integral I've poked them about a bit and I can't see any error messages from them
At the top of the pugs part of the build I see it finding the judy stuff with "configure: Dependency HsJudy-any: using HsJudy-0.1" 15:35
Limbic_Region anytime I have Judy problems I look at third-party and if blindly removing files and directories there doesn't help, I make realclean
integral Is there some way to see the actual link command used?
ah, realclean is more clean than distclean?
Limbic_Region realclean is definately more than clean 15:37
never use make install so never use distclean
integral what's make install got to do with distclean?
Limbic_Region isn't make dist in preparation for make install 15:38
15:38 Eimi joined
Limbic_Region is think p5 here when you are preparing to upload to CPAN for others to make install that is 15:39
integral I always though the idea of make distclean was to get back to the state after untarring the distribution tarball
Limbic_Region *shrug* - the Makefile is right there - should be easy enough to see what it does
Limbic_Region should have said he avoids anything he doesn't use/touch
b_jonas if you want to know what a make target does, you can also 'make -n target' not only read the makefile 15:43
pasteling "Limbic_Region" at 129.33.119.12 pasted "audreyt++ debug still necessary for File::Find - here are the examples that are still failing on my machine" (23 lines, 702B) at sial.org/pbot/19320 15:46
Limbic_Region wanders off to lunch
15:49 weinig is now known as weinig|bbl
audreyt hm, -CPIR appears bitrotten 15:54
audreyt ponders whether it's worth fixing
oh well. sleep first. see you tomorrow... 15:55
16:06 onsen joined
b_jonas see you audreyt 16:06
Limbic_Region sleep well audreyt 16:10
TimToady whoa! 487. Now I can go get on the airplane happy. 16:17
offline for a day or two...
&
Limbic_Region are alternate delimiters for p5 regexen supposed to work? m:P5{foo} vs m:P5/foo/ 16:19
b_jonas Limbic_Region: I think you may need a space before the bracket in that case 16:20
Limbic_Region kisses b_jonas 16:21
b_jonas I knew it by accident only, I've just read the relevant part of the synopsis
16:22 Psyche^ joined
svnbot6 r12805 | Limbic_Region++ | Added space before alternate brace delimiter in regex b_jonas++ 16:22
Limbic_Region b_jonas did you happen to come across the proper way to undef a variable? 16:26
?eval my $foo = 'hello'; undef $foo 16:27
16:27 evalbot_12800 is now known as evalbot_12805
evalbot_12805 Error: unexpected "$" expecting comment, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input 16:27
Limbic_Region ?eval my $foo = 'hello'; $foo = undef; 16:28
evalbot_12805 \undef
Limbic_Region wonders if they both shouldn't be considered correct
16:28 fglock joined
svnbot6 r12806 | Limbic_Region++ | hangmanbot.pl changed undef $game to $game = undef though I think both should work? 16:31
Limbic_Region hrrm - apparently undefine $game works where as undef does not 16:32
Limbic_Region reverts his fix for the alternative
Teratogen I think that Perl 6 should be designed so that it could be certified for use in medical devices, nuclear power stations, avionics, etc., even though it may be too slow for these applications 16:33
juat my own personal apocalypse
16:34 Psyche^ is now known as Patterner
svnbot6 r12807 | Limbic_Region++ | hangmanbot.pl s/undef/undefine/g in undef $game 16:34
b_jonas Teratogen: don't be riddiculous. you'd need at least a completely different garbage collector, balanced trees instead of hashes, and an OS to run it under for that 16:37
and probably lots of other things too I haven't even heared of 16:38
16:40 xerox joined
svnbot6 r12808 | Limbic_Region++ | Insert space before @ in print@[... 16:40
Teratogen just a thought =) 16:41
parrot could be the OS
svnbot6 r12809 | Limbic_Region++ | Insert space before $ in print$x;
Teratogen or virtual machine, if you will 16:42
b_jonas parrot could be the virtual machine but you still need an OS. we're not in the 80s when computers had no OS. 16:43
svnbot6 r12810 | Limbic_Region++ | Insert space before @ in @l[int((@l-1)/2)..int(@l/2)]
16:44 amnesiac joined
b_jonas You have complicated hardware in today's computers. 16:44
Teratogen heh, entire oil drilling platforms have been implemented using TCL 16:46
err, automated 16:47
[particle] well, just because it's done doesn't mean the language was designed to support it :) 16:51
svnbot6 r12811 | Limbic_Region++ | Added spaces to get compiler to pass - revisiting my be warranted as some may have been parse bugs
Teratogen true 16:53
Limbic_Region YAY audreyt - in case you backlog, only 7 failing examples now. 2 of which are really p5 code and 2 are because of unimplemented features (I think) 16:54
16:58 justatheory joined
Teratogen hmm, if a=>b creates a "Pair object" can't we now have builtin complex math? 17:04
well anyway it would be nice to have builtin complex math =) 17:08
Limbic_Region Teratogen - you planning on using Random Hermatian Matrices to solve the Riemann Hypothesis? 17:10
Teratogen oh there is a builtin Complex type 17:11
interesting.
[particle] sure would be nice to have the url in the S29 actually be a hotlink to the pugs doc
17:11 Daveman joined
Teratogen is grazing through the design synopses 17:12
b_jonas I hope complex numbers will actually use the complex number functions from libc which are optimized 17:15
and won't just reimplement them in perl6 or parrot or C.
Teratogen Perl 5 has a tradition of reimplementing functions like printf, etc. 17:18
b_jonas but that's different
obra Perl6 has a tradition of being portable to platforms with insanely broken printf ;)
b_jonas a cpu or c library can have explicit support for complex numbers and may even calculate complex trig functions more precisely and faster then anyone else 17:19
it could still have slow replacement functions in case the c library doesn't have those functions
Teratogen I wonder if the old VAX instruction set had assembly language ops for complex numbers 17:20
it was the ultimate CISC cpu design
I don't see anything in the synopses about how a Complex data would be formatted if you printed it 17:21
but then I am a Perl 6 noob
b_jonas I just can't help noticing how complex numbers are supported only by a pure-perl module in perl5 and a pure-ruby module in ruby 17:22
however as python has builtin complex numbers surely perl6 must have them too 17:23
ingy seen gaal
b_jonas Teratogen: I guess it has to be something like (realpart,imagpart) 17:24
that's the only format that doesn't take sides between mathematician and physician conventions (i versus j)
ajs b_jonas: I think theh implementation is more of an issue for Parrot and the other back-ends. Perl 6 will provide what support they do (for example, in v6.pm, it will probably use the P5 complex numbers module(s))
b_jonas quite possible. then I hope parrot will use the efficent functions from libc 17:26
ajs As for string output formatting, I imagine that it will have a knob somewhere.
Teratogen (realpart,imagpart) seems reasonable
b_jonas imagines 'use complex "i";'
:)
Teratogen or maybe it will just be [real,imag] 17:27
ajs Actually, i will likely be exported by Math::Basic alone with the rest of the happy gang of math constants.
er "along with"
Teratogen i would become [0,1]
b_jonas c++ uses (real,imag) I think
ajs And the more common usage would be "use Math::Basic :constants" 17:28
Teratogen and you could have a special formatting thingie in printf that prints [a,b] as a+bi 17:29
if you prefer to output complex numbers in that notation
b_jonas the problem with that format is that it's more difficult to read back
you may need some delimiter around it
17:32 orbit_ joined, orbit_ is now known as orbit
ajs Python, it seems, has no format string for complex. That's odd. docs.python.org/lib/typesseq-strings.html 17:39
I'm not sure what character to steal for complex... anyone have thoughts? 17:40
C, c, are taken. as are x and X. p is taken by P5, and should be an error in p6 17:41
17:41 Aankhen`` joined
svnbot6 r12812 | markstos++ | add not that "contend" does not work in pugs 6.2.12 (r12811) 17:41
[particle] ajs: how about m/M ? 17:42
ajs checking 3 sources to see if it's used by anyone...
[particle] i think that's good in perl/python 17:43
ajs m it is
Was checking glibc, perl5 and python
[particle] it'll be great to have native complex sprintf formatting 17:44
ajs So, what is m vs M? Signed vs. unsigned? Does it make sense to talk about unsigned complex?
[particle] no
ajs so just m, I would think
[particle] maybe it's just the case of e? 17:45
ajs eh?
[particle] for exponential format
of complex floats
naw, you'd need a different letter for that
ajs Hrm... 17:46
[particle] like mM are same, nN are exp format
ajs this is starting to sound like a modifier on e,f,g
not a stand-alone
so %me or %mE
Does that make sense?
and I guess %md too, if you want to truncate to integer parts 17:47
[particle] yep, you beat me to the last bit
ajs Ok, adding it to Functions.pod now
[particle] how about real-only or imaginary-only ?
ajs I think for that you just do something like sprintf "%f", $i.real; 17:48
[particle] yeah, that probably doesn't belong in sprintf.
17:55 orbit left
ajs Is %md enough, or do we need somethig like %m[d,f] (which would increase the complexity of format strings substantially) 17:55
Hrmm.... well, I'll say it's %m<directive> for now, and we can change it later 17:56
I don't want to make too much policy in the documentatio
n
17:56 araujo joined
[particle] well, how will %md expand? 17:56
will a comma be forced? 17:57
araujo hello!
ajs I'm not specifying that just yet... I'll wait and see what the realities of implementation are
[particle] ok, then simple++
ajs indeed
[particle] howdy araujo 17:58
ajs Thanks for the idea on m. That was a good call. 17:59
araujo hi [particle] :-)
svnbot6 r12813 | ajs++ | Nicked modifiers documentation from P5 and added complex number handling
[particle] anytime, ajs_home
err...
ajs er?
[particle] ETOOMANYAJS 18:00
ajs heh
I'm me. It's OK
I find myself saying that in the shower.... kind of unsettling, now that I think about it ;)
fglock araujo: you are in Venezuela, right? any chance you show up in the next hackathon? www.perl.org.br/twiki/bin/view/YAPC/YAPCSA2006 18:01
lambdabot Title: YAPCSA2006 &lt; YAPC &lt; TWiki
araujo hello fglock 18:03
fglock, right , let me check it
18:04 PolettiX joined
audreyt Limbic_Region: the more I think your suggestion re PCR, the more it makes sense. 18:04
Teratogen wow did I actually participate in a modification of Perl 6?
I feel honored =) 18:05
Limbic_Region audreyt - well, I would like to be able to help more with the implementation
audreyt Limbic_Region: to mysleepy mind, I think this scenario makes sense
Limbic_Region did you see that we are down to 7 bad examples and 4 of which are explainable?
audreyt - Enable Pugs.Embed.Perl5 for VanillaPerl (should already work and/or is trivial)
Limbic_Region: yes :)
- Backport the PEP5 embedding flags to ActivePerl (involves tricking $Config{cl} mostly) 18:06
Limbic_Region which reminds me - I don't think $! is being set properly
audreyt - Enable Perl5 embedding on _all_ builds
Limbic_Region the reason all_parse.t just parses - and not runs, is because $! is 1 regardless of the program working correctly or not
audreyt - Drop PGE as the p6regex bridge (maybe enable via a pragma) by default; load perl5:PCR when a rx// is encountered
Limbic_Region and which is why I check the output of -c for syntax OK instead of checking $! 18:07
audreyt - Calling convention into perl5:Module is handled via Moose, Data::Bind, etc, as per standard v6.pm callconv
(that gives us closure and callbacks inside rules, and callbacks bothways)
18:07 justatheory joined 18:08 thepler joined
Limbic_Region Enable Perl5 embedding on _all_ builds - by default right? It is just a shortcut for not requiring Parrot to be embedded or in the path right? 18:08
oh wait, nevermind - you are already seeing much further than I was
audreyt and then things can gradually merge
as v6-Compiler pieces can be used even when pugs is the main runloop
Limbic_Region well, glad I could be a catalyst for your telescope
araujo fglock, nice , it might be possible :-) 18:09
Limbic_Region backs away very slowly
fglock audreyt: PCR could be ported to perl6 :)
audreyt well, that will make perl5 hacking a prereq ability for pugs hackers :)
Limbic_Region has that ability
araujo wished he had been notified about this before
audreyt fglock: yeah, v6-Grammar/ perhaps? 18:10
Limbic_Region audreyt - so do you want me to remind you about $! not working correctly when you are awake?
fglock araujo: cool! Please let me know if you would like to submit a talk - there may be some $$ help for speakers
audreyt Limbic_Region: can you give one short example?
Limbic_Region system('pugs someexample'); 18:11
regardless if someexample runs correctly or not, $! is 1
same for qx and `` 18:12
audreyt fglock: I wonder if it's possible to port PCR to perl6 and still have it run with reasonable speed when used as apel5 module
i.e. shared codebase
Limbic_Region of course, this was last verified the day I checked in all_parse.t so things may have been fixed
Limbic_Region re-verifies
araujo fglock, sounds interesting, let me see what i can prepare
audreyt Limbic_Region: pugs> system("pugs moose"); say $! 18:13
pugs: moose: openFile: does not exist (No such file or directory)
fglock audreyt: I think so, it depends on an optimized emitter only, because rules are cached anyway
audreyt 1
Limbic_Region: it appears $! is set
fglock s/rules/rule compilation/
audreyt fglock: an optimised Emitter::Perl6->Perl5, right?
fglock yes 18:14
Limbic_Region audreyt - not that it isn't set, that it is always set
Limbic_Region is confirming now
18:14 justatheory joined
fglock it can be reused - actually, I think most of the perl6 version is already written 18:14
audreyt fglock: what about the Yapp part? 18:15
fglock it even had some tests, but may need an upgrade to latest Match object
audreyt PCR uses YAPP, which is not yet ported or made available
in p6land
fglock PCR doesn't need YAPP - it's only used by v6.pm
PCR just provides a wrapper 18:16
audreyt er. PCR uses PGPrec
Limbic_Region audreyt - it is behaving correctly, so I will add an all_execute.t which will verify all the same parsing examples execute (though they still may produce incorrect output)
audreyt and PGPRec uses PYapp
Limbic_Region: there are interactive examples, though.
Limbic_Region audreyt - ahh, ok
I remember what my issue was now
when doing system(pugs -c example); # $! is not set regardless of compile/failure or is always set - can't remember which 18:17
fglock the rule compiler is written in pure rules - the Precedence parser is only used by v6 Expression parser
the rule compiler should use Prec, but it doesn't ...
audreyt oh ok 18:18
Limbic_Region but even that is working correctly now
audreyt that makes it much simpler
Limbic_Region so don't mind me
audreyt so Text::Balanced, and P5Regex
is the only deps?
Limbic_Region shuts up so fglock and audreyt can continue their plans of world domination (where's kudra with the money?) 18:19
fglock audreyt: svn.openfoundry.org/pugs/v6/v6.pm/l...6P6Rule.pm
oh, money - yes 18:20
audreyt: I started replacing Text::Balanced with rules, I don't remember if it was finished 18:21
P5Regex is needed for char classes and such, but it can be replaced easily 18:22
audreyt and pugs has P5Re natively viaPCRE anyway
so we can push as much as we'd like into p5re land if needed
fglock sure, so we can just write a few :P5
so what do we need, an emitter for Rule-to-Perl6 to bootstrap? 18:23
audreyt it appears so 18:24
alternatively, Rule-to-PCRE-with-callback
fglock in order to compile the previous link
audreyt which may actually be much faster
but R->P6 is more "Correct"
and as you said, the P6 part can cheat as much as it'd like with m:P5
PerlJam you know ... whenever TimToady is here and I pay attention to #perl6, it's often like everyone is speaking another language. Right now, it's like everyone is speaking english but saying crazy things ;-) 18:25
audreyt I think I like that :)
fglock Rule-to-PCRE would be useful to v6.pm too
audreyt you know that PCRE has nativesupport for named captures?
as well as arbitrary callbacks that letyou alter the match state (\C)
which can be used to implement nested capture groups 18:26
PerlJam fglock: What's the state of the art now? Are you just parsing or doing codegen or AST munging too? (sorry I haven't kept up)
18:26 Odin- joined
PerlJam is wondering if Rule-to-PCRE lets us bootstrap anywhere we can find PCRE (php, python, java, etc) 18:27
audreyt PerlJam: that is essentially my current fav plan, yes :)
PerlJam: re state of the art: Test.pm passes with a all-perl chain :) and nearly 1k subtests pass out of the 10k in t/ 18:28
PerlJam and people said perl6 couldn't be implemented in perl5 ;)
audreyt which is why I'm gravitating from PGE/Parrot toward PCR/v6... 18:29
PerlJam audreyt: okay, it sounds good in theory, but what does it buy us in practice?
audreyt PerlJam: in practice: mostly just speed, stability and good unicode support 18:30
Limbic_Region for one, the need not to have parrot just for pge
[particle] pugs must be missing some <ident> tests, because the v6 rule is broken (too relaxed)
Limbic_Region which is all I was suggesting in the first place
PerlJam Limbic_Region: but you have to have *something* that groks PCRE anyway. I guess that's an easier target to aim at though :-)
audreyt well, perl5 groks PCRE 18:31
or rather, it's compatible with it
or maybe it's the other way around.
[particle] i thnk you mean to say "...for some definition of compatible"
fglock PerlJam: what audreyt said :) - sorry, I was talking with someone here
audreyt the same definition as the C in PCRE :)
[particle] :) 18:32
PerlJam so ... would there be a benefit in using one of the other PCRE host languages? Could we accrete some hackers from the clouds surrounding those other languages?
fglock Perljam: there is also some work done in Perl6-in-Perl6
audreyt [particle]: which <ident> should not match? 18:33
PerlJam: if, at some point in time, saying -lp6re -lpcre gives you p6re syntax for an application 18:34
PerlJam: then yeah, I think there are hackers from other lands I know of that will be greatly interested :) 18:35
PerlJam ah, good point that. We need a libp6re at some point.
audreyt but not aiming that far at this point... I just want to leverageas much of fglock's brain as possible
(libp6re would require the callback handlers be rewritten in C instead of Hs/P6/P5)
fglock :)
audreyt (which, although kinda trivial, is also very tiresome.) 18:36
PerlJam Hmm. No TPF funding for fglock?
[particle] audreyt: 123abc is an example that should not match
fglock emitting C from PCR would not be too difficult
18:36 cj left
audreyt PerlJam: no SoC funding either :/ 18:37
[particle]: commit a fix into perl5/Pugs-Compiler-Rule/lib/Pugs/Grammar/Rule/Rule.pm ?
PerlJam fglock: have you submitted a grant application to TPF?
PerlJam thinks TPF is an easier target than SoC 18:38
[particle] let me make sure i can run the tests first...
fglock PerlJam: I submitted in the previous quarter
[particle] hrmm, do i need working pugs to build v6?
or, p6p6 i guess i'm testing here 18:39
PerlJam fglock: are you planning on continuing to submit until you get awarded a grant or you've already done the work?
TreyHarris anyone know the quickest way to get the current value of svn BASE and HEAD? svn info has to contact the repository for both...
PerlJam wonders if we could lobby TPF somehow :)
audreyt [particle]: no
[particle] trey, isn't there a Revision.pm somewhere?
...or other config file that might have that info 18:40
audreyt TreyHarris: util/version_h.pl
and yes, src/Pugs/pugs_version.h
fglock PerlJam: actually I was a bit disappointed with TPF, the answer was like "There was a bit of debate about it but most of it boiled down to thecost [...] There was also concern about the immediate benefit to the Perl community." 18:42
but it may be my fault, perhaps I didn't explain it clearly enough 18:43
PerlJam fglock: well, it sounds like we could help the TPF understand the community benefit if nothing else.
How much did you ask for?
fglock 10k, which is likely above their upper limit ... 18:44
PerlJam ouch. I don't think they're giving out much more than $5k at a time.
fglock so I can't blame them
[particle] ja, <$5k is what i heard from the horse's mouth
PerlJam [particle]: which horse? 18:45
Ovid?
[particle] bill odom
PerlJam oh,
s/,/./
audreyt I'd be happy to match TPF's $5k for fglock, but I probably can't afford $10 alone myself :)
obra 5k is the max for someone who doesn't have years of a track record in the community.
audreyt s/$10/$10k/
TreyHarris [particle], audreyt: thanks, but i'm trying to convert my svn change explorer to Perl 6, and I noticed that its default revesion range (BASE:HEAD) always returns at least one revision if the repository's up to date, so I was looking to intercept that somehow... version_h.pl shows me how to get the value of BASE. I guess I still have to run a svn cmd to get HEAD, I just don't know which one of the many choices is most efficient 18:46
PerlJam obra: which means ... only Damian, Larray, and very few others are going to get more than $5k
[particle] who's spearheading the p5-on-p6 effort :)
PerlJam [particle]: fglock! :) 18:47
obra PerlJam: actually a few others as well ;) (Nick is the one who most recently comes to mind)
PerlJam obra: yeah, anyone who's been a perl pumpking counts
[particle] pumpking emeritus
Limbic_Region concerning funding 18:48
audreyt [particle]: btw, <ident> fixed.
Limbic_Region I am not real happy with the way TPF allocates resources
[particle] audreyt: C<svn up> just finished :)
PerlJam I don't have any money to give, but I'll be happy to help anyone here obtain funding from elsewhere if I can
Limbic_Region if someone wanted to set up a fund where donations could be designated to individuals (audreyt, fglock, gaal, etc) 18:49
I would be happy to donate $x / $y interval
and if $z people also contributed, there would be more $ to go around
svnbot6 r12814 | audreyt++ | * Pugs::Compiler::Rule: <ident> now rejects beginning-with-digit tokens, as prompted by particle++. 18:50
PerlJam Limbic_Region: I'd hate to bifurcate the donation efforts. Better might be to fix TPF (also harder, I know)
Limbic_Region contributed regularly to the PerlMonks fund until he found out there is no public record of what the money was spent on, how much money was in reserve, or any plans on using the money in the future
PerlJam - I haven't mentioned it before because I felt the same way
but if I don't give two shits about the tax free status - I should be able to say where and how my money is spent 18:51
I still contribute to TPF, but in much smaller amounts and not regularly
PerlJam Limbic_Region: there ar other perl luminaries that don't contribute to TPF because they think it's slightly borked. (mjd comes to mind) 18:52
18:52 b_jonas joined
fglock I guess TPF doesn't want to split resources, by funding both Parrot and Pugs 18:52
audreyt the parrot funding is actually a designated funding... 18:53
Limbic_Region well, some of it is anyway
the 75K is
but my point is this 18:54
PerlJam I bet if someone setup a paypal account designated for pugs funding and laid out the plan for who was to get the money and what they would accomplish, I bet people would contribute :)
Limbic_Region nevermind, I will get hot for no reason
I wouldn't even need to see what they would accomplish
total contribution with a list of names and a box of what percentage goes to whom
pugs was started in feb of 05 - I think it is obvious who contributes and what level that contribution is worth 18:55
TreyHarris i was under the impression--just by osmosis--that the eventual "plan", such as it was, was that an eventual perl 6 release would include components of parrot and pugs, and not just pugs' tests... was i mistaken?
Limbic_Region did any of you read that solicitation for TPF feedback not too long ago?
PerlJam I read it but it's since faded from memory 18:56
Limbic_Region well, one of the replies I found very in tune with my sentiments
PerlJam TreyHarris: that's a good vague idea of the plan, sure :)
TreyHarris: The problem with "the plan" is that it too is a moving target as we learn new things. 18:57
Limbic_Region news.perlfoundation.org/2006/08/tpf...ent-109232
PerlJam Limbic_Region: yep, that's about the size of it. 18:58
What's weird is that I know there are many people who have these gripes about TPF, but TPF doesn't seem to acknowledge or respond to them 18:59
Limbic_Region so to re-iterate, if anyone sets up something where I can designate who my money goes to, I would be happy to contribute $x / $y interval
18:59 prefiks joined
Limbic_Region I don't care what they spend it on, after watching this project for a year and a half - I trust the money will be put to good use 18:59
TreyHarris Limbic_Region: are you Garrett? 19:00
Limbic_Region no
perlbot Limbic_Region
hrmm - I thought perlbot had an entry for me - must be purl 19:01
TreyHarris i tried that :-)
oh. I just read that comment on the page you sent about TPF and was going to respond if you were Garrett
fglock re TPF PR, I try to learn some lessons from it, as I'm now president of brazilian perl society
Limbic_Region here's what purl has to say about me - somebody said Limbic_Region was a crazed homocidal maniac seeking someone to endure the ramblings of a mad man who happens to hack on Pugs/Parrot/Perl6
PerlJam Limbic_Region: you're an insane monk? :) 19:02
Limbic_Region or inane 19:03
TreyHarris i'll respond anyway FYI: I'm on a couple of nonprofit boards, and while total openness is a good thing in theory, the requirements of fiduciary responsibility sometimes force a board to default to silence, even in cases where openness is desired even by the board. it can be very frustrating. 19:04
Limbic_Region TreyHarris - I don't have strong issues with TPF
though I might if I looked closely as others apparently have 19:05
I am just saying it doesn't work for what I would consider donating money for 19:06
PerlJam TreyHarris: can you give an example that forces silence? 19:07
Limbic_Region PerlJam - asking must be one of the examples 19:11
Limbic_Region ducks
PerlJam heh
19:12 wilx joined
[particle] how do i build & test p6p6? C<nmake build_perl5 && nmake test>? 19:16
prove6?
fglock [particle]: do you mean v6/v6? 19:17
[particle] sorry, yes
it's been a while since i've done this
fglock it is work in progress - but you can compile the files with plain perl5, if you have v6.pm installed 19:18
but you'll get some errors
[particle] compiling grammar for miniperl6 gives me substr and uninit warnings
audreyt win32 embedding works. 19:22
svnbot6 r12815 | ajs++ | Fixed incorrect mapping of q and L to types and also added examples -- also tried to clean up usage of C terminology to be more VM-friendly. Not sure if I helped or not
fglock [particle] v6/v6-Compiler is a perl6-level compiler; v6/v6.pm is an api-compatible perl6 version of v6.pm
both are very experimental
[particle] fglock: my goal is to get the parrot/perl6 and v6 parser grammars in sync 19:23
Limbic_Region audreyt - you aren't asleep yet? 19:24
[particle] i need to be able to test v6 in order to do that
fglock [particle]: you need perl5/Pugs-Compiler-Perl6 - that's the working compiler
svn.openfoundry.org/pugs/perl5/Pugs...s/Grammar/ 19:26
lambdabot Title: Revision 12815: /perl5/Pugs-Compiler-Perl6/lib/Pugs/Grammar
[particle] ...and i build that from pugs with C<nmake build_perl5>, right?
fglock [particle]: you can install v6.pm from CPAN, in order to get all dependencies, and then just update it by installing the svn version 19:27
[particle] ok 19:29
fglock [particle]: you can interrupt the v6.pm tests after 20 or so passes, and then force install it 19:30
19:32 xerox joined
fglock [particle]: syncing the grammars is complicated because PCR and PGE have different subsets of the rule language implemented so far 19:34
[particle]: specifically, PCR uses perl6(ish) callbacks for doing tree operations, instead of TGE 19:37
[particle] how many levels of transformation are there?
perl 6 -> parse -> emitted code? 19:38
parrot is currently perl 6 -> parse -> PAST -> POST -> PIR
fglock there are only a few transformations, for example to make a recursive rule into a list of matches 19:39
so it's mostly perl6 -> parse and preprocess -> process-again and emit
the emitter does some transformations too (perl5 specific) 19:40
ingy fglock! [particle]!
audreyt!
fglock ingy!
ingy can you guys tell me the easiest way to parse python using Haskell? 19:41
fglock ingy: mm - somebody asked me to write a python-to-perl5 compiler 19:42
ingy did you?
gaal ingy: use Parsec to do the parsing, use HsSyck to emit the AST for testing 19:43
fglock but I'd use perl5 instead, by replacing v6.pm grammar
ingy: no, but I'm still thinking about it 19:44
ingy so is there a good way to turn the Python grammar into Parsec code?
gaal hmm, scw is making a Perl 6 Rules -> Parsec convertor you should look at
ingy gaal: where?
gaal so if you have the Python grammar in Rules, maybe :)
ingy :) 19:45
gaal ingy: misc/pX/scw
ingy ok
19:45 mdiep joined
gaal I don't know what its status is. 19:45
[particle] howdy ingy!
gaal but ingy, Parsec itself isn't that hard
audreyt ingy: #haskell will be useful for this :)
ingy I ned to port pyyaml to perl and I'm thinking... how boring of me
audreyt: I might be too noob 19:46
for #haskell. but ok
fglock there is a Parsec converter is in perl5/Pugs::Compiler::Rule
audreyt fglock: are you on vanillaperl?
fglock audreyt: I'm on ubuntu, but I can switch to it 19:47
svnbot6 r12816 | audreyt++ | * First attempt at win32 perl5 embedding -- works on vanillaperl here.
gaal whoo!
ingy :D
audreyt++ # indeed 19:48
fglock audreyt: I'll try to recompile - but it'll take some time
Limbic_Region is on ActiveState 19:49
19:49 araujo joined, weinig|bbl is now known as weinig
audreyt Limbic_Region: trying AS now 19:50
Limbic_Region just ran perl Makefile.PL 19:51
should I be concerned that the message at the end says p5 embedding is disabled?
audreyt you should.
that menas AS is explicitly disallowed
Limbic_Region ok, now what? 19:52
audreyt now wait for my next commit.
Limbic_Region gives up trying to tell her she should go to sleep 19:53
unless of course this is a non-$work day
audreyt it actually is. 19:54
[particle] thinks audreyt can take care of herself (and can code in her sleep anyway)
wolverian audreyt, yay, thanks for fixing feather's pugs :)
Limbic_Region wait, before you do anything
is this p5 embedding on by default
or just, if you enable p5 embedding - it should work 19:55
I ask because I didn't explicitly set PUGS_EMBED
Limbic_Region sets in anyway to see what happens
araujo hello all
Limbic_Region salutations 19:56
fglock audreyt: is there a windows binary build for ghc 6.5, or are you using 6.4?
19:56 larsen joined
Limbic_Region fglock - yes 19:56
but don't use the latest snapshot - use the one from the 19th
link in a sec
[particle] i wonder, if audrey can code in her sleep, why does she ever wake up?
Limbic_Region fglock - www.haskell.org/ghc/dist/current/di...w32.tar.gz 19:57
fglock Limbic_Region: thanks 19:58
svnbot6 r12817 | ajs++ | Created "Scalar" API document and moved methods out of the main Functions document into there.
r12816 | audreyt++ | * First attempt at win32 perl5 embedding -- works on vanillaperl here.
Limbic_Region shouldn't that be s/First/Second/ 19:59
araujo oh no, the haskell book section on READTHEM is missing the best book! 20:01
Limbic_Region ok - what EXACTLY do I have to do to try p5 embedding in AS
IOW, do I have to set PUGS_EMBED or not and do I have to build clean or not
cognominal araujo: what is this book? 20:02
araujo should start using his commit bit with this fix :-)
cognominal: Introduction to Functional Programming 20:03
audreyt Limbic_Region: rm dist/build/pugs/embed/perl5.* 20:04
Limbic_Region: set PUGS_EMBED=perl5
Limbic_Region attempting now 20:05
audreyt and don't run MAkefile.PL.
Limbic_Region oops 20:06
Limbic_Region doesn't know how to undo a run Makefile.PL 20:07
audreyt don't need to
Limbic_Region k 20:08
audreyt ...committing 20:09
Limbic_Region ok - will nopaste current error then in case it is relavent 20:10
pasteling "Limbic_Region" at 129.33.119.12 pasted "current build failure on Win32 trying to embed perl 5" (16 lines, 895B) at sial.org/pbot/19328 20:11
audreyt test with 20:15
svnbot6 r12818 | audreyt++ | * extremely klugy way to get ActivePerl +p5embed to compile.
audreyt pugs -Mperl5:CGI -e "say CGI.new"
I'll look at method dispatch, dynaloader etc later 20:16
but that's secondary
also, unklugifying r12818 would be appreciated
Limbic_Region did you see my current build failure?
audreyt yes. try r12818
actually, don't; try r12819 :) 20:17
svnbot6 r12819 | audreyt++ | *oops.
r12818 | audreyt++ | * extremely klugy way to get ActivePerl +p5embed to compile.
audreyt you should see, at end of compilation: 20:21
gcc: unrecognized option `-nologo'
gcc: unrecognized option `-GF'
gcc: unrecognized option `-Zi'
Limbic_Region trying 12818
audreyt those are expected (help welcome to filter them out); the resulting pugs.exe should still work
12818 will not work.
12819 probably will
Limbic_Region oh, I misparsed actually, don't; try r12819 :) 20:22
audreyt :)
sorry, kinda late here.
(bbiab)
Limbic_Region currently dying at line 294 in Makefile.PL " $Config{lddlflags} =~ s/-libpath:"?(.*?)"? //g or die;" 20:27
but I have to go so perhaps later in your day or tomorrow night
20:33 lichtkind joined
lichtkind hej folks hi PerlJam 20:33
PerlJam i hope i did not raise ecpectations too much 20:34
svnbot6 r12820 | fglock++ | * v6 - added Pugs::Runtime::Capture.pm 20:40
kane-xs seen audreyt 20:41
audreyt kane-xs: pong. going to sleep in a bit 20:42
if anyone on activeperl cares to try out p5embed, please report the result here :) 20:43
svnbot6 r12821 | audreyt++ | * fix again according to L~R's feedback
audreyt the steps are:
kane-xs audreyt: check privmsg on irc.perl.org
audreyt rm dist/build/Pugs/Embed/Perl5*
set PUGS_EMBED=perl5
perl Makefile.PL
nmake
kane-xs audreyt: p4 server and p4web up and running
and that change to your account you requested has been done.. output in privmsg on irc.perl.org
audreyt kane-xs: got it. thanks! 20:44
audreyt goes sleeping
kane-xs nn audreyt 20:45
20:52 xinming joined
araujo been reading the pugs code 20:53
very clear indeed :-)
araujo has noticed some 'redundant' do
SamB you mean like do do do return ()? 20:59
araujo Well, no really redundants, probably no needed. Like, do x >> y >> .... do z >> y 21:01
SamB oh
well, mine were redundant too! though syntactically invalid...
21:01 xinming_ joined
araujo haha :-) 21:01
xerox ?type \it -> let please = id in please do do do please do please do do do it
lambdabot parse error on input `do' 21:02
SamB at least, I assume so...
xerox giggles
SamB > do do do return ()
lambdabot add an instance declaration for (Show (m ()))
araujo @type do do putStr >> return ()
SamB oh wait, nope!
lambdabot String -> ()
SamB huh
araujo :-)
SamB it seems like do is sometimes allowed places and sometimes it is...
er.
sometimes not.
21:03 Limbic_Region joined
Limbic_Region seen audreyt 21:04
.seen audreyt
21:14 glasser joined
b_jonas Limbic_Region: try a "!" but she last talked on this channel at 22:44 "audreyt goes sleeping" 21:16
Limbic_Region thanks
got home and things are looking much better for p5 embedded using AS perl
running final step now
b_jonas - how far back does your scrollback go? 21:18
svnbot6 r12822 | audreyt++ | * more tweaks to make vanilla and activeperl happy
Limbic_Region I can't seem to get to the irc logs
21:19 fglock left
b_jonas 20:52 21:19
Limbic_Region I have pugs built with p5 embedded but need to test it - audreyt pasted a very short 1 liner
something along the lines of pugs -M<module> -e "thingy"
b_jonas pugs -Mperl5:CGI -e "say CGI.new" 21:20
I think that's it
Limbic_Region yep
will test
after sleeping audreyt's latest update that is
21:21 jferrero joined
Limbic_Region having a gig of memory with dual processors is soooo much better than 1/2 gig and a single processor 21:22
thanks b_jonas 21:24
21:24 ruz joined 21:30 rashakil joined
Limbic_Region audreyt - in case you are sleeping with your eyes open or you backlog - embedded p5 works on AS perl 21:37
as of latest build - pugs -Mperl5:CGI -e "say CGI.new" returns
<obj:scalar:Perl5> 21:38
Limbic_Region does a happy dance 21:40
Limbic_Region does a smoke 21:46
avar a smoke?
Limbic_Region nmake smoke 21:48
you are familiar with the smoke reports right?
ajs cpan v6: Failed 48/100 test scripts, 52.00% okay. 263/638 subtests failed, 58.78% okay. 22:04
ouch
araujo brb 22:07
22:08 araujo joined 22:12 weinig is now known as weinig|bbl 23:00 glasser` joined 23:04 markstos joined
markstos Is it correct that a private method would be declared as: method !my_private_meth { 23:17
S12 only mentions private methods briefly.
23:25 lollan joined
TreyHarris markstos: i would think it would be my method... 23:25
markstos In that case, pugs hasn't caught with with the spec, as my own play tests showed, that 'my method' doesn't hide the method from outside the class. Objects can still call it. 23:26
TreyHarris pugs oo is very much out of date. run a smoke on the oo/ tests to see what i mean 23:28
pasteling "TreyHarris" at 207.171.180.101 pasted "simple given/when: why doesn't it compile?" (8 lines, 245B) at sial.org/pbot/19329 23:32
TreyHarris anyone got any clue as to the above pasteling? 23:33
markstos It passes pugs -c with r12822 23:34
TreyHarris ohhh
thanks
markstos But if I had to guess, it looks like something I ran into. It might work to compare $x.ref to 'Num' instead of Num, even though your code looks more spec-compliant.
TreyHarris i was using an older rev because i was making current 23:35
markstos It actually works with the current rev. Neat! I'll have to refactor some of my code to use this style now. 23:37
23:37 christo joined
TreyHarris yes... fixing the test suite after the last smoke to remove now-functioning todos last night gave me a great deal of insight into what's now working that didn't used to :-) 23:38
markstos Ah.