Summer of Perl | 6.2.12 released! | paste: sial.org/pbot/perl6 | pugs.blogs.com | pugscode.org | pugs.kwiki.org | www.treehugger.com/files/th_images/paradigm.jpg
Set by nothingmuch on 12 July 2006.
wolverian www.codinghorror.com/blog/archives/000635.html interesting take on learning programming 00:05
lambdabot Title: Coding Horror: Separating Programming Sheep from Non-Programming Goats
00:11 frustrato joined
frustrato hi, i got a question regarding perl5-compatibility for perl6 compiler 00:12
does perl6 compile perl5 code and if yes, how does it do that?
thanks
wolverian most likely by invoking perl5.
(i.e. ponie) 00:13
(perl5-on-parrot)
frustrato thank you, wolverian...so perl6 compiler itself doesn't understand perl5 code?
wolverian pugs (the current development compiler) certainly doesn't, but can invoke perl5. ponie is the official plan once we get perl6 running on parrot. 00:14
so, the answer to your question is most likely "yes".
00:14 mauke_ is now known as mauke
TreyHarris hrm. if i leave pugs in interactive mode sitting alone, after awhile (tens of minutes to a few hours) it stops responding, spins up and eats all available CPU--so that my fan starts groaning and it's difficult to get enough responsiveness to even kill it. 00:16
wolverian write a test? ;)
TreyHarris lol 00:18
dunno how to do that one. open the microphone and get a sample of the fan whine? :-)
wolverian I suppose people would stop running the test suite before the test actually finished... around five minutes into it or so :-) 00:19
00:20 ruoso joined 00:22 daxim_ joined 00:37 hcchien joined 01:00 hikozaemon joined 01:07 justatheory joined 01:16 mauke joined
vsoni seen audreyt 01:33
jabbot vsoni: audreyt was seen 15 hours 5 minutes 43 seconds ago
audreyt vsoni: mm? 01:35
vsoni audreyt: I will be working on 01:36
IMCC reentrancy
but this will happen as small patches
audreyt that's fine
obra (small patches)++ 01:37
vsoni audreyt what bout libpge?
obra (small patches)++ # They let you sneak in the huge new features without anyone noticing
audreyt vsoni: I think a C emitter on Pugs::Emitter::Rule::C makes sense 01:38
vsoni: but it's not pmichaud or anyone else's priority right now
01:38 dolmans joined
audreyt vsoni: so if you'd like to champion it, or find someone who does, that'd be wonderful 01:38
but otherwise there's no movement expected on that front
vsoni audreyt: Why do we need coroutines do PGE in C....I did not get that 01:39
audreyt vsoni: we don't 01:42
goto() would do
coros are good to express backtracking
but there are other ways to save state
vsoni audreyt: yep... 01:43
so is Pugs::Emitter::Rule::C going to happen?
audreyt it is, if you would like to do it, or if you find someone who does 01:44
a commit bit is on its way to you 01:45
vsoni audreyt: thanx 01:49
audreyt no prob :) add yourself to AUTHORS after checking out svn.openfoundry.org/pugs/ 01:50
lambdabot Title: Revision 11629: /
audreyt the v6.pm stuff can be found in perl5/
Arador hey audrey, have a question: 01:59
I'm thinking about doing something on perl6, but I don't know where to start... 02:00
audreyt ok. what would you normally enjoy hacking? 02:01
I've been trying to find someone to work on trypugs, aka tryruby.hobix.com/ clone
lambdabot Title: try ruby! (in your browser)
Arador I usually hack either C or Perl 02:02
robkinyon Arador: You any good with LWP-type stuff?
audreyt also svn.openfoundry.org/pugs/perl5/Pugs...l6/HACKING 02:03
also pugs.blogs.com/pugs/2006/07/pugs_janitor_ta.html
robkinyon Arador: In particular, you feel like helping me write an extension to CPAN(PLUS) to support P6's module specifications in P5? 02:04
Arador back in a minute: you are giving me a lot of information 02:06
Audrey: try pugs sound quite feasable. Haven't programmed javascript in years, but in the netscape 4.0 time I was a kind of guru on it (frameworks have changed since though) 02:08
audreyt you can try coding it up in Jifty, would be fun 02:09
but any framework is fine 02:10
it has no db/state anyway
for trypugs, you'd want to harness the interactive pugs shell
vsoni audreyt: Have you checked out Google Web toolkit
audreyt using IPC::Run
vsoni: yes.
vsoni aureyt: Its pretty nifty....Java to HTML and Javascript compiler 02:11
audreyt: We gotta have something like that
audreyt well, it's a pretty printer
or rather, a JS DSL in Java
not the entire java; a small predefined subset
but I agree, we gotta have something like that
Arador robkinyon: I have limited experience with LWP, but sound posible too: written in P5?
audreyt there's already ./pugs -BJS
but ./pugs -CJS needs lots of sugar and DOM bindngs
vsoni audreyt: yep 02:12
robkinyon arador: Do you know the P6 module specs? For example, "use Foo::Bar-1.2..2.3-CPAN:RKINYON;"
the goal is to support that (as well as possible) in P5
I have about 80% of the design completed, but ran into problems immediately when trying to implement on top of CPAN.pm 02:13
now that I have a better implementation strategy, I don't have time to start
Arador robkinyon: I recognise it, bit don't really remember the details anymore (there are a lot of specs)
vsoni audreyt: other cool one I came across is zk1.sourceforge.net
lambdabot Title: ZK - Simply Rich
Arador S11 clears things up :) 02:14
vsoni audreyt: here is the link to their demos....www.potix.com/zkdemo/userguide/
robkinyon arador: primarily, the need is to override a few items in CPAN.pm (or CPANPLUS.pm, your choice) to provide a few overrides and a few new shell commands
Arador oh my! tryruby has almost 70 kb of javascript code 02:15
lambdabot Title: ZK Component Demo
Arador yikes
damnit, bugs! (the real live kind) 02:22
02:26 weinig is now known as weinig|sleep
Arador Audrey: I think tackling pugs would be the harder part: it is not really made for web based usage 02:30
http is really a shitty protocol for these kinds of usages, AJAX and friends don't really change that... 02:31
02:32 Sam_ joined
audreyt Arador: I know, you need some sort of affinity 02:32
but hey, "run a shell application remotely over the web" 02:33
Sam_ Hi Audrey, Can I ask you a question ?
audreyt maybe look around in CPAN or ask around if something like that exists?
Arador: if not, that would be a generally useful module to have
PerlJam Sam_: you just did! 02:34
audreyt actually it's $job. relocated to $job channel :)
Arador the main work would probably managing all the pugs shells... 02:36
usefull: yes. potentially very nasty: absolutely 02:37
audreyt mm. IPC::Run should make it a bit better 02:40
02:41 kanru joined 02:44 vsoni joined
Arador might help, but I'm not sure about the timeouts 02:45
obra audreyt this is the thing casey was thinking about doing? 02:46
audreyt yeah
Arador we'd need some atypical timeout behavior (instead of a fixed timeout, we constantly postpone the timeout). Not sure it can handle that cleanly 02:47
audreyt alarm() can handle that
also can fastcgi
Arador I was hoping I wouldn't need a handler process for each client, so alarm would be too crude 02:48
I'm not very familiar with fastcgi, but it sounds like an OK idea 02:49
obra audreyt: what about wrapping the world monad?
(Buffer and replay all user input)
audreyt Arador: IPC::Run supports timeout
and you can periodically reset that
obra: sure. and there's even HTML::FromANSI ;) 02:50
obra :P 02:51
Arador I'm going to sleep now (it's really past bed time here): good night/day/morning/whatever 03:00
I'll do my homework tomorrow ;-)
and report my ideas 03:01
03:13 hikozaemon joined 03:36 mjk joined 04:15 fglock joined 04:23 christopher joined 04:25 orafu joined 04:28 nothingmuch joined 04:31 orafu joined 05:04 iblechbot joined 05:06 unobe joined, unobe left 05:09 nothingmuch joined, Aankhen`` joined 05:19 tup joined
TreyHarris audreyt: for the past few revs, if i leave the pugs shell open, after some period of time idle (seems variable, as little as 5 minutes to as much as a few hours) pugs spins up and grabs CPU like there's no tomorrow and becomes totally unresponsive. i haven't been able to isolate it yet, because my machine nearly locks up. nicing hasn't seemed to help 05:28
audreyt hrm 05:29
osx?
with readline?
TreyHarris yeah, 10.4.7
audreyt ppc?
can you say
gdb pugs
run
and then wait itll it hangs
TreyHarris yes, ppc. readline's been acting a little odd, sometimes i get dduplicated or dleted chars
audreyt and do a bt?
TreyHarris yes, i'll try that 05:30
audreyt mm. gnu readline?
TreyHarris i dunno, whatever makefile.pl's discovering. lemme look
audreyt do a
otool -L pugs
$ otool -L pugs | grep readline /usr/local/lib/libreadline.5.0.dylib (compatibility version 5.0.0, current version 5.0.0) 05:31
er.
otool -L pugs | grep readline
/usr/local/lib/libreadline.5.0.dylib (compatibility version 5.0.0, current version 5.0.0)
that's what I got
TreyHarris /opt/local/lib/libreadline.5.0.dylib (compatibility version 5.0.0, current version 5.0.0)
audreyt same version as here
TreyHarris yeah, but /opt is where darwinports installs into, so you must have a different build
audreyt sure. shouldn't matter, though 05:32
I'll leave my "gdb pugs" shell hanging around for a while and see what happens
TreyHarris ok, i'll try gdb and see what i find
audreyt cool. thanks!
needs to sleep now, though. bbl :)
TreyHarris sweet dreams :-) 05:33
audreyt thanks :) 05:34
TreyHarris hrm. how do I get back to the gdb prompt once pugs hangs? 05:35
audreyt ^C 05:37
TreyHarris ok, thanks
audreyt it's still failing to hang for me... 05:38
I suspect readline signal handling
src/Pugs/Shell.hs line 72 was supposed to handle that
Readline.setCatchSignals False
but maybe it wasn't called, or something. is this ghc 6.4.1 or 6.4.2? 05:39
TreyHarris well, readline on the 6.2.12 binary release from unobe works great, but the last few build have caused those visual errors i mentioned
6.4.1
audreyt can you maybe check what readline the binary release links to? 05:40
TreyHarris /usr/local/lib/libreadline.5.1.dylib (compatibility version 5.0.0, current version 5.1.0)
so maybe that's the cause 05:41
but go to bed, i'll catch you tomorrow 05:42
audreyt ok. try simply mv away the 5.0.dylib 05:43
and cp the 5.1 to its place
and see if the problem goes away
but ok. see ya tomorrow
TreyHarris thanks :-)
05:50 stumbly joined 05:51 diotalevi joined 06:04 gantrixx joined 06:05 wesle1 joined 06:27 ImustDIE joined
svnbot6 r11630 | lwall++ | Control keywords are not functions, and it just propagates confusion 06:37
r11630 | lwall++ | to let non-functions look like functions. Space is now required after
r11630 | lwall++ | if, while, unless, until, for, etc. With the exception of adverbs, a
r11630 | lwall++ | postcircumfix:<( )> or anything that looks like one is now consistently
r11630 | lwall++ | a function call (or a macro resembling a function call).
06:43 scook0 joined 06:47 lumi joined 06:52 stumbly left 07:02 gaal joined 07:07 xinming joined 07:24 beppu joined 07:27 hcchien joined 07:32 tup joined 07:49 topa_ joined 08:24 buetow joined 08:35 drrho joined 08:44 xinming_ joined 08:50 jtextori joined 08:56 elmex joined
clkao is if(something) no longer worky? 08:57
wolverian TimToady_, what is a keyword and how do I declare one? the statement grammatical category? 09:04
09:07 avarab joined 09:20 integral joined, orafu joined 09:54 stumbly joined 09:56 penk joined 09:59 wesle1 joined 10:04 ruoso joined 10:11 integral joined 10:12 orafu joined 10:18 [particle] joined 10:44 baest joined 10:47 xdg joined 11:02 chris2 joined 11:04 shachaf joined 11:08 hugues23 joined 11:15 tifo joined 11:55 frederico joined 12:16 Jedai joined, kanru joined 12:19 bpphillips joined 12:26 mauke_ joined 12:29 baest joined 12:40 Aankh|Clone joined 12:43 weinig|sleep is now known as weinig 12:46 mauke_ is now known as mauke 12:47 christopher joined 12:57 weinig is now known as weinig|working 13:10 Termy joined 13:14 xinming joined 13:15 szbalint joined
[particle] dm/SYS90 13:30
ww
13:33 Qiang joined 13:40 fglock joined 13:43 ludan joined 13:46 elmex joined 13:54 justatheory joined 13:55 stevan joined 13:59 Fawaka joined 14:01 diotalevi joined
svnbot6 r11631 | fglock++ | pX/fglock/PCR - pass t/05-var.t 14:06
14:18 cjeris joined
TimToady_ clkao: if(something) should call sub if rather than statement_control:<if>. if it's followed by a block it should be a syntax error. 14:26
woverian: yes, the statement_control category defines at least those keywords that are expected at the statement boundary. 14:27
the rules matching statement_control will need to assert \s+ after them rather than just <?wb>. 14:29
s/them/the keyword/ 14:32
clkao TimToady_: how about loop(;;) ? 14:35
ajs Just ran this on some of my Perl code lying around: perl -nle 'print if /\bif\(/' ../*/*.pl | wc -l 14:37
It reported 27. Ah... habits to unlearn... joy.
14:37 dolmans joined
clkao oh, so if (something) { } is okay. the space. 14:38
ajs I know... note the regex above
\bif\(
[particle] my code is full of my(, for(, if(, while(, etc 14:39
ajs Heh, I expanded my search to include those (not my, since I think that still works in p6) and got 219. for( and while( are more common in my code 14:41
Mind you, that's in 216 programs, so it's not THAT common. Still, it's clearly something i've learned to type 14:42
Comes from the C/C++ where I typically type if( i == 100 ) 14:43
robkinyon would it be possible to create a pragma to allow for "if(){}"? 14:45
14:46 FurnaceBoy joined 14:53 rodi joined
TimToady_ clkao: loop too, though I forgot to scan for it last night. 14:53
ajs robkinyon: Anything is possible, but it would require some funky parser changes, I would think.... that pragma would be non-trivial 14:54
TimToady_ that pragma is probably "no strict"
robkinyon "no strict 'spacing'" ?
TimToady_ v6;
robkinyon or "no strict 'whitespace'" ?
TimToady_ hopefully the pragma just changes a property of the %statement_control pseudohash that asserts what must follow. 14:56
either that, or all statement_control rules are required to start with <?ws_if_strict> or some such.
seems worth factoring the assert behavior into the array though 14:57
since all alphabetic keywords need to assert <?wb> or whatever it is now.
(\b having reverted to meaning backspace) 14:58
and there's another FAQ waiting to happen... :/
should probably warn on \b in regex for now.
or make people write \x08 for the next 10 or 20 years till pcre dies out. er... 15:00
no strict 'backspace' :)
no strict 'backwhitespace' :P 15:01
hmm, how did I get a backspace on my name? does that mean I got deregistered somehow? 15:02
my irssi session has been up for several months now, so maybe someone finally timed me out...
PerlJam TimToady_: servers are always dropping and reconnecting, sometimes the reconnection happens faster than your session dies so when it comes up there's already a TimToady, so it tries again with an underscore 15:04
TimToady_ ah, gotcha. still an irc newbie...
I obviously worry too much... :)
PerlJam you should be able to change back to TimToady without worry :) 15:05
[particle] /nick TimToady # [particle] tries irc nick squatting ;) 15:06
15:06 TimToady_ is now known as TimToady 15:14 Termy joined 15:15 amnesiac joined 15:18 elmex joined 15:21 cdpruden joined 15:22 chris2 joined 15:23 Termy joined 15:24 Aankh|Clone is now known as Aankhen``
kolibrie audreyt: with Scalar::Defer, is there a way to assign from a deferred variable to another variable so that the new variable gets a static value? 15:32
15:33 vel joined
TimToady $x + 0 :) 15:34
15:35 iblechbot joined
kolibrie was thinking maybe $new = lazy { $deferred }; 15:36
but, upon testing, that also seems not to work 15:38
TimToady tied($deferred)->FETCH :)
15:38 rodi joined
TimToady or maybe it's overloaded somehow... 15:38
kolibrie its overloaded 15:39
TimToady which overloading, I wonder...all of them?
seems like the only way it'd work.
unless there's some FETCHish hook I don't know about... 15:40
kolibrie use overload fallback => 1, map { $_ => \&force } qw( bool "" 0+ ${} @{} %{} &{} *{} );
sub force (&) { &{$_defer{ id $_[0] }} }
15:41 cjfields joined
TimToady Perl is a scary language. 15:42
kolibrie quite :)
15:44 cjfields joined 15:46 cjfields left 15:47 cjfields joined
broquaint I'm finding "{ THINGS }\nif COND" being a parse error quite cumbersome. 15:47
Conditionally doing things with hashes and anon subs really handy. 15:48
s/subs/$& is/
TimToady yeah, been thinking about that. 15:50
15:50 cjfields joined 15:51 froh-doh joined
svnbot6 r11633 | lwall++ | Forgot to scan for loop(...). 15:51
15:52 cjfields left
audreyt kolibrie: my $x = $y->force 15:53
TimToady hi audreyt! 15:54
audreyt TimToady: hey!
I dreamed of a CPAN module in Acme namespace that introduces lazy evaluation via Scalar::Defer
as I found on search.cpan.org
then I realized it was a dream, clicked "Source" and copy/pasted the source code into a file 15:55
but that file, being also in the dream, isn't accessible now :/
TimToady pity that doesn't work for things you see while drunk or on codeine.
audreyt ("introduce" as in "turn every opcode to return thunks") 15:56
mm, is that what the screen savers were approximating?
TimToady In Xanadu did Kubla Khan...
audreyt ... For he on honey-dew hath fed, and drunk the milk of Paradise. 15:57
TimToady when I was in the hospital, I discovered that morphine also makes you very ichy 15:58
not exactly a pleasure-dome... 15:59
as you may have noticed, I've been performing a consistency/sanity hack. 16:02
but I haven't actually changed the parser, being scared of Haskell...
well, actually, just too lazy to look... 16:03
and assuming some minion would do it for me. :)
audreyt well, I've seen the new checkin 16:04
looks nice
are they turned into tests yet? 16:05
I've seen updated existing t/ files to use the correct syntax
TimToady no, I've only removed the nonos so far.
I will try to produce tests. Also for === etc. 16:06
audreyt yeah. with tests (t/syntax/ perhaps?), certainly fglock and I can adjust the parsers
audreyt prepares to go to uri's place to get S02 edits typed down and sent as patch to p6l
16:06 Revision17 joined
audreyt (also plan to send a normalized mmd-draft for p6l too) 16:06
TimToady audreyt++ 16:07
defer { audreyt++ }
audreyt lol 16:09
that gets me many ++s
TimToady but only if you're 0-ary.
audreyt are you calling me a thunk?
TimToady I thank your thunks that you think continually. 16:10
audreyt well, it's really deliminated continuations, not fully continuous
kolibrie audreyt: ah, thanks
audreyt kolibrie: new Scalar::Defer released with ->force documented
thanks! 16:11
TimToady thinks "thunks!"
*** THONK *** 16:12
audreyt th nk
# visual representation of a continuation
TimToady I suppose that's the sound of putting someone in the kill file after much consideration
silug so i'm trying to get Perl6::Bible in fedora extras, and there's a question about the license of the various documents 16:14
audreyt silug: oy. that reminds me, Perl6::Bible should be replaced by Perl6::Doc
silug oh?
audreyt but anyway, same content, so same issue remains
TimToady thĆøĆønk & 16:15
audreyt silug: as far as I know they are never really licensed
clkao moose 16:16
audreyt and nominally I think TPF owns copyright, but I'm not sure
silug so should i start harassing all involved for license clarification? :)
audreyt silug: would be nice if they could be CC-BY licensed
well, ask TPF first
silug ok 16:17
16:18 hexmode joined
silug i'm really hoping to get a large chunk of the available perl6 stuff in fedora soon-ish 16:18
audreyt coo
cool
silug i'll have to bug you about some pugs issues later. :) 16:19
audreyt sure :) 16:20
silug more like "a pugs issue" actually. it doesn't seem to install to the correct directories on a multilib x86_64 fedora system 16:25
but i haven't spent a lot of time trying to track down why. it might be an easy fix. 16:26
silug spent the week after yapc fighting with parrot
16:36 aufrank joined 16:40 salty-horse joined 16:41 buetow joined 16:46 ruoso joined 16:57 Yappo joined
fglock audreyt: ping 16:57
audreyt pong 16:58
fglock I realized that perl6-in-perl6 have better be in a different namespace than Pugs::Compiler::Perl6 - so that they can be developed independently 16:59
audreyt v6-perl6 :D
v6::Compiler 17:00
v6::Emitte
v6::Emitter
I think that would work
fglock Perl6::Compiler::Perl6
audreyt I sorta think Perl6:::* namespace is tainted 17:01
in public image
and so would prefer v6::*
(Perl6::* has a Acme::*-ish image to it)
[particle] worse... damian-ish
ruoso heh 17:02
fglock perl5/v6-Compiler/ ? ('perl5' actually meaning 'CPAN')
audreyt sure
or maybe indeed put up a cpan/ 17:03
but anyway, I agree
(I need to run to uri's place soon, bbiab)
17:03 sahadev joined
fglock so the idea would be to write this compiler that can be executed either by v6.pm, Pugs or perl6-parrot 17:03
when they catch up with enough syntax
audreyt yes.
but then I'd like to use multimethods 17:04
to write compilers
ruoso fglock, so you're planning to use that namespace only for Perl 6 code?
audreyt but maybe at first we don't need that
just straight port
but I agree v6::* should strictly be p6 code
bootstrap-happy code
fglock ruoso: yes
audreyt (bbiab for real) &
ruoso fglock++ 17:05
that will be fun
:)
clkao audreyt: multi methods already work 17:10
fglock: what are you changes in your branch about? they are with empty commit messages 17:11
fglock clkao: I'm making small changes to make the tests pass - I thought most changes were not worth commenting 17:12
clkao alright 17:13
what's the big thing going on the branch then?
fglock clkao: use.perl.org/~fglock/journal/
lambdabot Title: Journal of fglock (5723)
clkao we should do given/when. can be very useful for the p6-p6
how is the ast standardlising going? we are still stick to random structure that we come up with? 17:15
fglock clkao: nothingmuch had some comments about a higher level of representation, I'd like to know more about that 17:16
clkao ya, we chatted a bit about it. but i think its orthogonal
gtg 17:17
it's too hot here
fglock otherwise, changing the ast is easy - you change it in the parser and in the emitter, and it's done 17:18
clkao sure
fglock It would be nice to have the ast documented in a way perl people can understand :) 17:20
meeting & 17:21
17:24 rlb3 joined
audreyt indeed 17:27
clkao:
src/Pugs/AST/CapInternals.hs
line 353 and below 17:28
see if you can make sense out of it
that's the AST to go with for Pugs 6.28.0
not sure what I can do to improve the notation to make it more accessible
grep for all ^data declarations 17:29
gaal mooses
TimToady I think the least worst solution to "{...}\n" if is probably to generalize long to dot to allow \<?ws>modifier
s/" if/ if"/ 17:30
s/long to dot/long dot/
audreyt that indeed looks like easy to explain
TimToady Course the easiest to explain is if we disallow \capturable to have whitespace. 17:33
then any \ followed by ws is just quoting the ws. 17:34
which, interetingly, let's you write \\ ($a,$b,$c) and get a capture. 17:35
broquaint So "{ ... } \ \n if COND" ? Or am I misunderstanding?
TimToady could probably get away with {...}\ even
since I think {...}if is probably legal.
broquaint Groovy. 17:36
TimToady the difference between what we're doing and what cpp is doing is that we use \ to quote any sequence of whitespace (incl comments), not just \n 17:39
17:45 swaroop joined
TimToady I like the generality of having a whitespace escape particularly since we don't know how the grammar will be extended, and new rules might install other newline dependencies. 17:51
so it's another futureproofing tactic.
18:46 larsen joined 19:05 fglock_ joined
fglock_ re ast documentation: for example, what a Int node looks like? is ':NInt<42>' ok? 19:08
'42.as(NInt)' ? 19:09
[particle] timtoady: r10306 has a typo: +to C<0.123> rather than C<$_.123.) # <--- missing '>' before '.)' 19:23
TimToady thanks. 19:24
weird, must have u'ed accidentally somehow in vi after prev checkin. 19:27
fglock_ how is an 'as()' created? 'sub as( Int $x: Str ::T ) { "$x" }' makes sense? 19:33
'sub as( Int $x: Str ::T ) is export { "$x" }' 19:34
TimToady has to be a method. sub can't take an invocant. 19:40
19:41 qmole_ joined 19:42 qmole_ is now known as qmole
fglock_ 'class Int; method as( Int $x: Str ::T ) is export { "$x" }' 19:42
'class Int; method as( Int $x: Str ::T ) { "$x" }' 19:43
'class Int; method as( Str ::T ) { ."" }'
how about declaring an 'as' for converting to your new class - 'class NInt; method Int::as( NInt ::T ) { ... }' 19:48
TimToady none of those are gonna work, given "" will just call back to .as
and ."" is wrong about 3 ways... 19:50
Int::as is just a constructor then, and should probably be Int::new 19:53
fglock_ NInt is the 'Int' ast node - I want '42.as(NInt)' to mean 'NInt.new(42)' 19:58
19:59 froh-doh joined
PerlJam oh, I like the .fmt/.as changes. 20:00
TimToady .as(Str) was busted before... 20:01
20:03 hexmode joined
audreyt TimToady: up for some quick review? 20:11
TimToady: I'll commit the proofedits with uri piecemeal 20:12
sanity checks welcome
TimToady phone conf 6perl...
audreyt batch #1 is landing now
oh ok
afterwards, then 20:13
(r10308)
20:13 iblechbot joined
fglock_ does this make sense? 'class NInt; method Int::as( $x: NInt ::T ) { NInt.new($x) }' 20:14
audreyt method NInt::as surely? 20:15
also NInt ::T is not needed; just NInt would do
oh wait
sorry 20:16
you are installig a Int->NInt as
method Int::as (NInt) { NInt.new(self) }
would do, I think
20:16 bpphillips left
fglock_ audreyt: thanks 20:18
audreyt np :) 20:21
fglock_ should everything have a v6 namespace prefix? 'class v6::NInt; method v6::Int::as (v6::NInt) { v6::NInt.new(self) }' 20:25
audreyt sure, that can work 20:26
fglock_ 'use namespace "v6";' :) 20:27
audreyt search.cpan.org/dist/aliased/ # surely?
lambdabot Title: Curtis &quot;Ovid&quot; Poe / aliased - search.cpan.org
audreyt mm there's also namespace.pm 20:28
justatheory aliased is nice
fglock_ how about: 'class v6 { class NInt; method Int::as (NInt) { NInt.new(self) } }' 20:29
audreyt sure
clkao that works as heirarchical namespace?
fglock_ cool - this looks much cleaner 20:30
clkao and can you import other module to magically do that?
TimToady nit: the "class NInt;" syntax is only allowed at file level. 20:34
fglock_ fixed: 'class v6 { class NInt { method v6::Int::as (NInt) { NInt.new(self) } } }'
20:34 DaGo joined
TimToady maybe we should allow } x 3 :) 20:35
clkao or super bracket
TimToady } x *
fglock_ importing Int: 'class v6 { class Int {} class NInt { method Int::as (NInt) { NInt.new(self) } } }'
pasteling0 "cdpruden" at 75.10.18.156 pasted "Is 'value' special in derived classes? possible bug" (37 lines, 922B) at sial.org/pbot/18510 20:53
cdpruden does that paste seem like a bug, or am I missing something? and if it does seem like a bug, would it belong in t/oo/inheritance.t, or somewhere else? 20:56
audreyt it's a bug. 20:57
cdpruden should I toss it in a file in t/oo? 20:58
audreyt sure
cdpruden or rather, add a test to inheritance.t for it
okay, will do
audreyt yup
cdpruden thanks :)
audreyt the bug is there because &value is a prim
but it should really just be a Pair method 20:59
commit the test, I'll make it pass :)
cdpruden it drove me slightly batty that it was showing up in the derived and not base :)
audreyt sorry for having a buggy dispatch algorithm :) we've just worked out the semantic of the new one
will code it up so that this class of error goes away 21:00
cdpruden no need to apologize :)
svnbot6 r11634 | cdpruden++ | Added failing test for 21:08
r11634 | cdpruden++ | <audreyt> the bug is there because &value is a prim
r11633 | lwall++ | Forgot to scan for loop(...).
fglock pmichaud: ping 21:23
pmichaud fglock: pong
audreyt uri++ # 1st pass of S02 proofreading done 21:25
fglock pmichaud: I'm about to start writing perl6-in-perl6 - I wonder if it's possible to reuse some of your work in perl6-parrot 21:26
pmichaud my stuff in perl6-parrot is still largely pir based. But I'd like to stay very closely abreast of whatever you do with perl6-in-perl6
if you can organize it to be similar to what TGE expects, that would be fantastic 21:27
it'd also be interesting to see where our grammars currently differ
TreyHarris pmichaud: /whatis perl6-in-perl6? 21:28
fglock the idea is to implement the ast using constructors, which you can implement in low-level if needed, so the grammar would be mostly reusable
ruoso always used closures in Perl, never realized it was so often used in C
pmichaud oh, that'd be nice
audreyt ponders if there's a way to fly pmichaud to YAPC::SouthAmerica with <TimToady merlyn audreyt>
pmichaud very nice
audreyt when is YAPC::SA? 21:29
fglock pmichaud: november
pmichaud I'm available if we can find airfare
I'll of course be very happy to present at YAPC::SA if there's room in the schedule :-)
TreyHarris suspects that his subscription to p6-l is no longer sufficient to keep up with what's up, even though he's not writing compiler guts. where's the action these days?
audreyt: so far, readline 5.1 has fixed my problem :-) 21:30
pmichaud wonders what airfare would be to YAPC::SA
audreyt TreyHarris: well, then I'll consider it not-my-bug
yeah. it'd be nice to synchronize the implementations in a f2f setting
(bbiab) 21:31
TreyHarris pmichaud: what's perl6-in-perl6? and more importantly, where should i have been paying attention to have heard about it? 21:32
pmichaud TreyHarris: perl6-in-perl6 is the plan to write the perl6 compiler using perl6
it's still just planned
fglock pmichaud: - YAPC::SA will happen inside CONISLI - www.conisli.org/
lambdabot Title: :: CONISLI ::
TreyHarris ah, ok. i've known of this. i just hadn't heard that name before, i heard the "bootstrap process" or the like
pmichaud there are several parallel implementations working towards perl6-in-perl6 21:33
clkao win 1
should i go to yapc::Sa? 21:34
fglock pmichaud: S.Paulo-S.Francisco - U$1.377,00
pmichaud I'm in Dallas
TreyHarris pmichaud: thanks. since p6-l has so little traffic of late, can you recommend (an) other mailing list(s) I should subscribe to to keep up with developments? i found p6-c to be mostly over my head when i subscribed to it last time (1.5-ish years ago?)
pmichaud which airport in S. Paulo?
fglock clkao: sure! 21:35
pmichaud TreyHarris: actually, p6l and p6c are your best bests. Actually, #perl6 is your best bet, but after that is p6l/p6c
TreyHarris pmichaud: yeah, i learn most from #perl6, but it can be hard to catch up after my daily 10 hour absence :-) 21:36
pmichaud guesses that Southwest Airlines doesn't fly to Brazil :-)
TreyHarris thanks
is there a pugs mailing list, or a testers mailing list?
pmichaud Looks like roundtrip is $883 or $918
fglock pmichaud: Sōæ½xE3o Paulo-Guarulhos - GRU
pmichaud (depending on carrier)
fglock pmichaud: that price was for United 21:37
pmichaud well, United doesn't go from DFW. DFW->GRU is either Delta, American, or Continental
(United *does* go from DFW, but only to limited places)
clkao there's direct flight from london. but it's stupidly expensive
pmichaud it's easy to get direct flights from dfw to almost anywhere :-). I can get direct to tokyo, london, and apparently gru :-) 21:38
anyway, if we can find a way to come up with airfare, that'd be great. (I'm easy to house -- just a couch is fine :-) 21:40
fglock pmichaud, clkao: I'll be looking for sponsors :) 21:43
pmichaud that'd be great
I've already cleared that I'm free tha tweek
fglock pmichaud: are you ok with v6::Compiler for the CPAN namespace? 21:47
pmichaud sure, sounds fine 21:49
21:52 Termy joined
fglock audreyt: is it ok to create cpan/v6-Compiler/ ? 21:54
audreyt fglock: v6/Compiler/ ? 21:55
fglock ok
audreyt toplevel v6/ is maybe easier to identify with
perl5/ can then be the support modules for p5 21:56
v6/ would be the bootstrapped-already compiler
I think
ruoso audreyt, isn't Perl6:: namespace already for support modules for perl 5 runtime 21:57
?
fglock audreyt: v6/(distro name) = v6/v6-Compiler
audreyt fglock: sure 21:58
ruoso: sorry I mean the Pugs layout
sources directory
not cpan namespace
ruoso ah... ok
svnbot6 r11635 | fglock++ | added v6/ dir for Perl6-in-Perl6 - 'v6/v6-Compiler/README' 22:12
r11636 | fglock++ | syntax fix
clkao ()
(!)
is this christmas time?
how much perl6-compiler can we reuse? 22:13
fglock clkao: it's just the box - you have to put something inside and wrap it, and put under a tree
clkao ;)
fglock clkao: most of the grammar is reusable, but it needs to be p6fied; most stuff from parrot-p6 grammar is reusable too 22:14
and it needs to be merged with the new AST 22:15
audreyt yeah. I need to start to write a series of articles dissecting the new AST 22:16
or maybe gaal can do that? :D
anyway, I need to go out to find food 22:17
fglock audreyt: how about writing it as p6 grammar :)
audreyt be back in a couple hours
fglock: AST is internal structure...
like, semantic structure
as p6 classes, sure
gaal: interested in writing a DrIFTer that generates Moose or p6 classes? 22:18
fglock audreyt: I mean writing usage examples - see the v6-Compiler README
audreyt ok 22:19
will do
bbiab.. &
fglock me too &
22:20 fglock left
justatheory I'm having a brain fart. What kind of subs use yield to re-enter execution from a point in the sub over and over? 22:28
gaal audreyt: I really prefer doing CapInternals stuff first
justatheory It's no coroutines, is it?
pmichaud coroutines 22:29
justatheory Okay, not such brainfart afterall. Thanks pmichaud
gaal but sure :) 22:30
audreyt: nothingmuch may be coming over for a minithon next weekend
22:32 elmex_ joined 22:43 sahadev left 22:44 cjeris left
Fawaka justatheory: one correction 22:47
justatheory ? 22:48
Fawaka coroutines are not subroutines technically
justatheory Fawaka: Yeah
Bah! No, it was "continuation" I was looking for. 22:58
23:04 lollan_ joined 23:07 weinig joined 23:09 stephanepayrard_ joined 23:16 weinig_ joined 23:20 rashakil joined 23:26 lollan joined 23:51 xdg joined
TimToady audreyt: for the next batch you might also $line402 ~~ ss/an unit/a unit/ 23:55
Fawaka ss? Is that the new syntax these days? 23:56
TimToady short for s:s///
Fawaka single? 23:57
TimToady short for s:sigspace///
Fawaka ah,
<just another opinion>I really could not guess the meaning of sigspace</just another opinion> 23:58
23:59 cdpruden joined