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.
Juerd audreyt: In case you're keeping records: I'm entirely okay with disclaiming copyright for all that I contributed to Pugs. 00:00
FurnaceBoy why would you do that? is it not GPL? 00:02
00:02 turrepurre_ joined
Juerd foo < 5 # foo qw/ ..., or foo() < 5? 00:02
FurnaceBoy: See pugs.blogs.com/
FurnaceBoy k
wolverian Juerd, good question. 00:03
Juerd I fear a long left angle bracket ;) 00:05
Where if you meant foo() < 5, you can do foo< <5 :)
Perhaps a single solution has to be invented for all of these.
00:08 OutThere joined, OutThere is now known as SubStack
avar Juerd: Where do you live? 00:09
Juerd avar: If this is about the copyright thing: I do not care about the legal possibility of actually disclaiming copyright; it's the intent that counts in court, and I don't even think there'll ever be any juridical action surrounding this. 00:11
avar: If for any other reason: Dordrecht, The Netherlands.
TimToady audreyt: I think the proper way to disambiguate my $x[@y] = 1,2,3 is just my ($x[@y]) = 1,2,3 00:33
it's the moral equivalent of ()= as "always list assignment" if we had such an opertor. Well, we do, but the left side just has to go in parens.
00:34 coumbes joined
TimToady If we make another way of forcing list assignment, we would have to at least think about killing (x) = y 00:35
but since we need () for precedence anyway, why not just use (x) =
.oO(I killed frederico, and kanru, and pjcj!)
00:36
dbrock what are the two possible meanings of my $x[@y] = 1, 2, 3? 00:37
TimToady whether @y is intended to be +@y or (@y,)
and because of that, whether = is a binary operator or a list operator
dbrock I see 00:38
TimToady there are lots of ways to dwim it, but unfortunately there's no really good place to draw the line on too-much-magic 00:39
Pretty obviously, $x[1..10] is intended as a slice
since .. no longer has a scalar meaning that works as a subscript 00:40
but it's probably better to detect these edge cases and just give a really good diagnostic:
"If you mean this lvalue to do list assignment, you have to put parens around it..." 00:41
only better.
it's not really a problem on an rvalue slice because it doesn't affect subsequent parsing. 00:42
except, of course, for the little problem that we assume an rvalue subscript is is in list context, and an lvalue slice is in scalar context. 00:45
which is a bit odd.
and, in fact, since $x[@y] is illegal as a "my" declaration, it would just be in bare parens, so when the parser sees 00:46
($x[@y])
it can't yet know whether there's going to be an = to turn the whole thing into an lvalue. 00:47
so it has to parse @y as a list-or-scalar, or assume list and retrofit it to be a scalar when it sees the = 00:48
fortunately a Capture can treat @y as a list-or-scalar 00:49
since we have to defer knowing context anyway until after we dispatch "push @array, 1,2,3" 00:50
$x[@y].assign() vs ($x[@y],).assign() basically. So when () sees an =, it transforms Capture to move invocant to positionals, just as , would have done. 00:57
.oO(and that killed shachaf...)
#perl6, the land of fatal thoughts... 00:58
00:58 KingDillyDilly joined 00:59 mako132_ joined
KingDillyDilly TimToady wrote "I think the proper way to disambiguate my $x[@y] = 1,2,3 is just my ($x[@y]) = 1,2,3" 01:00
I like that reasoning. I used it in perlmonks.com/?node_id=388635 .
KingDillyDilly contemplates saying "I like how you think, Timmy. Say, do you play golf?" but thinks not. 01:11
01:16 bsb joined 01:20 beppu joined 01:32 Quell joined 01:42 shachaf joined 01:43 jserv-- joined
avar YetAnotherEric: boo. 02:09
02:09 avar left 02:10 avar joined 02:20 FurnaceBoy_ joined 02:25 qu1j0t3 joined 02:27 Pete_I joined 02:29 stclare joined
svnbot6 r10062 | audreyt++ | * Chromatic requested removal of his contribution under the 02:43
r10062 | audreyt++ | src/ tree; this is part #1: Bind.hs.
KingDillyDilly researches computer language terms so he could say something properly 02:50
beppu If I wanted to write a perl 6 binding to the C library, libcaca ( sam.zoy.org/libcaca/ ), is that something that's possible to do now with pugs? 02:52
svnbot6 r10063 | audreyt++ | * Finish the Pugs.Bind cleanup for chromatic's contributions.
r10063 | audreyt++ | "svk blame" still shows two empty newlines as chromatic's,
r10063 | audreyt++ | but those are not copyrightable. :-)
audreyt beppu: yes... but currently it has to be writtne by hand in C or in Haskell 02:55
beppu Are there any examples of such a beast?
audreyt beppu: a swig-for-parrot or swig-for-pugs would be nice
yes
you can find src/Data/Yaml/Syck.hsc 02:56
a binding for libsyck
beppu excellent.
oh shit, it's in haskell. ;-)
I guess I have an excuse to learn haskell, now. 02:57
audreyt yeah
there's automation:
hsffig.sourceforge.net/
I havn't used it, but it looks like on par with swig :)
beppu btw, I just finished listening along to your YAPC::Asia talk on Haskell while looking at the slides. I found it very informative. 02:58
audreyt oh, thanks! :)
beppu You know, I never liked swig that much, because it was too straightforward...
audreyt my suggestion would be writing HelloWorld.hs using libcaca + Haskell FFI (maybe using hsffig)
#haskell can help
and then bridge it to pugs's object model
which is trivial
so focus on the interesting part first :)
beppu sometimes, I want to take a C library and make the perl wrapper seem perlish and swig can't do that, because it takes human judgement to do that kind of mapping. 02:59
I'll keep your suggestion in mind.
audreyt also, see haskell.org/hawiki/FindPage?action=...;value=ffi 03:00
example, cookbook, tutorial, etc, for writing bindings :)
beppu great, that'll help a lot. 03:01
hey... how much of perl 6 is left to implement in pugs? (...becaues it seems like you guys have covered A LOT of ground already.)
(that's why I feel like making libcaca bindings for perl 6) 03:02
or pugs rather...
but to me, pugs == perl6 .
audreyt heh 03:06
KingDillyDilly I can't find an official term for this, and my feelings aren't based on a whole lot, but sometimes I get the feeling that Perl 6 will be a very ununiform, contrived, difficult to learn language. Exceptions to rules and stuff. FWIW.
Damn...I think TimToady used the term I'm think. The quote was something like "There's nothing .... can't fix except too much ...." Could someone fill in the blanks?
03:06 Kattana joined
Pete_I i thought pugs was just an interpretter for perl6 03:06
audreyt Pete_I: that is correct, except s/interpreter/implementation/
pugs is no more an interpreter than, say, java is an interpreter
beppu: a lot, actually; the class, grammar, types and macro milestones are all incomplete
Pete_I java is a language. 03:07
audreyt sun java then.
Pete_I javabeans is an interpretter thingy.
beppu java is a lot of things under one name.
Pete_I yeah
ayrnieu java is also the name of a programmer.
er, a program.
audreyt oy :)
Pete_I think i'll check that. maybe there's a guy named 'java smith'
beppu www.jwz.org/doc/java.html 03:08
03:10 coumbes joined
Pete_I 'java' is a horrible name. makes me hate coffee more. 03:10
KingDillyDilly Found the quoteL "there's nothing that can't be solved with another level of indirection...except the problem of too many levels of indirection." Doesn't fully apply, but it's found. 03:13
Good quote anyway. 03:16
03:19 aufrank joined
dduncan audreyt, regarding the prospective or actual change that Pugs itself (not including ext/, examples/, etc) is officially committed to the public domain, do you want all committers to explicitly acknowledge this, or are you going that we approve by default if we don't explicitly dis-prove and remove our contributions? 03:22
personally, while my contributions to the core are minor at best, I will hereby officially commit those parts to the public domain 03:23
audreyt thanks :)
dduncan however, I will still retain ext/Locale-KeyedText and ext/Rosetta to myself as already stated in their copyright statements 03:24
audreyt dduncan: I'm still discussing with TPF on that, but I think I'll let some period of comments happen before releasing the next pugs with src/ pub-domained
dduncan can we assume that nothing is official until you make another CPAN release?
audreyt dduncan: sure. I'm disclaiming my compilation right as the release engineer
yes, that is correct.
dduncan another question; what about the t/ directory or docs/ ? 03:25
is it only src/ under discussion for change?
audreyt yes.
SubStack java is an island silly 03:26
audreyt I'll place explicit LICENSE to t/ and docs/ and examples/.
they remain A2b5+GPL
until we reach agreement with TPF on upgrading to A2b14
dduncan and util/ I presume
audreyt 's procedure
sure
but not the new third-party/
those are under whatever original license they are under 03:27
and we can't relicense them :)
(or rather, bettern ow.)
dduncan meanwhile, though it is in ext/ , I fully intend for ext/Relation to become part of the core if you would have it
audreyt (or rather, better not.)
dduncan: ooh. makes sense to say so then :)
TimToady I thought bettern ow was kinda cute.
.oO(There's nothing that can't be solved with another level of licencing, except the problem of too many levels of licensing...)
03:28
dduncan the reason I put 'Relation' in ext/ was because it was something I was proposing for Perl 6 that would need approval by the powers that be before I would consider that it was accepted into the core
so ext/ is a temporary spot for it ...
while I make my proof of concept to decide on 03:29
TimToady "powers that be" sounds so...patriarchal...or occasionally matriarchal...
dduncan when I first committed 'Relation' a week ago, I said this in its copyright: 03:30
Relation is Copyright (c) 2006, Darren R. Duncan. But any copyright
interest will be transferred to The Perl Foundation for portions or
derivations that become part of Perl 6 itself.
however, given the current discussion ...
I'm thinking I should leave TPF out of it
and maybe just say it is for the public domain
at the time I wrote that ...
I thought the Pugs core would eventually be given to TPF
as it is supposedly the official copyright holder of "Perl 6" 03:31
obra humbly suggests that intellectual property decisions be tabled until Artistic 2.0 is settled
For now, just don't go giving away all your IP rights to some guy named Guido who offers you a chance to be involved in his "next generation language" project. 03:32
He's almost certainly peddling snake oil. 03:33
TimToady hey, what do you have against Italians?
Pete_I italians are cool. they invented pizza.
dduncan I will take out the second sentence for now and defer further decisions until the right time
beppu www.njguido.com/
obra They're anti-lambda[camel].
TimToady right. then explain how it is that tomatoes came from the new world. :)
qu1j0t3 and a few other things not quite so ... delicious 03:34
Pete_I TimToady, the original pizza pie didn't have tomatoes on it.
dduncan true
Pete_I did have cheese though.
dduncan or if it did, it didn't have anything else on it that we associate with pizzas
TimToady when you say "pizza" nowadays around here, people assume it *must* have tomatoes.
so that's what pizza means here. 03:35
dduncan some don't even today
Pete_I you can still get it without tomatoes if you ask for it.
dduncan you can get, I think, a mexican pizza from some general joint, and it has refried beans instead of tomatoes
KingDillyDilly Vodka pizzas around here don't have sauce and are pretty popular.
TimToady kinda hard to get it without wheat though...
they make pizzas out of vodka now? 03:36
dduncan you can get bread without wheat, why not pizza?
TimToady 'cause it always has tomatoes on it.
Pete_I TimToady, you could make it yourself. it's not a difficult process from what i've seen.
TimToady hard to fling dough based on low-gluten flours...
KingDillyDilly I wonder if an underaged kid would be allowed to order a couple of vodka pies and just lick them.
TimToady wanders off... & 03:37
Pete_I KingDillyDilly, in all likelyhood the alcohol is cooked out.
KingDillyDilly I'd kick the kid out for that anyway. 03:38
Pete_I i'd let him think he's getting drunk so he'll come back and buy more later. 03:39
svnbot6 r10064 | audreyt++ | * README: Per dduncan++ and obra++'s suggestion, make it clear
r10064 | audreyt++ | I'm just disclaiming the compilation-copyright, and the
r10064 | audreyt++ | next-release-goal of changing src/ to public domain does
r10064 | audreyt++ | not touch any other subdirectories, which are still assumed
r10064 | audreyt++ | to be in A2b5+GPL unless explictly noted by the author.
audreyt dduncan: does that look a bit clear? :) 03:42
dduncan I think so, from what I've read ...
svnbot6 r10065 | audreyt++ | * rename Artistic-2 to Artistic-2.0b5, now we have
r10065 | audreyt++ | A2b14 which may or may not be the same license...
audreyt cool :)
dduncan could possibly take a little more clean-up for better grammar 03:44
audreyt commit away then :)
dduncan will do ...
03:49 KingDillyDilly left
svnbot6 r10066 | Darren_Duncan++ | updated the README file to improve some of its grammar ; updated ext/Relation/lib/Relation.pm to remove a speculation from its copyright 04:03
audreyt dduncan++
04:03 jserv-- joined
dduncan now, back to a practical problem, regarding a multi-dimensional hash ... 04:05
svnbot6 r10067 | audreyt++ | * Eval.hs: rewrite chromatic++'s parameter-binding logic,
r10067 | audreyt++ | this time supporting $!foo instead of $:foo.
04:21 drbean joined, justatheory joined
dduncan here's a question ... what's the best way to declare a multi-dimensional hash attribute of a class where the number of dimensions and the type of each dimension can vary for each object of the class? 04:23
audreyt just declare it as Hash then
dduncan S9 gives examples that would work if all objects have the same num of d and types, which is known in advance
doesn't that force keys to be 1-dimensional Strs then? 04:24
audreyt well, a multidim hash of str;str keys
it not really different from a hash of str to hashes of str
I mean, keyed on str
dduncan what I want is a hash of any;any;...N 04:25
audreyt then declare it as a Hash using Any as key
would work
dduncan will try that for now
wolverian except the subhashes are keyed on Str, aren't they?
dduncan unrelated question ... 04:26
audreyt wolverian: not if they are constructed the same way 04:27
dduncan now that we have the 'constant' declarator, do we still need 'is readonly' for declaring constants in a program?
04:27 justatheory joined
dduncan eg, is 'is readonly' gone? 04:27
for that purpose
wolverian audreyt, can you declare {$foo => "bar"}'s (inline hashref) type somehow?
audreyt "is readonly" still allows rebinding
wolverian: it's a good question 04:28
an answer will ultimately lead to Ruby symbol types ;)
so... I'll yield to TimToady
(meaning, I have noidea)
wolverian {$foo => "bar"} :: Hash{Foo, Bar} # :) 04:29
audreyt possible, as te closure the find the common type and collapse
but then, {1 => 'x', '1'=>'y'} would be legal
er I mean
but then, {1.5 => 'x', '1'=>'y'} would be legal
but then, {1.5 => 'x', '1.5'=>'y'} would be legal # sigh 04:30
and I'm not sure if it's sane...
04:30 justatheory joined
svnbot6 r10068 | audreyt++ | * Finished src/ tree rewrite of chromatic++'s contributions: 04:36
r10068 | audreyt++ | Lexer.hs - a typo fix
r10068 | audreyt++ | Prim.hs - object finalization and creation sequence.
gaal morning 04:50
audreyt gaal: hey 04:51
gaal I feel hung over. I also feel cheated, since I didn't have anything to drink last night
audreyt heh
gaal audreyt: hey - unfortunately I didn't fix the lexeme stuff, as you probably saw 04:52
TimToady regarding Hash objects--at some point you just have to break down and write a constructor, I suspect. 04:53
gaal curious to see what a fix oughtta look like
TimToady I think you can get a hangover from lexemes too...
my fever is up again, so expect the unexpected 04:54
oh wait...
gaal unexpect the expected? 04:58
audreyt reexpect the unexpectable?
TimToady mostly I'm just expectorating unexpectedly 04:59
audreyt gaal: you can
gaal Rule the regexpressible?
audreyt import Parsec hiding (lexeme)
import quqliaifed Parsec (lexeme)
lexeme = post . Parsec.lexeme . pre
qualified, even 05:00
that effectively gives you a "wrap"
TimToady figgered there had to be some way to rewrite in a rewrite-only language like Haskell. (ow, sorry)
audreyt rofl
gaal but code in Parsec sees its own function. So there are only lexical wraps? 05:01
audreyt yes.
but lexeme is combinator
gaal (Secret Haskell AOP project under lexical wraps)
audreyt and parsec core doesn't use them
gaal does in the op stuff, doesn't it?
reservedOp etc
audreyt it's in Pugs.Rule.Token 05:02
we are not using Parsec Tokens.
gaal yep
oh: didn't we slurp in all of Parsec?
audreyt advised by allison, we are unslurping any third-party code
those in GHC core or Perl5 core, we just remove from our tree 05:03
those not, we move to third-party/
parsec is GHC core library
gaal sure, so if we used to have moderate forkage in Pugs.Rule.Token (which is essentially ParsecCombinator.Token)...
audreyt we still do
Expr and Token are still in our tree
and instead of forkage, we can now do totalrewritage if needed. 05:04
gaal ParserCombinators.Parsec.Token.hs that is
audreyt (needed for Expr for sure)
and rewrite Token (just lift it from languageDef)
can increase performance as well
gaal okay... also I realized that makeTokenParser returns essentially a vtable
audreyt aye 05:05
gaal okay. but that's just details :) what about the lexemal shift? :) so change lexeme to id; then what? 05:06
audreyt then for all postfix stuff that accept ws 05:07
declare
ruleWs
for them
which consumes whitespace
try the rule
if it fails, rollback as if whitespace havn't been consumed
but if it commits at any point 05:08
then just commit
it's not as efficient as (say)
keep a UserState of seenWhitespate
that remembers if the last lexeme is whitespace
and reject those rules that are declared ruleNoWS 05:09
but both approach can work
gaal ruleWs = try whiteSpace -- simply? 05:11
audreyt more like 05:12
ruleWs p = do
p <|> try { whiteSpace; p }
it's essentially what PGE's OPTable does
except for the optimization of lifting all whiteSpace tests into a state 05:13
we can do that too later
gaal k. where does ruleWs need to go? are there key rules we can put it in to avoid putting it everywhere? 05:14
audreyt my thought was ruleWs goes to "rule" 05:15
and then we keep "verbatimRule" 05:16
and change "literalRule" to "rule"
and change all "lexeme" to "ruleWs"
and see what breaks
I think we can also simply rename "ruleWs" to "rule" 05:17
and change the old "rule" marker to "Token"
gaal ah, there already is "lexeme someVerbatimRule" in a few places, showing that's how this is used in general
audreyt I mean "token"
yes
TimToady mainly, it doesn't matter where you eat whitespace as long as it doesn't leak down into any tokens you might later want to abut as a supertoken.
audreyt TimToady: yup.
gaal ok. I have to go to $work now, but thanks for the explanation 05:18
TimToady logically, though, no rule should really have to worry about any whitespace except what is between its subrules.
subrules and literals.
as long as any superrule pulling in this rule worries about the space around me.
audreyt well, we can do that too 05:19
by overriding >>=
TimToady i.e. only the top level rule has to eat whitespace at the beginning and end of the program
audreyt k
TimToady most standard lexers just eat whitespace at the rule to token boundary, though.
audreyt yeah, which is essentially the plan I proposed to gaal does 05:20
TimToady that assumes literals are never matched by rules, but by the lexer though.
audreyt well...
literals can be matched by a "token"
05:20 dduncan left
audreyt but if it calls back to a rule 05:20
then it has to explicitly take care of the whitespace situation
I say "token" here because parsec is scannerless... 05:21
it just differs on how the rules are constructed
TimToady sure
audreyt not unlike perl6
but yeah, the goal is that we can then start porting "token ..." functions
move them into .pg files
and preprocess them into equivalent .hs files
same for "rule ..." functions 05:22
TimToady you can just get into trouble if $ eats ws and ident eats whitespace and then you try to make a $ident supertoken
audreyt indeed, but currently these are distinct lexemes
supertokenship is generally not present in pugs
there is a Pugs.Lexer that hosts tokens, and Pugs.Parser that hosts rules 05:23
even though the are just both parsec functions
TimToady so $ident is a single token
audreyt yes
ruleVarName
TimToady and can't allow space in the middle
audreyt nope.
that is, correct. 05:24
TimToady why do you propose backing of on whitespace matching if the subsequent thing doesn't match? 05:25
*off
doesn't seem like it matters to me, if you've already eliminated all the possibility of postfix at a position. 05:26
that's the main reason we invented long dot, methinks... 05:27
gaal okay sorry, gotta run
see 'ya &
TimToady bye
audreyt TimToady: right, but that requires sorting the ws and the nows together 05:29
split into two pile
try nows first
er, sorry, try nows-together-with-ws first
then if all fails, consume ws
and then try the ws rules again
does this make some sense?
currently we don't do the sorting 05:30
TimToady <%postfix|%infix> | <ws> <%infix>
audreyt so they are just tried in turn
nod
otoh, maybe we can simplify it even more
by lookahead ws first
if there is ws, then just try the infix parts 05:31
otherwise, consider postfix with infix
TimToady <ws> <%infix> | <<%postfix|%infix>
s/<//
audreyt yeah.
I think that's likely to be more efficient... 05:32
TimToady actually have to be careful not to get burned by :w there though in P6
rule {<ws> <%infix>|<%postfix|%infix> 05:33
}
audreyt right... everything there has to be in token-level
TimToady that works too
token { <ws> <%infix> | <%postfix|%infix> } looks cleaner 05:34
oddly though, the auto-:words behavior of rules means that 05:38
rule { foo bar } matches outside as well as between.
which is probably redundant according to what I was saying earlier.
audreyt heh :) 05:39
TimToady though maybe that's not bad, if we call <foobar> from within a token 05:41
token { fb = \[ <foobar> \] } 05:42
then we automatically get our whitespace inside the square brackets, which the token won't bother to supply
I think we should just assume that it's very efficient to determine if we're sitting at whitespace, and plan to do it redundantly. 05:43
audreyt or memoize that 05:44
TimToady on the other hand, if <%postfix|%infix> is building a trie or some such, you're gonna find on the very first character that nothing matches whitespace.
audreyt which leads to packrat-tables :)
TimToady: but .# is whitespace 05:45
05:45 iblechbot joined
audreyt so not until 3rd char can you be sure. 05:45
I mean, 2nd.
TimToady so it ought to be efficient that direction too.
audreyt I actually mean 3rd :)
TimToady well, <ws> also has to test that.
so it's no different
audreyt indeed
but that's just perl6's ws
:words in user code would be more effiient that that 05:46
TimToady arguably, if you usually have a postfix, it's better to go for something you know probably *will* match first.
audreyt than that
as their <ws> is different
TimToady but that probably depends on your style
a.b.c.d.e() style is all postfix
audreyt yeah. 1+1 is still very popular
TimToady well, we'll at least cure them of 1<2 :)
audreyt but not 1..4 :) 05:47
TimToady one could go as far is to just install the whitespace matcher as the "" key in <%postfix|%infix>
that is, as the corresponding value. 05:48
I suspect that will end up the fasted way. 05:50
*fastest, even
but that's just a guess that the trie will find the answer faster than | alternation will. 05:51
a really smart engine might turn all of token { <ws> <%infix> | <%postfix|%infix> } into a single trie anyway... 05:52
audreyt sinceyou just rid of the rules-as-keys 05:53
that's actually trivial...
TimToady yup
audreyt ok, I think that's much easier to do :)
but that means we can't have an postfix .#<> 05:54
TimToady sure you can.
audreyt oh, longest token consider the static parts only. 05:55
I see.
TimToady just .# calls into a different subrule
audreyt surely for trie, it's even better if we enumerate all the opening brackets?
.#( .#< .#{ etc become entries that is 05:56
TimToady could well be, unless you transit the subrule call
inline, as it were.
audreyt nod.
ok, thanks for the direction :)
in all of its 9 senses :)
TimToady no problemo.
I am but mad nnw. 05:57
when the wind is southern, I know a hash from a hankerchief.
mostly, though, I've just been going through Kleenex... 05:58
audreyt: did you backlog my screed on $x[@y] = ... ? 06:02
it was kind of a Shakespeare day, so I thought I'd do a soliloquy. 06:03
audreyt TimToady: well yes, but what about $x[1..3] ? 06:05
TimToady I think just say "You have to parens around me" and croak. 06:06
audreyt $x[1,2,3] too?
so all lvalue position slices now require parens?
TimToady I expect so.
I'd like to force the right ) to be near the =
audreyt %h{1,2,3} too? 06:07
TimToady any slice
audreyt (unless the hash is shaped to Seq is valid key)
so it's croaking at dispatch time
TimToady but then parens shouldn't matter, so croak at compile time. 06:08
audreyt k.
but all of them still flatten at rvalue?
$x[@y] included?
TimToady As long as the message is clear, I think we can get away with it.
as rvalue defaults to list
or Capture, really
so doesn't matter for @y 06:09
still only matters for $x[foo()]
if it's just a funny looking function call...
as I was saying, the strange thing is lvalue defaulting to scalar and the rvalue defaulting to list 06:10
audreyt ok. so we retani the perl5ish
($x) = (1,2,3);
translating it to
($x,) = (1,2,3)
right?
TimToady seems so
audreyt ok, another paren special form for Pugs.Parser...
TimToady but you don't know it's special till you see the =. 06:11
audreyt yup, hence "yet another"
infix:<=> cannot be a sub or method.
it has to be a macro
TimToady but you have to go back and verify legal lvaluehood anyway...
audreyt and I'm fine with that, as the AST has explicit "Assign" nodes now
it's not merely an application of infix:<=> 06:12
TimToady for a while I was wondering if we could go as far as to get rid of
(x)=
and have some kind of x ()= form
but I think it's good to document with parens on both ends still.
audreyt ($x) = 1,2,3; 06:13
just one end
TimToady I mean both ends of the $x.
audreyt oh ok.
TimToady whether you read in Latin or Hebrew, you still see the paren first. :)
audreyt but if I read it as classical chinese, then I read all of them in a gestalt :) 06:14
Pete_I g'night folks.
TimToady well, good English readers do the same.
they just use word shapes, ascenders, descenders, etc.
audreyt (was ferreing to vertical direction)
TimToady that's partly why you can get away with scrambling the insides of 06:15
words to some extent.
audreyt referring, even
TimToady o_O
audreyt ok, I must go out now to meet bsb and ingy and gugod and hcchien
be back in a bit
TimToady say hi for me
audreyt sure :)
TimToady tata
audreyt me.map:{say hi} 06:16
TimToady 0..* <- squished orz
audreyt oh btw, if I havn't seen "me" as func or class
does
me.map
mean me().map always?
TimToady would have to. 06:17
::me.map if you mean the other thing.
and blow up if me isn't declared by the end of this scope.
or file, maybe. 06:18
CHECK time, whatever.
audreyt oh?
that's new to me
excellent.
TimToady we don't leave random barewords sitting around waiting to unrecognize themselves at runtime. 06:19
audreyt pugs -e 'OUR::<&x> := sub {... }; x()'
would be illeal then.
I don't remember that's specced...
but it's excellent news.
TimToady seems like that would still be legal. the name is mentioned, even
if you don't know what will be bound to it.
audreyt ok
TimToady but you know something will be bound to it. 06:20
so it kinda counts as a declaration.
maybe
could argue that "our" is required.
audreyt pugs -e 'OUR::{rand() ?? '&x' !! '&moose'} := sub {... }; x()'
definitely bad then?
TimToady at some point, you guess one way or the other, and half the time you're wrong. :)
I think that's probably carpable about. 06:21
audreyt so why not eliminate barewords at CHECK? 06:22
TimToady basically, by the end of the compilation unit we'd better decide what all the barewords mean or die.
audreyt that will make
me.foo; class me {...}
legal
and I don't quite see something wrong with that
06:22 marmic joined
TimToady except you have to defer compiling it to a sub. 06:22
if can only be a sub, you can compile it provisionally and die later. 06:23
alternately, compile to a stub that returns the class.
I suppose that would work too, but might foul up MMD somehow.
06:23 autark joined
TimToady I think it's better to require predeclaration of classes. 06:24
or :: for documentation.
you want to forward ref subs a lot more often than classes.
wasn't you supposed to go?
audreyt yeah 06:28
waiting for taxi
TimToady thought maybe you were off primping :)
audreyt doing that too.
ok, so just compile it to a sub call, and push it to a check queue 06:29
TimToady right
audreyt to be validated by end of compilation unit
that works. thanks :)
TimToady yw
audreyt (this probably is part of language-spec...)
TimToady I'm sure I already said it somewhere....
I'll poke around. 06:30
audreyt no...
line 1530 S02
doesn't say it's invalidated
TimToady will soon. 06:31
audreyt TimToady++
taxi's here, bbiab &
TimToady ciao&
07:14 BooK_ joined 07:17 Aankhen`` joined 07:24 xern joined 08:11 kanru joined 08:21 elmex joined 08:25 Aragone joined 08:30 dakkar joined 08:32 pjcj joined 08:38 scook0 joined 08:41 iblechbot joined 08:45 xinming joined
xinming hi, I've passed the exam... :-) 08:46
YetAnotherEric perl6 certification? 08:47
xinming No, the law of traffic... Need that for learning driving cars. :-) 08:56
08:58 drrho joined
meppl guten morgen 09:00
GeJ servus
xinming ... 09:01
09:06 scook0_ joined
drrho is away: dancing 09:44
09:55 dakkar joined 10:14 KingDillyDilly joined 10:16 kanru joined
KingDillyDilly I don't suppose ChrisAngell or anyone planned this, but I bet they like it: www.google.com/search?hl=en&lr=...assercrats 10:21
Makes it seem like Wassercrats isn't universally loved.
10:38 ruz joined
nothingmuch KingDillyDilly: surprised? 10:48
KingDillyDilly It's an interesting concatenation/truncation by Google. Makes it look like the phrase is quoted and is one phrase, but it isn't if you read the document. 10:49
But I wouldn't be surprised if someone said that.
10:53 cdpruden joined 10:57 KingDillyDilly left, KingDillyDilly joined 10:59 dakkar joined
KingDillyDilly Particularly buu 11:02
Juerd KingDillyDilly: You don't say much about Perl 6 here, do you? 11:04
TimToady: Doesn't * clash with [*], at least visually? 11:05
TimToady: Also, how does [<] not start qw//? 11:08
Juerd thinks <> is exceptionally dangerous, and adding more special cases and silly disambiguation to the language than replacing qw// is worth. 11:09
foo < 3
KingDillyDilly I try to keep it at least 50/50 about Perl 6. I usually keep it on the topic of the current discussion when it's not about Perl 6.
Juerd foo<3
[<]
theorbtwo [<] is still the metaoperator, isn't it? 11:10
Juerd theorbtwo: It should be, but why doesn't that < begin <>?
[<] $ % ! @ ^>] # array of some characters.
KingDillyDilly Probably less than 50/50 as far as my contributions to Perl 6 development go. 11:11
Juerd theorbtwo: See also the infinite lookahead post on Audrey's blog.
KingDillyDilly Ok, here's one...we have an infinite lookbehind now. You can't use *, but you can look behind for as many characters as you type. Bad term. 11:12
Juerd KingDillyDilly: Your point? 11:13
KingDillyDilly Change the term.
Juerd KingDillyDilly: Your suggestion?
KingDillyDilly We have an infinite lookahead/behind in Perl 5. 11:14
Um...wait...
I was assuming someone was saying the infinite lookahead is new.
It's an appripriate term for how it works in Perl 5. 11:15
If it's something different in Perl 6, I can't suggest a term because I don't know what it is. 11:16
audreyt yo. 11:18
Juerd: [< does not start quoting
because [ looks at only the infix category
to be followed by ] 11:19
so [<] is longest-token
than simply [< 11:20
you can always disambig on the 3rd char
so there's still only look ahead for one token
(same as bareword=>'quoting')
KingDillyDilly Plus I was thinking of regexes. Don't know what you're talking about, so nevermind. 11:22
11:23 kane_ joined
Juerd audreyt: But what about the list of characters, that I contrived? 11:23
theorbtwo It's not an operator.
Juerd audreyt: Does whitespace break reduction operator parsing?
theorbtwo Oh, now I see the conflict better. 11:25
Juerd audreyt: And how about foo < bar? 11:26
theorbtwo The question isn't why it's not a reduce on a list of characters, but why it's not a capture of a list of captures.
Er, a capture of a list of chars.
Juerd foo(< bar ...>), or foo() < bar
theorbtwo: Array of chars.
I don't think captures have much to do with it.
theorbtwo [...] forms a capture now, doesn't it?
Juerd Array 11:27
theorbtwo Oh, whew.
Juerd \ captures
theorbtwo Captures haven't eaten quite the entire world.
Juerd And typically, you capture multiple elements with \(), because of comma's precedence
11:29 aeon_ joined
Juerd sees comments disappear :) 11:29
cleanup++
KingDillyDilly Where's Audrey's blog? I'll take a stab at learning what thes infinite lookaheads are. 11:31
Or better yet, a link to some documentation. 11:32
miyagawa pugs.blogs.com
Juerd KingDillyDilly: You won't find an explanation there.
KingDillyDilly: Do you know what looking ahead is? Can you imagine infinity? 11:33
It's not weird, it's not special. It is inefficient, though.
KingDillyDilly Yes. Are you all talking about parsing of Perl, or about regexes only?
Juerd Both
KingDillyDilly Oh, I'll bail on this one. 11:34
I just thought someone came up with a great new lookahead assertion and they're naming it an infinite lookahead. I'd have something to say about that. 11:36
theorbtwo No.
One idea of parsing is that you always try your hardest to succeed. If you encounter an error, try going back and interpreting things differently. 11:37
Another is that when you find something that can be interpreted in multiple ways, you remember where you are, and keep looking ahead until you find something that only makes sense with one of the ways to interpret it. 11:38
KingDillyDilly That could result in legal code that's not what the programmer intended. Better have good warnings. But I have no comment. 11:39
theorbtwo You potentially need to keep looking ahead for an indeterminate amount of time, even to the end of the file.
That's infinite lookahead.
KingDillyDilly That's the problem with you people. You waste time on people like me when you should be developing Perl 6. :-D 11:41
dakkar that sounded like an invite to be kicked ;-)))
audreyt Juerd: yo 11:43
theorbtwo By the way, the other option is to require that there be no constructs in the language that can't be told apart by looking apart only a fixed amount, which is why you get whitespace rules.
audreyt [<] moose>] is a parsefail 11:44
will be parsed as
KingDillyDilly Seems like all programming languages should use infinite lookaheads, but if you can determine that there's no possible way for the code to be legal before the end, you return an error. Doesn't seem like it should even have a term. If you don't keep checking until you know for sure, your language is buggy.
audreyt ([<] ) then ( moose>])
Juerd: I agree it's icky. I think the ickyness is unavoidable as long as we have this overload of <>. 11:45
dakkar KingDillyDilly: you keep using 'term'... I don't think it means what you think it means
audreyt KingDillyDilly: infinite lookaheads are slow, that's all
KingDillyDilly: packrat makes it fast for computers 11:46
but it doesn't make it faster for humans
disambiguation with infinite-lookahead is very hard for the human mind.
KingDillyDilly I mean the term "infinite lookahead." Sometimes a language that uses the "other option" that theorbtwo mentioned would need to look to the end of a program, and sometimes an infinite lookahead one could figure out that it doesn't. There's a weak distinction. 11:48
11:49 sahadev joined
Juerd audreyt: What if I wanted [']', 'moose']? Would whitespace fix it: [< ] moose >], or [ <] moose > ]? 11:51
audreyt yes 11:52
Juerd audreyt: And I'm not sure if all this ickyness is worth it. <> is nice, but in almost every application for it, <<>> can be used, and there's always qw<>
theorbtwo Juerd: [']', 'moose'] isn't ambiguious, since there is no ' infix op.
Juerd theorbtwo: ... :)
theorbtwo: Thank you.
theorbtwo: ", using <>" was implied. 11:53
theorbtwo Sorry.
Juerd audreyt: Do you happen to know what happens with "foo < bar"?
audreyt Juerd: yes, I think whitespace can fix that
theorbtwo I'm awful stupid lately.
Juerd theorbtwo: No, don't be. You remind me that I should be more specific.
audreyt Juerd: "foo < bar" ?
Juerd audreyt: Yep. Is that foo lt bar, or foo qw/bar? 11:54
Do you look ahead infinitely there, to find out?
I think I'll often have whitespace inside <> and Ā«Ā».
(Hm, if I type compose,<,< too fast, it doesn't work) 11:55
(Ah, solution: keep shift pressed all the time, starting before compose)
Ā«Ā«Ā«Ā«Ā«Ā«Ā«Ā«Ā«Ā«Ā« :) # that way
Ā»Ā»Ā»Ā»Ā»Ā»Ā» # or that way 11:56
theorbtwo Hm, shift-compose isn't compose for me. Perhaps I should fix that. 11:57
Juerd It is for me. Did nothing special to get that. My compose key is menu (117)
audreyt Juerd: it's always unambiguous 12:00
(I just asked a ruling on that this afternoon)
if "foo" is known as a type, it's "::foo < bar"
if it's known as a nullary function, it's "foo() < bar" 12:01
in all other cases, it's "foo(<bar...")
Juerd Okay.
And foo< without whitespace is always foo.<?
audreyt yes.
Juerd Good :) 12:02
audreyt note that if you declare nullary foo _after_ the "foo < bar" line
it will not cause reparse
and is still a "foo(<bar...") and prototype mismatch error
Juerd Of course. 12:03
Postdeclaration sucks anyway. I don't use that.
It doesn't fit the model of imperativeness (imperativity?) for me
audreyt in mutually recursive functions you'l have to do that...
or use a predecl form 12:04
Juerd True, but I can't remember the last time I had that.
Oh, I can
12:16 pen1 joined 12:18 feng123 joined 12:21 iblechbot joined, kolibrie joined, jsiracusa joined 12:36 mauke joined
svnbot6 r10069 | audreyt++ | * Pugs.Prim: further tweaks to the DESTROYALL sequence 12:36
gaal hey. I doubt I'll be getting to the parser stuff today, from the looks of it. 12:38
KingDillyDilly Not to plug my web based diff app, but there are web based diff apps out there and the results of a diff might be good for svnbot6 to link to in posts like the above. 12:39
Or at least a link to where ever that thing svnbot6 is talking about is. 12:40
gaal KingDillyDilly: rt.openfoundry.org/Foundry/Project.../pugs/log/ 12:41
I'd wanted 'svk desc'-like functionality to that for a while, since there's no webby way to get a whole patch
KingDillyDilly: that's SVN::Web, I think they very much take a patches welcome attitude. 12:42
12:43 BooK joined
theorbtwo The other option is to do a svn diff -r10058:10059 in your checked-out pugs. 12:44
Of course, that doesn't have the same brain-dead ease of clicking a URL.
gaal hey, the web has got to be good for something. 12:45
12:46 jsiracusa joined
KingDillyDilly www.polisource.com/diffnote/042406-...yOzX.shtml 12:49
Warning: above webpage is almost 400K 12:50
And the Javascript will slow things even more.
Juerd KingDillyDilly: Please supply descriptions of the web pages you post. 12:51
KingDillyDilly: That helps people to determine if it will be worth their time.
KingDillyDilly *shrug* ok 12:52
Juerd I assumed this page would be about Perl 6 somehow, opened it, and saw my computer die from 100% cpu load and extreme paging.
Somehow I think it has nothing to do with Perl 6, and that it's not worth opening, but lack of description makes me too curious.
KingDillyDilly Wow. I'm short on memory and no problems. You must be using Linux. :-D
mauke it's empty 12:53
Juerd Yes, I am
theorbtwo Mmmpf, my /kick finger is getting itchy, but I don't have ops on this channel.
Juerd mauke: Not for me, when I see it with a capable browser (not w3m). It takes a few minutes to load, but displays eventually.
mauke great, <body><script></script></body> 12:54
Juerd KingDillyDilly: This is the worst diff overview I've ever seen. The point of diffs is showing only the DIFFerences.
KingDillyDilly Just trying to help. I thought I had a useful tool.
Juerd KingDillyDilly: So pugs/
checkout/src/Pugs/Prim.hs has more than 1000 equal lines in between these revisions. How does that help? 12:55
mauke 23390 mauke 25 0 144m 125m 16m R 92.7 12.5 3:00.79 firefox-bin
KingDillyDilly It gives you all the information of diff -y and more. (I think it's diff y...it's the side by side unix tool)
Juerd I appreciate that you try to help, but please think twice if it's really helpful.
Right now you're mostly wasting time (though I admit that I could have ignored it all) 12:56
KingDillyDilly GNU diff has options to show all that too.
My computer is a piece of garbage. I figured it would display find for you. 12:57
theorbtwo Yeah, but does anybody use diff -y?
Juerd It makes no sense to display all equal lines.
There's nothing useful in that.
KingDillyDilly For shorter things there is. That's why there's a diff -y. other unix diffs are hard to understand. 12:58
Juerd This isn't short.
KingDillyDilly I really have no idea what kind of diff you'd all use for that. Sorry I wasted your time. 12:59
13:07 Qiang joined
KingDillyDilly Thunder in NY. I'll kick myself out. 13:10
13:10 KingDillyDilly left 13:35 weinig_ joined 13:45 merlyn joined 13:49 justatheory joined
svnbot6 r10070 | fglock++ | PCR: added positional parameters in rules 13:49
13:50 weinig_ is now known as weinig 13:53 ruz joined 13:54 fglock joined 13:56 vel joined 13:59 Limbic_Region joined 14:04 chris2 joined
clkao audreyt: check msg. 14:04
Limbic_Region audreyt - regarding Pugs and licensing. Tell me what I have to sign/say to turn over all code I have authored in the Pugs repository 14:06
theorbtwo Limbic_Region: If you want to be formal about it, find the FSF's assignment, and change the names. 14:08
I probably should have done that before I wrote the one on audrey's blog, but I think that one works too. 14:09
They do different things, though -- mine is to public-domain, the FSF's would make it somebody else's choice.
Limbic_Region theorbtwo - you missed my point 14:10
theorbtwo - while I want to help audreyt and not be a hindrence to progress
I want to be lazy 14:11
just tell me where I have to sign
theorbtwo Ah.
14:22 Coke joined
Coke expected failures in t/builtins/arrays/shift and splice ? 14:22
audreyt Coke: yes, our parsing strategy has changed yesterday 14:33
a lot of parsefails is cropping up now
Coke ah, my timing, as usual, is excellent.
audreyt try up to r10061 14:36
svn up -r 10061 14:37
that's the known-good version
Limbic_Region: thanks, formal assignment is the legal way to do it, but before I settle this discussion with chromatic/allison/tpf/etc, there needs to be no overt actions than a comment here, or on the journal 14:38
I'm trying to find out who chromatic is okay with MIT license but not with public domain 14:39
s/who/why/
and if there are sufficient mistrust on public domainess from U.S. people, I'm willing to use MIT license 14:40
they are legally equivalent anyway, except the MIT license may be revoked, according to some lawyers.
Limbic_Region well, I think more people are concerned with the changing of the licensing than what license you choose (but that's just my limited opinion) 14:41
audreyt *nod*
that's what I thought as well
so I was surprised that chromatic was upset about public domain but okay with MIT license
and believe me, I didn't do this compilation-right-disclaim thing just for fun :/ 14:42
theorbtwo audreyt: If you decide to go with MIT, feel free to relicense my stuff under it. It's under the public domain, you're allowed.
Limbic_Region I know - but perception is a big thing
audreyt theorbtwo: sure
Limbic_Region IOW - it would have been 1 thing to say, I don't feel comfortable with license X and would like to do Y, this is what it will mean to you - what do you think 14:43
is a lot better than
I have unilaterally decided to do Z
I know that's not what really happened
but perception is what perception is
audreyt indeed 14:44
Limbic_Region s/happened/is happening/
I don't want to be a hindrence in the process
but I don't want to have to work to figure out what I need to do either 14:45
theorbtwo Limbic_Region: Just wait a week or so until the situation becomes clearer.
Limbic_Region theorbtwo - yeah, I got that from what audreyt said 14:46
audreyt right. basically, unless you are uncomfortable with your previous commits under src/ tree to be under MIT license or public domain, you don't need to do anything...
and yeah, waiting a week or so is a sane choice too. 14:47
Limbic_Region audreyt - even files that have explicit copyrights?
audreyt under src/ tree?
those are moving out to third-party/.
Limbic_Region so ext/Config-Tiny/ will move to 3rd party? 14:49
*shrug* - I just as soon remove my copyright from it but ok
audreyt uh.
the ext/ tree is untouched
and will remain so
this whole thing was just about the code that makes up the /usr/local/bin/pugs executable. 14:50
so, that means the src/* tree
some C and some Haskell code
the ext/, examples/, t/, docs/ trees
are entirely unaffected
(see README and my last entry for details)
so, unless you have hacked the Haskell sources or C sources under src/ 14:51
i.e. the pugs "guts"
Limbic_Region ahh - well then I don't think I have anything to worry about. Other than some patches to Makefile.PL - I haven't had anything to do with the building of the pugs executable
audreyt right
and the installed copy of pugs doesn't bundle Makefile.PL 14:52
yes
ext/ will always remain in the license the author chose
like GPL for Rosetta
or Perl5 license for some
or Artistic2 for some
I think I should repeatedly state this :) 14:53
Limbic_Region ok - so now about Pugs not compiling on Win32 - did you get a chance to look at my nopaste of the error?
audreyt I'm afraid I missed the url 14:54
relooking
Limbic_Region ok, well I can't confirm it is still b0rk on a recent checkout as I can't seem to build at all at work anymore
14:54 elmex joined
Limbic_Region and now that GHC is at 6.4.1 - I have given up trying 14:55
audreyt oh, you were on6.4.0?
actually we still compile on 6.4.0, it's just unicode support in source files will be broken 14:56
only ascii will be allowed on ghc 6.4.0
Limbic_Region no - the error arose prior to 6.4.1 requirement
what I am saying is that I am now at work and can't build here
so I can't confirm the problem is still a problem
audreyt oh ok
Limbic_Region trying to save you cycles
audreyt I'll reboot now and test 14:57
Limbic_Region error is at sial.org/pbot/16851 14:58
audreyt yup, got it
would be nice if you can modify File::Path
and do a Carp::confess there
to get stack trace
Limbic_Region well - I didn't want to spend too much time investigating if I was the only 1 having the problem 14:59
for various reasons - I seem to have problems no one else does
like Pugs requiring to be linked against Cygwin to compile on my work machine for instance
or nmake for failing on cd .. 15:00
etc
audreyt do you perhaps have space in the path of pugs?
15:01 hexmode joined
Limbic_Region no 15:02
audreyt - everything has always worked on my home machine 15:03
then it just stopped working - no changes
audreyt k
Limbic_Region the only variable (that I could isolate) was checking out from the repo 15:04
audreyt ok. do yo you roughtly know which revision ? 15:07
(last known wokring, that is)
or date
Limbic_Region how rough? 15:11
it was about a week before I mentioned it that it was working 15:12
audreyt okay. 15:16
that makes it easier to locate the problem
still a stack trace would be very helpful
because I can't duplicate it here :/
Limbic_Region well, I will try at home sometime this week and let you know 15:22
if it is another "just me" then *shrug*
no big deal - I have even less time for extra-curricular activities these days 15:23
audreyt k, but I'd still like to investigate if you can get a stack trace 15:26
Limbic_Region: a new entry is up, prompted by your "perception" suggestoin
I'm really sorry; I had no idea that "src/ tree" can be taken to mean other meanings
Limbic_Region: please check to see if I can improve it 15:27
15:27 frederico joined 15:31 hlen joined 15:35 szbalint joined 15:39 FurnaceBoy joined
Limbic_Region audreyt - I will 15:39
audreyt - I think, and I hope I am not completely out of line here, that you problem is in the assumptions you place on others 15:40
I have a tendency to do this myself
I didn't even see src/tree - I saw the pugs code repo is going public no-license
people don't look for the details - they jump to conclusions 15:41
myself included
ooh - chromatic is kind of particular about not having his name proper case Chromatic vs chromatic 15:44
other than that - spot on ;-) 15:45
15:49 axarob joined
audreyt Limbic_Region: yeah. what I should have done is to list the "src/ tree" thing prominiently on top 15:50
instead of hiding it in, oh, 20th line in the journal entry
really sorry for that :/
fixed capitalization 15:51
Limbic_Region well, no need to apologize - I wasn't offended but I did have the wrong idea
audreyt if you did, I suspect a lot others did as well
chromatic obviously did :/
audreyt stops herself from indulging in guilt and goes sleeping instead 16:00
theorbtwo audreyt: Nobody is perfect 100% of the time. You, so far, have managed about 100-1/Inf percent. 16:04
PerlJam theorbtwo: that's not true. Nobody is perfect. Period. But if you stay ahead of your peers you will *seem* perfect ;-) 16:05
szbalint gnight audreyt 16:06
theorbtwo G'night, audreyt.
16:06 chris2_ joined
szbalint It is amazing how much I missed in the past three weeks while I was away from here. 16:06
FurnaceBoy PerlJam++ 16:08
16:10 hexmode` joined 16:20 ghenry joined, swarm joined
gaal guilt is overrated anyway. I go with sleep every time 16:32
audreyt gaal: one last thing 16:42
before I sleep
gaal t?
audreyt tonight ingy and I paired on using packrat to parse kwid syntax
and it's amazingly addictive
it's like writing Perl 6 grammars using only "regex" but never "rule" or "token"
gaal cool! using which package? the .hs code?
ingy audreyt: did you send me the details?
audreyt ingy: details of the checkout? 16:43
it's in svn.kwiki.org/audreyt/Wiki/
ingy thanks
gaal checks it out too
16:44 _bernhard joined
gaal too bad my brain is fried.. maybe tomorrow 16:44
audreyt ingy: svn up 16:45
r129 is what you want
just "make"
gaal wtf? # wikiStarRule0 = wikiSubStarRule0 . wikiSub0 16:46
audreyt gaal: look at Wiki.pappy
Wiki.hs is genned
Daveman Morning gaal :)
gaal hola 16:47
audreyt gaal: note how arbitrary nesting is handled very gracefully
Daveman How's things going today?
gaal audreyt: funny, i coudla sworn I saw a note in Main.hs saying it was genned by Wiki.hs :)
ingy audreyt: gracias
audreyt gaal: that's true
Main is genned by DrIFT over Wiki
gaal where do I look first then?
audreyt and Wiki is genned by Wiki.happy
.pappy 16:48
so you look at .pappy
since that's all the code
nothing else :)
gaal sweeeeeet
audreyt ingy: btw, you don't have to write in .pappy if you don't want to
you can write in parser combinator style
just like parsec
but the .pappy form guarantees linear speed 16:49
and is shorter
and is more like perl6 rules to boot
so stick with that until you need fancy stuff like \b
you can then define those assertions in the more complex parser-combinator style
ingy \b?
ah
gaal though kwiki is still relatively simple to parse. btw see this about parsing wiki with regexes:
# community.livejournal.com/evan_tech...html?nc=11
audreyt if what I just said makes no sense, read the thesis: 16:50
pdos.csail.mit.edu/~baford/packrat/thesis/
it's not quite powered-by-phd this time
it's only a master's thesis
TimToady have an interview in 10 minutes. Any quick Q's? 16:51
audreyt TimToady: did what I said about "a < b" makes sense? 16:52
if a is known ::a, infix.
TimToady yes
audreyt oh ok :)
next question. for proto
gaal anyway, I need to wind down a bit, see you tomorrow, sleep tight audreyt
TimToady nite
audreyt proto f ($, $, $, $, *@) {} 16:53
do we have to do the perl5ish parsing?
theorbtwo Um, does infix < make any sense on types?
audreyt or is antyhing beyond unary automatically listop?
TimToady the latter
audreyt whew.
TimToady but can still complain on single sub and mismatched params.
audreyt sure, but that means it's much saner.
TimToady that's what p5 does with >1 16:54
wolverian TimToady, may be audreyt already asked this before, but: can I declare the type of the literal hash in '{ foo => $bar }' somehow?
TimToady just use a constructor
wolverian okay, thanks.
TimToady they have to be good for something... :)
wolverian Hash[Foo, Bar].new? 16:55
TimToady something like that.
audreyt has to be good for something.
audreyt heh :) 16:56
16:56 chris2_ is now known as chris2
audreyt theorbtwo: re Class1 < Class2 16:56
if someone want to port Rails to Perl6 16:57
that would be natural
and even "Class1 < Class2&Class3" for inheritance.
multiple inheritance that is
# blog.mauricecodik.com/2006/01/ruby-...tance.html 16:58
theorbtwo Hm, OK. 16:59
TimToady but I hate overloading math ops for non mathy things, especially angles. Don't look at me that way... 17:00
obra imagines junctive inheritance 17:01
TimToady Unicode is full of arrows. We don't need to use up good brackets for a stupid arrow. 17:03
interviewer not here yet...
Coke er or ee? 17:04
YetAnotherEric imagines TT sitting at a space-cadet unicode keyboard
Coke Speaking of unicode and languages, "ew." "ew ew ew".
(this based on my attempts to write *one line* APL programs.)
PerlJam greeble. 17:05
TimToady er, giving an interview, just for someone's school project.
could end up in a magazine, of course.
17:05 saorge joined
Coke excelllllllent. 17:05
pasteling "spinclad" at 209.94.133.172 pasted "ambiguous example in S02.pod r8928" (14 lines, 370B) at sial.org/pbot/16884 17:07
TimToady using < for mixin is the sort of mistake Haskell makes all over, huffmanizing the abstruse operations to be shorter than the common ones. Admittedly, < is fairly common in Ruby, but it's still too short. 17:08
Coke using unicode is another way of dehuffmanizing, but it still makes me feel all oogy.
audreyt TimToady: well, it was huffmanizing for its niche :) 17:09
(which is, math)
TimToady P6's -> ==> are all conceptually unicode ops written in ASCII
:)
audreyt ooh, -> too?
then I don't have to update my slides!
;)
TimToady I'm sure you can locate a right arrow in Unicode. :)
PerlJam (ascii unicode ops)++
audreyt the Japanese people really all freak out at the Yen though. 17:10
to them the unicode Yen is indistinguishable from backslash...
theorbtwo MS--
audreyt (same thing on the screen)
PerlJam I guess I'll need to get used to typing ^K alot in vi (or make lots of abbreviations)
TimToady spinclad: thanks, will clarify 17:11
Coke OS X has a great character input scheme for unicode, but it's completely disruptive to writing code.
spinclad likes the pastebot
17:11 KingDillyDilly joined
audreyt tonight ingy was talking about how in golf 17:11
all Module::Compile users are penalized 17:12
spinclad TimTowtdi: thanks
audreyt because you have to at least say "no X;"
to load a module
ingy :D
audreyt I suggested maybe we can use the unicode codepoints outside BMP
KingDillyDilly Anyone know what "23390 mauke 25 0 144m 125m 16m R 92.7 12.5 3:00.79 firefox-bin" means? Mauke posted that after trying my diff app.
audreyt that is, > 65536
to encode three characters in one codepoint
obra KingDillyDilly: that looks like "firefox is eating all my CPU" 17:13
audreyt because 3 7-bit ascii is 21 bit unicode
so one character can mean "no "
and another one can mean "X;"
significantly reducing the penalty
TimToady well, we have 64-bit utf8 in P5...
so you know my opinion of the 21-bit limitation...
audreyt but the higher bits are all zeroed... 17:14
if it's not, the unicode police will come and get you
TimToady they don't much care as long as you never emit such a character. Why you do in the privacy of your own process...
theorbtwo More to the point, your terminal won't know how to display it.
Exactly, TT. 17:15
TimToady To me, it's just a way of storing variable sized integers, so should
probably be typed as some kind of Buf instead of Str.
except abstract.
might well be a uint64 @ internally... 17:16
PerlJam Can we make the ASCII version of zip be Ye instead of Y? Then my code will work even if I don't have abbreviations setup :-)
TimToady macro infix:<Ye>...
theorbtwo We should make wide yen equiv to yen, for silly people for whom \ displays as yen. 17:17
PerlJam yeah, I know. I just want custom-to-me behavior out of the box :)
TimToady We'll need to tackle all Unicode equivalences at some point.
Juerd audreyt: Unicode police? Heh.
PerlJam TimToady: so ... why don't we have a <KEY> assertion?
TimToady use PerlJam; not good enough? 17:18
what would you need it for?
you already know where the silly thing starts and stops.
PerlJam TimToady: I don't know, I just think it's strange that we have $<KEY> and not <KEY>
TimToady the point is, you're already past the key when you get to the rule, so you have to set the position anyway if you want to go back. 17:19
xinming Juerd: may I have account on perlcabal.org/ ? :-)
PerlJam I guess <after $<KEY>> works well enough as <KEY>
TimToady indeed
and since lookbehinds reverse 17:20
Juerd xinming: It's feather.perl6.nl, but sure. Request it by email.
xinming Juerd: ok...
Juerd xinming: perlcabal.org is audreyt's domain; She pointed it to feather :)
TimToady <<after foo $<KEY> >> also works.
so $<KEY> functions as its own assertion, more or less.
xinming Juerd: send the mail to you? 17:21
PerlJam yep.
Juerd xinming: Please include your real name (transcribed to ascii if relevant, please) and the username that you want
xinming: Yep
TimToady just didn't seem like there was any reason to clutter <foo> space.
Coke /me wonders if he should get a feather account. they seem all the rage.
PerlJam perhaps I'm suffering from hobgoblins of foolish consistency. There's a nice symmetry between <foo> and $<foo> (except for $<KEY>)
Juerd Coke: There is no "should". If you think you can be more productive for Perl 6 or Parrot if you have an account, request one :) 17:22
TimToady I don't doubt that someone enterprising will go ahead an implement <KEY> anyway, just for that reason.
I'm not prohibiting it, just not specifying it.
Coke Juerd: what's the platform again?
wolverian TimToady, do you think -> could actually be a unicode operator (that is, ā†’ )? 17:23
Juerd total 4.8G
-rw------- 1 feather feather 776M Apr 24 19:28 2006-04-24T17:16:26_feather_._backup.tar.gz
-rw------- 1 feather feather 4.1G Apr 24 21:03 2006-04-24T17:25:47_feather_data_backup.tar.gz
Feather's first backup :)
Coke: Linux, Debian Sid.
Coke: GNU, too.
TimToady what else would it mean? That doesn't mean the world is ready for it, though. But we need to spec the correspondences. 17:24
for the eventuality that the world catches up with Unicode.
wolverian TimToady, right. I'm specifically asking whether the default perl6 will understand ā†’ :)
TimToady which version?
Juerd My font doesn't render that character, wolverian
Coke Juerd - if someone on feather is already smoking parrot + parrot/lang, then I don't need it.
Juerd Coke: Probably. I don't keep track of who does what.
wolverian TimToady, the one I'll use. :)
Coke I read it as ?~F~R ! 17:25
TimToady we are intentionally not speccing 6.0.0 to require anything outside Latin-1.
but all is fair if you predeclare.
Juerd TimToady: Please keep it that way.
wolverian TimToady, as long as -> exists, is it a requirement?
TimToady how long?
is what a requriement?
Juerd TimToady: Until latin1 is no longer the default on more than half of all modern unixish distributions :)
PerlJam TimToady: It won't require, but will it accept unicode variants? And for what operators? 17:26
it == perl 6.0.0
TimToady I think that was yesterday... :)
(wishful thinking, I know)
szbalint Juerd: oh? Today is indeed today then ;)
TimToady Is perl 6.0.0 a requirement?
Juerd Fedora is way ahead, and Ubuntu's almost there. Debian's far from utf8-ized, though, in the default installation, last time I checked.
szbalint: ? 17:27
szbalint: When is today ever not today?
wolverian TimToady, is the fact that ā†’ exists as an optional -> variant a requirement for non-latin-1?
TimToady I use Fedora, so my view is biased, of course.
wolverian TimToady, (sorry, I honestly couldn't put it any better than that.)
szbalint "Today^WSoon I will install some backup mechanism on this machine."
TimToady I believe it'll require a predeclaration in 6.0.0
szbalint I ment this from the motd Juerd, sorry for being cryptic :)
theorbtwo I use debian, and don't have any problem utf8ing.
TimToady use uniops; or some such
theorbtwo Well, very little problem.
Juerd szbalint: The original today was Saturday :)
theorbtwo: But it's not the default. 17:28
theorbtwo wolverian: It'd be a requirement to allow it is the problem... not to use it.
Juerd theorbtwo: As long as utf8 is a conscious choice, it's a bad thing to assume.
TimToady maybe just use U for golfers. :)
theorbtwo Mm, point.
wolverian TimToady, okay. thanks.
Juerd wolverian: Off topic - why do you use a comma, not a colon, to address people? 17:29
TimToady but we *have* already specified that Perl programs are written in Unicode... :)
wolverian Juerd, I'm not sure. does it bother you? I can always change it.
Juerd It looks so unnatural to mention someone's name all the time. "foo:" is an IRC thing, and not part of what's virtually pronounced :)
TimToady "In the abstract"
Juerd wolverian: It doesn't bother me. I am curious, though.
wolverian that's true. 17:30
I'm curious too. I just don't remember why I changed it.
I'll tell you if I remember. :)
Juerd Hehe :)
Thanks
Juerd just bought a phone with prepaid credit, and had the phone unlocked. 17:31
Brand new phone for < ā‚¬ 100, that normally costs > ā‚¬ 200
TimToady I think assuming the source file is in some subset of Unicode is a fine thing unless declared otherwise.
Juerd use unicode :madness;
=item :madness 17:32
Binds something to each existing codepoint. Requires half of CPAN, because Unicode has many more codepoints that Perl 6 has operators.
TimToady translation from "native" script is about the only thing left that source filters are good at...
Juerd
=cut 17:33
TimToady maybe if the first declaration uses high-order Unicode, we assume it all does: vā‘„; 17:35
svnbot6 r10071 | audreyt++ | * Per chromatic++'s suggestion, change "public domain" to
r10071 | audreyt++ | "MIT license" in the README's section about future intent.
TimToady for golfed Unicode.
use vā¶; 17:36
Juerd #!/usr/bin/perlā‘„
TimToady for more formal occasions. :)
cool, now just convince the filesystem. :)
Juerd Why vā¶, not vā‚†? :)
TimToady vā‚† is for prereleases. 17:37
Juerd I see
xinming Juerd: You have the email... :-)
TimToady: do you mean, we have to use vā‚† instead of v6? :-/ 17:38
TimToady ā…„ also has possibilities. :)
Juerd xinming: Out of curiosity, who/what is in the From: header?
17:38 jlhamilton joined
TimToady Only after 6.0.0 :) 17:38
PerlJam TimToady++
xinming Juerd: Still me, YiyiHu is just my name which is used only for written article only... :-) 17:39
Juerd So confusing...
xinming thinks, he should change his email-box using [email@hidden.address]
en.... 17:41
Juerd en?
mauke en_US.UTF-8? 17:42
xinming hmm, It's a bit like a confirmation... which means yes... 17:43
Juerd: I've updated my password. :-)
Juerd: thanks
TimToady Maybe a simple "ļ¼–" would work... 17:45
basically just continues the idea of Perl looking at how you abuse it in the first statement, and assuming you want to continue to abuse it that way... 17:46
unfortunately there's nothing in the Latin-1 range that looks like either v or 6, unless you really mean Latin, in which case U wold work--except that's ASCII... 17:49
but we already allow Latin-1, so I guess it doesn't matter. I don't see much use for limiting the character set to Devangari with "vą„¬" 17:50
17:51 arcady joined
TimToady *Devanagari 17:51
Unfortunately " 17:52
"六" is considered non-numeric... 17:53
so would have to be v六;
no wait, that doesn't work either...
"六"; with quotes would work maybe.
17:56 Coke_ joined
xinming .... 17:56
TimToady: why not ttf? :-) 110 17:57
17:57 DaGo joined, xinming_feather joined 17:59 flounder99 joined 18:00 jlhamilton left
xinming TimToady: If you really want some chinese... 陆 is capticalized form for 六. which means, 陆 is normally used in check with numbers... and 六 is a tiny form... 18:01
but... 18:02
xinming doesn't think it's a good idea for people who wish to use perl have to search unicode table or learn how to type Chinese. ;)
KingDillyDilly Regarding my diff of the DESTROYALL sequence versions (colabti.de/irclogger/irclogger_log/...-04-24,Mon at 12:50), I've received some positive comments from some people on #web. If anyone's interested, they're at sial.org/pbot/16885 along with the negative comments from #perl6. I'm passively looking for a better use for DiffNote than it has, so if there are some minor tweaks that would make it useful 18:05
Juerd KingDillyDilly: We already have a great diffing tool. It's called diff :) 18:10
KingDillyDilly Saw it. That's why I created DiffNote.
Juerd What is the added value of DiffNote?
KingDillyDilly It's just a Diff -Y wrapper.
Juerd What is the added value of DiffNote?
KingDillyDilly Line wrapping, easier to see spaces and some newlines because they're dots, file names on top, web based. 18:11
Juerd ... 18:12
I give up
18:12 pdcawley_ joined
KingDillyDilly Something even better that I forgot. :-[ Diff -Y normally leaves something out that I include. 18:12
Juerd Hi pdcawley_
pdcawley_ Hey there.
How goes? 18:13
Juerd pdcawley_: I'm a bit depressed because people are wasting their time writing web based diff wrappers that do nothing special.
pdcawley_ Hmm...
pdcawley_ doesn't hate trac enough to do that. 18:14
KingDillyDilly Vertical scroll prevention can be very helpful.
Juerd And I'm hungry, but without many option for food except McDonald's
KingDillyDilly Oh, yeah. Diff -Y leaves out entire portions of a line when there's an embedded CR. What's up with that? 18:16
It returns to the beginning of the line and write the right side over the left side.
Juerd Honestly, who cares? Nobody uses diff -y, and people who have CRs don't use diff at all...
KingDillyDilly Ok... 18:17
Juerd Yea, that's what CR is supposed to do: return the carriage.
18:18 aeon__ joined
KingDillyDilly But a diff should give you the entire contents, at least of the visible characters. Mine does even more than that. 18:18
Juerd Do you know the difference between CR and LF? And why DOS rightfully uses both?
KingDillyDilly Ditt -y doesn't.
pdcawley_ One's Carriage Return, and the other is Line Feed.
Juerd pdcawley: I trust you know this :)
pdcawley_ Personally, I think dos should have done LFCR, but that may just be because I'm a natural born contrarian. 18:19
Juerd LFCR or CRLF is semantically the same. I think DOS should accept both, regardless of what it chooses to output by default.
Did you know that in many places in DOS, it's actually /\r./?
KingDillyDilly So you're saying diff without my wrapper is just going what's it's told to do by writing over some characters? Ok. Personally, I don't like that. 18:20
pdcawley_ Ooh... you could a Bleach equivalent like that.
Juerd Lazy bastards who wrote the ASM code didn't bother checking the byte after CR in many cases.
pdcawley_ You'd need *big* files though.
Juerd I have a 1 TB file of nullbytes.
Thankfully it's fully sparse :) 18:21
pdcawley_ teehee.
My /dev/null is longer than yours!
Sorry, my /dev/zero
18:22 ruoso joined
Juerd But I have several :) 18:22
KingDillyDilly I notice that I enter longer lines here than anyone else. Those who have a lot to say enter it on separate lines. I assume that's because you want to prevent lines from being too long horizontally. DiffNote prevents that. Diff doesn't. 18:24
Juerd sighs and flees to McDonald's 18:25
18:25 aufrank joined
Juerd pre-emptively puts KingDillyDilly on ignore 18:25
afk
theorbtwo Later.
KingDillyDilly Good idea, Juerd. Fast food places have short lines. Stay away from those Unix restaurants. 18:26
Someone teach me. Is it better to not wrap lines in a diff? 18:27
pdcawley_ can't type fast enough to use long lines, by the time I've finished typing 'em they're no longer relevant.
18:28 nothingmuch joined
theorbtwo KDD: Diffs have one major purpose, with two subpurposes. 18:28
The purpose is to show the differences between two evolutions of a code file.
This means that they need to be concise, and they need to be clear.
KingDillyDilly Someone asked me on Perlmonks why I use such long lines of code. It didn't wrap for him so it was annoying. I don't get it. Use a tool that wraps text.
theorbtwo ...both to a human and to a computer. 18:29
KingDillyDilly Wrapping precludes that?
theorbtwo We do, KDD. Short lines in code, and in IRC, are a way of chunking things for the eye and mind... something best done by short lines.
Yes, it does.
Write a program that applies patches with wrapped lines. 18:30
Now go back in time and write it in 1975.
KingDillyDilly My table cells delimite lines pretty well. It is optimized for humans though. Not everyone needs a machine readable diff. If you do, politely say so and I won't bother you.
theorbtwo Table cells? 18:31
Sounds horrid.
KingDillyDilly www.polisource.com/diffnote/042406-...yOzX.shtml (careful, it messes with some people's computers) 18:32
FurnaceBoy Juerd, "pre-emptively"? the empting has already occurred...
KingDillyDilly It's just a graphical gif. Nothing horrid.
pdcawley_ How can you be sure the tool will wrap the lines in sensible place?
And long lines that can't be made shorter are a code smell. 18:33
FurnaceBoy amen
pdcawley_ Code's way of telling you to write another method.
A graphical gif?
What's one of those when it's at home?
KingDillyDilly I wrote the wrapping routine. There's a module for it, but I didn't know it at the time, and I hate modules. They're not wrapped in the best places in all cases, but I think it's better than a really, really long line that makes you scroll sideways. 18:34
pdcawley_ is that like a textual sentence?
KingDillyDilly What? 18:35
aufrank pdcawley_: I thought it was a conceptual idea
=P
KingDillyDilly Oh, good...FurnaceBoy. Lets call buu too...
aufrank </tease> 18:36
18:37 frederico joined
KingDillyDilly Here's someone elses product: diffmerge.com/ You can attack the author of that when you're done with me. 18:39
I don't like the term "graphical..." but that's what they're called when they're not at the command line. 18:40
And pretty. 18:41
aufrank KDD... I think the thing that threw us is that gif is most commonly known as an image format. That fact makes "graphical gif" sound a little weird. Did you mean something else by gif? 18:44
KingDillyDilly Oh. I meant diff. I assume I said "diff" except that once. 18:45
aufrank do you get our jokes now? textual sentence? conceptual idea?
KingDillyDilly Yes. 18:46
Do I have to laugh?
aufrank that sort of word play passes as humor around these parts, I'm afraid.
yes, you are required to rofl. or maybe lol. one or the other. or else.
KingDillyDilly Gaim doesn't allow me to. As you know, I do graphics, not text. 18:47
But: :-D
Gaim is written in Perl, right? Do a lot of you use Gaim and customize it? 18:49
wolverian please, god, let this end
KingDillyDilly Maybe it was just that it takes Perl plugins. 18:50
19:26 froh-doh joined 19:29 larsen joined 19:56 SamB joined 19:59 nothingmuch joined 20:02 axarob joined
_bernhard exit 20:15
kolibrie I want to return the captured text and the contents of a subrule within the capture. Is that legal? 20:17
kolibrie thinks it would be very handy 20:18
20:20 weinig joined
kolibrie rule something { ( my text <subrule> ) { return { captured => $/[0], subrule => $<subrule> }}} 20:20
TimToady you can return anything you like as the scalar value of a Capture. 20:22
though in this case it seem like you'd just want to set $<captured> and $<subrule> rather inventing a separate hash. 20:24
kolibrie TimToady: so I should be able to set both $<captured> and $<subrule> and have them both accessible in my match object 20:30
TimToady sure 20:31
kolibrie very nice
20:52 YetAnotherEric joined 20:58 xphud joined, xphud left
kolibrie ah ha! I found my $<subrule> thingy embedded in my $<capture> thingy! 21:10
kolibrie is glad he doesn't have to puzzle about that all night now
21:32 zgh joined
KingDillyDilly Is evalbot a #perl6 exclusive? 22:07
I'd like to play with it.
theorbtwo KingDillyDilly: Check out a copy of pugs. Compile it. Run it to your heart's content. 22:09
22:10 KingDillyDilly left
theorbtwo For that matter, there's a copy of evalbot itself somewhere in examples/, but you get a much more powerful environment just by running ./pugs. 22:10
22:10 KingDillyDilly joined
KingDillyDilly Funny...there was an evalbot conversation in #perl when I asked that. I'm surprised evalbot isn't in #perlcafe. 22:12
theorbtwo KingDillyDilly: Seriously, if you want pugs, you know where to find it. If you can't follow the directions I'm sure you can find online, ask questions about them. 22:14
22:18 Limbic_Region joined
KingDillyDilly I've had bad experiences with software that doesn't have an installer, and I don't think I ever compiled anything successfully. I just wanted to play. I'll stick to Monkeysnowfight. 22:19
22:21 jsiracusa joined
theorbtwo KDD: Pugs isn't really release-quality software presently, and is unlikely to be so for some time. 22:24
arcady it does have an installer though
it's called apt-get
Limbic_Region audreyt sleeping? 22:25
theorbtwo grins.
Limbic_Region well - is she pretending to sleep at least?
she mentioned earlier that 6.4.1 isn't mandatory but perl Makefile.PL aborts outright with 6.4.0 22:26
Limbic_Region is upgrading now
but I wanted to sanity check the earlier comment
KingDillyDilly I thought for a minute that evalbot might be for Perl 5, but it would make sense to have that here. I see there's a p5evalbot in perlcafe, so I'll play with that. Don't want to learn Perl 6. 22:27
(wouldn't)
theorbtwo Then what are you doing here? 22:28
KingDillyDilly I find stuff to do here somehow. 22:29
22:29 pen1 is now known as penk
KingDillyDilly I'll probably be kicking the habit though. 22:29
Juerd KingDillyDilly: This is not a channel for general hanging around. If you don't know why you're here, please leave. Feel welcome to return when you find a purpose that has to do with you wanting to learn (and hopefully be involved in) Perl 6. 22:34
KingDillyDilly Juerd: Shut up 22:35
Juerd KingDillyDilly: No, but thanks for asking.
22:40 Khisanth joined 22:43 cdpruden joined 22:52 zgh joined 23:05 Odin-LAP joined, Odin- joined 23:22 Quell joined 23:23 nowhereman joined 23:30 axarob joined 23:38 FurnaceBoy is now known as FB|afk 23:47 reZo joined 23:48 mako132_ joined 23:49 axarob left 23:51 zgh joined
Limbic_Region perlbot nopaste 23:51
perlbot Paste your code here and #<channel> will be able to view it: sial.org/pbot/<channel>
pasteling "Limbic_Region" at 24.35.57.240 pasted "audreyt - Win32 build failure" (9 lines, 295B) at sial.org/pbot/16886 23:56
Limbic_Region got the backtrace 23:57
isolated problem
not sure how you want to address