pugs.blogs.com | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | <stevan> Moose... it's the new Camel ":P | .pmc == PPI source filters!
Set by Alias_ on 16 March 2006.
avar theorbtwo: what do you mean? 00:11
TimToady theorbtwo: I don't think Pugs actually believe in Range objects yet. When it does 1.1 ~~ 1..2 should work right. 00:27
that is, the interpretation of the endpoints also depends on the use to which the Range object is put. 00:28
1..2 is not just a synonym for 1,2
you'll note that Pugs currently tries the synonym approach, which is less than successful with 1..Inf 00:29
00:32 jsiracusa joined
theorbtwo TT: /Wonderful/. 00:32
jsiracusa quoth the audrey, "...the postcircumfix <> macro, which then desugars to a postcircumfix {} lookup" 00:33
my question: what, exactly, is "sugared" about <> when compared to {}?
00:33 wilx joined
aufrank jsiracusa: <> does quoting for you 00:34
Khisanth well if you take a < and bend it ...
aufrank %foo{'a'} === %foo<a>
jsiracusa === $foo{word} # in perl 5 anyway
is that illegal perl 6?
TimToady depends on whether you've declared a word function. 00:35
it doesn't autoquote
aufrank not sure, but I think not if you mean to use the string 'word' as a key
TimToady that special rule is gone
jsiracusa okay, just wondering 00:36
thanks
aufrank np
TimToady your welcome
jsiracusa s/r/'re/; # whee 00:37
TimToady ...is always assured here. :P
jsiracusa heh 00:38
infinite lookahead!
TimToady in IRC?
sign me up.
in Perl 6, I'll pass. 00:39
avar TimToady: Do you know how perl(1) internals work, roughly, or are you long-since lost?;) 00:40
TimToady I still know far too much about that... 00:43
and was forcefully reminded of many of the details while working on my p5-top-p5 translator last year 00:44
did you have an internals question? 00:45
or just curious?
avar I was just curious;)
TimToady: Well actually there is one issue I've been asking around about, it's about XS though, could I bother you with it?;) 00:54
TimToady haven't done a lot with XS lately 00:55
I remember there was something about typemaps, and a preprocessor... 00:56
Hmm, why am I getting Post Traumatic Stress here... :) 00:57
avar ;) 01:01
YetAnotherEric :-) 01:02
YetAnotherEric skipped that and went straight to Inline::C
avar YetAnotherEric: too bad you can't really use that for production like XS 01:04
YetAnotherEric why not?
avar well, depends on what you mean by "production"
it's not in perlmodlib for one;) 01:05
YetAnotherEric you mean "goes in the core" ?
I've been told by several that do other than in-house stuff that yoinking the generated XS and shipping it works
avar Not just that, running Inline::C stuff creates temp files, and just looks like a PITA;) 01:06
that might work;)
YetAnotherEric has yet to squint at M::B in the right way to figure out how to make that magickal
mkdir ~/.Inline
avar I'm making XS stuff for $job, I might give inline another shot if I have trouble making my XS stuff;) 01:07
YetAnotherEric there's also the VERSION => '0.01' thing that turns off all inline-ishness at build/install time
heh. how off-topic is Inline for perl6? 01:08
avar I don't think anyone cares;) 01:09
01:10 frederico joined
avar TimToady: anyway, if you want to take a look (or anyone else) svn co avar.lir.dk/vcs/src/perl/xs/Hello/ and avar.lir.dk/vcs/src/perl/xs/Hello/README.pod 01:19
YetAnotherEric avar: having build issues? 01:22
avar yeah;/
YetAnotherEric Inline example: search.cpan.org/~ewilhelm/Math-Geom...ygon-0.05/ 01:25
did you start with h2xs?
avar no, I'm having issues because I'm going outside the h2xs path of one-xs-file-per-dir-with-Makefile.PL 01:26
YetAnotherEric sounds like ExtUtils::MakeMaker is skipping your ext/ dir 01:27
avar "If an extension is being built below the "ext/" directory of the perl source then MakeMaker will set PERL_SRC automatically (e.g., "../..")." 01:28
mm, doesn't matter if I put it elsewhere 01:30
YetAnotherEric hmm. you want the ext/Hello/blib tree merged into blib/ right? 01:33
avar yeah, it works if I just do rsync -av --progress --stats ext/Hello/blib/ blib 01:36
01:39 oozy joined
avar documents some more 01:39
YetAnotherEric avar, "If an extension is being built below the "ext/" directory of the perl source" ? 01:40
you're not in the perl source
avar I know, that stuff was irrelivant, but it's the only reference to "ext" being a magical name 01:41
YetAnotherEric: updated the readme, 01:48
avar goes read ExtUtils::MakeMaker source
YetAnotherEric PMLIBDIRS => [ 'lib', 'ext/'], 01:51
seems to make a bit of difference, but doesn't do the trick
theorbtwo puts on his parka so the little bits of avar's brain don't get all over him.
avar I'm beginning to doubt that MakeMaker supports this at all 01:55
theorbtwo Goodnight. 01:56
01:56 justatheory joined 02:18 weinig joined
YetAnotherEric avar, it looks like you're really stuck there 02:24
problem is that you want it to use two parallel lib/-like dirs
spinclad [re *]: i think of 'whatever', or '*', as a generic element, lying 'everywhere' in the domain, such as 0/0 (or NaN) in the rationals. Inf is more specific, with value 1/0, and lies at the 'point at infinity' (the vanishing point) on the projective line, not everywhere. 02:25
YetAnotherEric it can do recursive builds, but each should be able to stand alone -- since your ext/ is req. for testing, you have to change your layout
spinclad ('6' x *) ~~ / 6 * / is a nice pairing of generator|template with pattern... ('however many' on both sides) 02:26
otoh, * meaning 'all' has good tradition...
avar YetAnotherEric: but even after make test works (and if), there's still the issue of the whole thing not installing
spinclad [i fear this will get lost in the backlog...] 02:28
02:37 FurnaceBoy_ is now known as FB|afk 02:41 ko1_away is now known as ko1
YetAnotherEric avar, either hack an rsync in there somewhere, put them together, or drop EU::MM 02:42
TimToady why do you think this will get lost in the backlog? 02:43
02:43 ayrnieu joined 02:44 FB|afk is now known as FurnaceBoy
avar YetAnotherEric: And use what (if not EU::MM) 02:45
YetAnotherEric try Module::Build 02:46
spinclad TT: just because there's *so much* backlog all the time (and most of it mostly worthwhile) 02:47
but my present fear is relieved... 02:48
TimToady I think * just means "do the right thing here, for some maximized value of Right" 02:50
but that is heavily context dependent. 02:51
spinclad so * is a maximal element?
02:51 ayrnieu joined
TimToady sure is in regex 02:51
and Inf is pretty maximal
and a *'ed dimension just maximizes the selection in that dimension. 02:52
spinclad well, *+ is, sure, but is *? ?
TimToady We haven't defined a standalone *? outside of regex yet.
It doesn't seem quite so useful: "do a minimally Right Thing here". 02:53
02:53 YetAnotherEric joined
TimToady 0..*? would be 0..-1 and give you a null range maybe? 02:53
spinclad 'do a least fixed point of this spec'
TimToady that doesn't mean anything to me
are you speaking about Nash equilibria? 02:54
spinclad no, as in recursive definition
TimToady still don't see the use of it. 02:55
but I've never claimed to be a mathematician...
spinclad 0! = 1; n! = (n-1)! * n, for example
TimToady A nice factorial, but I don't see how it relates to the prhase "fixed point" 02:56
"least fixed point of this spec" rather
spinclad find the smallest partial function that satisfies this definition
so 0 -> 1; 1 (recurse once ) -> 1; etc 02:57
TimToady okay, I never actually quite got to partial functions...
maybe we'll just leave a hole in the grammar right there and you can have *? to do whatever you want with. :) 02:58
spinclad you want the least fixed point so that i! doesn't get defined as whatever, and then (i+1)! = i! * i... 02:59
TimToady actually, there's a sense in which * already implies "least", at least in the lazy sense, in contrast to **.
(but not in regex).
sounds like a "please just nail something down first" idea 03:01
Does mathematica have a notation for this?
or does it just happen. 03:02
spinclad oh, no, i wasn't actually asking for *? , just follow associations
TimToady ooh, that's dangerous. next thing you know, you'll turn out like me.
spinclad *following
i know... or vice versa 03:03
TimToady it helps to believe six impossible things before breakfast if you rarely eat breakfast...
spinclad oh... here i thought it was *eat* six impossible things for breakfast 03:04
and you'll have an interesting day
TimToady I've had breakfasts like that...
FurnaceBoy actually, I think it's "DO six impossible things...."
03:05 coumbes joined
spinclad you make em, i'll eat em... 03:05
spinclad trusts and dies
FurnaceBoy TT, you know how Mathematica's pattern matching (MMD, sorta) works?
there is a heuristic that finds the most specific match ... but it's about 15 years since I was intimate with that stuff :)
I should say, "rule matching"... 03:06
f[1] := 1
f[n_] := n*f[n-1]
or something like that.
TimToady actually, I don't know a thing about mathematica...
i just suspect it has to have some kind of decent pattern matching engine in it, or it wouldn't actually be able to *do* math. 03:07
FurnaceBoy well, I am talking specifically about its rule/template matching,
which is like MMD, or C++ dispatch, but very flexible
TimToady looks kinda prologgy/haskelly
FurnaceBoy yes,
used in that mode, it sorta is 03:08
TimToady but I'm sure it goes rather deeper
FurnaceBoy that's one thing Mma and Perl have in common, they easily span paradigms
TimToady or it wouldn't have the rep it has
FurnaceBoy likes the Mma language a lot, but it's wordy
TimToady is there anything glaringly missing from Perl that Mma gives you? 03:09
(other than math :)
(and sanity...)
FurnaceBoy a lot of things map back and forth easily. 03:10
TimToady (and that we could, um, lovingly emulate?)
FurnaceBoy heh!
I don't think Perl can be as *focused* as Mma in some domains
OTOH,
TimToady fair enuf 03:11
FurnaceBoy Perl is a greater general purpose language
more concise, and 'optimised' for so many domains that Mma doesn't go near
so, they're both going to excel in their spheres, I think.
TimToady but with P6 we're trying to keep it *focusable* even where it isn't focused.
FurnaceBoy yeah.
well, that pattern/rule/template matching idea is one to think about,
and in fact,
ayrnieu deciphers 'mma' as 'mathematica'.
FurnaceBoy that factorial example is one of the simpler demonstrations of it 03:12
can Perl6 do that?
define two rules, and in that way, define an effective factorial?
TimToady yeah, pretty much.
FurnaceBoy (memoisation is a very trivial enhancement in Mma)
okay.
TimToady p6 too
FurnaceBoy well, the templates in Mma can be much more complex than that, of course
TimToady "is cached", if it doesn't happen by default
well, we're going for generalized reversible tree mappings 03:13
FurnaceBoy yeah, cached... simply involves adding more rules to the db as a sideeffect
TimToady recursive signatures within patterns and such.
FurnaceBoy f[n_] := (f[n] = n*f[n-1]) (* or so my 15-year old memories hint *) 03:14
yes, "tree" fragment signatures I *think*
never used that part much, but admired its elegance.
have you met Mr Wolfram?
TimToady nope
been doing a different kind of science... 03:15
FurnaceBoy you should discuss these things with him, I think he designed the language himself
it's rather elegant
the reason I suggest him, is because it does seem that he thought about a lot of this stuff rather deeply
so probably has something to convey ... :)
03:16 macroron__ joined
FurnaceBoy it's a shame that Mma's guts are all proprietary and locked away 03:16
TimToady he's certainly done a fairly good job of making something with mass appeal, for some definition of mass
FurnaceBoy great cultural loss.
yeah, but it's not a crummy language designed by a mathematician, is what i'm saying; it has a kind of elegance just as a language and a system ...
TimToady well, maybe we're on the way to fixing that... :)
FurnaceBoy heh!
I'll keep that in mind. 03:17
TimToady I'm nothing if not hubristic. Very humble about it though.
FurnaceBoy if I think of anything, I'll bring it up, but there are real Mma experts out there who could be canvassed
I feel so distant from the time when I was close to it
(but the fondness remains :)
TimToady yeah, well, we all move along our various trajectories... 03:18
FurnaceBoy I've occasionally wondered about cloning the language
it's a delicious ambition, but an Audrey-level intellectual exercise
Wolfram cannot be underestimated as a thinker :)
TimToady there are not many Audrey's in the world. And it takes more than intellect to be an Audrey. 03:19
FurnaceBoy I appreciate that :)
TimToady or a Wolfram.
interestingly, I actually posted on Usenet lo these many years ago that I thought were were all running in a big simulator. 03:21
FurnaceBoy Fredkin's thesis
TimToady Fredkin?
spinclad that our observed physics is just that of some cellular automaton 03:23
FurnaceBoy yeah, a.k.a. Digital Physics?
spinclad Ed Fredkin
FurnaceBoy he has a page on it. MIT.
TimToady ah well, I didn't imagine I was the first to think of it... 03:24
FurnaceBoy :)
nor Wolfram, methinks
but he did write the 'bible' on it ;-)
FurnaceBoy has a copy of NKOS but ... (to his chagrin) hasn't read it ... yet
TimToady one passed through my house in the hands of my physicist son, but I don't know where it got to. 03:25
haven't read it either...
FurnaceBoy heh!
TimToady only one of me, alas...
FurnaceBoy you should ask him what he thought.
it is certainly a beautiful book.
TimToady I know what he thought. He said Wolfram has a lot of interesting ideas but goes kinda crazy. 03:26
FurnaceBoy LOL!
TimToady Gee, that's just what I aspire to...
FurnaceBoy not an uncommon reaction
exactly!
' This wild thought echoes Yevgeny Zamyatin's famous literary credo of 1921: "The point is that there can be a true literature only where it is made not by efficient and trustworthy clerks, but by madmen, hermits, heretics, dreamers, rebels, skeptics."'
TimToady the poetic version of "all progress depends on the unreasonable man..." 03:27
but also a sexists formulation, since there are also madwomen... 03:28
FurnaceBoy yeah. funny six categories there, now I think of it. not five, not seven
and you can't leave one of them out, they might be upset
"hey! I'm not mad, hermitic, heretic, or sceptical, but I am a rebel, sod it all, and I want my place in literature!" 03:29
TimToady hemmingway, I think. well, maybe mad...
FurnaceBoy those six cover a lot of ground :) 03:30
TimToady it would be interesting to try to find an interstice or two.
FurnaceBoy Kafka maybe?
well, being one of those things is necessary but not sufficient, as they say
TimToady of course, just to get anything done, you arguably have to open yourself up for misunderstanding in many of those dimensions. 03:31
03:31 KingDiamond joined
FurnaceBoy one of the appealing things about programming is that if nobody else does, the machine must. :) 03:31
understand, that is
it's tremendously antisocial not to write comments, though ;0)) 03:32
TimToady I suppose we might try looking under the lamppost for efficient and trustworthy clerks who also produced great literature...
spinclad Einstein 03:33
FurnaceBoy yeah,
but he wasn't REALLY a clerk, deep down.
he just pretended to be one, for a while
deep down he was a heretic, a dreamer, a rebel
TimToady most of these categories generate their own plausible deniability field... 03:34
FurnaceBoy you mean like an immunity?
Hunter S. Thompson spans all six in some sense, I think 03:35
TimToady seems to me there were a lot of efficient and trustworthy clerks who were also hermits
FurnaceBoy yes, "necessary but not sufficient" :)
spinclad i think E must have been a real clerk, efficient and trustworthy (you only have to do the job, after all); but his Great Work was not as a clerk
TimToady I don't think Tolkien really fits any category but dreamer 03:36
FurnaceBoy we all go through phases... I don't see his clerk phase as important in the arc of his life
TimToady but hey, "necessary but not sufficient" :)
FurnaceBoy Tolkien might be a sceptic in the sense of ... techno-sceptic, I seem to recall 03:37
not Luddite,
but ...
spinclad sceptical of modernity
FurnaceBoy something like that.
of progress.
Douglas Adams, definitely sceptic
TimToady I think the six categories can all be summed up as "people for whom regular life sucks" 03:38
FurnaceBoy LOL!
I have spent so much time around such people that to me, they are the normal ones
TimToady must suck. :)
FurnaceBoy not really, I feel blessed. it's the wasteland of normal life that frightens me.
TimToady a hermit too. wow 03:39
FurnaceBoy me? sure.
I doubt I'm the only one here.
spinclad sucking, and the roots of sucking, and the end of sucking, and the eightfold way
FurnaceBoy laughs
and then there's Solaris
FurnaceBoy has been installing a SunFire X2100 and Sol10 these past couple of days 03:40
mod_perl next!
TimToady I think my goal is to be an efficient and trustworth heretic. 03:41
FurnaceBoy LOL! 03:42
very witty, Wilde.
TimToady eh, it's not real wit. I just keep mixing sensible things around till they almost make sense 03:44
makes for great quote fodder, anyway.
FurnaceBoy ineed.
like I said the other day to a friend, you're always good for a one-liner.
spinclad me: mad likely, heremitic, heretic most thoroughly, dreaming of quantum gravity... not so actively rebelling; skeptic goes without saying; need to study efficiency and trust-worth 03:45
FurnaceBoy indeed. I can do more on the efficiency front myself.
TimToady not if you want to produce literature. :)
my son is doing quantum gravity a U. Maryland... 03:46
spinclad ooh! nice!
TimToady doesn't like string theory...
spinclad loop or string ... loop?
TimToady maybe we should invent buffer theory instead. 03:47
spinclad fill a buffer with spin foam in all possible ways, equally weighted
FurnaceBoy TT, are you concerned he will toss in the theory and become an empirical byte shuffler like you"? 03:48
TimToady add a few persistent accounting errors and you have "real" mass
nah
he's not much into the empirical side at all.
FurnaceBoy interesting. I don't have much of a head for theory these days, but a mathematician friend says it's just because I don't exercise those muscles. 03:49
TimToady couldn't even interest him in computer programming.
FurnaceBoy my mental exercise is all focused on text and patterns
spinclad may his niche be fulfilling
FurnaceBoy hopes so too
TimToady he'll do good, one way or another. 03:50
maybe invent a field that doesn't exist yet.
npi
spinclad sorry, must go, bandage call and bed & (and thanks) 03:52
03:53 justatheory joined
FurnaceBoy bandage call. sounds like something out of Erich Maria Remarque... 03:57
04:11 scook0 joined
FurnaceBoy ' the "pphaneuf syndrome": the problem is solved so thoroughly by so little code that nobody can believe your code actually solves the problem... or that you did any work. ' 04:19
advogato.org/person/apenwarr/diary....?start=122
04:33 bsb joined 04:42 bsb left
Khisanth TimToady: seems like you would be a tough act to follow if he went into computer programming :) 05:36
TimToady I suspect he'll be a tough act to precede if I go into quantum physics. :) 05:38
05:51 Khisanth joined
YetAnotherEric re: pattern matching/multiple dispatch... 06:04
I'm not certain that I really get it, but rubyforge.org/projects/multi/ 06:05
err, multi.rubyforge.org/ 06:08
and by "get it", I mean I don't know why I would want to write a function n times in most cases 06:10
06:18 reZo joined 07:14 BooK_ joined 07:30 Aankhen`` joined 08:09 iblechbot joined 08:26 integral_ joined, ghenry joined 08:29 integral_ is now known as integral 08:56 DaGo joined 09:13 chris2 joined 09:43 lumi joined
svnbot6 r10057 | pmurias++ | Inline::Parrot: 09:43
r10057 | pmurias++ | PMC can now be passed into arbitrary perl globals
10:03 theorbtwo joined 10:04 elmex joined, KingDillyDilly joined 10:07 xerox joined
KingDillyDilly There seems to have been progressively more web discussion about Perl 6 over the years, but for some reason I keep finding webpages from 2002. For example, www.perl.com/pub/a/2002/01/30/pmcs.html . Luckily, I can't really understand it anyway. 10:08
Not enough cross references for terms like "data type." 10:09
10:09 pmurias joined
svnbot6 r10058 | pmurias++ | Inline::Parrot: 10:09
r10058 | pmurias++ | + TODO
r10058 | pmurias++ | + Inline/Parrot/PMC.pm
r10058 | pmurias++ | + send_pmc
r10058 | pmurias++ | + get_int
KingDillyDilly Actually, I'd complain if I had to click a zillion links too. 10:10
ingy hola 10:11
pmurias i 10:14
hi
i'll be away for two weeks so Inline-Parrot so i invite all to change it at will during my absence 10:16
bb in two weeks&
10:20 lypie joined
KingDillyDilly It may be a good idea to not title an article "Beginning..." unless it's written like one of those "...For Idiots" books. Then beginners won't get discouraged if they don't understand. 10:20
lypie audreyt: so now i finally have my nifty new laptop... and ghc doesn't run natively on it 10:21
ayrnieu When beginners are expected to be discouraged, name it "A Gentle Introduction To ..." 10:23
KingDillyDilly Yes. I just hope the writer realizes when someone might be discouraged. With titles like "Beginning..." for articles like www.perl.com/pub/a/2002/01/30/pmcs.html I'm not so sure.... 10:26
But maybe it's one of those cases of me snooping around the internet where I shouldn't be. Maybe I need to start with beginner material and not progress unless it refers me somewhere. 10:27
Which I won't do because I like poking around to learn about things as I hear about them. I like reference books, not cover-to-cover reading. 10:28
Buch such books are bigger and more expensive than others, so I rely on the internet, which sucks. 10:30
s/Buch/But/ 10:31
gaal FWIW, the Gentle Intro to Haskell is pretty good! (Except for its treatment of monads.) But I wouldn't recommended it as the sole tutorial text to someone. 10:53
10:58 macroron__ joined 11:00 macroron__ joined 11:09 axarob joined
aufrank good morning 11:37
audreyt lypie: macbook? 11:38
lypie: ask Wolfgang Thaller, our reigning ICFP champion, for a copy :) 11:39
aufrank hi audreyt 11:44
audreyt hey
aufrank did you see xerox's offer of haskell.org being the mentor organization for pugs SoC projects? 11:45
audreyt just saw it this minute 11:46
I think I'm going to enter as mentor org
aufrank how timely of me :)
I told him as much
audreyt and if google rejects us
then fallback to haskell.org, why not ;)
aufrank google's really rushing the haskell folk-- they want a list of mentors and project ideas by tomorrow 11:47
audreyt it's the same for all of us.
aufrank I see
I guess they're running out of mentor slots?
audreyt it's a set deadline :) 11:49
meppl guten morgen
audreyt preset, that is
11:49 pjmm joined
audreyt prepares a huge commit 11:49
aufrank oooh, commit 11:50
audreyt yeah, I figure I have grokked sufficiently coherent design now 11:56
and can (finally! at last!) go back to code.
aufrank :)
audreyt: I talked to TimToady yesterday about the notion of working on PDL-ish features as an SoC project. Ideas/reactions/knock knock jokes? 11:57
11:58 jsiracusa joined
audreyt aufrank: very good idea. 11:58
I think it should be done at optimizer level
essentially it's a typechecker
that can respond to the shape of allocated containers 11:59
my int @foo;
and make @foo[0] not go through the normal Array dispatch
but through a specialized UnboxedIntArray 12:00
aufrank yeah
audreyt and you have to implement UnboxedIntArray as well
on at least one of our target platforms
aufrank and you'd want slices on multidims to do the same thing
audreyt if it's p5, then PDL.pm does that for you
haskell has UnboxedIntArray, so does Parrot
not sure about javascript 12:02
I guess not.
(but it can be emulated, but I doubt you want to do that.)
aufrank js would not be my target of choice 12:03
KingDillyDilly Just one Google result for unboxedintarray :-/
aufrank (not my *first* target, anyway)
lypie audreyt: yup. macbook pro :) wolfgang is on irc? 12:04
audreyt not sure
drop me a mail? 12:05
lypie audreyt: him/you?
svnbot6 r10059 | audreyt++ | * Third-party cleanup #1:
r10059 | audreyt++ | - Remove most of Parsec from our source tree;
r10059 | audreyt++ | the remaining Expr.hs and Token.hs will be reimplemented
r10059 | audreyt++ | to support true dynamic Perl 6 operator precedence parsing
r10059 | audreyt++ | with "is looser", "is parsed" and friends.
r10059 | audreyt++ | - Remove Dimitry Golubovsky's UnicodeC.c from our tree.
r10059 | audreyt++ | (This touches pretty most of the .hs file.)
r10059 | audreyt++ | * Update dependency to GHC 6.4.1, because UnicodeC.c and the
r10059 | audreyt++ | Unicode-aware Parsec was not there in 6.4.0.
audreyt him, sorry 12:06
lypie hehe. k :)
audreyt KingDillyDilly: in Hs it's spelled... UArray Int Int, I believe)
part of Data.Array.Unboxed
xerox waves to aufrank 12:07
audreyt, anyway, but aufrank is welcome too :-)
audreyt yo :)
aufrank XP
xerox How's things?
audreyt wonderful. TextRegexLazy is godsend.
xerox nod
audreyt perl6 regex is now isomorphic to parsec.
so, doing a normal translator now instead of semiforking parsec 12:08
xerox Sounds cool!
audreyt yeah :) watch out for TextRuleLazy soon...
xerox What would it be?
audreyt like TextRegexLazy but take the far saner Perl 6 rules syntax? :) 12:09
xerox Rules.
aufrank audreyt: really
TextRuleLazy?
audreyt aufrank: Text.Regex.Lazy is a Hs module
aufrank I know 12:10
azuroth ]\\l
xerox wonder shat the far saner Perl 6 rule syntax is
audreyt that translate perl5esque regexes to parsec
aufrank I was getting excited at the notion of the rules equivalent
azuroth err, sorry. cat
audreyt xerox: have you seen gtpdl?
xerox Nope!
I was trying to get GHC running on this Intel Core Duo lately. 12:12
gaal < audreyt> perl6 regex is now isomorphic to parsec. 12:13
w00t
lypie audreyt / xerox: i just emailed the maintainer, if i get any info i'll pass it on
xerox hugz lypie
lypie hehe
xerox lypie: mb or imac?
..or mini? 12:14
lypie mbp 12:15
xerox That's costy. (-;
12:15 iblechbot joined
lypie xerox: yup :) 12:16
but yummy :)
xerox iMac 20", I got sick of lil screens ^_^
lypie xerox: hehe. i love 12" :) 12:17
audreyt TimToady: I really want *() to be *($/). can we have that? :)
xerox: this is how Perl6 rule looks like... 12:19
xerox audreyt: sorry, what's gtpdl?
audreyt (pasting 9 lines)
rule Java::statement {
| <block>
{ StBlock(*()) }
| if (<expr>) $<t>:=<statement> [else $<f>:=<statement>]
{ StIf(*()) }
| for \( <init> ; $<cont>:=<expr>? ; $<next>:=<expr> \) <statement>
{ StFor(*()) }
| ...
}
aufrank general top down parsing language
audreyt er, the "If" case should have trailing ?
aufrank (sorry to interrupt)
xerox This looks (mfix very) nice. 12:20
audreyt | if (<expr>) $<t>:=<statement> [else $<f>:=<statement>]?
xerox: :D
took a while for it to become like this
but now it's like this, a self-hosting parser is much easier.
the *() would mean, in each case
StBlock(block => $<block>)
StIf(expr => $<expr>, t => $<t>, f => $<f>) 12:21
etc
and the named "f" will not be passed if there is no else block
this is another of the goals for the Capture refactoring
because match objects are now natural argument lists. 12:22
to me it's just parsec with a default local-capture userstate
12:22 tifo joined
audreyt and a very sugary syntax :) 12:22
xerox And how would TextRuleLazy get that syntax in Haskell? 12:23
audreyt right, translating it into a normal Parsec foo
function, I mean
you'll have to provide bindings for StFor StIf constructor etc
xerox Ah, seems cool. 12:24
audreyt but it can be automated as TH or preprocessor or just (gasp) CPP
xerox Gawk!
TH has is charm at least.
*its
audreyt yeah 12:25
so, SoC
xerox Indeed! Did you see the [email@hidden.address] thread?
audreyt how's the mentor/topic listing coming together?
xerox Check it out, it has a partial list, I need people to commit their ideas to the wikipage.
audreyt fires up gmane 12:26
mm 12:31
I guess I'll submit pugs individually, probably
but if google rejects pugs, then I would redirect the ideas directly related to the haskell community
like the TextRuleLazy thing above, or better sparse arrays (Judy), or STM arrays, etc, to the haskell.org organization 12:32
how does that sound?
12:32 azuroth left
xerox Sounds great. 12:32
lypie audreyt: you've already applied for pugs/perl6? 12:33
xerox I want to get many ideas on in the aim to get many slots for projects.
audreyt lypie: about to
12:33 mauke joined
audreyt xerox: is those two related? 12:33
xerox audreyt: nobody can say, but it's my idea 12:34
audreyt I see 12:35
xerox lypie: okay, GHC doesn't compile straight on :-)
KingDillyDilly Anyone know of a good webpage of critiques of Perl6? 12:39
merlyn yeah, all those pages on ruby. :)
KingDillyDilly I like reading stuff like that. Browser and distro wars, etc.
merlyn saying how sexy ruby on rails is, and perl is effectively dead
how little they know
12:39 chris2 joined
KingDillyDilly I was in #python and they said I might like Ruby if I like Perl. 12:40
lypie KingDillyDilly: i wonder whats worse :) 12:41
KingDillyDilly I was interested in Python until I heard it's all OO. I don't mind OO in theory, but I got to really "get it." Not that I've tried much.
lypie people thinking perl6 has anything whatsoever to do with perl
or people that think ruby is like perl 12:42
KingDillyDilly s/got to/don't/
merlyn python is *far* from "all oo"
lypie right
merlyn it's all oo only like Java is all oo
or C++
lypie and c++ :)
hehe
xerox SmallTalk!
merlyn now, *smalltalk* is all oo
12:43 BooK joined
merlyn and Self 12:43
lypie don't forget objc++!
lypie hides
merlyn eh? :)
audreyt objc++ is all ++
;)
lypie ;)
KingDillyDilly I figure since Javascript seems harder than Perl to me, I better stay away from OO. I hate all the preparation you need to make in Javascript for a regex. 12:44
mauke what, like str.replace(/pattern/, replacement)? 12:46
audreyt KingDillyDilly: if you like sugar, perl6 is for you. 12:47
what sets perl6 apart from other multiparadigm languages is sugar :)
also known as "ergonomics" 12:48
or "whipuptitude"
KingDillyDilly mauke: I thought I remembered an extra line. Doesn't seem so bad now, but I remember some complications, like only being able to use replace once on the string...or something. 12:52
I jad to use javascript to generate pages like www.polisource.com/diffnote/042306-...loFs.shtml which have "^" characters that get replaced with images. Really simple, but it caused me problems. 12:55
I heard they don't like Perl much on Slashdot too. 12:56
Juerd audreyt: I thought it was whipITuptitude; Was I mistaken? 13:08
13:09 pjmm left 13:10 Limbic_Region joined 13:14 pjmm joined 13:15 Odin-LAP joined
Juerd Feather update: because of annoying bugs in vim 7 beta, I downgraded vim. 13:15
Feather update: firefly is now definitely removed from the system :)
Feather update: I'm going to dist-upgrade right now :) 13:16
audreyt Juerd: google says whipuptitude is correct
Juerd 558 upgraded, 27 newly installed, 5 to remove and 1 not upgraded.
Need to get 308MB/330MB of archives.
After unpacking 19.7MB of additional disk space will be used.
audreyt Juerd: er, it was indefinite? :)
Juerd audreyt: Okay, thanks
audreyt: Well, first I forgot to remove it while I was convinced I had done so. Then, I moved it to my homedir, to stop the leechers who were then leeching it at more than 10 Mbit/s together. I then leeched it myself via scp, and then removed it. 13:17
Yesterday evening, I watched it. It's a great movie! 13:18
I was afraid that maybe it wouldn't be as good as the series
558 upgraded, 27 newly installed, 5 to remove and 1 not upgraded. 13:19
Need to get 308MB/330MB of archives.
After unpacking 19.7MB of additional disk space will be used.
But at 6 MB/s, 308 MB is very doable :)
Oh, the "definitely" was a translation error. I meant finally. 13:20
audreyt oh ok :)
Juerd ("definitief" in Dutch)
audreyt was wondering if you have some VMSish filesystems where rm doesn't mean rm :)
Juerd (Which also means "permanent")
audreyt k
registered interest of SoC to google people 13:21
Juerd What is SoC?
audreyt summer of code 13:22
this year Pugs is entering as one of the mentoring orgs
and #perl6 is our mentor pool :)
Juerd Ooh, nice!
13:22 scw joined
theorbtwo audreyt: I take it you aren't qualified to just take their money and run^Whack? 13:23
audreyt nah. that's for students
Juerd That's two Perl organizations :)
mauke You don't have permission to access /~juerd/README on this server. <- what's up with that?
audreyt I've been nonstudent for 10+ years.
clkao grins
Juerd mauke: Well...
theorbtwo mauke: I think you have an extra slash there.
Juerd mauke: It's a symlink to a nonexistent file. 13:24
mauke heh
Juerd mauke: It should be rewritten, but feather has done well without a README file for more than 6 months...
13:24 scw1424 joined
mauke theorbtwo: it's apache, not me 13:24
Juerd audreyt: nonstudent++ :)
theorbtwo: The extra slash indicates it's a web path, not a fs path. 13:25
theorbtwo: For my comprehension of the error message, very important.
audreyt Juerd: yeah. tpf's process is nice, but I guess a separate set of ideas makes more sense
Juerd Because now I have to look in ~juerd/public_html, not ~juerd
theorbtwo Aaah.
Juerd README is a simlink to ../README, though :)
s/sim/sym/ 13:26
13:26 scw joined
ingy hola 13:31
13:31 oren joined
ingy summons oren 13:31
too late
oren 4 what? 13:32
ingy hey everybody, oren is the *real* inventor of yaml
oren cringes. I think that's Clark
aufrank oooh
ingy well he wrote the damn spec anyway
that counts for something
aufrank oren++
ingy hey any gobby users about? 13:33
oren is having trouble installing gobby
and we are using #perl6 as the support channel :p
aufrank I know audreyt and gaal are both users
13:33 shachaf joined
oren runs all the communication stuff on a work-provided (WinXP) laptop 13:33
aufrank is not, though
ingy hmm, I got gobby 0.2.2 working on ubuntu 13:36
oren I can install 0.3.0 on Gentoo, but it would take a while because I'm in the middle of a big update there 13:37
KingDillyDilly found the two line Javascript replace method I was talking about, but it's OT now... 13:39
mauke I'd like to see it 13:40
KingDillyDilly Ok:
DT_Regex = /\d\d\d\d\d.(\d\d).(\d)(\d).(\d)(\d).(\d\d).(\d\d).(\d\d)/;
mymatch = DT_Regex.exec(DT);
oren gets an error looking for libsigc-2.0-0.dll when trying to run gobby - any ideas? 13:41
audreyt oren: hi!
oren hi audreyt
audreyt oren++ # YAML saved Perl 6
well, saved compiled Perl 6, anyway, and loads it back to memory :)
(which gives us a pretty good interop and performance gain) 13:42
so, thanks :)
KingDillyDilly mauke: I use it in a Tinymce plugin that I uploaded to sourceforge.net/tracker/index.php?f...tid=738747 . Maybe it can be done in one line.
oren glad to be of service
mauke mymatch = /\d{5}.(\d{2}).(\d)(\d).(\d)(\d).(\d{2}).(\d{2}).(\d{2})/.exec(DT); // my guess 13:43
audreyt oren: tried releases.0x539.de/gobby/gobby-latest.exe ?
otoh, you can download gimp 13:44
or some other GTK using programs
oren Nope, am trying to download latest glade
audreyt and add to PATH
C:\Program Files\Common Files\GTK\2.0\bin
which may alredy be there
just not part of your env PATH
oren Nope, it's in my path all right... 13:48
KingDillyDilly mauke: I've tried reducing lines of Javascript like that (probably a bit different) in the past and it usually fails, so I just use the form in the examples I find. Guess yours works though.
oren I'll try latest - glade didn't work
Nope, same problem 13:50
audreyt is libsig in the 2.0\bin path?
also, did you set the env globally?
also, try adding the path to SYS 13:51
in addition to PATH
oren Unsurprisingly, the lib isn't in the GTK/2.0/bin directory 13:52
audreyt duh :)
oren The path was set by the GTK runtime installer
audreyt ok
try this
mrchapp2.homelinux.net/~inkscape/alacarte/
mirror all the dlls 13:53
and put them in PATH
(crude, I know, but hey. :)) 13:54
ooh, gobby 0.4 supports emote 13:55
easily my #1 usability request
(#0 is scrollbar-follow-cursor-color)
audreyt feels much less lively without /me support 13:56
aufrank audrey, my client displays your /me 's correctly 13:57
you can proceed with vigor
audreyt proceeds with vim 13:58
aufrank oh, sorry, missed the context
oren audreyt: Thanks, its now complaining about the next one in the chain, I'm downloading them 1 by 1...
audreyt oren: wget -m -np
14:01 pjmm left
oren audreyt: OK, got it. What I needed to do was to install gtk-*mm*. Now gobby works. Thanks! 14:08
audreyt np, hth, hand! 14:09
oren goes back to work... cul 14:10
14:10 oren left 14:12 justatheory joined
aufrank audreyt: =@foo is a nice generalization I think 14:13
audreyt and =%kv will get you (k,v) pairs, persumably 14:15
14:16 KingDillyDilly left
aufrank right 14:16
audreyt I wonder how is Pair different from a 2-Seq, really
aufrank and =@() will iterate over the topical match object
can you do a lookup by key on any arbitrary 2-seq?
audreyt ah right. pair emulates the hash interface. 14:17
aufrank I know that assoc lists are just 2-seqs in haskell, right?
audreyt thanks for the reminder :)
well yeah, but it's terribly inefficient
aufrank yeah, I noticed
audreyt pretty much all Hs peopleuse Data.Map now for immutable
or Data.HashTable for mutables
aufrank good to know
aufrank is just getting his haskell feet wet
fun so far 14:18
audreyt ooh nice. adding unbox stuff may be just the right thing for you :)
aufrank I said this in #haskell too: it will definitely be something of a bootstrapping process for me
but the spirit is willing :) 14:19
aufrank will be around and contributing this summer, regardless of SoC stuff
audreyt eggcellent
aufrank is there a way to get a match object iterator into the first argument of a pointy for? 14:21
something like
for =@() { $string ~~ / 'foo'
sorry
audreyt for @() { ... } 14:22
for @() -> $moose { ... }
for _is_ the iterator :)
aufrank sorry, what I'm asking is how you know which match object @() refers to there
audreyt it always refers to the lexically enclosing $/
each scope receives an implicit "env $/" 14:23
aufrank ok, got it
audreyt the ~~ operator writs $+/
aufrank yeah
audreyt goes back fhnishing up predictive Pugs.Parser 14:26
aufrank audreyt: are these still taking backtracking out of the parsec implementation, or is this the conversion to RegexLazy, or are those the same thing? 14:27
audreyt aufrank: this is still eliminating try
because it's a precondition
perl6 rules has a "try" form, postfix ?
<moose>?
aufrank yeah
audreyt but I don't expect most of the rules be peppered with them 14:28
to enable somewhat automatic conversion between rules and parsec, we first have to find all infinite-lookahead parts inp6
eliminate all of them
and _then_ convert
several was eliminated during the last week... if foo {...} in particular now requires no lookahead 14:29
aufrank yeah, I've been watching this part
gaal how automatic can that conversion really be? we have, side eff^W^Wmonadic stuff in there 14:31
TimToady degone
audreyt gaal: we don't have side effect; we have state
gaal indeed
audreyt there are 8 side effect points where "say" may leak
then can be all hoisted into the BEGIN block 14:32
and we slap an unsafePerformIO there.
but conceptually, the parser only has the optable state, the local Match state, and nothing else
I'm not sure how much of parsec->rule part can be automated-to-correctness 14:33
but a Parsec-to-rules prettyprinter can help already
and then we take them by hand
gaal: the java grammar example makes sense to you? 14:34
gaal yes
audreyt TimToady: yo. *()? :)
TimToady thinking
audreyt gaal: and I take you wouldn't mind helping to port Pugs.Parser to that style, incrementally? :)
TimToady they *will* accuse us of reintroducing typeglobs... :) 14:35
gaal audreyt: :) trying to reclaim tuits, but sure
audreyt gaal++ 14:36
TimToady And a disambiguated Whatever would have to be written (*), but maybe that's a good thing anyway.
audreyt yeah, because other prefix stuff can all interfere as you noted 14:37
TimToady one or the other is a special parse form though.
audreyt $() etc already is
TimToady but arguably the defaulting is semantic, not syntactic
audreyt if it's semantic, that means 14:38
say $ ;
would work
TimToady I'm fine with syntactic.
audreyt because it'd be categ as optionary unary like -e
and I think $ as optionary unary is very confusing
TimToady then (*) comes out naturally.
audreyt ay
aye
TimToady okay, you can have *() 14:39
audreyt yay
my wording in S02/05 for $() was already 'form' and 'shorthand'
instead of 'defaulting'
so it seems good
TimToady I was rather happy to kill ... actually
pmichaud amen
audreyt yeah, postfix-term pun not fun 14:40
TimToady and to be able to generalize it with something that already exists in the language!
I was more worried about the class "infix with no right argument"
bad enough we do it with prefixes...
audreyt oh btw.
1..2:by(3)
TimToady in fact we fixed it with one.
? 14:41
audreyt 1..2 by=>1; # it wouldn't work this way, right?
TimToady wouldn't expect it to
audreyt I wonder if :by(3) always mean the named-arg-to-current-arglist form, not sometimes-pair-constructor, then
since currently 1..:by(3); 14:42
is infix:<..>(1, (by=>3))
but it reads rather strange
TimToady I'm not sure *() works in terms of scalar operators... 14:43
might be possible
have to think about it.
audreyt scalar operators?
TimToady ops that take scalars like .. 14:44
I read that as 1..*(:by(3))
gaal audreyt: about the planned conversion... looking at that Rule again, it already looks a lot like our Parser :)
audreyt: so what changes do you think are needed?
TimToady since you just proposed implied *() around :foo(3)
audreyt gaal: it's a long conspiracy started from Mt.Arbel :)
TimToady: actually, I proposed that 1..:by(3) is an error 14:45
TimToady I'm fine with that for now
audreyt also
$x = :by(4);
$x = 6:by(4);
TimToady just you're detecing the error at dispatch time, seemingly.
audreyt more like, :by(3) where a term is expected, is only legal in explicit-arglists 14:46
not general expressions
and people who want to write 1..*:by(3) have to write that 14:47
TimToady your last is legal maybe if whatever handles = has a $by arg
audreyt yes
$x = :by(4); # I'm suggesting making this illegal
$x = by=>4; # this would be fine
TimToady I don't think this is gonna fly. 14:48
audreyt okay then :)
TimToady :16<ffff>
audreyt but that's :digit
totally not the same thing as :ident
and :16<ff> doesn't mean 16=>ff already 14:49
so it's another term altogether
TimToady oops, you slipped, and called it "another term". :)
audreyt it's currently another term :)
gaal: so, changes.
gaal: first we have to stop using forked parsec, instead using vnailla 14:50
TimToady I'll have to think about it some more
audreyt I've already done that part
TimToady: sure... it's not as important as the $x[($y)] thing :)
since this is just shoot-foot-prevention
and $x[($y)] can cause parsefails
TimToady [,$y,] seems okay to me too
audreyt ooh prefix , 14:51
TimToady or [, is a token...
pmichaud [ ,$y,]
audreyt or <null>, at beginning is ignored
but cxt is changed
prior art: migo's [|] 14:52
TimToady I was wondering if a zen slice is singular or plural 14:53
audreyt {; key => 'val'} is valid hash disambig already
(not totally the same thing, just visually similar)
TimToady other places zen slice just means "the whole array", so 14:54
arguably %foo[] =
audreyt TimToady: it makes sense to have it mean singular
TimToady gives singular
and %foo[*] is the plural form
audreyt the synpses has
my @x = (scalar @y, @z)
and I really dislike that "scalar" there :) 14:55
TimToady s:g/%/@/
audreyt my @x = (@y[], @z);
push *@x;
that would Just Work 14:56
TimToady hmm but changing my @x to singular would really freak people out
audreyt my @x is not singular...
it's still plural
TimToady and also @x[*] could be taken to mean a slice of all existing keys.
ohh, maybe @x[**] is all potential keys. 14:57
audreyt "a starry night with perl 6"
theorbtwo That seems both scary and useless.
TimToady just finite vs infinite
or potentially infinite 14:58
@x[*] = 1 .. * would reinit all existing entries
@x[**] = 1 .. * would run a little longer... :)
xx even 14:59
Juerd audreyt: my @x = (\@y, @z) no longer DWYM?
How about if scalar "," were the Capture constructor, and "\" would be synonymous to "scalar"? 15:00
Hm, nah, then \$foo would be just $foo, and you'd need \($foo,) which is ugly. 15:01
(OTOH, with aliasing semantics instead of all the perl 5ish copying, how popular will scalarrefs be?)
TimToady use of [] seems like kind of a roundabout way to write my @x = (@y: @z), if you consider you're really calling .push 15:02
but I guess that's no reason to prevent MMD thunk 15:03
audreyt but I don't know what normal infix : means
TimToady s/(/\(/
audreyt my $x = 1 : 2;
k
theorbtwo audreyt: Creates the mytical "large value of 1" for which 1+1==4? 15:04
TimToady I was kinda wondering earlier whether 1..2: by=>1 could work on the : as haskell $ principle.
audreyt visually confusing with :by(10 though 15:05
:by(1) I mean
TimToady but that probably forces even more objects to be parentesized if it's indirect object disambiguator
audreyt indeed
15:05 lypie left
TimToady on the other hand, if you say the colon just keeps looking left for a reason to exist... 15:05
audreyt gaal: so, what we need on the parsing front is a preprocessor
gaal: let's call it .pg.hs makefile rule 15:06
that takes a foo.pg and generates a hasjkell module
similar to what we already do with .pl.hs
.pil.hs, rather
TimToady there's something to be said for forcing parens with *any* complex indirect object.
audreyt gaal: we could also construct the parsec dynamically at runtime 15:07
but then the optimzer can't help us as much
since there is no top-level functions to work with
I guess it's just a long way of saying "port pgc to parsec and port pugs.parser to .pg" 15:08
pmichaud++ # external files rock
TimToady but unfortunately it would make 1..2:foo ambiguous
15:08 ko1 is now known as ko1_away
TimToady and it would really only be good for named args anyway. 15:08
so probably a bad idea 15:09
audreyt singular $x[] is an excellent idea though. :)
TimToady it sort of naturally falls out of the [*] thing
theorbtwo Singular $x[] ?
TimToady a zen slice is 0 dimensional, not 1 dimensional 15:10
say "@foo[]"
so it means "the array" not "the elements of the array"
audreyt theorbtwo: it means that, if you want to treat @foo as a nonflattening thing
theorbtwo: then write @foo[] instead of "scalar @foo". 15:11
theorbtwo Ah.
TimToady which, in interpolate, immediately gets flattened, but oh well... :)
theorbtwo The entire array @foo is @foo[]. @foo is it's elements. 15:12
TimToady say "@foo[][][][][][][][][][][][][][1]"
audreyt under plural/slurpy/list/what-have-you context
TimToady: yeah, same reason why @@@@@@@foo is just @foo
TimToady except we don't
audreyt except you made @@foo special
TimToady right
audreyt so we don't
that's fine 15:13
TimToady it's okay. don't know about fine
audreyt yeah. I don't know if it's that often used to warrante short huffman
TimToady if it discourages people from sandwitching @foo with derefs fore and aft simultaneously, then it's a ++ 15:14
audreyt sub f (@foo is multidim) { } # is longer
nod
with @, @@ and $, Perl6 looks even more like ruby! 15:15
TimToady I did @@ just to confuse Ruby programmers
audreyt may I quote you on that? 15:16
TimToady if you add the :-)
audreyt sure :)
<ruby-people> @@
TimToady a period would also probably be in order.
audreyt <larry> :-)
since ruby comes from japanese, it's natural that ruby people would use vertical emoticons like @@ and ^_^. 15:17
xinming o_O
audreyt or, comes to think about it, orz.
xinming lol. orz is the most creative jargon... I've ever seen IMO.. :-) 15:18
audreyt xinming: have you heard the song of orz by zonble, one of fellow taipei hackers? 15:19
TimToady they managaged to find a 3-letter word that google can find
theorbtwo *..* ! 15:20
audreyt xinming: zonble.twbbs.org/archives/2004_11/622.php
theorbtwo 0..* makes an almost reasonable emoticon too.
xinming I think we can rename system() to orz :-)
eg, "ls".orz :-)
audreyt heh
TimToady *..* kinda looks like ET 15:22
15:22 bsb joined, Arathorn joined
TimToady I dunno. 0..* kind looks like a squished orz. 15:23
I've been looking for a good name for system...
sort of looks like the orz is worshiping the "ls" though... 15:24
xinming TimToady: hmm, In fact, In ancient China, knee down has another meaning... which means... please.... forgive me... or, please ... go.... 15:25
TimToady forgive me for using the shell? 15:26
xinming so, "ls".orz would be like to mean.... please.... run....
TimToady please go away to the shell?
xinming I mean run "ls"
I mean please... run "ls"
audreyt the english translation would be "kowtow".
xinming audreyt: thanks....
kowtow... :-)
audreyt transliteration, really.
xinming yes
TimToady what does it mean when someone writes orz("ls") then. I hesitate to ask with gaal in the room... 15:27
audreyt giggles uncomfortably. 15:28
TimToady maybe that's not such a good plan... 15:29
bsb fwiw, in p5 I use "run" as a wrapper for system.
audreyt it's a popular word for that
bsb switching the return code
TimToady I think I used that in the last S29, with variants. 15:30
actually, it's just in a Note
obra I'd be sad to lose run as a name I could use in my own code 15:31
TimToady we could reserve orz for rebooting: "linux".orz vs orz("Windows") 15:32
bsb multi run...?
TimToady list of strings is pretty general though...
bsb nah
"nah" to me not TT
TimToady you could certainly use run for more specific types under MMD 15:33
and .run, of course
what do you use run() for?
audreyt run something ;) 15:35
it's like "main", except it doesn't do the parsing of input
TimToady run!
audreyt one of the generic-function-names-don't-use-it-please items in Code Complete
gaal rehi 15:36
audreyt: pg == ? pgc == ?
TimToady uh oh
gaal $dog.walk 15:37
Arathorn has an unrelated question: are there any idioms in perl6 for writing state machines? Is there some cunning way to (ab)use Rules to help you maintain scope for a bunch of states, with particular events/callbacks of some kind for transitioning between them?
audreyt gaal: check out parrot :)
gaal $dog.wag # alternatively
audreyt svn.perl.org/parrot/trunk/languages..._rules.pge
TimToady gee, I thought goto was for state machines... 15:38
audreyt soon-to-be-named .pg
TimToady to confuse pugs programmers
audreyt nah, to allow reuse
:)
Arathorn: I thought Rules without zero-width assertions and backreferences _are_ state machines 15:39
but maybe it's not what you are talking about :)
TimToady actually, in California one always gets negative connotations from PG&E (pacific gas and electric), so I don't mind it.
I'd say, rather, "may be implemented with state machines" 15:40
to me, state machines really do imply "goto".
Arathorn wishes he'd stayed awake in his regular expression <=> FSM equivalence lectures :/ 15:41
bsb that's a weird lecture.. 15:42
Arathorn aren't Rules' states transitions based on interpretting their textual input, though? I'm thinking of more generic ways of transitioning between states (e.g. abstract protocol aren't Rules' states transitions based on interpretting their textual input, though? I'm thinking of more generic ways of transitioning between states (e.g. updating your FSM model based on something fairly abstract changing state - e.g. telephony signalling states)
audreyt . o O (Updating your Flying Spaghetti Monser model based on number of pirates) 15:43
Monster, even.
bsb the end of s05 has Rules matching objects
Arathorn right - but does smartmatching allow you to match on Pirates just as much as a plain ol' string?
okay, that solves that one, then - 'pologies for my Rules ignorance :)
bsb the object only need to "do" the Pirate role
Arathorn rereads S05 15:44
TimToady: wouldn't you want a SM model to allow you to scope variables per-state somehow, though? rather than gotos just jumping the flow of control around? 15:45
audreyt S06 talks about it in more detail, strangely.
bsb Arathorn, the section ia a bit light on detail...
TimToady a matcher is just something that Captures Pirates
audreyt grep for 'Unpacking tree node parameters'
Arathorn does so 15:46
audreyt Arathorn: another idea is ultis
multis
TimToady states don't have variables. models do
Arathorn right
bsb let or temp variables might stack as you like 15:47
TimToady the whole point of a state machine is that your state is encoded in your location.
that's all I mean
Arathorn understands
TimToady just trying to keep the map separate from the territory...
audreyt looks forward porting Acme::ComeFrom to perl6
TimToady isn't that just &*prefix:<goto>.wrap? 15:49
maybe with an "is deep" thrown in there somewhere... 15:50
Arathorn encounters a vague epiphany w.r.t. separating model data and FSM state, and all's well
audreyt er, no
it causes a goto become a label
and a label become a goto
and also, if there are multiple gotos to the same label 15:51
then the label becomes a fork
pmichaud TimToady: I have a question about ratchet and S05
given token suffixword { \w+? er } 15:52
we still backtrack on the \w+?
to avoid backtracking, one would have to do token suffixword { \w+?: er }
?
TimToady can't, have to disappear for .5 hour 15:54
pmichaud okay
TimToady that makes no sense. 15:55
\w+?: always matches 1 char
audreyt btw, the "if" stopping on " {" wouldn't quite work for 15:56
if -e -> $bool { ... }
I've made it stopping on all block-introducing forms.
TimToady k
audreyt but that's because terms go back to toplevel
TimToady bbiab &
pmichaud TimToady: okay, your answer makes sense -- lemme think about it a bit more 15:57
audreyt as it isn't as simple as a circumfix anymore
16:08 bsb left
aufrank kind of liked * -> Whatever, + -> Something 16:13
but I liked it as a conceptual mapping, not as a useful language feature ;) 16:15
16:19 lisppaste3 joined
gaal sees * -> Whatever and goes... uh, this is unkind 16:23
(stupid haskell joke) 16:24
audreyt lol 16:28
rofl
16:29 Khisanth joined
TimToady is there such a thing as a stupid haskell joke? 16:32
gaal Evolution of a Stupid Joke Maker 16:34
audreyt I don't know, but I know the language was named "Curry"
and it was renamed to the first name instead of last name of the logician
YetAnotherEric how is the new system() going to compare to IPC::Run's 3-way pipe ability?
audreyt because they don't want stupid jokes.
gaal there's another language now that has that name, isn't there? 16:35
audreyt yes, a merge between Haskell and Prolog.
TimToady what Stupid Joke?
audreyt it's very powerful and nice.
gaal YetAnotherEric: we already have a 3-way pipie builtin in pugs :)
SamB audreyt: haha, like that would work
audreyt SamB: it works. beautifully.
check out Curry if you havn't :)
TimToady all your spices are belong to us
audreyt it's basically a preprocessor into haskell 16:36
so you get to retain all your Cabal modules
SamB I meant the part about renaming Curry to Haskell to prevent stupid jokes
audreyt but there are also native implementaitons elsewhere.
oh ok, not the merge :)
well, Haskell is significantly harder to pun :)
SamB I mean, I think someone came up with some technique to stew functions... 16:37
TimToady on the campus of Seattle Pacific, there's an Alexander Hall, because they couldn't fathom the idea of having a Beers Hall.
gaal who was it, lichkind who made that hilarious "all your base are belong to us" observation on Perl 6?
heh heh
TimToady it was sort of inevitable...
gaal There's a radio announcer in .il called Ilana Haskell
audreyt up to 36
so not all your base
just up to 36th
Pugs now parses (mostly) predictively. 16:38
whew.
TimToady :37<36 24 36>
gaal can you say :54( :16(20) )? :)
audreyt well, yeah, there's that
. o O (imaginary bases)
TimToady: I expect lots of tests to fail 16:39
svnbot6 r10060 | audreyt++ | * Switch Pugs.Parser to Commit-by-default "ratchet" parser.
audreyt will recover later
svnbot6 r10060 | audreyt++ | * Caveat: This is currently broken:
r10060 | audreyt++ | if %h{'x'} {...}
TimToady cool
svnbot6 r10060 | audreyt++ | because our whitespace rule is backwards. I'll fix soon.
r10060 | audreyt++ | For now, use this workaround:
r10060 | audreyt++ | if %h.{'x'} {...}
r10060 | audreyt++ | (the "correct" fix is for "lexeme" to not swallow post-term
r10060 | audreyt++ | whitespace; rather, let operators swalloe pre-term whitespace
audreyt but Test.pm and Prelude.pm works
svnbot6 r10060 | audreyt++ | if they choose to do so. takers welcome :))
gaal wheeha
audreyt and that's good enough :)
ergo, no journal today :)
audreyt waves and sleeps &
gaal audreyt: before sleep if still here, "operators" = just the table around uh 1300 or so in Parser? 16:40
oh, tightoperators are now in Operator.hs 16:42
cool
(was that integral?)
TimToady it was doubtless the extra time of typing "if still here" that was too much...
gaal TimToady: the bright side is that soon she'll commit a fix
TimToady I wonder if she types in her sleep with her toes.
gaal fires up colinux 16:43
TimToady would give her fingers a rest, and she obviously doesn't need to look at the screen if she's asleep. 16:44
theorbtwo suggests dropping the last name if you don't want to wake her.
gaal whee, open foundry is uncharacteristically fast! 16:45
16:46 axarob joined
TimToady would the last name be 鳳 or 唐? I'm confused... 16:46
xinming 唐 16:47
TimToady: Tang
TimToady that's the family name, but not necessarily the last name.
xinming TimToady: é³³ is her given name
aufrank one of my colleagues gave me a chinese name last year... now if I only knew mandarin...
TimToady er, it was a joke...
gaal any Korean speakers around? Does ė­‡ mean anything? 16:48
TimToady It means "Larry has a swelled head"
xinming aufrank: It depends on where he comes... Taiwan or mainland, handwriting has some differences, but It's not a problem for comuunication.
gaal close, it means the head has antlers - at least that's what it sounds like 16:49
xinming gaal: It's like a computer... :-)
aufrank xinming: I know the name will generally be portable, I just actually wish I spoke a chinese dialect (I'd probably go with mandarin) 16:50
theorbtwo In "Audrey Tang", "Tang" is the last name.
In 唐鳳
I wasn't discussing the name 唐鳳.
xinming hmm, I think, using family as last name might be better for understanding. :-) 16:51
theorbtwo: ??? they are the same. >_<
theorbtwo Ah, but if you type "audrey", there isn't a big yellow bit on her screen. Or, for that matter, if you type 唐 or 鳳 in any combination. 16:52
gaal yellow's a loud color but is it sufficient to wake her?
TimToady apparently, at times...
theorbtwo Or possibly prevent her from sleeping.
aufrank also, her IRC family name, 't', probably is safe
TimToady I think she drowses with one eye a little open, like a dragon. 16:53
gaal not to be confused with t/, which is currently mostly broken
TimToady I've come this >.< close to making my house sound a noise when a "yellow" happens. Would drive my family nuts though. 16:54
xinming TimToady: maybe that's what you do while sleeping at the desk. :-P
gaal your house is an irc bot?
TimToady not yet...
I could pretty easily send all my X10 events though...lesseee 16:55
Sun Apr 23 09:34:58 2006 M7off
course, i'd have to teach perlbot what they all mean... 16:57
theorbtwo It'd be interesting to make your desk lamp flash when somebody mentions your name.
gaal not recommended for eplieptics 16:58
theorbtwo Of course, I'm not sure X10 is smart enough to know if it should transition off->on->off or on->off->on
TimToady gives new meaning to "take my name in vain"
theorbtwo coughs.
16:59 theorbtwo is now known as theonetwo
theonetwo I am theonetwo your god, who ignores your patches! 16:59
16:59 theonetwo is now known as theorbtwo
TimToady had to introduce some theology, since I'm home sick from church... 16:59
xinming TimToady: hmm, may I ask why you'll choose bless for making a "class" in perl 5? I don't have any religion, but I really suprised about I have to bless a hash become a "class". :-/
TimToady It's not "bless" in any kind of theological sense. 17:00
It's bless as in "lay your hand on your kid and tell 'em they're cool"
gaal xinming: it stands for "be less of a hash and more of a classy thing"
TimToady also the corporate sense
xinming but for the first time I met bless, I thought... I have too bless every time I use a class. :-) 17:01
TimToady of "you brought me this potential project and I bestow my corporate blessing on it so now it's real"
svnbot6 r10061 | gaal++ | remove warning
TimToady doesn't hurt you
gaal: why don't you just "remove all warnings"? :) 17:02
gaal TimToady: because pugs doesn't have -w yet :P
TimToady hyperoperators?
gaal hyperoperators? 17:03
TimToady &warn.wrap?
come from?
surely it's a powerful enough language there's got to be some tricky way to kill -w
clkao is there a summary of meaningful whitespace?
gaal TimToady: for every problem there is an Acme:: solution :) 17:04
but that commit was a trivial build warning done away with
TimToady clkao: if there is, it's in S2
gaal on some redundant module import
TimToady I figured, I was just pestering you and wasting your time.
gaal yes, this whole Perl business was just a huge waste of time 17:05
TimToady because I think wasting your time is funny. :)
gaal I could have figured out years ago that computers were frustrating if it weren't for Perl
TimToady these aren't the frustrations your looking for...<waves>
*you're
gaal TimToady: you know "Gaal" means "wave" in Hebrew yes? 17:06
TimToady do now :)
gaal though not in that sense.
YetAnotherEric you mean this whole Perl thing was just a jedi mind trick?!
TimToady can I call you Nami when I'm thinking in Japanese?
gaal yes!
what's the opposite of O? 17:07
TimToady in which dimension
?
gaal (because I'm hardly very O-nami)
gaal learned today that tsu meant harbor
TimToady linguistically, an opposite can only be different in one dimension
gaal TimToady: Small
er
"bigness" 17:08
hardly a dimension
"O" means big or grand, doesn't it?
O-Sensei, for example
theorbtwo So Tsu-nami is a harbor wave, as in a wave that knocks out the harbor? 17:09
gaal theorbtwo: wp as usual explains...:
theorbtwo Ah, probably.
TimToady harbors do tend to amplify tsunami, and focus them at the innermost part 17:10
gaal apparently these waves are barely noticable out at sea
TimToady multiply that by the economic value of the harborside 17:11
I'd say that's a pretty good reason to call them harbor waves.
but the big ones don't really care about little harbors...
cause their wavelength is so big 17:12
you quite simply don't want to be in their way--see Sri Lanka...
gaal hmm. I can't reproduce the breakage audrey mentioned in the last commit. 17:13
?eval my %h = ("moose"=>42); if %h{"moose"} { say "I am not borked" } 17:14
17:14 evalbot_10056 is now known as evalbot_10061
evalbot_10061 Can't exec "./pugs": No such file or directory at examples/network/evalbot//evalhelper.p5 line 46. 17:14
gaal grrr.
That is not the borkage you are looking for
TimToady: what do you mean, they don't care? They still push hella water in. Or do you mean "don't care" in the sense of "smash them without so much as slowing down"? 17:15
TimToady the latter 17:16
gaal they're effectively like an immediate high tide
ah. yes.
TimToady I mean, if you're out on a promontory instead of in a harbor, the little wave pays attention to coastal geometry at a smaller scale than the big wave does. that's all. 17:17
I think. but maybe i'm confusing amplitude with wavelength
depends on what caused the wave at what depth, I think.
gaal ah, yes. tsunamis have immense waevlengths. 17:18
TimToady smaller shift shallow is obviously going to be a smaller wavelength
but bigger events have to start in deep water or there's an impedance mismatch
gaal ?eval say "something"
evalbot_10061 Can't exec "./pugs": No such file or directory at examples/network/evalbot//evalhelper.p5 line 46.
gaal for there to be plenty of water to be displaced, yes, the focus needs to be in deep water 17:19
TimToady so I think there's a correlation between size and wavelength 17:20
wavelength matters... :)
gaal though I'm not sure how strong the correlation beteen damage and size is 17:21
"energy" and "total displaced water mass" seem more important there
TimToady perhaps just the latter
a strike-slip fault can do mag 8 but not displace much water at all. 17:22
gaal seeing as even meter high waves of sufficient energy can go deep inland and crush stuff, topple buildings etc.
17:22 enantiodrome left
gaal wow, talk about faultly talk. 17:23
San Andreas, this is Syrian-African, do you shake me?
TimToady "hey sister, we don't call it the Dead see for nuthin'" 17:24
*sea
*Sea, even
17:24 FurnaceBoy joined
gaal sadly the name's getting a new justification: it's drying up 17:25
TimToady i need more memory. Can't IRC and compile Pugs at the same time...
water you talking about?
gaal TimToady: since the sixties or seventies, Israel has been damming up the Sea of Galillee to prevent drinking water from being lost 17:26
the Dead Sea has been steadily losing Seaness
TimToady nothing a good deluge wouldn't cure... 17:27
gaal hey, this fault is actually called the "Great Rift Valley" in English. cool!
a few years ago there was a nice winter that almost brought the Kinneret to the "top red line", but not quite. I don't think they opened the floodgates. Which sucks, because the lower Jordan is dry too 17:28
Yet Another Ecological Disaster
TimToady I suppose the bright side is we might actually be able to dig up Sodom and Gemorrah...now there's a bunch of straight lines waiting to happen .oO(or not so straight) 17:29
gaal on another bright side, I heard that the Aral Sea is recovering.
TimToady really! cool.
they just decided to starve a bunch of farmers instead (again)? 17:30
gaal a friend of mine saw this curious "ship graveyard" a few years ago. Now apparently they realized the fishing industry is in fact useful
juggling starved farmers
TimToady compile got done. 17:32
passed all the sanities, but almost everything else is borken.
gaal is looking for a breaking test 17:33
is that one-liner I used above an error on your pugs?
or: please give me an example for a failing test file 17:34
ah, trusty undef.t
TimToady say "something" works fine. :) 17:35
so does the other one.
looks like mostly parse errors, not surprisingly
gaal [] as a list element seems to break.
dum dee dum, let's fix this. 17:36
17:37 mako132_ joined
TimToady and mostly in arrays, so far 17:37
but then, the anthropic principle says I'd mostly see a's at this point...
since I'm only up to builtins... 17:38
but I'm happy to report the problems can definitely be reproduced via "make test"
gaal I'm not sure the fix is as simple as t suggested... *every* rule assumes it has no leading whitespace. to change 'lexeme' would mean not just operators would need fixing... 17:42
(also, how do we override lexeme once we put Parsec in third-party?) 17:49
one thing haskell doesn't have is runtime brain surgery a la &sub .= wrap 17:50
TimToady how...unstateful...
gaal I know there's an answer to that beginning with, "oh, but it doesn't need it because you define the higher order function..." 17:51
temp &sub .= wrap ? :)
TimToady as long as it collapses again before Heisenburg notices... 17:52
but sure, .wrap is just a mutator, and temp is supposed to work with mutators 17:53
<gaals hands>
gaal hw !! larry
TimToady I'm afraid what I know about P6 rules doesn't help with parsec, since we magically make <foo><bar> match without whitespace and <foo> <bar> match with whitespace. 17:56
mediated by a mystical <ws> rule.
some kind of gnostic interpolation, no doubt... 17:57
gaal that sounds like something a Michelson Morley experiment refutes the existence of...
TimToady nah, he just refuted the naive view of ether 17:58
gaal yes it's actually a network of mostly twisted pairs of copper wires
TimToady *real* ether behaves like quantum foam.
all alike, or all different? 17:59
and is there a vending machine in the back?
that would explain a lot, actually... 18:00
gaal deliberates between an early Billy Wilder, an early John Sayles, and a mystery Tom Dicillo
TimToady sticks with bales of hay 18:01
gaal misses yet another reference
(and wonders if Captures are thus an optimistic renaming!)
TimToady hmm, examples/golf passed all its tests but is nevertheless dubious. Weird, but makes a strange kind of sense. 18:02
gaal :)
TimToady maybe that's why they also call golfers hackers...
gaal !
brb 18:04
TimToady junctions all pass. go figure.
p6 basically rewrite rule { foo bar } to regex { foo <ws> bar } so that neither the rule nor the tokens have to worry about <ws> 18:06
maybe there's some rewrite solution in parsec?
well, rewrites to token { foo <ws> bar } actually, since it still ratchets... 18:07
gaal TimToady: looks like audrey was suggesting bar needs to control the preceding <ws>
or the lack thereof
TimToady but that's not how we do it.
maybe parsec has to do it that way, but I'm sure s/rewrite/redefine in terms of/ can happen somewhere 18:08
gaal | (the "correct" fix is for "lexeme" to not swallow post-term 18:09
| whitespace; rather, let operators swalloe pre-term whitespace
TimToady at one point we were going to make the rule-calling-token transition soak up <ws>
gaal | if they choose to do so. takers welcome :))
- r10060
TimToady but that doesn't help with literals defined inline in the rule that really are tokens
yes, I saw that, but I don't quite believe it, from a P6 rules perspective. 18:10
gaal is too ignorant to decide on issues of faith
TimToady if you ignore the whitespace dwimmery, the p6 solution is to say that the calling rule has to decide where <ws> is legal. 18:11
neither the "foo" nor the "bar" can decide that unless "foo" makes itself into a supertoken
but a token can't know when somebody wants to combine it into a supertoken. 18:12
so the supertoken has to determine whitespace dependency, not the subtokens.
s/token/rule/ according to taste 18:13
gaal hmmm. well, we have
lexeme p = do{ x <- p; whiteSpace; return x }
presumably changing that to
18:13 BooK joined
gaal lexeme p = do{ x <- p; return x } 18:13
(which can be golfed, but never mind)
and also putting 18:14
whiteSpace
basically in the start of each and every rule will be a noop
then remove the whiteSpace from where it shouldn't be
TimToady it's just internal between foo and bar that you need it
gaal (just like carving an elephant out of a slab of marble)
mauke lexeme = id -- golfed. 18:15
TimToady yeah, but with the right power tools it can go quickly. I never thought I'd describe :w as a powertool...
doesn't *hurt* to put whiteSpace at the front of a rule--it just prevents juxtaposed supertokens, which tends to force your superterms to be bracketing constructs, which is usually a good thing... 18:17
gaal perl -pi -e 's/^[^\s]/$_\twhiteSpace\n/' :)
mauke whoa 18:18
TimToady seems a bit...er...overgeneralized...
mauke using $_ in the replacement part looks deliciously evil
gaal < TimToady> doesn't *hurt* to put whiteSpace at the front of a rule 18:19
heh heh
TimToady also, throws away first character 18:20
gaal I'm underassertive
TimToady what are you doing in .il then?
gaal bambooing my way 18:21
TimToady section by section, or shooting? 18:22
gaal lol
TimToady or are you just in a house on stilts?
gaal okay, there are only 31 mentions of 'lexeme' in src/Pugs. maybe we can replace evil with smarts! 18:23
gaal looks for a punctuation joke and doesn't find one 18:24
TimToady maybe I should be running a smoke instead, just for the hystorical value.
gaal hey, is this change supposed to make successful parses faster too, or only failing ones?
TimToady I don't suppose smokes are retired to svn when they go up in smoke? 18:25
depends on whether the successful parse was relying on backtracking.
we're likely to find a bunch of "successful" parses that shouldn't have been. 18:26
like 1<2 18:27
gaal nods 18:29
whee, my yapc talks were accepted
TimToady yapc:sa? :)
my talk was accepted too. I wonder what it's about... 18:30
gaal n/a
TimToady my talk in not applicable? 18:31
gaal TimToady: have audrey give it somewhere before you
TimToady *is
she already has
gaal it's like asking someone from the future to send you the plans to the time machine you'll have invented
TimToady did I ever say that I don't know what Perl is going to be used for in 20 years? If so, it was a lie. :) 18:32
because in 2026 a much younger Damian gave a talk on "What I will be doing for the last 20 years..." 18:34
gaal inventing time machines?
Daveman Hi gaal
TimToady how else do you think he gets things to run in 0 time? 18:35
he cheats, and runs them in the future.
xinming you've mentioned about time machines. did you all ever hear about John Titor? :-)
TimToady nope
now if you'd said any() I couldn't have short circuited that. 18:36
xinming www.johntitor.com/
:-)
gaal vi Daveman
s/v/h/
oops, I didn't mean to edit you 18:37
xinming It's a bit like a film... :-)
TimToady Short Circuit?
18:37 sysfault joined
xinming No, the man he said he is from future... and in 2001, why he came is just for getting a old computer... :-) 18:38
TimToady and now he's stuck here? 18:39
xinming TimToady: he, he's gone to the future...
leaving only his prediction from his "world line" :-) 18:40
TimToady sucks to be us.
he should have open sourced his world line instead of keeping it proprietary
xinming TimToady: I checked that site(which founded by his follower), He didn't mentioned about Gnu and even Linux. that's why I don't believe him. :-P 18:41
sysfault TimToady: larry wall? :) 18:42
TimToady did you look for GNU/Linux? maybe it was indexed under that, if rms got his way in the future.
I'm...acquainted with the gentleman... 18:43
xinming well, I just thought, It would interesting to read that... and If that is not true, the author(John Titor) is really creative. and very clever..
Daveman gaal, hehe ;)
don't worry, other users don't have write permission ;) 18:44
xinming TimToady: No, there isn't any words mentioned Linux and gnu
TimToady what about Windows?
xinming not mentioned a lot on computer, but he said he knows what happened to Bill Gates. But he won't talk about that... 18:45
avar TimToady: That doesn't matter, since the John Titor story is not falsifiable
xinming what does falsifiable mean?
avar TimToady: anything he says can be refuted by "well that just happened to not happen in his timeline, but everything else is probably pretty much the same"
TimToady sure it is--just takes a while...
avar xinming: en.wikipedia.org/wiki/Falsifiable 18:46
xinming: Basically something that's not falsifiable can't be disproven, examples include the theory that all our movements are controlled by invisible pink elephants, most religion, john titor, most conspiracy theories (but the goverment is just covering it up), etc.
TimToady eventually all the Many Worlds that have split have to come back together again, and then we've got him.
avar "There's an invisible man in my fridge that disappears when anyone tries to detect him" 18:47
TimToady I don't understand this so it must be intelligently designed. Hey, works for Perl. :)
avar xinming: Basically unfalsifiable = unscientific, at least some (most?) scientists are of that opinion. 18:49
18:49 aufrank joined
TimToady modulo a few Gƶdelesque quibbles around the edges 18:51
which, of course, some see as in the middle, but that's topology for you.
xinming avar: Ok,thanks, I think I understand falsifiable ~~ scientific :-)
18:52 lumi joined
TimToady how's the gaal force doing? 18:52
gaal attracting bogons as usual
xinming how to type approximate equal in ascii? :-/
TimToady "approximately equal" works pretty well :) 18:53
usually huffmanized to ~ though.
xinming thanks 18:54
TimToady Or you can type ā‰… in the Unicode subset of ASCII
xinming what will the log for perl 6 book? still the camel?
TimToady probably. we tend to be conservative about cultural identity issues like, oh, the name of the language... 18:55
xinming TimToady: why I ask is all because I have a request from you... :-)
TimToady "for you" would be more correct, but go ahead. 18:56
xinming I hope you send me the perl 6 camel books with your autograph. :-) I'll pay the cost for the book and the transportation expenses :-)
TimToady that could be arranged, though I'm pretty bad about actually dumping things in the mail. But then, I'm even worse about writing Perl 6 camel books... 18:57
so, um, how *much* of the cost of the book are you willing to pay? :) 18:58
obra laughs
TimToady It's gonna cost me about a year out of my life
obra xinming: you're a perlchina person right?
xinming obra: No... I'm not the memerber. 18:59
obra ah. *nod*
obra is vaguely curious about their conference this fall
TimToady my transportation expenses can be pretty steep, too. :) 19:00
xinming TimToady: camel book is well sold. So, I don't think you should worry about the copyright "fee"
obra: Do you mean the conference just passed last month? or the next conference? 19:01
obra: I don't know really, as I'm not in BeiJing, and it is too far to go from KunMing...
obra xinming: the next confernece, which I thought was to be much bigger 19:02
xinming obra: but In fact, If there is a chance, I would like have a conference in Kunming. Maybe I'll "hold"(which word to use please?) the conference. :-P
obra hold isn't wrong. 19:03
xinming obra: It's not mentioned in www.perlchina.org So, I don't know...
TimToady an organization can "hold" a conference, but I think an individual can only organize or sponsor a conference
hold isn't terribly wrong though. 19:04
xinming TimToady: thanks... :-)
obra Yeah. I suppose tt is right.
Though I know lots of individuals who pretend to be organizations ;)
TimToady you can say "Let's hold a conference", and that's fine.
xinming and I have to say, the most conference are held in Beijing... :-/ and not many people will go there... :-/
TimToady I thing the underlying notion is that any meeting is "held" by all of the participants 19:05
so the holding is actually at the time of the conference, not the preparation for it.
YetAnotherEric an individual could hold a time-travelers conference
xinming ...
TimToady well, and I can hold a meeting as long as I do it with myself. 19:06
...
not going there... 19:07
xinming hmm, Is that meeting only one person will participate... :-P
xinming wonder if TimToady ever came to China.
TimToady not yet 19:08
furthest I've made it is Japan
gaal isn't Israel farther away from where you live than China? 19:09
TimToady dunno. Japan is furthest west I've gone. Moscow is furthest east.
gaal might depend one where in China...
though not much on where in Israel 19:10
TimToady Uruguay furthest south.
and, er, Canada furthest north, unless you count Alaska.
or maybe Stockholm. 19:11
gaal There are moose in Canada. Don't know about Stockholm (though if there are, they're called elk. Or Hirvi)
19:13 oozy joined
xinming has to go for reading the book for the test tomorrow... 19:15
bye... :-)
TimToady good luck
gaal okay, sadly I'm realizing I'm not going to crack this lexeme change tonight 19:16
good luck xinming
19:16 penk left 19:18 penk joined
TimToady that leaves me in a quandry. Learn haskell (again), or keep changing the language out from under Pugs? 19:18
gaal heh heh heh 19:19
Daveman again?
TimToady Yeah, learning Haskell is easy--I've done it several times already.
19:22 penk joined
sysfault TimToady: are you really Larry Wall? 19:22
TimToady Mind you, I appreciate Haskell about as much as a south sea islander can appreciate New York, but at least it's good for cargo culting a few items back into Perl and venerating them.
sysfault or am I the only naive person here.
TimToady I dunno, I'm pretty naive someitmes.
gaal sysfault: we could all be naive
sysfault nods 19:24
TimToady there are approximately 137 Larry Walls in the U.S, and I'm at least two of them.
sysfault however, the question still hasn't been answered.
theorbtwo doesn't think it goes Lazyness, Impatince, NƤitive.
At least two of them?
sysfault I'm basically asking because of your host, and whois information.
TimToady I could just be freeloading on wall.org, you know. The ESSID here is "free4u2use". 19:25
sysfault well I guess that answers it.
TimToady Or I could just be parked out on the street using my own computers... 19:26
sysfault ok
theorbtwo Or he could be playing with the newbie.
TimToady but given I haven't even figured out who I am yet, I can see why you might have troub.e 19:27
*trouble
but that would be...um...cruel, and stuff...
sysfault theorbtwo: I guess you can call me that, 'A wise man knows he knows nothing'.
TimToady Larry's wife will tell you that she never gets a straight answer to any question she asks him. So it's nothing personal. 19:29
or impersonal, in this case.
theorbtwo Is what matters if he's the guy from the cover of the camel, or is what matters if he has good ideas?
TT: Have you ever played The hitchhikers guide to the galaxy?
sysfault I'd say the latter, I can get on the front cover of Time magazine sitting on a camel in the middle of baghdad.
TimToady no, but I've played Bureaucracy... 19:30
theorbtwo It's humour seems right up your alley. 19:32
TimToady when did I acquire an alley? 19:33
theorbtwo Hm, I just spely humour with two 'u's. I'm going native.
When you said "or impersonal, in this case".
TimToady you just misspely spely too. 19:34
I just love to take people's utterances and twist them into pretzels. 19:36
including my own.
utterances, not pretzels.
I don't own any pretzels. 19:37
I keep them right next to my alley I don't own.
19:37 rindolf joined
rindolf Hi all! 19:37
nothingmuch: here?
TimToady ain't seem him in a while. 19:38
rindolf TimToady: OK.
19:39 sysfault left
rindolf TimToady: what's up? 19:39
TimToady just trying to change Perl 6 out from under Pugs as fast as possible. :) 19:40
Since it's ferociously difficult to implement Perl 6, I'm just trying to make it ferociously difficulter. 19:41
rindolf TimToady: heh.
TimToady odd how simplifying something can make it more difficult... 19:42
but mostly it's just the pugs' collective tongues hanging out panting, trying to chase a moving target. 19:43
rindolf TimToady: well changing a spec always involve more work to the implementor if the latter already has a working implementation.
TimToady fortunately, in this case the implementors realize they're doing it precisely to force change in the spec.
so they don't seem to mind so much. 19:44
if we also get a usable interpreter out of it, that's just all the better. 19:45
Pugs is optimized for fun. What they don't tell you is that some people's idea of fun is tormenting language designers. :) 19:46
And some language designers' idea of fun is tormenting people. :) 19:47
Steve_p mumbles something about Guido
TimToady Eh, What's that?! Speak up, child! 19:48
Me, I mostly only enjoy tormenting lambdacamels... 19:49
Real people get a hurt look on their face when you torment 'em...
Steve_p and then the swearing begins. 19:50
xinming thinks that lambdacamels have to tormenting computer...
theorbtwo TT: So long as you don't change the spec /just/ to tourture the lambdacamels, but actually think the new spec is better...
TimToady Oh, I can convince myself of anything, so that's no problem...
xinming hides... 19:51
rindolf TimToady: are you using SpamAssassin?
TimToady yes.
rindolf TimToady: cool. 19:52
19:52 Pete_I joined
rindolf TimToady: are you going to re-write it in Perl 6? 19:52
Pete_I: hi.
TimToady what, the alphabet?
Pete_I ello
hi TimToady 19:53
rindolf There are now 28 letters in the Swedish alphabet.
TimToady howdy do
19:53 _SamB_ joined
rindolf Pete_I: are you a Perl Monks lurker? 19:53
Pete_I rindolf, i've posted a few times.
rindolf Pete_I: I see. 19:54
Pete_I but mostly yes.
rindolf Pete_I: well maybe I should start hacking on the percentages on/off Test::Run plugin.
Pete_I the quality/quantity thing. most of the stuff i think up isn't good enough.
rindolf Pete_I: I see.
TimToady: do you read [email@hidden.address] 19:55
19:55 _SamB_ is now known as SamB
TimToady not that I know of. 19:55
checking... 19:56
yes, it's one of those mailing lists I subscribe to and never get around to reading...
rindolf TimToady: I see.
TimToady: it's not that high volume.
TimToady: probably much less so than perl6-lang... 19:57
TimToady I guess I subconsciously feel that, having written the original TEST script, all the rest is just refinements. :) 19:58
thanks, I don't often get the opportunity to psychoanalyze myself. 19:59
Well, I often get the opportunity, but don't often exercise it. Kinda like reading a mailing list. 20:00
rindolf TimToady: :-)
TimToady subscribe larry-shrink
theorbtwo You're in a fun mood this eve. 20:02
nothingmuch rindolf: yes?
TimToady It's a fair cop but society is to blame. I'm under the influence of influenza. 20:03
Toaster better that than the affluence of incohol 20:04
SamB TimToady: you have the flu?
TimToady Every time my brain temperature goes up a degree, I get ten times as much like Robin
Williams
fortunately a fairly mild one. I hope its avian flue. 20:05
*flu
.oO(an avian flue. now there's a picture...)
20:06
lumi An avian flew, news at 11 20:07
TimToady An avian flu like a fruit fly
you see, it's all just free association. 20:08
rindolf nothingmuch: hi.
nothingmuch: so I looked at Test::TAP::Model, and adapted it to Test::Run as Test::Run::TAP::Model.
TimToady or maybe just open source association...
rindolf nothingmuch: it has a different interface, though, because the Test::Run interface is different than Test::Harness's.
TimToady: heh. 20:09
nothingmuch: the question is: what should I do with it now? 20:10
TimToady thanks, I thought maybe the audience fell asleep. :)
20:11 SubStack joined
TimToady I wonder if anyone ever got paid to be a sitdown comedian on an IRC channel... 20:11
Q: what's the only language that has ever succeeded in turning curved lines in to straight lines? 20:14
A: Lisp.
Pete_I hmm, if it's a joke, i don't get it.
TimToady LISP ::= List In Silly Parentheses
Pete_I the parentheses i got, what's the got todo with straight lines? 20:15
TimToady The shortest distance between two jokes is a straight line. 20:16
Pete_I haha
SamB actually, it probably isn't
TimToady probably not.
did you hear about the Marine that was rotten to corps? 20:17
SamB not before, no
Pete_I haha, nice pun.
TimToady actually, no usually sorts before not. 20:18
SamB groans
Pete_I hmm, don't get that one.
SamB ?eval "not" < "no" 20:19
evalbot_10061 Can't exec "./pugs": No such file or directory at examples/network/evalbot//evalhelper.p5 line 46.
TimToady keep thinking about it and pretty soon it'll be groan on ya
Pugs is dead. Long live Pugs.
Pete_I shouldn't that be 'lt'?
rindolf Pete_I: "not" before "no".
Pete_I instead of <
SamB Pete_I: I don't know your strange languages! 20:20
TimToady
.oO(drat this font)
rindolf "God is dead." --Nietzsce. "Nietzsce is dead." --God.
Pete_I sounds like they've got a rivalry :)
rindolf I'm not sure if I spelled Nietzsce right. 20:21
TimToady I believe the usual comeback to that is
Nitzsce is God. --dead
s/i/ie/
rindolf Crazy German spelling.
TimToady maybe it's Hungarian
rindolf TimToady: wasn't Nietzsce German? 20:22
TimToady or Korean
of course, I was just talking about the spelling
ba dump bump
Pete_I wikipedia says he was born in prussia 20:23
rindolf Pete_I: Prussia is part of Germany.
Pete_I hmm
TimToady except for poland
Pete_I my geography is rusty.
TimToady which might also explain the z 20:24
rindolf nothingmuch: ping.
TimToady Failed 211/520 test scripts, 59.42% okay. 20:25
kewl!
Pete_I 51% is good enough for congress.
rindolf TimToady: what's so cool about that?
SubStack zing
that's almost a passing grade
rindolf SubStack: it is a passing grade in Israel.
Pete_I SubStack passing is 70% here.
TimToady actually, the rest of the line says 20:26
Pete_I rindolf, what's passing there?
rindolf 55% is a passing grade in the Technion.
TimToady 62/5647 subtests failed, 98.90% okay.
20:26 dduncan joined
TimToady so ship it! 20:26
rindolf But I think it's 60% in Tel Aviv University.
Pete_I rindolf, cool...
SubStack php also came out of israel
rindolf But then the tests are easier in TAU.
buu fuckers
Pete_I i doubt that.
rindolf SubStack: not originally.
dduncan greetings to you all
not much else to say for the moment 20:27
SubStack well, it forked there anyhow
Pete_I it probly came from an american.
rindolf SubStack: yes.
Pete_I we're lazy people.
TimToady the original 'P' part did. :)
rindolf Pete_I: I'm not sure Rasmus Lederdoff (sp?) is an American.
Pete_I hmm
TimToady I'm sure that Larry is.
Pete_I yes, we're sure you're sure. :) 20:28
TimToady And Larry wrote the original 'P' part.
I'm pretty sure about that too...
SubStack who wrote the L?
Pete_I "is a Danish-Canadian programmer " -wikipedia :/ 20:29
rindolf Rasmus Lederwhatever is Danish-Canadian.
TimToady Eh? I was talking about PHP. This isn't #php?
Pete_I of course not.
we're not bashing perl.
TimToady oh right. stupid me. 20:30
rindolf He was born in Greenland.
Pete_I slaps Pete_I around a bit with a large trout
rindolf slaps the large trout a bit with Pete_I
TimToady: are you still working for O'Reilly? 20:31
TimToady eh? I haven't worked for O'Reilly since 2001. 20:33
rindolf TimToady: I see. I'm out of date.
TimToady well, there's a lot of latency in the world of info, to be sure. 20:34
for the next 5 years, my trick will be to be employed while everyone thinks I'm still unemployed. 20:35
pmichaud TimToady: should a "token" regex assume :p ?
i.e., if called directly -- not as a subrule
(if called as a subrule, :p is implicit)
TimToady mmm
the notion of "token" would seem to indicate it. 20:36
pmichaud that's what I was thinking. It sure fits some of PGE better if we do that
TimToady and then you can just say $x ~~ ident for some value of ident
to unanchor it you'd *have* to call it from elsehwere. 20:37
*wh
20:37 Pete_I joined
TimToady since rule is derived from token, it kind of follows for that too. 20:37
pmichaud agreed 20:38
Pete_I keyboard-mashing error.
pmichaud and is parsed has an implicit :p as well :-)
TimToady note that "rule" is now a very specific thing in Perl 6.
not general regex
so you can unmash your keyboard.
I believe the documentation already says that. 20:39
yes. The pattern you supply to a Perl macro's
C<is parsed> trait has an implicit C<:p> modifier.
pmichaud yes, I was just referring to "is parsed" as support for the idea that token/rule should imply :p 20:40
TimToady question is whether it anchors on the other end as well when called directly. I think it does.
pmichaud oooh
TimToady $x ~~ &valid_number 20:41
pmichaud but it doesn't/shouldn't when called as a subrule
TimToady right. 20:42
$x ~~ / <valid_number> == 42 /
in a sense, it *is* anchoring on the right, just to the place the superrule wants to resume, not to the end of the string 20:43
pmichaud I'm thinking something along the lines of $x ~~ &token implies anchor on both sides because $x isn't a match object
TimToady sort of a final cause rather than first cause
pmichaud (and token has implicit :p) 20:44
TimToady you think calling a subrule is the ~~ combinator? :)
pmichaud no
please no :)
TimToady then I don't know how to interpret "isn't a match object" 20:45
you mean $x.token
?
pmichaud in PGE, subrules are passed a match object to indicate where to start matching
TimToady as a kind of invocant? 20:46
pmichaud yes
TimToady okay, them more like $x.token than $x ~~ token.
*then
pmichaud that's the right term -- if the invocant is a match object, the subrule continues matching from the invocant. Otherwise it starts a new match
rindolf Pete_I: after you said "* Pete_I slaps Pete_I around a bit with a large trout" 20:47
Pete_I: I said:
pmichaud (might not be entirely correct, but that's what works for now. Can be fixed up later.)
buu Hrm. Do I get magical accessors in p6?
Like $x.foo = 42;
rindolf Pete_I: "* rindolf slaps the large trout a bit with Pete_I"
buu: I think so.
Pete_I haha.
pmichaud at any rate, I don't need to know the end-anchor semantics yet, just if token/rule implies :p at the front
buu rindolf: And I can override them with methods?
TimToady I'd say not that token and rule anchor, but that they don't .*?
rindolf buu: yes.
TimToady that came out sideway... 20:48
buu rindolf: Woo.
TimToady :p doesn't anchor, it suppresses :c behavior
pmichaud right
if we just say that token and rule don't .*? that's good enough for me for now
TimToady don't do .*? on either end. 20:49
nor <ws>
pmichaud okay, don't do .*? on either end is good, too 20:50
I can work with that. Thanks
TimToady yw 20:51
pmichaud I'm currently updating PGE for all of the S05 changes (and adding a few other featurse)
TimToady I should doc it better tho
or you should :)
pmichaud I'm heavy in coding atm, but if you don't get to it before I do then I will :) 20:52
20:52 _bernhard joined
TimToady I will assume the question will not occur to anyone else before you get to it. :) 20:52
pmichaud fair enough
:-)
20:53 kakos joined
aufrank goes to post question to p6l, invalidating TT's assumption 20:53
TimToady though, in fact, gall and I had basically the same discussion earlier this morning
aufrank take that!
TimToady only in terms of haskell
that.take() 20:54
rindolf TimToady: you mean gaal?
TimToady er, him too. ;)
aufrank he means nami
TimToady it's a particle wave duality
aufrank I can't believe you have the gall to suggest that 20:55
TimToady are you challenging me to a dual? 20:56
which field?
Pete_I the golf field? 20:57
pmichaud tunnels out of #perl6
Pete_I that'd be interesting to watch.
TimToady you guys should be glad I only type in the good puns as a matter of course 20:58
the rest of them I dictate to my secretary, who types them in for me. 20:59
FurnaceBoy yeep
20:59 reZo joined
FurnaceBoy submits that job description to "you think YOUR job sux" 20:59
TimToady which, her job, or my job? 21:00
FurnaceBoy hers :-) 21:02
TimToady but, but, I think MY job sux...
FurnaceBoy let's all pretend you're unemployed 21:03
Pete_I haha
TimToady xx *
aufrank the "you said it, brother" operator 21:04
TimToady nah, it's the "you can say that again!" operator
xx 0 "that goes without saying"
Odin- What would be the "submit everyone involved with this program into a mental hospital - involuntarily, if need be" operator? I think it's going to be needed. 21:05
aufrank now I want the other ones back: xx ? (did he really just say that?) and xx + (that's really saying something!)
FurnaceBoy chuckles
Odin, we established last night that all progress depends on heretics, madmen, rebels, sceptics, hermits, and dreamers 21:06
TimToady that would be the "mad but nnw" operator.
theorbtwo North-by-northwest? 21:07
nothingmuch rindolf: release it
if it has the same read interface, then it's OK
that means you can still shove it into Test::TAP::HTMLMatrix
Odin- FurnaceBoy: Yes, but those aren't the same as completely-out-of-their-mind cuckoos. :p
TimToady wanna bet?
FurnaceBoy thinks Odin is splitting hairs ;-)
aufrank I'm up to my elbows in cuckoo minds right now 21:08
nothingmuch fades out again
Odin- FurnaceBoy: Yes, although my surgical-precision knife really isn't up to it... 21:09
TimToady I guess it'd be "self but mad<nnw>" to follow the bard more closely.
www.anvari.org/fortune/Quotations_U9/142.html 21:10
where :wind<southerly> 21:11
rindolf nothingmuch: OK. 21:12
TimToady I guess "when" would also work.
rindolf nothingmuch: I think at one point I return an array ref instead of an array. It's possible that it propogates to the API Somehow. 21:13
nothingmuch: I don't remember, I'll have to check.
Well, I'm going to sleep. I'm tired. 21:14
FurnaceBoy good time to do it 21:15
TimToady the scary thing about Shakespeare is that he was such a good writer that we have no clue which of those six categories he fell into...
FurnaceBoy heh! many writers/artists span more than one. I used the example of Hunter S. Thompson.
21:16 oozy joined
TimToady It's possible that W. Shakespeare was merely a keen observer of the six categories in others. Just can't tell. 21:17
lumi Relevantly: lumimies.livejournal.com/1376.html 21:19
TimToady Maybe he was just supremely competent at stealing from other people's computer languages...er...I mean, experiences.
wolverian I have no idea what that Shakespeare quote means. :) 21:20
(the NNW one) 21:21
TimToady "means"? what is this "means" thing again?
wolverian isn't that how you judge its value? :) 21:22
TimToady "value"? 21:23
theorbtwo Is that an lvalue or an rvalue? 21:25
Is it mutable?
TimToady It's usually more expedient to judge things by their key. 21:26
21:27 mugwump joined 21:32 reZo joined
dduncan maybe it was already known, but I got a build error with pugs today at prelude time 21:35
Generating precompiled Prelude, Test... ***
unexpected ";"
expecting "\n" or end of input
at Prelude.pm line 1227, column 2
Use of uninitialized value in length at util/gen_prelude.pl line 158.
system: [/Volumes/Programming160/perl58 util/gen_prelude.pl -v -i src/perl6/Prelude.pm -i ext/Test/lib/Test.pm -p ./pugs --output blib6/lib/Prelude.pm.yml]: at util/build_pugs.pl line 280.
make: *** [pugs] Error 1
its the newest re 21:36
v
TimToady yes, the current rev was known to be broken when checked in. 21:39
we're in the middle of changing over to predictive parsing from backtracking.
and the whitespace is currently muddled.
though, I managed to compile it fine, for some reason. 21:40
make test ends up with
Failed 211/520 test scripts, 59.42% okay. 62/5647 subtests failed, 98.90% okay.
.zZ(...) & 21:55
22:10 Limbic_Region joined, penk joined
dduncan I hear that 22:13
22:16 frederico joined 22:36 Odin-LAP joined 23:07 ayrnieu joined 23:15 Quell joined 23:17 justatheory joined 23:39 lisppaste3 joined 23:54 mako132_ joined