-Ofun: xrl.us/hxhk | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6
Set by apple-gunkies on 11 November 2005.
leo autrijus: [re $!] lwall doesn't really say that $! is invalid outside of an exception handler (I think), for me TSa's answer is clear and ok 00:52
autrijus leo: I think lwall says each sub get its own implicit "env $!" 00:53
leo: TSa's answer says something else entirely (which would also work)
leo well, TSa says that $! (the exception) is only valid inside a CATCH handler, which make a lot of sens to me 00:54
autrijus try { die 3 }; say $!; 00:55
this idiom will go away then
leo hmm 00:57
2 levels of catch are involved here
P6 (default catch handler everwhere (iirc))
and parrot
the above actually means iirc: try { die 3 }; CATCH {say $!;} 00:59
autrijus I can live w/ that 01:03
wolverian I thought CATCH would only be called when an exception was propagated to its lexical scope?
or am I misunderstanding the point of the example :) 01:04
leo I think in the absence of any eception (or handler) there is no $!
autrijus wolverian: you would be correct :) 01:06
try { die 3; CATCH { say $! }}
would be p6
{ die 3 }; CATCH { say $! }
pd scope is it 01:07
stevan hey autrijus how goes the conference 01:08
autrijus very much fun 01:10
VB talk coming in a hour
stevan nice :)
autrijus Pugs keynote in 5
stevan so I finally got my head around PIR last night
autrijus happy that the last parrot lex bug we need fixing is just fixed
stevan oohh Pugs Keynote!!??!?!
autrijus (find_name not working with .lex) 01:11
leo++ # oil-for-food^Wtest-for-fix
yeah... pugs keynote... I'm the conway proxy here
stevan very cool
where is conway?
autrijus somewhere. had some troubles apparently and can't attend or host me 01:12
so I end up hacking M::I/PAR/PPI with Alias
which is fun also.
stevan cool
autrijus alias is very much fun and nice and gentle in realworld 01:13
stevan :)
autrijus much to my surprise :)
stevan :D
so its a non-Pugs Hackathon this time then 01:14
autrijus well... seeing how we're porting these to Pugs/P6, I'd still say it's a Pugs hackathon
stevan ah
autrijus we need those tools for Pugs as well :) 01:15
stevan how much longer are you in .au?
autrijus 2 more days in melbourne, then 3 in lismore, then 4 in sydney -- make that 9 01:16
stevan then back to .tw?
autrijus yeah, until early Feb then to Tel-Aviv 01:17
stevan will you have $work when you are back in .tw?
autrijus most likely yes, but not desperately 01:19
there's one project to finish still
and no more during or after that
and if either Jifty or Cat is any good, the project should be straightforward.
stevan cool,.. so it's back to 24/7 Pugs :)
autrijus more like 24/5 but yes :)
thank $deity.
stevan $deity? 01:20
autrijus _insert_random_god_here_
stevan ah
Jooon God of rechargable batteries
stevan The Great Lithium Ion!!!
pd I'm not a theist, you ignorant clod :)
heh. "thank NULL." Not sure how I feel about that one. Perhaps better than "thank undef."? 01:21
stevan so autrijus, is the next step on the MM a Haskell version?
autrijus stevan: yes, ObjSpace-in-Hs and then the bootstrap code evaluator 01:25
stevan: then codegen from that to PIR objs
stevan ObjSpace ,.. so we are gutting the current core? 01:26
autrijus AST.Internals yes 01:27
Types.* definitely
stevan cool
autrijus I don't think Eval.hs needs to go right now
the abstractions are pretty good
I did this once already with the Container fix in Types.*
so probably can do it again
stevan so are we going to do that sendmsg thing we spoke about? or some other approach?
autrijus sendmsg is the way to go 01:28
stevan cool
autrijus and no runtime type assertions by default
it's ducks all the wya down
stevan quack :)
what are you thinking in terms of the PIR
I am currently stuck as to where to start with the metamodel
I wrote Opaque last night,.. but it felt like I was re-inventing things 01:29
but when I hacked a basic Class ,... it felt too high level
autrijus I think we reuse PIR ParrotObject as Opaque
stevan yeah, that makes sense
autrijus PIR allows compile time objspace seeding
so that makes codegen ~trivial
stevan what about method dispatching... reuse ParrotObject or do it ourselves? 01:30
autrijus also reuse PO
as they are also C3
stevan hmm ok
yeah I know
autrijus if there's any mismatch, yell at leo
stevan LOL
I should write some more tests for the C3 stuff
autrijus chip's idea is that parrot should be the fastest VM for Pugs 01:31
stevan BTW - did you see that matts is using Class::C3 in DBIx::Class now
autrijus yup, and I get a lot of INIT block warnings
stevan yup :)
autrijus I fixed some of them in Catalyst
and released Test-use-ok
for that specifically (you may like it)
stevan I told him i would remove the INIT if he wanted,.. after all he is the only one using that module :)
yeah I saw Test-use-ok,.. very witty :) 01:32
autrijus :D
anyway, I think a 'no warnings "void"' may be warranted. maybe not. I'm not sure
stevan it probably makes sense to get rid of the INIT block and make initalization manual 01:33
stevan ponders how to thread the MM through ParrotSpace
autrijus gets ready for lightning talk 01:34
stevan envisions something akin to the Pod Racers in Star Wars
autrijus =pod Racers
stevan :)
autrijus discovers nothingmuch posted some flattery on cpanrantings for Test-use-ok 01:35
wolverian heh, cpanrantings 01:36
Khisanth pd: there very good reasons to be thanking NULL and undef when you are debugging :) 01:45
pd Khisanth, heh.
stevan lights some insence and places them under his statue of NULL
autrijus because debugging is godforsaken and thankless?
pd yes, dereferencing a NULL pointer is generally better than dereferencing, say, 3.
fglock_ hi all! 01:46
stevan hey fglock 01:47
fglock_ I'm experimenting with compiling a mini-runtime to parrot 01:48
not much luck yet with -Cpir or -Cpil2
autrijus -Cpir is brokem on parrot+lexpad 01:49
-Cpil2 is waiting on ObjSpace-Hs port
so yeah :/
(both should improve before parrot 0.4.1)
fglock_ I just recompiled with parrot embedding, but I still get an error with missing &rx_
autrijus I think we can't work with 0.4.0 ever... not worth working around the find_name bug 01:50
fglock_ should I use -Cpil ?
autrijus fglock_: try -Cpil1
fglock_ autrijus: trying...
autrijus but I don't see the rx_ bug here
do you have this in your ocnfig.yml?
precompile_prelude: true
fglock_ I don't think so - checking... 01:51
autrijus it's the deafult
does this work for you? 01:52
./pugs -Cpil1 -e '5 ~~ rx:p5/1/'
fglock_ yes 01:53
autrijus so what does not?
fglock_ it works with -Cpil2 too - I will upload my code - just a minute 01:54
ok - sorry for the delay 01:58
it's in misc/Parser-Mini/read_pil.p6 - but it is just a small hack, not the real thing 01:59
xah how's pugs? 02:05
autrijus quite happy
fglock_: you can get a dump with 02:06
./pugs -CPIL1-Perl5 -e1
xah autrijus: nice job
fglock_ autrijus: I get the same error. my installation might be broken. 02:08
stevan leo: ping
autrijus xah: thanks!
fglock_: might be... try a rebuild :/
xah most of you are also learning haskell? 02:09
autrijus I'd say maybe 20% :)
xah that's pretty cool. 02:10
fglock_ autrijus: you got a successful compilation of read_pil2.p6? I'll download the latest parrot tomorrow (I'm using 0.4.0 from CPAN) 02:12
autrijus you don't need parrot for that I think 02:17
fglock_ xah: learning haskell would help me a lot :)
autrijus and yes, compilation worksforme with -CPIL1-Perl5
xah fglock_: in what way? 02:18
i started to learn haskell few weeks ago... but got busy with other things.
is there a pugs faq or perl6 faq somewhere? 02:19
fglock_ xah: I could understand the source code - I can read it, but I don't understand many parts
autrijus xah: pugscdoe.org has "Overview" which may help 02:21
xah: also see the slides at bottom left of pugscode.org
fglock_ autrijus: I had a debian pugs installation, besides the svn version - I'm deleting the debian package and rebuilding the svn
autrijus ok
I'm going to be on stage in 20 mins -- bbiab
xah autrijus: ah... i remembering seeing that site. I see that you are a supporter of the trad char.
fglock_ good luck! 02:22
autrijus xah: hm? I have both trad and simp listed
fglock_: thanks!
xah autrijus: right. But from the way you name the trad char. :)
Epix I want perl6, but i cant have it :(\
autrijus Epix: why? downloading pugs doesn't work? 02:23
xah: ah... but that's how trad char users call it officially
xah: it's the same idea that I don't call the simp char side "Su-Ti" (folk-style)
Epix autrijus: no, i just havent bothered with pugs, no offical release of p6 yet...
autrijus as the simp char users call it "Jian-Ti" (simplified-style)
Epix: oh ok... wait another year or so then.
Epix autrijus: does pugs compile to parrot and is past beta? 02:24
autrijus meanwhile you can learn some interesting languages like Ruby or IO or OCaml or Haskell
Epix: yes we do compile to parrot but no we are not past beta.
stevan is parrot past beta??
autrijus probably not.
xah autrijus: it' be interesting to know if trad char was called the zheng ti, but the standard expr today is rather "complex char" vs "simplified char". 02:25
Epix autrijus: ah, you are the author of pugs, correct?
autrijus xah: actually in taiwan it's called "canonical char" and "folk char"
Zheng-Ti and Su-Ti respectively
xah autrijus: yeah, because taiwan is filled with politics 02:26
autrijus xah: yup, but I subscribe to the idea of wikipedia.org -- "Ming cong zhu ren" (the owner gets to define the name)
xah: so that's how I treat it :)
.tw gets to define how zh-tw is named and .cn gets to define how zh-cn is named.
Epix: yes 02:27
xah autrijus: so you are just showing your political side, after all. Not because how things are really named. :)
autrijus xah: yup, I'm a card-carrying anarchist :)
Epix hm, now i need a tutorial and a good reason that p6 > python :P
autrijus take it or leave it :D
xah autrijus: but even so, i don't agree that taiwan are really all for one side of naming.
pd Epix, p6 can be all things to all people. Because, like, it isn't done yet. 02:28
autrijus Epix: see svn.openfoundry.org/pugs/docs/articles/tpr.pod
obra p6 _is_ python. p6 is also antipython
autrijus Epix: download it and run "perldoc tpr.pod" should give you an ok tutorial
xah obra: huh?
autrijus xah: that's okay, I respect that :)
obra xah: I was playing on "all things to all people"
pd probably true enough, as it goes. 02:29
I wouldn't know, I think of myself as being more in the can't-we-all-just-get-along parrot camp. 02:30
autrijus at least we can get along with Tcl 02:31
Epix when perl6 comes out with a real, offical relase, what magic new stuff will it have to offer? it seems like the language is getting a huge overhaul... why? 02:32
pd I'll leave it at that, I already poked Coke once today about Tcl.
xah obra: the pythoner's got python3000 is the cooking.
autrijus Epix: take some time to look at my slides? :) 02:33
obra xah: they do
pd Epix, well I'll tell you one thing I noticed today, and you can take it or leave it: I wrote a simple routine in p6, and I only had to change one word to make it valid PHP. Seemed easier to me. :)
Epix autrijus: VB doesnt rock :P
autrijus Epix: pugscode.org/euroscon/pugs.xul
obra and there's Ruby 2.0
And Lisp has Arc
autrijus Epix: pugscode.org/euroscon/pugs.xul as well come to think about it
Epix obra: when will that be comming out?
obra When will Python 3000 be coming out.
autrijus er, I mean pugscode.org/euroscon/vb.xul
pd sub fib($f) { if ($f > 1) { return fib($f - 1) + fib($f - 2);} else {return 1;} }
obra If I'm working as the assistant perl6 project manager and I can't even give you a date for perl6... ;) 02:34
autrijus obra: I'm happy that nobody says "by Christmas" anymore :D
obra heh
wolverian pd, augh, parens on the if, and redundant 'returns'! the sight, it pains me.
pd wolverian, yeah, but like I said... change one keyword, and it's valid PHP. :) 02:35
you should see my old Perl5 that I tried to make look like Scheme.
wolverian heh.
that's better than PHP. :) 02:36
pd can't we all just get along! ;)
pd gets to work on KumbayaPMC
xah i just learned php yesterday.
Epix pd: would that keyword be sub?
pd Epix, it would indeed.
in PHP, it's function instead. 02:37
wolverian pd, no, not with PHP, NEVER.
er, ever. cough.
pd wolverian, the PHP implementation I have lying around here somewhere for Parrot is pretty decent.
xah perl forks don't like php is general, is that right?
pd xah, I wouldn't generalize like that, but many language people are like that.
wolverian pd, then you only need to fix the language
pd I'm not a fan of Java, but I like Perl and PHP ok. 02:38
xah as far as i can tell, php's usage in the industry probably surpassed mod_perl by a big margin?
wolverian don't get me started on java. :)
pd they share a lot of features, and they each have their flaws
wolverian, heh
PHP is slow; perl5 can be a memory hog
etc. etc.
doesn't matter much when all you're doing is running a mysql query and printing out a webpage. 02:39
Epix autrijus: what was the feature presentation
wolverian print_to_webpage(mysql_query("SELECT $PARAM['foo']"));
pd yeah, something like that.
xah lol, look at the perl5 mug www.cafepress.com/pugscode.28683006
pd looks pretty similar in both languages too.
xah 5->6 02:40
wolverian you missed the sql injection vulnerability
pd oh please. :)
wolverian :)
sorry. I'll go back to reading a non-programming book now. 02:41
pd too
I should get back to it, it's raining frogs.
xah anyone seen the perl6 logo? 02:43
pd are you referring to what's on the mug still? 02:44
xah Polymorphic Existential Recursive Lambda VI
y
pd yeah that was clever
I imagine that'll be Larry Wall's tombstone.
"He was clever."
better than "JAPH" in my book. 02:45
xah is that gonna be the official acronym?
pd they could do worse, I suppose.
wolverian please no. then people will write it as PERL more often than perl5 :)
pd PEARL :)
pd ducksa
*ahh*
wolverian ducks eat pearls
(and pythons) 02:46
pd !
and rubies no doubt
wolverian right. :) 02:47
good taste, obviously
pd more like... shiny objects. :) 02:50
xah darn. what's a .xul file? 02:52
pd that's a mozilla thing, right?
xah seems like it 02:53
pd www.mozilla.org/projects/xul/
xah don't seems to be able to read it in firefox 02:55
it's from pugscode
haskell.xul
wolverian worksforme in ff and epiphany
xah what v and os? 02:56
ff? epiphany? 02:57
i'm on os x, firefox 1.5
pd Learning Haskell* (pugscode.org/euroscon/haskell.xul) -- Slides from AutrijusTang's talk, requires gecko-based browsers (Firefox, Epiphany, etc.) to view
sounds like a neat trick.
autrijus xah: really? firefox 1.5 should just work if you point it to the url 03:02
xah: if you downloaded it, you also need takahashi.js and euroscon.css that came with it
xah ah i see. Yes it works now. 03:03
very nice logo! I love it.
autrijus Epix: the feature presentationis the first movie in pugscode.org/talks/oscon05/movies.html
xah: thanks!
Epix POE better be ported... 03:04
autrijus: why did you choose hascall (i bet you get that alot...)
autrijus Epix: it's in 01Overview.html :) 03:05
Epix: mostly because it has great tools :)
parser + evaluator = 6 hours
xah mmm xul is pretty cool
autrijus xah: you tried "view source"? :)
xah autrijus: yeah. i downloaded it first because i was on safari. 03:06
autrijus oh cool
I see
Epix autrijus: you dont hear about hascall at all these days... Perly... Is that a real word? :P
autrijus Haskell? it's only in usable form since 2000 03:07
it will take some time for the news to spread
pd yes, as in, see them perly whites?
xah gosh i loved the haskell.xul tutorial 03:09
autrijus good to hear that :D 03:10
xah the fit use of unicode is also cool.
Epix with a console open, how do i get pugs?
autrijus Epix: apt-get pugs
Epix: (depending on which platform you are on)
Epix autrijus: just noticed that (debian) :)
autrijus good then :) 03:11
Epix god.. its apt-get install pugs! :P
pd ahh!
I just used svn and make and whatnot, seemed easy enough. Then again, I'm on Gentoo. :)
Epix Its been a long time sinced I perled 03:12
xah autrijus: is there a way to move back? 03:14
autrijus: in .xul 03:15
autrijus xah: PageUp
xah thx
Eclipse supports haskell? 03:22
Epix hmm.. pugs wont apt-get 03:25
This installation run will require temporarily removing the essential package e2fsprogs due to a Conflicts/Pre-Depends loop. This is often bad, but if you really want to do it, activate the APT::Force-LoopBreak option.
autrijus Epix: I have no idea what it means 03:29
xah: yes, eclipsefp.sf.net
Epix And, i cannot get rid of e2fsprogs, apt warns me that its important and i shouldnt touch or im in deep poop
autrijus you can give up and build from source instead
svn co svn.openfoundry.org/pugs (or download from a CPAN near you: search.cpan.org/dist/Perl6-Pugs/) 03:30
you'll need to apt-get install ghc (>=6.4) I think
xah ho my god that larry poem is long. 03:38
and it has been quality
autrijus the VB talk got the Best Lightning Talk award by popular vote-by-clapping :D 03:51
xah autrijus: which book or online material you recommend for learning haskell? 03:55
autrijus xah: svn.openfoundry.org/pugs/READTHEM 04:01
xah autrijus: thanks for the link. But is there one book or one online tutorial you recommend? 04:02
autrijus hm... one book 04:03
xah (i'm familiar with haskell books and resources)
autrijus definitely www.cs.nott.ac.uk/~gmh/book.html
one online tutorial... that would be mine ;)
xah autrijus: gosh... don't have ppt. ... 04:09
autrijus keynote can open it no? 04:10
xah ok, they have some in pdf.
autrijus also openoffice.org impress
cool
xah ah... will try to download OpenOffice
it can read ppt?
autrijus yup
and save too
xah thx
autrijus and convert them to pdf
autrijus praises openoffice for sanity
xah btw, really great work you've done. 04:11
wolverian I hate openofif
xah great poems too.
wolverian er. whatever. :) too tired
autrijus heh thanks... I didn't do them all; I merely started some part of it :)
xah autrijus: it'd be nice if the poems also available as a html page,
autrijus wolverian: yeah, but it kept me from rebooting to win32
xah so that people can read. (and with author attributions)
autrijus xah: svn.openfoundry.org/pugs/docs/talks...ariner.txt 04:12
it's part of pugs source tree
xah autrijus: html better, as .txt don't get high ranking on google
i noticed.
autrijus: you've abroad? 04:13
been.
you've been abroad?
autrijus: i think i read somewhere that implies you don't leave taiwan? 04:15
autrijus xah: eh? I won't stay much in taiwan anymore :) 04:16
so you might read it backwards
xah autrijus: maybe off topic... where'd you be going?
autrijus xah: it's no secret... .il, .de, .pt, maybe .es, maybe .at again, then possibly .uk; .ca possible too 04:19
xah lol. but that's great!
all the countries want you.
ummm i see no .us ? :) 04:20
autrijus boycotting them.
xah lol. good deed.
autrijus actually just the current administraion. :) we'll see if it gets better in the next one... 04:24
obra what's in .pt? 04:29
autrijus some workshop 04:30
ingy_ hi autrijus 04:43
autrijus ingy_: hey 04:44
how's .tw?
obra heh
ingy_ autrijus: it's a really nice place. you should check it out 04:46
maybe some day
hcchien ingy_: what are you hacking now? 04:50
autrijus ingy_: cool 04:52
whiteg hcchien: you should just come here and see all the stickers on the wall 04:59
hcchien: then you will know what he and gugod are hacking on 05:00
autrijus mmm ingy and his stickers 05:01
autrijus is still preparing pugs talk... going to be on air in 30 mins
# pugscode.org/osdc/combined-2.jpg 05:03
stevan autrijus++ # Evolve or die; 05:52
GeJ servus 07:08
gaal morning! 07:36
r0nny morning gaal 07:49
nothingmuch hola gaal 07:50
autrijus yo 07:54
gaal heya :) 08:00
sooooo, i
'm tryign to resume state re: pragmas
I was blocked on the following: I need the parser to put some data on every node in the tree, data that the runtimes have access to. The Perl 5 patch that did this was simple, because the parser and the runtime are too chummy; we avoid preciesely this chumminess in pugs. 08:04
I think we need something along the lines of expRule; instead of it returning Pos (mkPos pos1 pos2) (unwrap exp), it could return Prag pragmas Pos (mkPos pos1 pos2) (unwrap exp) 08:07
I'm not sure however if expRule is applied exactly in the same places as a pragma opportunity would be 08:08
also this implies that pragmatic state, in the parser, works like getPosition and setPosition; with updateParserState. Is that concerptually correct? 08:10
So there's this pattern I'm not sure I understand fully, but which also seems a little fishy to me, this wrapping and unwrapping of Exps with (say) Pos. In expRule there's that unwrap, which would stip off any pragmatic state, but also other state that uses this decoration. Does this scale? 08:15
autrijus nope. 08:23
it's Very Bad Idea (tm)
gaal so what's the better approach? 08:34
and: how do we define what constitutes a pragma point?
i.e., what "statements" need a pragma list?
Is it a good idea to follow the monadic getPosition and store the current pragma list in the parser state? That way (if I'm not mistaken) blocks/scopes can do 08:45
prePrag <- getPragmas ; ruleWhateverBlock ; setPosition prePrag --modulo syntax etc. 08:46
err 08:47
setPragmas prePrag, of course.
(Interesting: setPosition is only called in one place, Token.hs:484. The rest of the time positions are just constrtucted and never mutated.) 08:50
oh, duh, that code in Token handles #line, which of course blatantly changes the position. 08:51
ok, I'm thinking back to your "Ann" suggestion, autrijus, which was supposed to unify Cxt, Pos, and Prag annotations IIRC. should this be a union or a full record? ie Cxt Cxt | Pos Pos | Prag Prag or MkAnn { cxt :: Cxt, pos :: Pos, prag :: [Prag] } ? 09:01
dduncan question: is "pugs -c Foo.pm" the same as "pugs -e "require Foo;" ... or do they have different symantecs? ... 09:05
I only want the code to compile, but under the situation I'm in, I have to do it within a -e, so that I can first execute a use-lib
the code I wrote seems to work, but I was wondering if there might be symantics issues 09:06
fyi, the code is: find blib6/lib -name '*.pm' -exec ./pugs -e "@*INC.unshift('blib6/lib'); say 'require \'{}\';'; require '{}';" ';'
that was modified from something autrijus wrote yesterday
gaal they are different because -c Foo.pm compiles the module itself, not the state of having loaded the module. For example, %INC would not be set. 09:09
and if the module is sensitive to its caller, it may do different things depending on whether it's used or run. 09:10
dduncan do you know of a way to add 'lib' items when using -c with Pugs? 09:11
gaal if you're familiar with Java, consider that a class may have an explicit entry point that's only called when the class is invoked directly; it's possible to get the same semantics in perl with the if (!caller) pattern
(that's the p5 spelling)
dduncan all I wanted was -c with an added arg to specify more search dirs ... so that any 'use' statements in one module work to find others
this -e thing was a workaround because I didn't know one 09:12
gaal there is a -I cmdline arg...
I think it even works :-)
dduncan will check ... 09:13
gaal under the hood it does something very similar to -e, too :)
btw, be careful of shell portability when doing these things, and of possible paths with whitespace. :-( 09:14
dduncan the search path is a constant ... its just 'blib6/lib' 09:15
I'm just trying to find which part of the pugs docs lists its command line options 09:16
gaal pugs::run
oh. -I isn't implemented. 09:17
wanna do that? Pugs.hs.
dduncan yes, I just saw that 09:18
it said it wasn't implemented on purpose due to perl 5 09:19
anyway, I'll commit what I did before, which does what I want (detect compile errors), and someone can improve it if they want
gaal dduncan: "it wasn't implemented on purpose due to perl 5": ??? 09:22
dduncan I'll quote: ...
=item C<-l>, C<-d>, and C<-w> ... are ignored for compatibility with Perl 5.
so due to perl 5, they aren't done 09:23
gaal that's -l, ell, not -I, aiiiiiii.
-I is not implemented because nobody did it yet :-)
dduncan did you say aiiii? 09:24
I thought you said elll ...
gaal -w is ignored because warnings will be on by default
dduncan which made sense at the time...
gaal -l because with &say it's less attractive, or less needed
-d, I bet, WILL be implemented... sometime. :-) 09:25
dduncan anyway, I added util/make-test-p6-compile.sh ...
gaal cool
dduncan it was to help isolate /ext failures faster
gaal nice; how do you envision its use in the smoke process? 09:26
dduncan it is a subset of what make test/smoke does
while the others recompile a .pm for every .t that includes it, or includes a .pm that includes it ...
the one I committed goes to the .pm directly, greatly reducing the duplicate warnings spat out due to the same module not compiling 09:27
ideally it would be built in to the make process, so one could say 'make compile-test' but I haven't the tuits to do that 09:28
gaal good. what's the typical usage pattern? do it before running make smoke?
dduncan so you just invoke it directly after 'make', instead of 'make smoke'
then when all the errors reported are gone, you do a make smoke to just check runtime errors
the basic idea is that the new script brings attention to the low hanging fruit ... syntax errors 09:29
so they can be dealt with early, leaving the smoke reports for harder stuff
gaal does this compile one huge blob with everything? or each .pm separately (with its deps)? to be correct it should probably do something in the middle.
dduncan in my case ...
this being a shell script, it reinvokes pugs separately for each .pm 09:30
so no huge blog
blob
there is still the isolation that you get with make smoke etc 09:31
gaal huge blob would be wrong; but *every* .pm may do the wrong thing too when we have platform-dependent stuff.
but this is probably good enough for now :)
dduncan well, this was meant to be a quick and dirty thing anyway
gaal right. dduncan++
dduncan fyi, the whole script is a one liner, and there are a bunch of comments 09:32
now that using this is making the task a bit easier, I was going to go through the perl 6 code in /ext and fix syntax errors 09:33
a lot of the ones I see now are due to the named argument declarations not being updated when pugs was ... some were but some weren't 09:34
10:01 kanru2 is now known as kanru
dduncan have to investigate, but it appears Pugs doesn't parse the new way to call private methods, such as $self!method 10:16
autrijus no, it doesn't. is there a test? 10:19
dduncan looking for one
autrijus t/oo/method/* doesn't ocntain one
dduncan but it does seem to parse declarations of private methods ... I think 10:20
perlbot seems to be down ... haven't seen commit reports in awhile
though it is connected
?eval class Foo { method :bar () { say 'hello'; } } 10:23
10:23 evalbot_8081 is now known as evalbot_8085
evalbot_8085 Error: unexpected "{" expecting term postfix, operator, ":", ",", postfix conditional, postfix loop, postfix iteration, ";" or "}" 10:23
autrijus dduncan: yes, "my method" has always been working iirc"
dduncan ?eval class Foo { method bar () { say 'hello'; } }
evalbot_8085 undef
kane_ waves at autrijus
autrijus kane_: yo!
dduncan anyway, I'm going through ext now ... already committed (locally) replacements of :foo with my foo 10:24
autrijus kane_: M::I and M::AI is going to 1)suck less and 2)getting some JIB love
dduncan also some ?$arg with $arg?
metaperl stevan: ping?
dduncan okay, two more commits pushed 10:34
some remaining /ext failures are due to $self!method not compiling yet, and others I'm not yet sure what the problem is ... libwww-perl being an example of the latter 10:35
autrijus k, I can take a look tomorrow 10:53
fglock_ autrijus: re my compiling problems yesterday: the problem happens with named rules: 11:04
autrijus ah
that explains it
got a onelineer?
fglock_ pugs -Cpil1-perl5 -e ' rule ww { \w+ }; ' - &rx_ is compiled as a macro
pugs -Cpil1-perl5 -e ' rule { \w+ }; ' - compiles as a sub
&rx_ is defined in Prelude 11:05
anonymous rules work 11:06
autrijus confirmed. fixing
fglock_ thanks! I was crazy trying to find out the problem 11:07
bbiab & 11:15
xunxin Does anyone know why pugs spends so much time on loading Prelude? It's really a pain to run even a "hello, world" p6 program. 11:55
autrijus xunxin: did you use precompiled prelude? 11:56
xunxin no, but I want to know how to recomile it.
Can I find any instructions on Pugs doc? 11:57
autrijus look at config.yml
there should be a "precompiled_prelude: true"
xunxin ah, thanks, autrijus! 11:58
BTW, recent Pugs revision broke on Win32. :=)
autrijus oh? what's the error? 12:00
xunxin hm, it seems to me "cd .." failed on nmake.
It can builds setup.exe successfully, but failed on the command "cd ..". 12:01
autrijus can you nopaste a log? 12:05
sial.org/pbot/perl6
xunxin autrijus, I'm happy to provide such detailed output some time later, but now, because this is my friend's machine. sorry. 12:06
but not now. 12:07
gaal someone mentioned having to patch the makefile to do cd ..\.., but I don't remember who or where.
or why that was necessary :(
autrijus xunxin: ok, that's fine
I'll try win32 later
xunxin okay
fglock how can I recompile just the Prelude? 12:35
'mv ./src/Pugs/PreludePC.hs ./src/Pugs/PreludePC.hs.bak' seems to work 12:40
autrijus sure, or touch src/perl6/Prelude.pm 12:45
I need to leave strategicdat aoffice now... I'll check back tomorrow morning
in, oh, 8 hours
autrijus waves &
fglock bye
autrijus much better docs: svn.openfoundry.org/modinstall/trun...Install.pm 12:47
&
Alias++
13:06 nnunley_ is now known as nnunley
kane-xs hmm.. p6 use syntax deemed insufficient :( 13:27
seen rafl 13:35
rafl kane-xs: I've seen rafl 0 seconds ago (saying: kane-xs: I've seen rafl 0 seconds ago). 13:44
kane-xs argh.. the recursion, it hurts! 13:45
rafl: i just pushed a new S22 that points out what pugs needs to do to support jibs... i noticed the Repository section was still in 'past rantings' -- i think it deserves a nice spot in the doc :) 13:46
rafl pulls 13:49
kane-xs watches perl hate him 13:52
hm, a -d test fails in a script, i run it manualyl and it succeeds.. absolute path.. hmmm 13:54
d'oh, code in wrong order 13:55
rafl Use ACME::Palindrome and the order of the chars in a word doesn't matter anymore. 13:57
kane-xs: Hm, the repo stuff is still in Past Rantings/Notes/Etc
13:58 bradb_ is now known as bradb
kane-xs rafl: that was my point :) i think you've fleshed it out enough to make it a 'proper' section 13:58
rafl kane-xs: Oh, OK. You said that you pushed a new version. Thought that included that change. 13:59
kane-xs: Doing that now.
kane-xs rafl: no, i pushed a section on 'what pugs needs to do'
when i scroled though it i noticed the repo stuff still being in the 'notes' stage
rafl Hm, where should it go? 14:00
kane-xs a =head1 above the pugs stuf i'd say
around line 608 or so 14:01
rafl Well, during writing JIB::Repository I noticed that the current layout isn't that good. I'm going to revise it a bit. 14:03
kane-xs prototyping++ # you learn things
what turned out to be not so good?
btw, alternatives work again in JIB:: now.. just writing tests
rafl Can't remember. Something was "ugly". 14:04
kane-xs btw, does svn support an 'mv' with keeping history and so on? 14:05
in case we want to rename some stuff
nnunley kane-xs Yes. 14:06
svn mv <file> works.
rafl kane-xs: svk as well.
kane-xs yay 14:07
rafl kane-xs: Actually I want to be able to group dists by all meta information that is available.
kane-xs: author, distname and language by default.
clkao but it will be a painful thing when doing merge that should bring the rename. luckily svk does it right. 14:08
rafl kane-xs: But I'm not sure how to reflect that in a repository layout.
kane-xs: Any hints?
kane-xs rafl: you suggested categories as directories, and a file with the contents 14:10
rafl: that sounded good -- did that not work out?
rafl So we have thins like dists/languages/perl.gz and dists/languages/perl/kane.gz? 14:11
kane-xs: But is kane a module or an author?
kane-xs good point -- that means either policy or disambiguate 14:12
if you want to catogorize by modules too (which seems prudent), splitting that out makes sense
rafl kane-xs: So we would have dists/languages/perl/authors/kane.gz and dists/languages/perl/modules/kane.gz - not that nice in some way.
kane-xs rafl: symlinks can do a lot here
as languages/perl/modules would be the same as modules/perl/
for example
rafl Actually it would be modules/language/perl 14:13
kane-xs brb 14:14
rafl: right.. or whatever we should link to for 'convenience' 14:23
rafl: but there's little stopping us to link to long names for now, and abbreviate as needed... enve if it looks overly verbose now, there's no ambiguity, which is Good
nothingmuch www.critticall.com/ 14:56
stevan metaperl: pong 15:23
william_firstdev can I invite someone here to be a section administrator of a IT forum setup by some Chinese guy? 16:53
clkao autrijus: i did some very evil thing 17:25
which might enable pugs js backend to use perl5cpan
fglock wonders why PIL2 is so verbose 'PLit { pLit = PVal { pVal = VStr "hello" } }' 17:32
Limbic_Region clkao - s/evil/evil but clever/ 17:50
jdv79 Limbic_Region, how goes? 18:01
Limbic_Region getting ready for trip to the Philippines on Sunday - so well but extremely busy 18:07
you?
jdv79 not bad, thanks 18:11
that's a trip.
Limbic_Region I have just given up trying to be productive or participate in any meaningful way to a lot of projects 18:13
I still try and stay informed so that if the time arives when I actually have free time - I don't have to spend the time relearning everything
chip seen autrijus 19:47
r0nny i got a problem with a ctor 20:13
i call $.arrt=Foo::Bar.new; in a BUILD submethod, and instead of creating the object it saves the reference of the new method 20:14
anyone ? 20:18
anyone there ? 21:12
pmurias I'am :) 21:13
r0nny hmm 21:15
i got a problem with a ctor
i call $.arrt=Foo::Bar.new; in a BUILD submethod, and instead of creating the object it saves the reference of the new method 21:16
using a pugs pulled from svn about 10 minutes ago
pmurias i'm not familiar with pugs internals so i can't help you much :( 21:20
did it work with previous revisions?
r0nny pmurias: yes - it did 21:23
pmurias: maybe it broke casue they are changing to a new version of something
clkao what's the javascript equivalent for *@data when calling function? 23:19