Check your feather email | spec.pugscode.org | paste: sial.org/pbot/perl6 | pugs.blogs.com | www.treehugger.com/files/th_images/paradigm.jpg [set by audreyt on 2006-08-29 05:26:57 -0700]
Set by Akwa|user on 14 September 2006.
00:00 bcorn_ joined 00:05 fnave left 00:12 peteso joined 00:15 weinig_ joined
audreyt ?eval 10 00:29
evalbot_r13339 10
obra "oh good"
TimToady morning audreyt 00:30
audreyt ?eval while int(rand*10) -> $x { say $x }
evalbot_r13339 0
audreyt ?eval while int(rand(5)) -> $x { say $x }
evalbot_r13339 OUTPUT[4 ] 0 00:31
audreyt hi TimToady
TimToady we need to undo prefix:<*> at some point...
rand*10 should have given a "two terms in a row" error. 00:32
pity that won't help for rand+10 00:34
audreyt ok, removng it now 00:35
audreyt smokes to see how seriously that breaks
TimToady grepping for \*[$@%] only gets 2324 hits 00:38
mostly sigs, I expect
00:42 markstos joined 00:45 mjk joined
TimToady weird, splat.t has things like "my $b = *@a;" 00:47
./src/PIL/misc/prelude/Array.pm is full of splats 00:51
00:58 gary_ joined
TimToady heh, found some in the specs too... 00:58
bunch 'o stuff in ext/ isn't gonna parse... 01:00
audreyt ...but I committed anyway.
gone for $job (on a saturday? sigh) 01:01
be back in ~6hr
TimToady I'll whack on the *'s when I get a chance.
svnbot6 r13340 | audreyt++ | * "*" is now strictly a Term, never a prefix operator.
audreyt yay! 01:02
TimToady lot's of superstitious *@foo passed to a slurpy *@bar
*lots
down to about 200 hits now
svnbot6 r13341 | audreyt++ | * smartlink the smartlinkable S04 for repeat.t. 01:08
01:11 mako132_ joined 01:38 Aankhen`` joined
svnbot6 r13342 | lwall++ | A lot of WAGs on what was intended by unary * in various places. 01:50
01:58 buetow joined 02:01 frederico joined
svnbot6 r13343 | fglock++ | v6 (pX) added more classes 02:06
02:09 mako132_ joined 02:16 ludan joined 02:22 weinig_ is now known as weinig 02:26 buetow joined 03:39 xdg joined, xinming_ joined
jdv79 is Perl6::Bible still authoritative? 03:58
seems to be getting a little old
03:59 what3 joined 04:04 SubStack joined 04:06 peteso joined
peteso by any chance could someone give me a quick bit of X assistance? (or is there a better channel to go to?) 04:07
TimToady Perl6::Bible never was authoritative in that sense...
X as in windows?
peteso X Windows, yes
TimToady well, I use X but I wouldn't really count myself an eXpert 04:08
peteso I know this isn't the right channel, but I've also found people to be very helpful here
TimToady we're very glad to share advice whether we know anything or not. :) 04:09
Eidolos I've checked some channels (#x, ##x, #x11, ##x11) and found none.. ask away! :)
peteso I kill'd a full screen X app (VMware Player) but it didnt go back to the desktop
the machine isn't crashed, I'm logged into a shell from another computer
TimToady is the X process still running?
peteso but I'm just not sure how to get the last frozen image off
yes, everything *else* is still running 04:10
TimToady if X isn't running, restarting X would fix it.
04:10 lambdabot joined
Eidolos So.. kill X? 04:10
peteso would restarting X throw away all the things I had open in the background?
TimToady might already be dead or hung.
yes, but they might already be hosed.
peteso (I just recently switched to a linux desktop s)
hmm 04:11
the process status is still running..
TimToady what kind of linux are you on? 04:12
peteso Ubuntu Dapper
lambdabot eh?
TimToady dunno whose X Ubuntu uses...
lambdabot go on
Eidolos Do you have anything that really needs saving? Because if not you should probably restart (and avoid letting programs use fullscreen until you find a fix)
lambdabot uhh, how can i be a program??
Eidolos I'm no expert on this stuff.. but it looks like Dapper (which I am also using) uses Xorg. 04:14
TimToady have you tried switching virtual screens with Ctrl/Alt+numbers?
peteso I just HUP'd the X-session-manager, and that fixed it and closed whatever was open 04:15
TimToady I mean ctrl/alt/function
peteso t
TimToady sometimes switching to a different virtual terminal and back can clear it too, is all...
peteso thank you very much none the less for the assistance, and I'm sorry for otherwise interrupting key perl developments :)
TimToady yeah, if the session manager was the problem, that could fix it. 04:16
heh, it's, like, Friday night...
peteso :) 04:17
04:18 b00t joined 04:21 Aankh|Clone joined
TreyHarris TimToady: how are you feeling philosophically towards the -X fileops? 04:26
not looking for The Answer, just wondering how you're thinking about them 04:27
TimToady I like the fact that they're visually distinctive. 04:33
as far as I'm concerned they're no weirder than a lot of other operators. 04:34
TreyHarris i agree... coming from the sysadmin perspective, i think the fileops are one of the draws of perl for them 04:35
though i do 'perldoc -f -X' even after 15 years 04:37
so i'll probably use .mtime, etc. assuming it's easily available
TimToady biab & 04:40
peteso quit 04:47
whoops..
04:49 pdcawley joined 05:01 zgh joined 05:15 BooK_ joined
svnbot6 r13344 | putter++ | Added a failing rx test. Given rule r { <null> | x <r> }, "x" ~~ /<r>$/ should match "x", not "". 05:19
r13345 | putter++ | Added a failing kwid test. An empty kwid, "=kwid\n=cut\n", eats subsequent code. 05:20
05:23 weinig is now known as weinig|zZz 05:24 agentzh joined
svnbot6 r13346 | agentz++ | [t/README] 05:29
r13346 | agentz++ | - fixed a grammar error
audreyt @putter the rx test worksforme 05:31
lambdabot Unknown command, try @list
audreyt @tell putter the rx test worksforme
lambdabot Consider it noted.
audreyt @tell putter but I was using PCR :) 'bout time to check in the s/PGE/PCR/ overhaul I guess... 05:32
lambdabot Consider it noted.
05:34 putter joined
putter hey audreyt 05:34
lambdabot putter: You have 2 new messages. '/msg lambdabot @messages' to read them.
svnbot6 r13347 | putter++ | Added additional failing rx case. Given rule r2 { <null> | <r2> x }, "x" ~~ /<r2>$/ should match "x", not "".
putter goes to see what PCR is...
TimToady polymerase chain reaction 05:35
putter :)
audreyt Pugs::Compiler::Rule. 05:36
your r2 test also worksforme.
I'm committing both as PCR tests now. sec. 05:37
putter using parrot 0.4.6... 05:38
(ie, latest release, but not head)
audreyt it might well be a PGE-land bug...
putter PCR is p5, yes? can one use it from pugs?? 05:39
audreyt yes and yes.
(it's the motivation of embedp5 by default)
putter oooooh
audreyt even without embedp5, we can use the bridge.
putter :)
audreyt I'm working on the bridge now; give me an hour or two :)
putter 1:30 am for me. end of day. no prob 05:40
audreyt it also gives us variable lookup and binding and mutual calls and other good thing :)
'kay. sleep well!
svnbot6 r13348 | agentz++ | [t/blocks/param_signature.t]
putter woot
svnbot6 r13348 | agentz++ | - fixed one invalid smartlink. (please use smartlinks.pl
r13348 | agentz++ | --check to verify your links. :))
audreyt putter: btw, have you seen my msg that inv tyinfer bug has been solved long ago 05:41
and the "my C $x" within a sub bug is also fixed?
putter My thought was to transcribe some bison examples to p6 rules, see what broke, generate some tests and an example. But a working example would be just fine too, I'm most flexible in that regard. ;) 05:42
re typeinf, yes! very neat. am looking for some pile of oo code with tests to throw against it. 05:43
audreyt also roles are now really mixins.
but not introspectable. that will come from nothingmuch's MO direction. 05:44
putter first thought was to take a mumble2scm or mumble2cl and rip the back out, generating p6, and use the mumble test suite.
audreyt mmm re2c seems obvious.
putter googles for re2c...
audreyt very good stuff.
(was re your "transcribe some bison") 05:45
not re the scm/cl
putter ah, neat. though my thought regards typeinf working, was to find some way to through diverse oo code at it. eg, by transliterating from some other language. Ideally with an existing transliterator which just needed to be tweaked. Thus the search for mumble2scm. Unfortunately, 05:46
svnbot6 r13349 | agentz++ | [util/smartlinks.pl]
r13349 | agentz++ | - we no longer require Pod::Simple::HTML when --check is
r13349 | agentz++ | specified since we don't generate HTML while checking.
r13349 | agentz++ | (Thanks zeriod++ for reminding me)
r13349 | agentz++ | - clarified in the Pod that extra text after the
r13349 | agentz++ | smartlink in the same line is NOT valid.
putter I didn't find a plausible candidate. Ie, a transliterator with relatively simple codegen, and a test suite for the mumble. 05:47
So, I wondered if p6 itself was up to doing a translit exercise. Thought I'd start with some trivial stuff, and see how far I got. 05:48
svnbot6 r13350 | agentz++ | [t/blocks/param_signature.t]
r13350 | agentz++ | - english fixes
audreyt that seems viable
btw, are you still building with embperl5 off?
nothingmuch clkao: ping? 05:50
putter re viable, it's a yak or two down the stack, but a yak which I'm happy to haircut for itself. I still don't have a plausible short term plan to generate a large (>hand) volume of p6 oo code to exercise things.
nothingmuch hmm... why bother, he won't be up
morning...
hiking &
TimToady audreyt: ideas on how soon @.foo() syntax will be supported? 05:51
putter re embperl5, off, sign, no. no. I was so tempted after calling it a night to go back online and say "btw, of course I have embed working. but since I was here, I wanted to make nonembed work too, and make sure the now default embed _just worked_, without extra user action". But I didn't. And now "putter and nonembed" is a "thing". sigh. ;) 05:52
audreyt TimToady: should be the same time as the MI/MO swapin
putter s/sign/sigh/
TimToady k
svnbot6 r13351 | agentz++ | [util/smartlinks.pl]
r13351 | agentz++ | - minor english fixes
audreyt putter: oh ok. yay :)
agentzh lol 05:53
putter daydreams... "hmm... if rules were actually working, and oo too... one way to get lots of p6 oo code would be to dust off the js-on-p6 transliterator...". Oh, that would be so very nice. Ah well, bison rcalc first. Then we'll see. 05:59
audreyt sleep first, would be my recommendation 06:03
putter Or not. No dynamic mop stuff yet pugs-side. JS runtime and static code could still run. Eh. rcalc. then calc. err, rpcalc rather. then calc. then...
www.gnu.org/software/bison/manual/h...z#RPN-Calc
lambdabot tinyurl.com/ppft9
putter a most fine recommendation it is.
good night all &
ingy hola 06:16
seen nothingmuch
jabbot ingy: nothingmuch was seen 25 minutes 40 seconds ago
svnbot6 r13352 | gaal++ | * signature.t - more tests. excplicit defaults are parsed but 06:23
r13352 | gaal++ | not yet printed.
r13353 | gaal++ | * Pugs.Parser: parse cody constraints on params, even if they're 06:32
r13353 | gaal++ | ignored for now:
r13353 | gaal++ | :(Int $x where { $x % 2 })
r13353 | gaal++ | * Pugs.Val.Code: very minor cleanups
agentzh hmm...haskell may be the most beautiful language in the world... 06:40
wolverian no, that's lisp
agentzh lisp is ugly in my opinion. 06:41
too many parens in that language. 06:42
wolverian sort of platonic.. 06:43
agentzh heh 06:44
TreyHarris so for those of you who work in code containing cjk characters often: do you use two-column wide glyphs as compared to ascii chars, or do you have space between ascii chars? 06:50
06:54 b00t joined 06:55 lambdabot joined
agentzh TreyHarris: space between ascii chars? 06:58
"a b c" ?
"w o r d"?
ah, there're "wide english letters" in chinese, which we call "full corner" or something like that. 06:59
and i don't think there's any whitespace between adjacent letters though it may have similar visual appearance. 07:01
TreyHarris i meant visual space
agentzh probably, and i've been avoiding to use that kind of things, since they're confusing. 07:02
TreyHarris if you have "foo" starting at col 0 on line 1, and three han glyphs in a row starting at col 0 on line 2, will line 2 be wider?
visually wider i mean
agentzh hmm 07:03
3 glyphs?
line 2 may be wider or may not.
that depends on whether "foo" is "half corner" or "full corner". 07:04
if "foo" is in "half corner" (i.e. in ascii charset), then line 2 is approximately 2 times wider. 07:05
TreyHarris right, i was asking about what is typical for coders who have to deal with a lot of such code that mixes
is half corner, or full corner, typical for people coding? 07:06
agentzh Treyharris: they can be mixed. 07:07
we have both in our chinese input method.
so it's very easy to confuse these two.
and it's quite common to see different version of "A" in a single chinese article. 07:08
*versions
for me, i usually convert full-corner latin letters to their ascii equivalences before processing the text (via perl).
i really really hate full-corner latin letters. 07:09
they're not ascii but wide chars.
TreyHarris i see
agentzh: so will the arrows in t/xx-uncategorized/unicode.t line up on everyone's terminal? 07:13
agentzh oh, sorry for the poor terminology, "full corner" is actually "SBC case" while "half corner" is "DBC case" 07:14
i translated them directly from chinese. :)
TreyHarris no problem :-)
agentzh that unicode.t file doesn't display in my editor. 07:16
TreyHarris !
agentzh it said that the encoding is incorrect.
TreyHarris that seems to be bad news
agentzh have you saved that in UTF-8?
it will be fine if it's in UTF-8. 07:17
zgh aw my perl6 webserver stopped working... 07:19
segfault..
07:19 pdcawley joined
agentzh zgh: where is your webserver? 07:20
zgh n/m there it goes ^_^
nowhere I'm just messing around with HTTP::Server::Simple 07:21
localluy
agentzh ah
zgh i just updated pugs, but it wasn't the fault of the update
it was from my trying to get it working with v6 ^_
agentzh v6.pm? 07:22
zgh yeah
agentzh gotcha
zgh i have a sample program, just seeing how far i can push it
agentzh zgh, or maybe push Pugs::Compiler::Perl6 directly?
svnbot6 r13354 | trey++ | [t/xx-uncategorized/unicode.t] 07:23
agentzh that will be more enjoyable. :)
svnbot6 r13354 | trey++ | Amusingly enough, this test was not set to
r13354 | trey++ | be in UTF-8. agentzh++ for catch
zgh agentzh: I'm working my way up to it ^_^
agentzh zgh++ 07:24
07:25 ter310 joined
agentzh TreyHarris: my editor still reject unicode.t. :( 07:27
zgh seems to work for me in vim... 07:28
I see hebrew and cyrillic... 07:29
ooh and chinese
agentzh TreyHarris: my svn diff shows that your r13354 has no modification at all.
i see this: ōæ½xE5ōæ½x96?
and šØ®
TreyHarris *shrug* i can never see non-ascii characters in IRC 07:30
even when people say they can see each others'
agentzh hehe
TreyHarris: have you set the svn MIME type? 07:31
TreyHarris agentzh: yes, that's all i did
ahh, but i made a typo
agentzh weird.
TreyHarris try now :-)
i did "UTF=8" :-) 07:32
svnbot6 r13355 | trey++ | Another try at fixing unicode.t'
agentzh hmm "Content-Type: text/plain; charset=UTF-8"
yes, it is correct, i think.
the file seems to contain some invalid UTF character. not sure... 07:35
07:36 DHGE joined
agentzh i'll try to fix that. 07:36
oh, the han char "\x28B81" can't display in my firefox, ie, and editplus... 07:41
07:41 pdcawley joined
agentzh so it may be the lack of proper font? 07:41
anyway, i think i can do nothing with it. :)
zgh it all seems to work in vim on linux... over a terminal 07:42
didi't even realize I was using a unicode font.
agentzh heh 07:43
agentzh imagines what that weird char may look like.
www.fileformat.info/info/unicode/ch.../index.htm 07:44
lambdabot Title: Unicode Han Character 'U+28B81' (U+28B81), tinyurl.com/ffwho
zgh hm that's funny 07:47
it seems to display correctly near the bottom of the page, but not anywhere else
wolverian Server.HtmlEncode() 讁 is that it?
right.
zgh right that's the one
and the next line too
but that's it
wolverian yup. 07:48
weird.
agentzh ohhhh
ancient chinese char...
i'm just wondering what that glyph means. :) 07:49
zgh its quite copmlicated-looking
agentzh indeed
07:49 iblechbot joined
TreyHarris i don't have a monospaced font that displays it 07:50
and proportional fonts are useless for code i think
zgh TreyHarris: what platform?
agentzh oh, that glyph means blame or censure in the ancient china. :)
TreyHarris zgh: mac os x
zgh TreyHarris: the "monospace" font on my ubuntu box does the trick
TreyHarris: my mac is in the shop ^_^
wolverian zgh, note that it is not probably that font where the glyph comes from. 07:51
freetype just falls back on another font that has it.
zgh wolverian: thanks I didn't know that
wolverian: that would make much more sense ^_^
wolverian you can check which font it comes from with the character map app
zgh well if freetype is getting it right I don't feel I should sweat the details, heh 07:52
i can't read chinese anyway
cool to know how it does that though 07:53
07:53 what3 joined
agentzh ōæ½xD7y fails the test on pugs. 07:56
07:56 larsen_ joined
wolverian that was a ? here 07:56
agentzh sigh... 07:57
i don't know how to fix the encoding in my mIRC. 07:58
08:02 zgh joined
TreyHarris i'm flummoxed. i've set my terminal app, my font, screen, and my irc client to all use utf8 as their encodings 08:03
but i still can't see whatever character wolverian sent 15 minutes ago 08:04
wolverian TreyHarris, it is possible you simply do not have the glyph in your fonts
or your terminal app is not falling properly back onto a font that does have it.
(or rather, your font library) 08:05
TreyHarris can you paste the character above it? i can definitely see it. the \x5583 one
08:07 larsen_ is now known as larsen
TreyHarris ?eval say "\x5583" 08:07
evalbot_r13355 OUTPUT[喃 ] Bool::True 08:08
wolverian 喃
TreyHarris yeah. i see "?VC", with the VC in inverse type, whether it's you or evalbot
agentzh it displays perfectly here.
wolverian you did restart your client and screen, etc after setting up utf8?
agentzh wolverian: can you see "ōæ½xE0ōæ½xAB" now? 08:09
wolverian no.
? again
agentzh :( 08:10
08:10 zgh joined
agentzh i can read but can't write... 08:10
TreyHarris i restarted screen.
wolverian TreyHarris, that should definitely do it. and screen reports it is in utf8-mode? 08:11
(ctrl+a,i)
TreyHarris yep
oh, LANG is C
that might be my problem?
wolverian that might affect your IRC client, but if screen says it is in utf8 mode, the locale doesn't matter
(but it is best to just set the locale to a UTF8 one before launching screen and it Just Works (tm)) 08:12
TreyHarris well, i guess it can't hurt to try
wolverian there's also the irssi setting "term_charset" which should be set to utf8
which happens automatically if your locale is UTF8, I think
TreyHarris hmmm.... it very briefly throws up a message about an unsupported charset 08:15
but it goes away too quickly for me to read it
i've just caught those two words
svnbot6 r13356 | audreyt++ | * Pugs::Compiler::Rule: We no longer require Data::Dumper::Streamer. 08:16
r13356 | audreyt++ | * Also avoid loading PadWalker until runtime when it was absolutely neccessary.
wolverian TreyHarris, what locale is it, and do you really have it on your computer? 08:17
08:17 kanru joined 08:19 Trey2 joined
Trey2 ?eval say "\x5583" 08:20
evalbot_r13356 OUTPUT[喃 ] Bool::True
Trey2 hm
i got ?? there. which is arguably better
TreyHarris wolverian: i set it to en_US.UTF-8
wolverian TreyHarris, and that locale exists on your computer? 08:21
Trey2 i don't know. how does one list locales on linux?
wolverian locale -a 08:22
Trey2 ah... my choices are C, POSIX, en_US, and en_US.iso88591
wolverian what distribution are you running? 08:23
Trey2 um, let me see... it's a shell server...
debian on sparc64 08:24
wolverian I think you want to run 'sudo dpkg-reconfigure locales', then 08:25
Trey2 ah. i don't have sudo :-( 08:26
i guess i'll open a trouble ticket
wolverian well, run it as root some other method
ah, you don't have root. okay
TreyHarris that's my only way to make it work? 08:29
wolverian I don't know if you can install locales, er, locally. 08:30
TreyHarris wolverian: thanks, it'll probably be much easier to get the sysadmin to fix it since I know exactly what to ask for :-) 08:39
svnbot6 r13357 | audreyt++ | * Pugs::Runtime::Match - add a dump_hs method that yields Parrot/PGE::Hs
r13357 | audreyt++ | compatible output for Pugs consumption. Next step is a command-line bridge...
wolverian TreyHarris, yup.
TreyHarris, delegate, delegate, delegate.
TreyHarris audreyt: i was about to add some cross-operator tests. i assume i should :todo<feature> them all? 08:43
audreyt yes, please do that
TreyHarris ok :)
audreyt is still neck deep in PCR integration 08:44
agentzh audreyt++ 08:54
08:54 pdcawley joined
agentzh so after the PCR integration work is done, i won't need parrot.exe any more? :) 08:54
supper time & 09:04
09:04 agentzh left
audreyt agentzh: yeah, the plan is to remove parrot dep entirely for this release 09:06
svnbot6 r13358 | audreyt++ | * Pugs::Runtime::Match::HsBridge - PGE::Hs-compatible bridge for integration
r13358 | audreyt++ | for the Haskell runtime, in both embedding and external mode.
gaal audreyt: I don't understand something about Types.Type casting. 09:12
I want to do:
map (text . cast) $ p_types p
but I'm getting errors like:
No instance for ((:<:) Types.Type Char)
as if somebody's trying to delist this?
Pugs.Val.Code around line 170 09:13
audreyt well there's no cast to String either 09:14
gaal okay, but cast . cast doesn't work
audreyt delist is because GHC tried desperately to generate [Char] from Char
the right solution is showtype
map (text . ShowType)
map (text . showType) -- err, this
gaal oh! cool.
thanks :) 09:15
audreyt np :)
gaal next question is how we're going to print things like default values. do we need to be in Eval for this? 09:16
?eval :($x = 42) 09:17
evalbot_r13358 CCall "perl" CaptMeth {c_invocant = VPure (SigSubSingle {s_requiredPositionalCount = 0, s_requiredNames = {}, s_positionalList = [MkParam {p_variable = "$x", p_types = [], p_constraints = [], p_unpacking = Nothing, p_default = <ParamDefault:Just<Exp>>, p_label = "x", p_slots = {}, p_hasAccess = AccessRO, p_isRef = False, p_isContext = False, p_isLazy = False}], s_namedSet = {}, s_slurpyScalarList = [], s_slurpyArray = Nothing, s_slurpyHash = Nothi
gaal ?eval ""~:($x = 42)
evalbot_r13358 ":(\$x)"
gaal on my wc that prints
:($x = {...})
audreyt well, the default is an expression 09:18
gaal ... and in a few seconds, in HEAD too :)
audreyt prettyprinting an expression doesn't need to be in Eval
gaal ooh right, format isn't in Eval. cool! 09:20
svnbot6 r13359 | gaal++ | * fix printing of static types: :(Moo $x) 09:21
gaal ouch looks like I'll have to export Pretty.format :( 09:27
s/export/boot/ 09:28
eep which of course I can't do with 6.4, arggghh 09:29
bbiab& 09:30
svnbot6 r13360 | audreyt++ | * Finish Pugs::Runtime::Match::HsBridge's external mode to be compatible with run_pge.pir. 09:36
audreyt the bridge is now enacted. 09:44
svnbot6 r13361 | audreyt++ | * Pugs::Eval: Use the semantically-correct way of passing in :ratchet in
r13361 | audreyt++ | embedded rule texts:
r13361 | audreyt++ | :ratchet(1)[...original rule text...]
r13362 | audreyt++ | * Thoroughly disable Pugs.Embed.Parrot and always use Perl5 bridge.
09:51 turrepurre joined 09:58 lisppaste3 joined 10:07 buetow joined 10:19 iblechbot joined 10:31 mollmerx joined 10:33 agentzh joined
agentzh removing the parrot dependency will make pugs "purer", which is great. :) 10:34
so 6.2.13 is gonna be a "big" release.
on the other hand, the PCR integration will also push the development of PCR itself. 10:36
because PCR is now much more "useful". :D 10:37
or usable even.
11:00 agentzh joined
pasteling "agentzh" at 210.22.200.67 pasted "I can't invoke pugs from path other than the root of the pugs source tree (the Prelude problem?)" (9 lines, 420B) at sial.org/pbot/19722 11:14
11:14 jferrero joined, agentzh joined
audreyt agentzh: fixing 11:17
agentzh :) 11:18
11:19 ludan joined 11:21 Sal joined
agentzh it seems that the following piece of Perl 6 code is not runnable yet. :) 11:21
svn.berlios.de/svnroot/repos/unisim...dInsert.pl
lambdabot tinyurl.com/g5rmy
wolverian you want at least @list is rw 11:22
agentzh neither pugs nor v6.pm can produce the correct output.
11:22 weinig joined
agentzh wolverian: thanks! fixing now 11:22
but still, it doesn't work. 11:24
wolverian or: sub ord_insert (@list, $elem) { @list.reduce(-> @l, $e { $e < $elem ?? $e !! ($elem, $e) }) }
(non-mutating)
but this is all off-topic of course to the actual probem :)
problem, rather
agentzh ah, that's the functional way. :) 11:25
wolverian: please look at this: svn.berlios.de/svnroot/repos/unisim...dInsert.hs 11:26
;)
lambdabot tinyurl.com/nhcjw
wolverian er well besides the bugs
in my code
heh
s/reduce/filter/ and it works (but is a bit weird from a haskellish perspective)
right 11:27
agentzh *nod*
wolverian that's a quicksort
11:27 prefiks joined
agentzh no, it's not. 11:27
it's an insertion sort.
(if i can call it like that)
qsort (x:xs) = (qsort left) ++ [x] ++ (qsort right) where (left, right) = partition (x>) xs 11:28
that may be the quick sort (untested)
wolverian I'm not sure how that is different 11:29
11:29 DHGE left
agentzh the postion of recursion is different. 11:29
wolverian does that have a real difference? the foldl is the same thing as recursing 11:30
agentzh quick sort partitions the list while insertion sort insert the elem one by one. 11:31
*inserts
wolverian oh, right
it has a O difference
thanks
agentzh np :)
audreyt: btw, thank you very much for having brought haskell into my sight. i really like it now. :) 11:34
audreyt yay! 11:35
it's the Power of Reason :)
(have you seen the reason.jpg in my haskell tutorial?) 11:36
agentzh right, the power of maths or something :D
you have a haskell tutorial?
agentzh is amazed.
audreyt pugscode.org/osdc/haskell.xul
agentzh looking
audreyt press <enter> to scroll next
need firefox 11:37
the last picture is "Reason"
agentzh i've used your xul tech to produce my slides.
so i know it *quite* well. 11:38
^__^
audreyt oh good :)
agentzh i see the weapon picture. 11:39
audreyt it's from the SciFi novel "Snow Crash"
"we'll win because we have reason on our side." 11:40
agentzh ah
interesting
audreyt "DaoLi ZhanZai WoMen ZheBian" :)
agentzh haskell is really a powerful weapon.
audreyt of course, the name of that gattling gun is "Reason", i.e. "DaoLi" :) 11:41
agentzh hehe, i can grok the chinese.
i totally agree. :)
i'm planning to use haskell to do some computer simulation work.
GHC is pretty fast. 11:42
audreyt as chairman Deng noted, "development is the only hard-core Reason"
*nod*
agentzh fa zhan shi ying dao li 11:43
(it took me a while to realize what you have said.)
:D
audreyt :D 11:44
(the version I heard was "fazhan cai shi ying daoli")
hence the "only" part
agentzh i was wondering if "chairman Deng" was a foreign hacker...sorry for that...
right right right 11:45
11:45 prefiks left
agentzh LOL 11:45
audreyt @index findExecutable
lambdabot System.Directory, Distribution.Compat.Directory
agentzh yeah
audreyt++ # you seem to know everything. 11:46
audreyt nah, not really :)
that's what you get from spending far too much time on wikipedia... 11:47
agentzh hehe
ah
wikipedia++
11:48 weinig is now known as weinig|coffee 11:54 elmex joined 12:04 mauke_ joined
audreyt agentzh: fixed 12:09
svnbot6 r13363 | audreyt++ | * util/gen_prelude.pl: inline "use" into Prelude for now.
agentzh up'ing now
audreyt: AS 5.8.7 build 815 still breaks pugs, maybe you should disable it completely? 12:11
12:11 weinig|coffee is now known as weinig
pasteling "agentzh" at 210.22.200.67 pasted "AS 5.8.7 breaks pugs build" (18 lines, 1K) at sial.org/pbot/19724 12:12
agentzh now i'm keeping both 5.8.7 and 5.8.8.
one for jifty and the other for pugs.
audreyt ok, try r13364? 12:14
svnbot6 r13364 | audreyt++ | * some more ActivePerl 5.8.7 fix attempt
agentzh okay 12:15
12:16 polettix is now known as froh-doh, froh-doh is now known as polettix
nothingmuch moos 12:17
agentzh audreyt: same error. should i realclean?
audreyt rerun makefile.pl would do 12:18
agentzh: maybe you can help diagnosing this actually
I added the flags according to this thread:
aspn.activestate.com/ASPN/Mail/Mess...rs/2960188
lambdabot Title: ExtUtils::ParseXS and lib/CORE/Win32.h :: ASPN Mail Archive :: perl-win32-porter ..., tinyurl.com/korck
agentzh looking now 12:19
nothingmuch @seen clkao 12:22
lambdabot clkao is in #perl6. I don't know when clkao last spoke.
nothingmuch yesterday
FECK DRINK ARSE! irssi is lsoooooooooooow
12:24 mauke_ is now known as mauke
obra nothingmuch: he's off at a cabal meeting 12:25
nothingmuch @larry cabal? or are there more cabals i don't know of? 12:28
lambdabot Maybe you meant: arr yarr
nothingmuch @yarr
lambdabot Splice the Mainbrace!
nothingmuch @arr
lambdabot Shiver me timbers!
obra a non-perl cabal
nothingmuch it's not urgent, i'm just trying to locate lost cookware =)
obra what? 12:29
nothingmuch lost his little alu bottle, which he uses to store olive oil when camping
since my small knife went with cl to england i suspect it met a similar fate
obra hm. nod. email 12:30
nothingmuch aye
shower first
svnbot6 r13365 | audreyt++ | * Finish the s:g/evalPGE/evalPGR/ transition.
r13365 | audreyt++ | * Remaining open issues:
r13365 | audreyt++ | - should there be a pragma (or something else)
r13365 | audreyt++ | that switches back to Parrot/PGE for rules?
r13365 | audreyt++ | - if not, should we completely remove Pugs.Embed.Parrot? 12:31
agentzh audreyt: after commenting out 2 lines in my activeperl 5.8.7's win32.h, pugs now builds successfully. 12:37
i'm just wondering why -D didn't take effect.
as the last approach, we can patch user's win32.h. :) 12:38
although that's *bad*.
audreyt I'm wondering why -D didn't work either. 12:40
agentzh i'm still investigating -D.
audreyt can you try
-DFOOBAR=1
or something like that?
i.e. don't rely on the implicit -D
and explicitly give -D_INTPTR_T_DEFINED=DEFINED 12:41
agentzh i'm already trying. :)
aye
k
oops...same error 12:43
which compiler is actually using? vc or gcc?
*used
audreyt gcc I think.
mingw in particular
but -D surely works, as we rely on it to fix the dirent bug 12:44
can you change src/perl5/p5embed.h
and add
#define _INTPTR_T_DEFINED
#define _UINTPTR_T_DEFINED
before the inclusion on EXTERN? 12:45
agentzh a sec
adding now
k
yay...this time surely works. :) 12:47
i'll remove the useless -D's from Makefile.PL. 12:48
successfully tested...now commit 12:49
both 5.8.7 and 5.8.8 work with pugs' perl 5 embedding now. 12:50
not sure if earlier 5.8.x also works.
audreyt pretty sure they will also 12:51
hm.
if so, can you test moving DIRENT into p5embed.h too?
agentzh glad to hear that.
audreyt that will rid us of the more fragile Makefile.PL band-aid 12:52
agentzh audreyt: will try in the next commit.
committing
audreyt agentzh++
agentzh :D 12:53
svnbot6 r13366 | agentz++ | [Makefile.PL] 12:55
r13366 | agentz++ | - removed the useless -D's
r13366 | agentz++ | [src/perl5/p5embed.h]
r13366 | agentz++ | - added macro definitions to fix activeperl 5.8.x
r13366 | agentz++ | embedding problems.
r13366 | agentz++ | (thanks audreyt++ for helping me)
12:57 xerox joined
agentzh yay, tonight is fruitful. :) 12:59
audreyt :DD
svnbot6 r13367 | agentz++ | further moved dirent=DIRENT from Makefile.PL to
audreyt agentzh: does the new rules stuff work for you?
svnbot6 r13367 | agentz++ | src/perl5/p5embed.h per audreyt++
agentzh audreyt: testing now... :) 13:01
svnbot6 r13368 | agentz++ | [ChangeLog]
r13368 | agentz++ | - s/5.8.8 is required/5.8.x is required/
agentzh audreyt: btw, how can i test it? 13:02
sorry for the dumb question.
because i got "*** Cannot parse PGE: a" 13:03
pugs> my $a ~~ /a+/
*** Cannot parse PGE: a+
audreyt: am i supposed to test the rules like that? 13:04
audreyt well, yeah, but assign $a something :)
agentzh oh, yes.. 13:05
*** Cannot parse PGE: a+
*** Error: fd:10: hGetLine: end of file
is this error normal?
audreyt exit pugs and try again
I'm fixing the empty $a bug 13:06
agentzh PGE...oh well...
i was expecting "PCR" or something...
okay
audreyt fixed that
I mean the msg
agentzh oh no...my pugs build breaks by dirent... 13:07
svnbot6 r13369 | audreyt++ | * remove "PGE" from msg text
agentzh because i have 2 perls, so it's sort of messy here... 13:08
s/so//
the dirent problem bites me. 13:09
i'll revert r13367 13:10
audreyt okie. 13:11
svnbot6 r13370 | audreyt++ | * Error handling for HsBridge.
audreyt I fixed the ~~/a+/
agentzh good to learn. :)
audreyt ?eval 1 ~~ /1/ 13:13
evalbot_r13368 *** Cannot parse PGE: 1 *** Error: fd:8: hGetLine: end of file Match.new( ok => Bool::False, from => 0, to => 0, str => "", sub_pos => (), sub_named => {} )
audreyt ?eval 1 ~~ /1/
evalbot_r13368 *** Cannot parse PGE: 1 *** Error: fd:8: hGetLine: end of file Match.new( ok => Bool::False, from => 0, to => 0, str => "", sub_pos => (), sub_named => {} )
audreyt hm.
agentzh pugs> 'a' ~~ /a/ 13:16
*** Cannot parse regex: a
*** Error: fd:4: hGetLine: end of file
(r13370)
audreyt try 13:17
'1' ~~ rule{a}
or
'a' ~~ rule{a}
13:17 Psyche^ joined, Psyche^ is now known as Patterner
agentzh k 13:17
pugs> '1' ~~ rule{a} 13:18
*** Cannot parse regex: :sigspace(1)[:ratchet(1)[a]]
*** Error: fd:7: hGetLine: end of file
it looks a bit better. :)
svnbot6 r13371 | agentz++ | - reverted r13367 since the dirent problem bites me.
audreyt hmm not really :)
audreyt ponders
try r13372 13:20
svnbot6 r13372 | audreyt++ | * try to find perl.exe too
agentzh up'ing 13:21
r13372 doesn't help. 13:22
same error here. 13:23
audreyt ponder ponder. 13:24
agentzh :)
audreyt in pugs directory try this 13:25
perl -Iperl5/Pugs-Compiler-Rule/lib -MPugs::Runtime::Match::HsBridge -ePugs::Runtime::Match::HsBridge::__CMD__
and then type in
match 1 1
1
and see what happens
agentzh okie 13:26
OK 20 13:27
PGE_Match 0 1 [] []
that is the output
seems good. ;) 13:28
audreyt yeah. 13:29
ponder pnder.
I blame CRLF.
agentzh hehe
agentzh hands audreyt a cup of tea. 13:30
audreyt thanks :)
xerox wants tea too! 13:35
obra audreyt: cl and I went to a crazy-fancy restaraunt the other day. after-meal tea had a list of super premium teas...including a USD20 teapot for one of WenShan oolong 13:36
I'd brought CL a whole bag of it when I came to visit. we were very amused. 13:37
WenShan Baozhong or however it's properly typed
audreyt WenShan BaoZhong is correct. 13:38
amusing.
agentzh LOL 13:39
USD20 ~~ 160 yuan 13:40
audreyt: bad news... 13:41
D:\projects\Pugs2>pugs -Mperl5:CGI -e "say CGI.new"
Undefined subroutine CGI::say
at -e line 0
audreyt mm?
agentzh perl 5 embedding seems broken. 13:42
audreyt it's not
CGI has autoload
we can't yet deal with fallback.
workaround:
say CGI.new, ''
an alternative is to ignore AUTOLOAD, maybe
but that seems wrong also
agentzh okay
CGI=HASH(0x11219a58) 13:43
yay
svnbot6 r13373 | audreyt++ | * More attempt at fixing PCR bridge 13:50
xerox agentzh: yuan = Ā„ ? 13:52
agentzh aye
up'ing 13:53
audreyt: it worksforme now!!! 13:55
audreyt++ audreyt++
audreyt yay!
agentzh pugs> 'a' ~~ /a/
Match.new(
ok => Bool::True,
from => 0,
to => 1,
str => "a",
sub_pos => (),
sub_named => {}
)
audreyt 'a' ~~ /a/
?eval 'a' ~~ /a/
13:58 evalbot_r13373 joined
agentzh indeed pugs no longer needs parrot. i've removed parrot.exe from my path and pugs' rules still work fine. 13:58
audreyt: maybe write something on your blog? :) 14:00
i must say fglock++
as well 14:01
audreyt agentzh: maybe write something on _our_ blog? :) 14:02
you do have a blog bit :)
agentzh :D 14:03
audreyt (as I need to sleep now :))
agentzh i'll have a try!
audreyt agentzh++
agentzh sleep well audreyt!
thanks for PCR integration!
audreyt thanks for getting to the end of 5.8.x embed! :)
agentzh it's worth hooray.
audreyt it's been haunting us for a year :)
agentzh my pleasure. :D 14:04
audreyt g'nite and have fun :) *hugs*
agentzh night!
14:10 putter joined
agentzh has a lot of funny stuff on pugs to write. 14:10
putter (ah, shift change:)
'night audreyt
audreyt putter: 'night :) 14:12
have fun playing with new rules engine :)
(one that you can much easily hack, hopefully.) 14:13
putter :)
profound thanks :)
agentzh grins.
audreyt *curtsies* *waves*
&
obra 14:14
14:16 Limbic_Region joined
agentzh Limbic_Region: please test the win32 pugs build and rules support when you have a chance. :) 14:16
Limbic_Region test how - smoke? 14:17
14:17 eden_c joined
agentzh nope, "perl Makefile.PL && nmake fast" 14:17
Limbic_Region oh, just see if it builds 14:18
was in the middle of doing that anyway
agentzh yeah
good
"perl Makefile.PL" is important.
Limbic_Region yeah, part of my regular routine since Win32 has so many issues that other platforms don't seem to 14:19
agentzh lol
that is also an advantage. 14:20
(to be an essential tester) :)
agentzh is also sleepy since he's in the same timezone as audreyt. 14:21
Limbic_Region so if I understand your apparent excitement correctly - there should be no need for parrot to do rules in pugs? 14:22
agentzh anyway, i'll finish the post before sleep.
yup!
Limbic_Region well, I am half way through the build (had already started without fast) so it should be done in 5 minutes or so
agentzh that's a long-overdue improvement.
putter |add todo For pil2js, enable p5 embedding (or the reverse) by default. Then use PCR to provide rules support.
Hmm, |todo add ... 14:23
agentzh no hurry
putter but no project manager bot. ah well.
agentzh i'm pondering what to write about on the pugs blog.
Limbic_Region well, when I suggested it - I had no idea how far people would take the idea
agentzh indeed, it's suggested by LR. 14:24
*was
i remember your conversation with audreyt. 14:25
she showed you some pieces of haskell code, which scaried me a lot.
when she said "that's easy", i said "wow" to myself. 14:26
Limbic_Region well, I doubt that I was the only one to think of it though I did so independently
and my vision of its usefullness was certainly short sighted - apparently it has many many more benefits than I realized 14:27
agentzh - build finished fine
working on the post build modules like v6 now
agentzh great
Limbic_Region so is there a specific test I should run to verify it isn't calling parrot?? 14:28
agentzh seldom runs "nmake" since it's terribly slow.
Limbic_Region On this machine it seldom takes longer than 20 minutes even from scratch
agentzh 'abc' ~~ /\w+/ should be sufficient.
Limbic_Region I can live with that
k
putter I was just now thinking "audreyt++ fglock++ <rub hands together> I can't wait for the compile to finish. It's just like Christmas." ;) ;)
Limbic_Region I will be back in a few
agentzh putter: aye 14:29
"audreyt++ and fglock++ rub hands together" is a good title for my post. :) 14:30
putter err, well, if you think so... :) 14:31
agentzh putter: do you have any insane plans on this which i can write down?
putter expectation management rule 13 for world domination - never write down insane plans 14:32
agentzh hmm, that makes much sense. :)
Limbic_Region ?eval say 'abc' ~~ /w+/ 14:36
evalbot_r13373 OUTPUT[ ] Bool::True
Limbic_Region agentzh - I don't get the same results
I get 'abc'
but no errors and nothing blows up
agentzh 'abc'? 14:37
Limbic_Region yes
pugs -e "say 'abc' ~~ /\w+/"
output 'abc'
agentzh on pugs> ?
Limbic_Region let me try it from the shell
agentzh yes, i also get 'abc' via the oneliner 14:38
which is expected.
14:38 Termy joined
Limbic_Region there I get "'abc'\nBool::True" 14:38
ok
then all is right in the world
I wiped out %PATH before testing 14:39
agentzh yep
that's good
(i removed parrot.exe directly before testing) 14:42
putter @tell audreyt re rule_recursive.t, yesterday you said it works for you, due to PCR. I'm getting non-termination of rule r { <null> | x <r> } 'x' ~~ /<r>$/ Fyi. 14:43
lambdabot Consider it noted.
putter @tell audreyt oops, no it's not (non terminating). Just looks like rules aren't working yet. 'a' ~~ /a/ works, rule r { a } 'a' ~~ /<r>/ doesn't yet. 14:46
lambdabot Consider it noted.
14:49 LimbicRegion joined
putter hmm, do we have a spec'ed $^N mechanism? I don't immediately see it... 14:50
14:51 int-e joined
LimbicRegion ? 14:52
14:53 LimbicRegion is now known as Limbic_Region
Limbic_Region better 14:53
agentzh finds the string "Limbic_Region" particularly difficult to type. 15:02
(no offense)
Limbic_Region you don't have tab completion? 15:03
in this particular channel - Lim should be sufficient
heck - my client doesn't even require the initial cap
15:03 mako132_ joined
agentzh LR: no, my irc client is not so smart. 15:04
oh...wait...tab completion? oh, yes! 15:05
Limbic_Region heh
agentzh has tried out this feature for the first time.
15:05 lanny joined
Limbic_Region wonders how long agentz has been using this client without knowing about tab completion 15:05
agentzh 2 months or so. 15:06
and i often mistype audreyt as auderyt.
lanny agentzh: turned your insertion sort failure into a test. Seems NEXT {} causes for @x loops to fail. 15:07
agentzh lanny: i'm aware of that. :)
lanny Well now there is a test to show it. :)
agentzh in fact, i'm the "author" of t/closure_traits/next.t
lanny or there will be when I commit. 15:08
agentzh lanny: you've added it?
lanny++
agentzh goes back to journaling. 15:09
lanny Just building pugs from LATEST to make sure nobody slipped in a fix on me. Had more than one bug solved between the time I discovered and time I wrote the test.
agentzh lanny: that's not very likely 15:10
especially when audreyt is sleeping.
lanny No. I didn't think so either. But it keeps me in practice for doing it at the job that pays my mortgage.
Limbic_Region lanny - you should have been around in the early days of pugs 15:11
agentzh lol
Limbic_Region bug fixes happen quickly now but they aren't found as quickly
lanny Heh. Would have been too wooly for my tastes I think. 15:12
Limbic_Region back then when bugs were rampant - you could have a dozen bug fixes in the time you were writing the test to expose the bug
agentzh i'll be insanely happy if fixes are so many.
Limbic_Region: seen my toy haskell programs? comments welcome. :) 15:13
jabbot agentzh: I havn't seen my, agentzh
agentzh svn.berlios.de/svnroot/repos/unisim...exercises/
lambdabot Title: Revision 702: /Java/exercises, tinyurl.com/fca7r
agentzh these problems are part of my schoolwork for Java. 15:14
i've implemented them in Java, Haskell, Perl 6, and possibly Perl 5.
to be honest, i like Haskell most. 15:15
it's the cleanest and also the fastest.
the relative efficiency for these languages is as follows:
GHC > perl 5 > Java > pugs
Limbic_Region agentzh - sorry, was AFK 15:16
agentzh no problem. :)
Limbic_Region have not seen it - link?
the Java exercises are really haskell?
agentzh svn.berlios.de/svnroot/repos/unisim...exercises/
lambdabot Title: Revision 702: /Java/exercises, tinyurl.com/fca7r
agentzh i've done them in 3 languages.
Limbic_Region oh great 15:17
that should help me a bit I think
I am still slowly pushing my way through YAHT
agentzh :)
YAHT is great
but is not enough.
Limbic_Region well, I play as I go 15:18
which makes each chapter painfully slow
typically because I try to get ahead of the chapter
agentzh i think that's a good way to learn. :)
Limbic_Region and with haskell - I really need to force my way through because it just doesn't fit in my head but one way (apparently)
agentzh Limbic_Region++
lanny ha ha. agentzh: I thought next.t was full of passing tests. :) Should have run the whole thing first. 15:19
agentzh Limbic_Region: i had exactly the same feeling one year ago.
Limbic_Region well, this isn't the first time I have tried
agentzh Limbic_Region: i even gave up learning at that time.
lanny: (!)
Limbic_Region gave up multiple times
agentzh giggles. 15:20
Limbic_Region but that's because too many concepts were foreign - there was no way to build a bridge from what I knew to what I didn't
YAHT is taking one thing at a time
agentzh yes
and also "Haskell Tutorial for C programmers"
the latter really gave confidence to me. 15:21
Limbic_Region and it isn't completely true to say that there are many concepts that are foreign. Conceptually I get them but my brain just refuses to think in those terms
I am now able to isolate things and then just work on that until my brain gives in
agentzh Limbic_Region: i think we're in complete agreement.
Limbic_Region agentzh++
agentzh i'll dive into Parsec later. 15:22
hopefully i can hack under src/ soon. :D 15:23
Limbic_Region well - I think Parsec is Haskell's answer to YAP right
svnbot6 r13374 | lanny++ | next.t: one small test
r13374 | lanny++ | sort.t: minor syntax changes
xerox YAP?
Limbic_Region if you grok YAPC or YAPP then you should be all set
agentzh Yapp
Limbic_Region: i've written self-hosted backtracking recursive descent parser in the last term. 15:24
Limbic_Region oh, so it should be a snap
agentzh and also a working LL(1) parser generator.
Limbic_Region and yap should have been yac
agentzh well, the error handling part in Parsec is kind of new to me. 15:25
Limbic_Region well, I have recently done a project comparing p::rd, p:yapp, hop::parser, parse::earley,, etc
I haven't even looked at it - so completely foreign to me
agentzh yeah, you were seeking every bit of info on parsing modules during a while.
parsec seems to be a top-down parser. 15:26
yapp is bottom-up iirc.
Limbic_Region interesting 15:27
I am likely misinformed or just misremembering
lanny Hmm. Yapp page says it's recursive descent
agentzh lanny: ah, i didn't know.
putter is there a p5 or p6 packrat parser yet? 15:28
agentzh Parse::Yapp - Perl extension for generating and using LALR parsers.
lanny: LALR is recursive descent?
lanny: i don't think so.
agentzh got 97' in his compiler theory exam. 15:29
putter came across a scm2cl'ed CL packrat autoderived from a scheme packrat. thought we could easily play the same game.
Limbic_Region almost flunked out of highschool
lanny I'm just reading off the page. Don't blame me. :)
agentzh lanny: i was not. :) 15:30
Limbic_Region packrat is speedy choice when backtracking is going to be a large part of the parsing right - but if no backtracking then overkill?
lanny aha. I was looking at o-xml's yapp
agentzh heh
15:30 xdg joined
lanny No. LALR should be shift-reduce and table driven if I recall my compiler class correctly 15:31
agentzh lanny: yes, it's a shift/reduce parser.
lanny I made someone less than 97's though.
agentzh *and* it is a bottom-up parser.
lanny s/someone/somewhat/
agentzh if LALR is top-down, it won't be so powerful. 15:32
Limbic_Region well, I am off to watch a movie with my wife - TTFN all 15:33
lanny Bye, Limbic
I should figure out something to do with my little girls on such a nice day. Laters, agentzh.
agentzh lanny: have a good time :)
agentzh restarts journaling. 15:34
putter note that LALR is actually a characterizes the grammar, rather than the parser. given a grammar with characteristics x, one can use a parsing technique q. and a single grammar inevitably has different sections with different characteristics. which one can use different parsing tech on. the current, 15:36
15:36 zgh joined
putter long standing, situation where parsers only handle one parser tech, and thus on flavor of grammar, is a horrible software eng pathology which p6 will hopefully eliminate. one of many likely contributions to the world of p6. ;) 15:37
hmm, there's an analogy. just as ruby on rails is driving other languages to do similar things, and p4/5 drove languages to include regexps, p6 will hopefully drive a fix to a 30+ "our parsers suck" bottleneck. 15:39
agentzh i most like p6's regex feature. :) 15:40
i've noticed how p6 has been combining different parsing strategies into a whole. 15:41
that is a really charming direction.
consider we have both top-down parsing and bottom-up parsing in a single parser...wow... 15:42
putter agreed. universal parser.
agentzh indeed
putter hmm... just in case there's a misunderstanding... 15:43
15:43 Insolit joined
putter the p6 parser, ie that parses p6 code, is indeed a sandwich parser. top down to expr, then bottom up, on tokens defined top down. but, 15:44
agentzh bottom up on operators, right? hehe
top down on tokens, yeah
putter the underlying rules machinery should be able to handle *anything*. thus the universal parser concept. "parser" is getting overloaded in this conversation. ;) 15:45
agentzh any data structures?
putter any grammar. left recursive, right recursive, no lookahead, infinite lookahead, etc
agentzh ah 15:46
that is really awesome. :)
putter yes :)
agentzh we need a very big test suite for this.
putter lol
agentzh s/big/good/
15:46 weinig is now known as weinig|bbl
agentzh testing parsers is particularly tricky. 15:47
debugging one is even trickier.
putter once we start being able to run other languages' code, we can use their test suites. ie, if you have Parser::Convert::FromYacc, and, sigh, probably also need Language::C::Interpreter, you can then run the yacc test suite. 15:49
agentzh hmm, that is very clever.
but i'm doubting if it would also make debugging even more difficult. 15:50
the test suite should be divided into different levels.
putter cpan needs a tcc package. maybe a cint package too. weeee.
agentzh lower levels test basic things while higher levels test advanced features.
putter now that macs are x86 :) 15:51
agentzh tcc?
putter fabrice.bellard.free.fr/tcc/
lambdabot Title: TCC : Tiny C Compiler
agentzh oh
putter note libtcc, a library which can compile and link C code at runtime without touching disk.
agentzh awesome... 15:52
putter re levels, yes, borg'ing test suites (need to find a less perjorative name for the process) is more of a coverage approach 15:53
s/coverage approach/way to obtain broad test coverage/ 15:54
hmm. what is the canonical way to run v6? with pwd == pugs, perl -I...??.... -e 'use v6;' ? 15:57
15:58 eden_c joined
putter man page assumes v6.pm is in lib/, which it isn't, even after make test... 15:59
16:00 zgh joined 16:05 iblechbot joined
putter fglock, et al: is it possible to run v6 out of the pugs directories, rather than installing it and thus having version issues? 16:10
16:13 avarab joined 16:14 justatheory joined
putter feather folks: perhaps we could have a p5 v6 bot running? 16:18
anyone: want to write the p5 utility code for a boxed (set up clean directory, chroot, resource limit) perl running v6? 16:19
hmm, or just sbox a cgi. 16:20
rafl_ would like to do that. 16:23
16:25 Psyche^ joined
TimToady hmm, my make smoke hung on ext/Perl6-Grammar/t/basic.t, not using any CPU. Looked like an infinite sleep or something... 16:25
16:26 lollan joined
putter me too. audreyt swapped out PGE for PCR before heading off to sleep. so there's a bit of brokenness just now. 16:28
one should be able to revert to say r13356 to get the old rx engine. 16:30
16:31 avarab is now known as avar
putter later & 16:33
TimToady it's waiting for a subprocess: 16:37
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
larry 2876 0.5 0.5 12268 8536 pts/7 S+ 09:33 0:00 /usr/bin/perl -Iperl5/Pugs-Compiler-Rule/lib -MPugs::Runtime::Match::HsBridge -ePugs::Runtime::Match::HsBridge::__CMD__
16:37 Psyche^ is now known as Patterner
TimToady maybe it's finding an old installed Pugs-Compiler-Rule or something... 16:37
svnbot6 r13375 | agentz++ | [util/podhtm.pl] 16:42
r13375 | agentz++ | - emits HTML to stdout if no --out is specified.
16:44 larsen joined
TimToady nope, removed those, and it still hangs. 16:44
probably just getting out of sync pipewise. 16:46
as with parrot, I'd much rather run an embedded PCR than a piped one... 16:47
16:54 frankg joined
svnbot6 r13376 | audreyt++ | * 18:47 < TimToady> as with parrot, I'd much rather run an embedded PCR than a piped one... 17:03
r13376 | audreyt++ | ...as usual, your wish line is my command line. :-)
17:05 zgh joined
pasteling "agentzh" at 210.22.200.67 pasted "Pugs blog draft (please review)" (41 lines, 1.5K) at sial.org/pbot/19730 17:13
"agentzh" at 210.22.200.67 pasted "oops, can't get access to irc any more...sigh. but i can read the irc log." (1 line, 9B) at sial.org/pbot/19731 17:16
svnbot6 r13377 | audreyt++ | * Allow for rule redefinition via ->reinstall. 17:17
audreyt agentzh: there's nothing "pure Perl 5 + XS" about it
lambdabot audreyt: You have 2 new messages. '/msg lambdabot @messages' to read them.
audreyt it's true that PadWalker is XS and is maybe reuiared for /<$foo>/
but for the part that pugs currently uses you don't need to install anything
zero dependency
lambdabot: @messages
lambdabot putter said 2h 34m 44s ago: re rule_recursive.t, yesterday you said it works for you, due to PCR. I'm getting non-termination of rule r { <null> | x <r> } 'x' ~~ /<r>$/ Fyi.
putter said 2h 31m 57s ago: oops, no it's not (non terminating). Just looks like rules aren't working yet. 'a' ~~ /a/ works, rule r { a } 'a' ~~ /<r>/ doesn't yet.
pasteling "agentzh" at 210.22.200.67 pasted "Okay, so i should say "pure Perl 5"?" (1 line, 9B) at sial.org/pbot/19732 17:18
audreyt yes.
you can also mention that this reuses the now-on-by-default perl5embed 17:19
which thanks to a certain agentzh++ now works on win32 for activeperl 5.8.anything also.
pasteling "agentzh" at 210.22.200.67 pasted "okay. audreyt: btw, pugs hangs on regexes like ' abc' ~~ /<ws>+ \w+/. is that normal?" (1 line, 9B) at sial.org/pbot/19733
audreyt maybe you want /<space>+\w+/ ? 17:20
but infloop is certainly not normal
alarm() support welcome on the HsBridge...
anyway, the blog post looks good :)
agentzh++ 17:21
*back to sleep*
pasteling "agentzh" at 210.22.200.67 pasted "ahhhh" (1 line, 8B) at sial.org/pbot/19734
audreyt @tell putter named rules is now in as well.
lambdabot Consider it noted.
17:30 putter joined
putter thanks audreyt 17:30
lambdabot putter: You have 1 new message. '/msg lambdabot @messages' to read it.
putter you beat me to the commit, though yours is cleaner. ;)
pasteling "agentzh" at 210.22.200.67 pasted "journal's up: pugs.blogs.com/pugs/ Good night, everyone~~~ &" (1 line, 8B) at sial.org/pbot/19735 17:37
putter TimToady: my experience is a mature piped solution can be even more reliable than an embedded one, unless the embedded engine was written with embeddability being a primary focus. 17:40
svnbot6 r13378 | putter++ | A HsBridge.pm hang fixed. Now correctly exit()s when there are PCR errors. 17:47
r13378 | putter++ | Such as '^' not implemented, Emitter/Rule/Perl5.pm line 361,
r13378 | putter++ | with perl -Iblib6/lib ext/Perl6-Grammar/t/basic.t .
nothingmuch in which syn is the longest token rule specced? 17:51
putter a grep turns it up in a bunch of ./Perl6/Spec/ , def in Rule.pod, which refers to it as venerable. :) checking rule Snn... 17:56
S05
appearances also in sub, syn, and op. which correspond to... hmm... dont see the fetch in my make log... curious. 18:00
ghc is giving off C++ vibes - change one line, and watch the universe recompile. :/ 18:06
nothingmuch putter++
svnbot6 r13379 | putter++ | Avoid losing the first line of error messages from the PCR rx engine. 18:11
18:12 buetow joined
putter wonders if PCR really could possibly have not implemented ^. seems unlikely. 18:13
18:16 Aankhen`` joined
putter TimToady: re smoke, basic.t now doesn't hang. I'm running the t/rules/ tests now. 18:16
18:17 RakeshBalakrishn joined 18:19 RakeshBalakrishn left 18:20 Limbic_Region joined 18:37 mdiep_ joined 18:50 mdiep joined
putter soo... anyone who wants to hack p5 code, perl5/Pugs-Compiler-Rule/lib/Pugs/Emitter/Rule/Perl5.pm would be a place to start. 18:55
19:00 xern joined 19:03 mdiep joined
putter running smoke... 19:04
19:04 avar joined 19:05 elmex joined
putter @tell fglock It could be useful to do a "interview the expert" with you sometime, to get a brain dump of how PCR etc work. Though I'm still exploring, so that may already exists. :) 19:07
lambdabot Consider it noted.
19:20 Limbic_Region joined
putter eep. that was quite the interesting sentence, 19:24
19:28 Termy joined
svnbot6 r13380 | kudra++ | This week's summary, a little early 19:29
19:46 TimToady joined
TimToady I should not have bragged about my server staying up for six months...it just crashed. 19:46
svnbot6 r13381 | zgh++ | typo: the HTTP::Simple::Server bug was happening with the default port was *not* used 19:50
putter And there are very many people who would believe there is causality or correlation there. :/ 19:51
zgh uptime is a false ideal anyway 19:52
Khisanth TimToady: but at least now you know it is listening :) 19:53
20:29 buetow joined 20:34 buetow joined 20:35 weinig|bbl is now known as weinig 20:50 putter joined
putter smoke up 20:50
hmm, more recent smoke already up. err, just how does one get a smoke in 30 min?? ghc 6.5? very wizzy machine? magic incantations I have... neglected... oops. Precompiled Test I assume. Ah well. ;) 20:51
svnbot6 r13382 | putter++ | pX/Common/regexp_engine_cruft/ created. 20:53
r13382 | putter++ | Learning PCR Ratchet.pm, I was trying to remember how some old spike-related factory code worked. Which had never been checked in. Now it has.
TimToady it's just a thinkpad. 20:59
ghc 6.4.2
and I always compile optimized 21:00
because I have enough memory to do it fairly rapidly
(1.5Gb)
(also I'd mostly recompiled before from when it was hanging...) 21:02
but it's the thinkpad obra++, so I think it came with some extra TLC. 21:04
s/,/gave me,/
anyway, thanks for the fix! putter++ 21:06
svnbot6 r13383 | putter++ | Pugs/Compiler/Regex.pm - fixed "unknown parameter 's'" error. Eg, in t/rules/from_perl6_rules/word.t . 21:12
putter Ah, obra magic. No doubt. ;) 21:13
21:16 MacVince joined 21:20 putter joined 21:36 zeriod joined 22:01 weinig is now known as weinig|bbl
pasteling "putter" at 66.30.119.55 pasted "PCR errors for t/rules/, sorted by file." (402 lines, 39.2K) at sial.org/pbot/19739 22:08
"putter" at 66.30.119.55 pasted "PCR errors for t/rules/, sorted by error." (287 lines, 37.3K) at sial.org/pbot/19740 22:09
putter I was looking into <null> error. No joy. While the HsBridge.pm use()s don't quite match the Pugs/Compiler/Rule.pm pod, I didn't quite see how sub null is intended to be inherited. 22:13
Oh, the "PCR errors" pasts are from an old run. The "unknown parameter 's'" errors are gone. 22:15
everyone: it's all perl _5_, there is a list of failing tests... come play! :) 22:18
src/Pugs/Embed/Perl5.hs calls perl5/Pugs-Compiler-Rule/lib/Pugs/Runtime/Match/HsBridge.pm , and all subsequent activity is under perl5/Pugs-Compiler-Rule/lib/Pugs/ . 22:19
pugs is just doing "perl -Iperl5/Pugs-Compiler-Rule/lib -MPugs::Runtime::Match::HsBridge -ePugs::Runtime::Match::HsBridge::__CMD__", so no haskell knowledge needed... 22:21
night &
22:31 dduncan joined 22:34 ezraburgh joined
dduncan can I get something clarified? ... given how it is now being used, is embedded Perl 5 a hard dependency for Pugs now, such that it won't work for practical purposes without Perl 5 being embedded? 22:35
22:35 what3 joined
dduncan if it is a hard dependency, then are we still also using PCRE, or was that dropped in favor of using "the original" for :perl5 regexes? 22:36
or, should I say, *will* PCRE be dropped, or is PCRE still easier to use for our purposes that warrants it being an extra dependency? 22:42
22:45 xerox joined 23:10 xdg joined 23:12 elmex joined
svnbot6 r13384 | Darren_Duncan++ | ext/[Locale-KeyedText|Rosetta]/ : replaced any perl5 regexes with normal Perl 6 rules, now that they would compile without an embedded Parrot 23:22
23:25 buetow joined
svnbot6 r13385 | markstos++ | [Changelog] 23:43
r13385 | markstos++ | Updated list of CGI.pm changes to be comprehensive.
23:43 int-e left 23:45 markstos joined 23:52 discordja joined
zgh is there documentation about the redesign of CGI.pm for perl6? 23:56
i saw it mentioned in the summary
i can't get it to work with HTTP::Server::Simple right now either...
markstos zgh: There is no grand plan. Darren Duncan posted ideas about what he' d like to see, but anyone is welcome to hack on it.
lambdabot markstos: You have 1 new message. '/msg lambdabot @messages' to read it.
markstos zgh: Would you like some help fixing HTTP::Server::Simple to work with the current CGI.pm design ? 23:57
zgh indeed, it just seems like %*ENV isn't making it around, but it's hard to tell 23:58
markstos specific failing test reference please?
zgh markstos: I could sure use some pointers in that regard 23:59
ah ... well I have none
yet!
markstos Ok, write a test for HTTP::Server::Simple that fails in a way that is related to CGI.pm, and I'll look at it if you want.