pugscode.org <<Overview Journal Logs>> | You have safely opened the door to many Perl 6 hackers. | pugs.kwiki.org | smoke: xrl.us/fmw2 | Mac OS X r1622 (451/4159) | Win2k r1631 (457/4163)
Set by Corion on 7 April 2005.
putter anyone about? 01:44
kungfuftr nope 01:45
putter ;) 01:47
i'm tempted to grab a week's irc logs and plot people v time of day... 01:48
Alias_ define people ? 01:59
lurkers or talkers
jabbot pugs - 1633 - eval failing expression, to allow the te 02:00
pugs - 1632 - a few more multidim tests for you :)
pugs - 1631 - next should work in a while - test it
pugs - 1630 - repair test
pugs - 1629 - avoid evil $a special case
pugs - 1628 - fix test count
pugs - 1627 - (($a = 3) = 4) should work as in perl5
pugs - 1626 - * some cleanup and categorizes of READTH
Schwern Hey, should say use $_ if given no arguments? 02:15
kungfuftr moo? 02:19
Schwern mu
kungfuftr Schwern: should do, since it matches the perl5 behaviour 02:21
Schwern Here's another way of looking at it: will print use $_? 02:22
kungfuftr yup, currently does
perl -e "foreach(qw/foo bar baz/){ print; }" 02:23
Schwern ...
In Perl 6
kungfuftr Schwern: couldn't be sure, i'd reckon it'd be something for S29 but as far as pugs would be concerned, it should match the current perl5 behaviour 02:25
02:29 ninereasons_ is now known as ninereasons
kungfuftr Schwern: unless of course i am indeed crazy 02:30
Khisanth Schwern: is there a really good reason why it shouldn't default to $_? 02:39
metaperl slides to my upcoming Perl Mongers talk on slurpy list parms: www.metaperl.com/talks/p6-fp-slurpy/index.html 02:46
Schwern Khisanth: No. Just looking for something authoritative 02:48
kungfuftr Schwern: as far as i'm aware the reason autrijus goes by what perl5 does is by what larry has said to him 02:51
Schwern That's fair nuff. But nothing implemented works that way which made me wonder. 02:56
Khisanth aren't chomp and chop already implemented? what do they use? 02:57
kungfuftr Schwern: commit some tests?
Schwern kungfuftr: I've sent a Perl6::Say patch to Damian. We'll see what he says 03:03
kungfuftr gd gd
kungfuftr will setup a test in the meantime 03:04
hhhmmm... though easier said than done at 4am 03:05
autrijus greetings lambdacamels! 05:25
Alias_ HAIL FEARLESS LEADER!
autrijus greetings!
autrijus wonders if stevan is asleep 05:26
trailing comma is parsed; multidim arrays now works
still working on more itype
Khisanth multidim arrays are just arrays with array references? 05:27
autrijus yeah, sadly. 05:28
real multidim (is shape) needs to wait a bit
Khisanth hrm that "are" was actually suppose to be an "or" 05:29
btw, would it be possible to have "my Array %hash is Scalar;"? :p 05:30
autrijus my Array %hash
same as
my %hash is Array
so sure
you can have that
it will just be a "%hash" symbol that implements both the Scalar interface and an Array interface 05:31
Khisanth but not the rest right? I assume it wouldn't be legal to have multiple "is"
O_O!
autrijus the usefulness of it is left as an exercise
for the insane among us
Khisanth well my Array %hash; would make sense :)
I am thinking that would be a hash be you can get some sort of order 05:32
autrijus uh no that would be OrderedHash
Khisanth I am sure something sufficiently evil will be thought of for this feature 05:33
autrijus hey Ovid. 05:37
reboot &
Ovid Hi autrijus.
I just installed pugs. It's wonderful! 05:38
Where can I find the documentation for "say" in Perl 6? I know it seems simple, but that's a rather difficult word to search on. 05:39
mugwump Ovid: got Perl6::Bible?
Ovid I'm looking through it now. Still can't find it.
Specifically, I'm wondering if say doesn't have any arguments, is it supposed to default to printing the current topic? 05:41
Feh. I was looking at Perl6::Bible on CPAN. Can't install it as Spiffy fails tests.
(And I don't want to force Spiffy)
autrijus: do you know if say is supposed to default to the current topic if no arguments are used? 05:42
autrijus I have no idea.
Ovid I was confused, because my first pugs program didn't do what I was thinking "for 1 .. 6 { say }" 05:43
autrijus I based my implementatino on damian's Perl6::Say
which did not default on $_
Ovid Yeah, I noticed that (actually, Schwern pointed that out). But I can't find where say is documented. (or "print", for that matter) 05:44
autrijus it's unspecced. see svn.perl.org/perl6/doc/trunk/plans/...n_docs.pod
=item X. I/O
Ovid I would also think that print would default to the local topic, but I keep thinking that someone mentioned something about this. Can't remember. 05:46
s/local/current/
autrijus again, I have no idea.
Ovid Oh well. I'll play with pugs more, see what I find. 05:47
Khisanth I guess the only way to find out which is better is to write a bunch of Perl6 programs :) 05:49
autrijus I think I'm inclining toward defaulting 05:50
Khisanth to what? 05:51
autrijus $_
Ovid It makes sense, but I'm composing an email to the Perl6 language list right now, if for nothing else than to find out if there's anything resembling an index for the perl6 docs. 05:52
autrijus: if the latest subversion copy of pugs fails to compile (GHC 6.4), should we send bug reports? If so, to whom? 05:53
Khisanth write tests! :) 05:54
autrijus Ovid: failed how?
nopaste the error?
Khisanth hmm wait that is the wrong bugs
Ovid Are you sure? Over 10% of them have failed.
Khisanth goes to poke portage again
ninereasons over 10% of what failed, Ovid? 05:56
Ovid rafb.net/paste/results/LNwIpT64.html
theorbtwo Is it failing to /compile/, or to /test/?
autrijus oh. tests fails.
that's normal.
Ovid Failing the test.
Oh, I didn't know that. 05:57
autrijus you said "fails to compile" :)
Ovid Ack! Sorry :(
ninereasons see /topic
theorbtwo End of the /topic gives expected test fails.
theorbtwo is still mostly asleep.
Ovid Didn't see that :)
Khisanth autrijus: what about the ld warnings?
theorbtwo Ovid: The best way to find things in the design docs is to get them all in one place, then grep. 05:58
autrijus Khisanth: what warnings?
like, Perl6::Bible.
Khisanth autrijus: lines 85 to 98 in that paste
Ovid theorbtwo: have you tried grepping for "say" or "print" in there? :)
ninereasons those "cannot modify a constant item" errors are fatal, autrijus. They leave many tests unexecuted. 05:59
I don't know what to do when I encounter them, though. comment them out, and substitute a "fail" test? 06:00
What is your preference? 06:03
autrijus ninereasons: can you point me to an example? 06:04
ninereasons undef.t
autrijus Khisanth: never seen that before. weird
ninereasons $s = undef works.
undef $s does not
autrijus Ovid: welcome to AUTHORS.
* default say() and print() to $_, as suggested by Ovid.
ninereasons: checking.
Ovid Thanks. I actually was planning on submitting failing tests for that if I could verify the behavior :) 06:05
autrijus that works too. your email?
(for committership)
Ovid Hold on. I'll make one. 06:07
[email@hidden.address] 06:08
And thanks :)
autrijus sent. welcome aboard! 06:09
autrijus now looks at undef.t
Ovid Woo hoo!
ninereasons the latest version of t/builtins/defined.t has two tests commented out, which cannot be parsed: failing with "cannot modify a constant item: VInt (val)" 06:10
autrijus k. fixing
Ovid Hmm ... term of use agreement in Chinese. I'm not signing away my firstborn son, am I? :) 06:11
autrijus wagner.elixus.org/~hcchien/termtouse.html
Alias_ Ovid: You know, everyone keeps asking that
autrijus gah. that's the last time. 06:12
autrijus fixes foundry
Khisanth I doubt autrijus and co. could handle that many screaming babies
Alias_ So far we've been able to provide answers that fool them into thinking that it is merely harmless boilerplate :)
Ovid Heh :) 06:14
Alias_ Khisanth: Premium Soylent Green 06:15
autrijus fixed. 06:19
ninereasons that was quick.
autrijus I fixed the term of use :)
not undef.t :)
_now_ fixing undef.t 06:20
ninereasons oh.
interesting. if I say $a = undef; and then undef $a; there is no error.
Ovid Luke Palmer confirms that "say" default to $_. 06:29
OK, I'm tired. Need to head to bed. Cheers, folks.
autrijus cool!
Alias_ I wonder what the 29 modules that have ->say method think about Perl 6 stealing a method name 06:30
ninereasons is that an actual count, Alias? or a hypothetical number? 06:33
Alias_ It's an approximation of an actual count 06:34
I can't remember the exact number, but it was in that vacinity 06:35
s/modules/.pm files/
shapr good morning #perl6! 06:39
shapr boings cheerfully
ninereasons hi.
thanks for taking time with my haskell confusion earlier. 06:40
shapr Sure, anytime I'm not working, I'm happy to help.
ninereasons i've quite a hump to get over, before haskell looks right, to me, I'm afraid 06:42
shapr Well, I may not be a giant, but at least you can stand on the shoulders of short people.
Have you seen the HaskellDemo? 06:43
ninereasons yes. 06:44
shapr do you have any specific questions past that?
ninereasons it's just going to take a while. that's all. 06:45
and that's okay.
Alias_ shapr: Speaking of which...
shapr I can help out for a few minutes before I start work. Anything inside Pugs I can explain?
Alias_: yes! more ideas?
Alias_ shapr: You said Foo' is a common thing, because ' is a normal character?
in identifiers...?
ninereasons I was trying to understand Prim.hs line 79 -- another bug. 06:46
shapr Alias_: yes, it's often used to mean another version of the same function, refined in whatever direction appeals to the author. 06:47
Alias_ You need to note that early too
It's a huge gotcha
shapr ok, I'll add that in there. 06:48
Alias_ I'd say after the "but we _should_ have used a type" example
do it early
While they are still thinking about identifiers
shapr ok, I'll add that.
06:48 castaway_ is now known as castaway
shapr ninereasons: "unless (isNothing $ vCast mv) $ do" ? 06:49
Alias_ I've yet to pluck up the courage to look at types and data stuff yet :)
But I'll keep you posted :)
shapr The types and data stuff is quite nifty, it's like data structure lego where you can give a single pattern to be repeated like tiles. 06:50
ninereasons yes, shapr. the "undef" function doesn't work right.
Looking at it, I can't understand why. 06:51
shapr neither can I, it looks right.
ninereasons it works to say $s = undef
shapr what fails? 06:52
ninereasons it does not work to say "undef $s"
unless $s is already undef
castaway Haskell is like lego? 06:53
(g'mornin)
shapr algebraic datatypes are like lego.
Alias_ evil animated liquid lego
shapr greetings castaway
Alias_ If the lego came in the form of structured clusters of nanobots 06:54
shapr ninereasons: isNothing is used for values that can be Nothing or Just a, maybe undef needs to explicitly test for VUndef?
At first sleepy read, I assume that Nothing was the same as VUndef, but now I wonder. 06:55
shapr tries that again.
Maybe if it isNothing it still needs to be set to VUndef? 06:56
ninereasons oh.
well, maybe.
shapr I'm not sure about that, just a guess without digging into isNothing vs VUndef
castaway challenges shapr to make a wiki page explaining bits of haskell as lego blocks .) 06:58
shapr digs into VUndef 06:59
castaway which of the nice bots here does "seen" and how?
shapr I assume that isNothing is the standard Haskell function of the same name. VUndef is pugs-only.
ninereasons I think that must be right. googling VUndef today, I found only Pugs 07:00
(now that you mention it)
shapr and VUndef is defined in AST.hs
Along with most of the pugs standard types. 07:01
Khisanth castaway: jabbot does that 07:02
castaway: and lambdabot too :)
castaway jabbot: seen theorbtwo
jabbot castaway: theorbtwo was seen on Fri Apr 8 13:58:00 2005
castaway jabbot: what timezone, idiot?
jabbot castaway: Are such questions much on your mind?
shapr The behaviour of vCast with VUndef is defined in AST.hs also, and that makes me wonder.
Khisanth castaway: probably whatever timezone taiwan uses :) 07:03
maybe lambdabot can do better
shapr @seen shapr
@seen theorbtwo
ninereasons what's a webwitch? :)
shapr me! 07:04
castaway Thanks
shapr My woman started a company in 1994, and now I'm half owner.
castaway wonders if he went back to bed after all
shapr ninereasons: it looks to me like it's either a bug in vCast, or more likely that undef needs to set the value to VUndef anyway, even when it isNothing 07:06
So the missing answer is, why does this check for isNothing? Why doesn't it do anything in that case? 07:07
ninereasons compiling
"Linking..." really is a resource hogging process! 07:08
shapr It must be because of line 267 in AST.hs, "vCast VUndef = Nothing" 07:09
Oh of course, if you vCast VUndef, it becomes Nothing, so, (isNothing $ vCast mv) means "you've already got one" 07:10
I don't get it. 07:13
shapr stares at the IORef bit 07:14
ninereasons: what do you think? any ideas? 07:15
castaway somebody name me a city in taiwan 07:16
shapr renames castaway "a city in taiwan"
rgs READTHEM++
shapr Ok, after going around and around in the source, it sure looks like undef should work. 07:17
castaway ruffles shapr. (silly silly)
shapr wow, Haskell killed ninereasons' hardware :-( 07:18
Khisanth castaway: taipei? :)
castaway already got it, ta
shapr oh wait, maybe undef($s) needs to be declared in initSyms along with the other parens using critters? 07:21
could it be that simple?
castaway: have you seen the tree datatype example on HaskellDemo? 07:22
shapr switches back to data lego.
castaway I dont think I read that far yet ,) 07:23
shapr Are you at work? Or can I pester you with interesting bits of information? 07:24
castaway yes at work 07:25
shapr ah, too bad.
castaway (this shouldnt stop you pestering tho ,)
multitasking, remember? :)
shapr oh right!
shapr is semitasking (doing several things badly) 07:37
castaway *g* 07:38
shapr I have to work, but I shall return to discuss lego
castaway goodie 07:40
masak is it true that 6.2.0 is due Monday? 07:59
castaway somethihng like that, yup
masak are we skipping 6.1.0?
castaway I suspect even numbers are supposed to be stable, and odd not.. like in many OS projects 08:00
but I dont know it for sure
Khisanth I don't think you can get 6.1.0 with 2*PI :)
masak but you can get 6.0.14? 08:01
castaway: what does "stable" mean in this case? pugs is the most impressively volatile project i have seen so far 08:02
castaway I have no idea, I'm just guessing :)
masak :) 08:03
Khisanth masak: version numbers seem to be an indication of what has been implemented
masak ok
castaway that doesnt explain the skipping of 6.1.0 though 08:04
masak maybe it's an indication of what not to implement :P
Khisanth actually it does :)
integral 6.1 isn't specified in the Pugs roadmap :-)
Khisanth exactly! :p 08:05
masak the question is why
Khisanth svn.openfoundry.org/pugs/docs/01Overview.html
and scroll down to Do you have a roadmap for Pugs development?
integral because each milestone adds one digit of 2Ļ€
castaway thats still a what, and not a why :) 08:06
integral hmm: Ā«Starting from 6.2.0, the Pugs team will also provide binary builds on selected platforms.Ā»
Khisanth it also explains why there is 6.0.14
masak how so?
Khisanth 2*PI only applies to major and minor version numbers :)
masak of course 08:07
i see now
it's all so weirdly clear
well, thx for the explanation. gotta go
castaway ooh, they will? nifty 08:09
autrijus hi. sorry. was away. 08:52
@ meeting
castaway :) 08:53
09:54 wilx` is now known as wilx
kungfuftr dances 10:55
autrijus hi kungfuftr :) 10:56
gaal++ # eclipse build fix 11:07
Limbic_Region chip about?
seen chip?
jabbot Limbic_Region: chip was seen on Fri Apr 8 05:11:04 2005
castaway @seen chip
theorbtwo seen theorbtwo 11:08
jabbot theorbtwo: theorbtwo was seen on Fri Apr 8 13:58:00 2005
Limbic_Region use.perl.org/~spur/journal/24062 # contemplating a C -> Parrot compiler
theorbtwo Hm, odd.
seen theorbtwo
jabbot theorbtwo: theorbtwo was seen on Fri Apr 8 19:08:32 2005
theorbtwo Much better.
(Timezone reference.)
castaway ? 11:09
kungfuftr got freebsd installed on his laptop last night... time for some svk goodness 11:15
theorbtwo (13:08:35) jabbot: theorbtwo: theorbtwo was seen on Fri Apr 8 19:08:32 2005 11:19
Note the times -- jabbot's time is 6 hours ahead of ours.
castaway ah 11:21
castaway didnt think to look at the localtime shown ,)
wolverian that's why seen bots usually say 'foo hours ago', or so, instead of explicit times. 11:27
theorbtwo Aye.
I suggested that to gugod a while ago, he said something noncomittial. 11:28
Chasing modules from: src/Main.hs 12:00
Could not find module `Posix':
it is a member of package posix-1.0, which is hidden
(imported from src/Internals.hs)
autrijus interesting. 12:05
ghc 6.4?
theorbtwo Yeah. 12:07
I have a replaced External/Haskell.hs, though, which may be causing it.
And I just noticed that it's non-fatal.
Oh, huh... perhaps it is fatal.
Yeah, it is fatal.
autrijus ok. 12:08
theorbtwo Hm, making my External.Haskell a no-op module doesn't change it, though. 12:10
autrijus svn up and try again?
(need another perl Makefile.PL)
theorbtwo I'm doing a fresh checkout and trying again. 12:11
autrijus I've already renamed Posix.hs to Compat.hs :)
theorbtwo 1641 pure gives me a bunch of errors in src/Run.hs (Not in scope: evaluateMain 1x, newMval 11x, emptyEnv 1x). 12:14
autrijus your GHC is seriously weird. 12:20
Run.hs has an "import Eval" 12:21
it should see those symbols.
castaway figured out what was up with gentoo 12:24
theorbtwo Something is indeed seriously strange here.
castaway (>=ghc-6.3 masked until haskell packages are ported)
theorbtwo "If the export list is omitted, all values, types and classes defined in the module are exported, but not those that are imported." 12:28
I'm rather stumped.
theorbtwo sighs, reverts to searching for what revision broke it.
autrijus castaway: =/ 12:31
castaway overrides the mask with an unmask, and emerges it anyway
it doesnt say *which* packages
elmex cutee 12:36
theorbtwo Hmm? 12:37
elmex theorbtwo: hi
autrijus greetings 12:38
elmex autrijus: hi
theorbtwo Hi, @array[$x].
cognominal autrijus: the French Perl Workshop is at the same time as the austrian perl workshop 12:39
theorbtwo autrijus, you were right, it was my GHC install. Now I just wish I knew why installing plugins as a package killed it.
cognominal I am making a presentatin of perl6 at fpw.
autrijus cognominal: exactly the same time? 12:40
cognominal I was thinking about making a japh contest.
rgs will be at the fpw too
cognominal maddinghe the organizer was thinking about setting some sort of duplex 12:41
that would be cool to present the japh at this duplex
more so because most of the perl6 luminaries will be at yhe apw. 12:42
Maddingue: autrijus ask me: apw amd fpw exactly the same time? 12:43
Maddingue yes
9 and 10 june
cognominal and both in Europe :) 12:44
12:54 Maddingue is now known as Maddingue_
theorbtwo Morning, Mr. Villin. 12:54
castaway looks around. Who? 12:55
theorbtwo mugwump == Sam Vilain (I can't spell.)
castaway ah 12:56
cognominal Villin is not interesting in French, "Vilain", on the other hand gives mugwump a status of a bad guy :) 12:58
castaway ooh, Symbian 12:59
elmex ? 13:23
whats up?
castaway The sky
stevan whoa,.. the tests are spewing VUndef like crazy 13:26
I assume I picked a bad revision to build :)
theorbtwo Whoo, I'm offically RSVP'd to the YAPC::NA hackathon. 13:34
stevan theorbtwo: nice!
castaway cool
btw does it/he say anywhere how its going to happen? (I'm assuming laptops and wifi or some such) 13:35
stevan /really/ needs to read his Haskell book before the hackathon
theorbtwo Not that I'm aware of. Forwarded you the mail he sent me; he's setting up a ML. (Already responded with your email.)
castaway Ok 13:36
stevan castaway: I think I read something about stealing the neighbors phone line
theorbtwo: ML?
castaway *g*
theorbtwo Mailing List.
stevan ah
castaway checks email.. "Unbiased info for investor intelligence.. ", no, thats not it 13:37
stevan checks his mail,.. oooh I can get a Green Card! .... and vicodin for cheap ..... 13:38
castaway :)
yeah, a whole $2.99 13:39
wolverian this is a stupid question probably, but does eval() support evaluation in an arbitrary scope?
stevan wolverian: I think/would assume so, is it not?
pugscode.org <<Overview Journal Logs>> | You have safely opened the door to many Perl 6 hackers. | pugs.kwiki.org | smoke: xrl.us/fmw2 | Mac OS X r1641 (426/4157) | Win2k r1631 (457/4163) 13:40
wolverian stevan: well, I couldn't find it on p6l. :) (and I don't have a running pugs.) and I don't know how to reference a scope. 13:41
stevan wolverian: what exactly would you want to do with it?
I can try it for you 13:42
mugwump cognominal: yes, my surname is a french insult or something like that :). I don't know exactly what the story is with that 13:43
wolverian stevan: I would want to eval code in, say, the current scope, not in a child lexical scope as eval() does in perl5.
mugwump Maybe this is part of the reason my great-grandfather left France for England
castaway Villain is just "villager" isnt it?
(or used to be ,) 13:44
stevan wolverian: hmmm, I would guess it would behave much like perl5 does
mugwump I hear varied things about that, maybe it was once but now with the advent of industrialisation the french people have been engineered to regard it as an insult
castaway maybe.. like "redneck" and so on 13:45
wolverian stevan: oh, so it's impossible to do a REPL without recursive eval?
stevan wolverian: since the child lex scope is a child of the current scope, why does it matter?
wolverian stevan: see above.
stevan REPL?
wolverian read-evaluate-print-loop. such as what running 'pugs' starts.
stevan wolverian: ok
wolverian the difference between that and perl -de0 is that perl -de0 forgets the previous line's lexicals.
(since the lexical subscope of the previous eval() does not carry over to the next.) 13:46
stevan wolverian: so you want the carryover I assume
wolverian so the only option is to munge the $string to be evalled and recursively eval in it. this will blow the stack.
stevan: the generalised method would be to refer to scopes as objects and give them .eval methods.
I think.
stevan wolverian: this sounds like a topic for perl6 lang 13:47
wolverian I guess. I searched it, didn't find anything. I didn't search very deeply, though.
theorbtwo wonders if eval should be a method on a block or coderef object. 13:48
wolverian isn't that the same thing?
(I hate how ruby thinks a block is not a Proc. argh.)
I guess it could be a method on a continuation. :) 13:49
since isn't that what blocks are? 13:50
theorbtwo I'm not 100% sure about the differences. 13:51
wolverian do you know if there is something on p6l or elsewhere I could read on this? any official decisions?
if not, I'll just ask on p6l
theorbtwo Asking on p6l would probably be good. 13:52
wolverian I'll do that.
castaway gets the email eventually. 13:55
wolverian sent something I hope will be coherent. 14:03
ninereasons I guess all those VUndefs in r1641 are for debugging? trace? 14:27
stevan ninereasons: thats what I assume too
ninereasons sure makes a messy "make test"
but otherwise, seems unbroken
stevan ninereasons: yeah the fail to pass ratio is still about right 14:28
ninereasons: if you wanted neat, you might be in the wrong place ;)
ninereasons heheh . yes. 14:29
#parrot, maybe :)
wolverian hmm, I see a t/Dialects. why the capital D? 14:31
stevan wolverian: folders starting with capitals are ignored by make test (i believe) 14:32
wolverian ah, okay. it is visible in the smoke though.
stevan wolverian: to be honest, I dont even know what that is for 14:33
ninereasons those tests consist of nothing but an 'exit', right now (i think)
yep (had to delete my working copy to see) 14:34
stevan, is that syntax in t/Dialects/perlego/isrw.t legal? ' for $foo <-> $bar { ' ? 14:40
stevan ninereasons: no idea 14:42
theorbtwo At one point, <-> was going to be like ->, but making the parameters :rw. 14:45
Don't know if that's still the case. 14:46
ninereasons it does not show up in the Synopses, where i can find it. 14:50
wolverian that was juerd's suggestion. I don't think larry ever liked it.
ninereasons wolverian, I suppose that, with perl6's ability define your own '<->', juerd has a chance to get his way through defacto adoption. right? 15:27
theorbtwo Right. 15:30
That's what the Dialects dir is there for, in part -- testing of dialects of perl.
ninereasons that would seem to empower the community to overrule the designers 15:35
pasteling "ninereasons" at 199.107.164.126 pasted "that's tight!" (8 lines, 156B) at sial.org/pbot/9050 16:20
lightstep what does it do? 16:24
ninereasons it prints "a", and "><"
lightstep so undef $a.say first executes the say, then the undef? discarding the result of say? 16:25
ninereasons discarding the results of $a = 'a' 16:26
lightstep i mean, is undef $a.say different from undef ($a.say) ?
ninereasons yes, I'm sure it is. 16:27
(checking)
lightstep if so, it's not unly a precedence table thing
ninereasons no, it's the same. 16:29
lightstep then howcomes it prints "><"? isn't undef given `true' as the paramenter? 16:30
ninereasons that's not the "real" undef. Maybe that's why. 16:31
undef $a is broken, right now. lightstep
pasteling "ninereasons" at 199.107.164.126 pasted "that's tight 2" (8 lines, 165B) at sial.org/pbot/9051 16:34
ninereasons lightstep, same behavior . is that a surprise? 16:35
lightstep yes 16:36
ninereasons or, lightstep, you aren't thinking of defined() are you?
lightstep how does undefine get a handle to $a?
(i'm not thinging about builtins at all) 16:37
ninereasons ok
$a is in the lexical scope
? did I say that right? 16:38
lightstep yup 16:40
oh
undefine touches the global variable
ninereasons no new "my $a" ; right.
only done because the builtin undef is broken. 16:41
lightstep i forgot that p6 has no-arglist subs too
ninereasons I think that the arglist sub syntax is going to rapidly become perl6 cargo-cult
mugwump (ML-grade method signatures specified Perlishly)++ 16:42
lightstep subs with arglist are better than @_&shift 16:43
ninereasons they sure are!
but I can see the pattern being established already, of full type and return declarations. 16:45
I expect that it might appear to some as the one way to do it
wolverian static typing is nice when it is done with roles instead of classes.
Limbic_Region www.perlmonks.org/index.pl?node_id=446048 # CP6AN should be a database 17:53
autrijus greetings! 18:08
mugwump hello!
Khisanth Limbic_Region: not sure if you were around but I am pretty sure that has been discussed :)
Limbic_Region no Khisanth - I have been working today 18:09
autrijus Gruber: around?
Limbic_Region glad that it was brought up though
@seen Gruber?
hmmm
seen Gruber?
jabbot Limbic_Region: Gruber was seen on Tue Apr 5 22:57:02 2005
Khisanth Limbic_Region: not today, quite a few days ago maybe weeks :) 18:10
Limbic_Region oh - well then I am just pointing out to autrijus that it is being discussed on PerlMonks
Khisanth jabbot needs to be reporting that in a more relative fashion :)
Limbic_Region autrijus, in case you missed it www.perlmonks.org/index.pl?node_id=446048 # CP6AN should be a database
autrijus "Databases support versioning? What planet do you live on? 18:11
Maybe you're talking about the Subversion database?"
I like this :D
Limbic_Region jZed in that thread is Jeff Zucker - a pretty smart DB guy (more than a couple DB related CPAN modules to his name) 18:13
He is always willing to help out on stuff if someone needs help with that area 18:14
Limbic_Region isn't much of a DB weenie himself
mugwump who needs a database when you have STM anyway 18:15
castaway stm?
mugwump exceptions on acid
(or, Software Transactional Memory, if you prefer)
autrijus different uses :) 18:17
database handles the query part
which STM can't quite help you with
but sure, more db use of STM would be cool
mugwump nods 18:18
autrijus $*PID checked in 18:30
basic undef() fixed
ninereasons yay 18:31
crysflame yay
autrijus :) 18:32
mugwump just got asked for identification by the obligitary post-9/11 dudes with assault rifles in the airport 18:33
autrijus cool
mugwump I should have asked them to watch my stuff while I get a coffee 18:34
theorbtwo Mugwump: Where are you?
mugwump SIN airport
Gruber autrijus: yup 18:35
theorbtwo Ah, Singapore.
I suspect they would not be amused.
autrijus Gruber: there you are. thanks for the $*PID patch, I've checked it in
hopefully not breaking win32
mugwump especially if pressed my remote-controlled firecracker switch from the counter
Gruber saw that, thanks 18:36
autrijus my "o" and "u" key on the keyboard are half-broken :-/
autrijus ponders sleep first, get a replacement tomorrow, _then_ resume hacking
mugwump wonders whether it is worth resisting the urge to sleep 18:38
theorbtwo autrijus: Made some progress on an hs-plugins-based External.Haskell, but it's now not finding the u_* symbols from Unicode.o for some reason. 18:39
autrijus theorbtwo: you need to link against UnicdeC.o
maybe just load it 18:40
theorbtwo Hm, that's an idea.
autrijus same for pcre/pcre.o
theorbtwo Nod.
I expected it to figure that out itself, though.
autrijus n, thse two are linked explicitly 18:41
probably not part f .hi
gah. I'll try repair my keyboard a bit. bbiab :)
theorbtwo I got the gist.
That's a new one: "pugs: Prelude.undefined" 18:42
ninereasons I give up. how do you display the differences between two subversion versions? 18:43
stevan svn diff
theorbtwo svn diff -r a:b
stevan svn help diff :)
ninereasons svn help diff - gah; 18:44
thanks.
stevan ninereasons: what the theorbtwo said
ninereasons: this is always helpful to me svnbook.red-bean.com/en/1.0/index.html
theorbtwo I tend to do svn diff -rHEAD|less a decent bit 18:45
ninereasons stevan && theorbtwo thanks. 18:46
autrijus back 18:55
stevan autrijus: I found a bug with named parameters
autrijus aside from multidim, what else to you consider to be 6.2.0 blocker?
s/to/do/
next/redo in all loops, maybe? 18:56
stevan: oh?
stevan how about mutable sub parameters ?
(anyway back to named params) this works: sub foo (+$x = 3) { $x }
autrijus "is rw" / "is copy" ?
stevan autrijus: those work?
but this does not: sub foo2 (+$x = 3, +$y = 5) { $x + $y } 18:57
autrijus yeah, a parsebug
stevan autrijus: I added tests for it in t/subroutines/sub_named_params.t 18:58
autrijus looking 19:00
fixed. 19:02
r1647
stevan whooo hooo
autrijus now, let's see "is rw" 19:04
pugs> sub destroy ($x is rw) { $x = 7 }; my $v = 1; destroy $v; $v 19:05
7
ninereasons yay
autrijus r1648.
ninereasons that's a big stride forward, IMO
theorbtwo wonders why svn log|less takes so long to die after I hit q.
autrijus :) 19:06
chip svn-- # catching SIGPIPE, probably
stevan autrijus++
ninereasons autrijus++
stevan goes to remove all the hacks around lack of 'is rw'
autrijus stevan: my IType work today turns out to be worthless... the p6 semantic turns out to be "just like p5, except autoref/deref"
I persumed something more clever based on parrot's PMC model 19:07
turns out to be overclever :-(
castaway hmm, gentoo is still building ghc (started 4-5 hours ago)
theorbtwo autrijus: Keep the work around, hope that they're fix the spec?
autrijus theorbtwo: probably no chance of that, I think it's one of the very wellspecced part 19:08
theorbtwo Oh.
autrijus I'm still not that sure on this "container type" thing
but that's one of perl's defining characteristics
stevan autrijus: so does my @a = (1, [ 2, 3 ], 4); not DWIM?
autrijus so if @larry thinks we keep it, we need to keep it 19:09
crysflame autrijus: keep it around as an alternative syntax patch for perl6, since it's supposed to be super-easy to do those with perl6?
autrijus crysflame: not a syntax I'm afraid
stevan: oh, right, that p6c post 19:10
that has nothing to do with IType.
you can try
(1, [ 2, 3 ], 4)
in the pugs prompt
it's a bug in ","
stevan autrijus: it will flatten (i think) (I am in the middle of make)
autrijus it flattens eagerly
crysflame oh. 19:11
stevan autrijus: any chance of "is copy" ? 19:15
autrijus I wonder what does it do for multidim 19:16
stevan autrijus: good thought
stevan is starting to miss the old aliased parameter passing 19:17
theorbtwo suspects not what he wants it to.
But the =:= thread is depressing me. 19:18
I want predictable behavior for $$x, dammit.
stevan autrijus: will you put it if I promise to only use it on string ;)
autrijus: according to s06 (search.cpan.org/~ingy/Perl6-Bible-0...er_traits) 19:19
When applied to a variadic parameter, the rw trait applies to each element of the list:
autrijus is asavige's (1,[2,3],4) made into a test? 19:20
stevan autrijus: not specifically, but I will make sure the multi-dimensional_array.t file tests that case 19:21
autrijus that test now reads 19:22
All tests successful (16 subtests UNEXPECTEDLY SUCCEEDED).
which I assume is an improvement
(r1649)
stevan yes
autrijus: it tests [1, ['foo', 'bar', 'baz'], 5] 19:23
which is close, but not quite
so I will un-TODO and add a few tests 19:24
autrijus ok.
stevan autrijus: it works 19:31
I added it to t/data_types/mixed_multi_dimensional.t as the Array of List test
autrijus cool 19:32
stevan autrijus: and HoLists seems to work 19:35
ninereasons lots of cool things work now.
ninereasons off to play with pugs
stevan but accessing them like this %hash<key>[2] does not work
autrijus good. although rw into deep structures does not
jinx
that will still require IType.
I've got a design (actually the 3rd -- I'll spare you the details) 19:36
will try to do it after some more sleep
stevan autrijus: sounds good... I will try to flesh out more of the corner cases for multi-dims while you sleep
autrijus cool!
stevan++ # test driven
stevan autrijus++ 19:37
autrijus oh btw, kv.t is weird
stevan I will take a look at it
autrijus assume %hash = <a 1 b 2>
I assume %hash.kv would return <a 1 b 2> in list context
otherwise can't quite imagine how it works in for()
stevan like a zip() maybe?
autrijus zip() returns a flat list 19:38
anyway, the original test (and the larry comment below) has it as [[<a 1>], [<b 2>]]
but I don't see how for() works with it
stevan weird
autrijus and I wonder if larry has it confused with .pairs
or rod is confused, or I'm confused.
if you have some time, try looking at the test to make some sense, and/or post to p6l :)
stevan ok 19:39
20:07 lightste1 is now known as lightstep
Juerd 16:50 < wolverian> that was juerd's suggestion. I don't think larry ever liked it. 20:13
wolverian: He said he liked it, but for unmentioned reasons decided against.
Unless "too many operators" really was the reason, but that rule'd be somewhat inconsistently applied then :) 20:14
ihb Juerd: which operator? 20:34
wolverian Juerd: ah, sorry.
ihb: <->
ihb and <-> would do...
wolverian ihb: same as -> except the args would be rw
ihb -> as in pointy subs? 20:35
wolverian yes.
ihb for @foo -> { s/.// } # won't work because $_ isn't rw there?
wolverian er, I think that's invalid; -> _requires_ args. I could be wrong about that, and it's unrelated. I think $_ is rw by default, but named args aren't 20:36
ihb ok.
autrijus $_ is rw by default? 20:37
reference?
(it's not in pugs, and I'd be happy to fix)
wolverian I don't know if it is. 20:39
I think it was mentioned somewhere. 20:40
or maybe when there is no <->, -> is always rw
Juerd probably knows better. I shouldn't talk so much when I don't really know the facts. 20:41
autrijus for @foo -> $_ is rw { ... }
wolverian for @foo -> $a is rw, $b is rw, $c is rw { ... } # repetitive.
20:42 metaperl__ is now known as metaperl_
hlen wolverian, there must be another way to say that 20:45
Corion Is r1653 build broken ? 20:57
PerlJam wolverian: for @foo -> ($a,$b,$c) is rw { ... } # :-)
Corion : src/Compat.hs:74:0:Couldn't match `IO ProcessID' against `t -> t1'
... reading the logs ...
PerlJam Corion: compiles for me, are you sure you don't have a local mod that's causing it to break? 21:00
(I did "make clean; perl Makefile.PL; make" btw) 21:01
wolverian PerlJam: hmm. okay. :) 21:02
21:02 metaperl__ is now known as metaperl_
Corion Hah. Seems like it was the $*PID patch and I've gotten it to compile now. 21:08
And the sleep() is useless I think - it should be threadDealy()
autrijus please fix both and commit :) 21:10
journal up and I need to sleep now
see you tomorrow *wave* &
Corion autrijus: Looking ;) And my "fix" didn't work out yet :( 21:11
Sleep well, autrijus
autrijus Corion: just remove the _ from getProcessID, no?
but. zzz &
Corion Where do we put tests against builtin variables ? under t/var ? under t/builtins ? 21:18
stevan t/builtins 21:19
Corion stevan: I see some related things in t/magicals
stevan Corion: also if it a builtin specific to a string or array or something then t/builtins/string, etc
Corion I want to write a test against $*PID :)
stevan t/magicals then
putter have we a perl6 syntax expert in the house? 21:21
stevan putter: expert I am not, but I might be able to help 21:23
putter t/statements/if.t has a test case "if {...} ...". That's a closure as the condition. Last night I was unable to turn up any documentation to justify this case. I'm wondering whether the test is itself a bug... 21:25
stevan putter: I think it should work
'if' should be able to be done without parens, and with anything as an arg 21:26
so while it is certainly a perversion of the syntax, it should work
putter: did you look in recent perl6-lang emails and #perl6 logs? I think I recall is being discussed somewhere (hence the test) 21:28
putter oops. duh. that makes sense. so closures being "true", it will always be true. and the test is failing because of a quirky parser problem. 21:29
i did grep about in p6l, but not in the #p6 logs. 21:30
stevan putter: yes
try the #perl6 logs, it may be in there
I know it is a recent addition to the file because I wrote the test originally and I didnt put it there :)
putter currently, if {...} { $foo=2 } else { $foo=3} parse fails, but if a ; is added after the foo=n's, then it parses. 21:32
stevan putter: odd, you want to write up a quick tests and put it in t/pugsbugs/?
putter the test has been in since 509, nothingmuch, march 7. at least based on the log entries. svn blows out with an error message if you ask for contents or diff.:( 21:34
i'll add it to pugsbugs.
Corion Hmmm. While threadDelay compiles, it doesn't magically fix the sleep() issue on Win32. 21:36
pasteling "ninereasons" at 199.107.164.126 pasted "$_ is rw; $_ is not rw" (9 lines, 333B) at sial.org/pbot/9102 21:44
kungfuftr can no longer build pugs 21:50
/usr/local/lib/ghc-6.4/libHSbase.a: could not read symbols: Memory exhausted
during linking that is 21:54
ninereasons linking can be a killer
moustic hi .. is there a reason why a regexp does not capture anything with the x tag, and something just removing it ? 21:55
ninereasons isn't x is deprecated ?
well, you would be using perl5 rules, though 21:56
?
moustic yes
ninereasons I don't know, moustic; pugs is being tested against over 1580 perl5 rules, and I'm not sure which ones work. 22:01
you can check at t/rules/perl5.t 22:02
moustic ok i will have a look, thx
kungfuftr bah, sucks
putter stevan: what is the criteria for placing things in pugsbugs? 22:04
kungfuftr putter: submit a test
stevan putter: it must be a bug :) 22:07
Corion there are some unexpected successes for p5 rules BTW
stevan putter: things like what you describe are weird syntax issues.
Corion: I fixed those,... r1654
Corion stevan++
stevan: I just saw them some hours ago, but wasn't able to communicate with #perl6 ;) 22:08
stevan putter: so they don't fit into proper tests
Corion But sleep() on Win32 now works the same (or even better) as on Unix. Except that sleep() should return the time slept, which it does on neither system...
stevan Corion++ # :)
putter tnx.
Corion But that means only 1 of four tests now fails :) 22:09
stevan Corion: I am guessing you want sleep for LWP::Simple right?
Corion Maybe Unix should get switched to threadDelay() too.
stevan: Hmm - no, I wanted it for ... I forgot ;) 22:10
But when I unwind my stack, I'll hopefully find the cause again ;)
kungfuftr anyone got any ideas about how to avoid this memory exhaustion linking problem at all? 22:11
Corion kungfuftr: Buy more RAM
Corion hides from the rotten tomatoes 22:12
kungfuftr Corion: i have 350Mb
more than enough
kungfuftr checks if there have been ghc updates 22:13
putter is there a list of all the tinderboxes somewhere? (i see builtins/math/exp.t failing because it rounds off one digit short, and I'm wondering if it is currently working for anyone (thus the test would need to truncate) or not (thus add digit:)). 22:18
shapr For the math builtins I implemented, I just changed test. No one has complained. 22:19
putter tnx. 22:21
Corion [putter]: I only know the one of kungfuftr and mine at datenzoo.de/pugs/win2k.{html|yaml}
putter Corion: tnx. I've added an entry in the pugs wiki faq, under "other questions". also linked to nothingmuch's tinderbox. 22:27
Corion shapr: If you find tuits, can you look into making sleep x return x (or even the number of seconds acutally slept) ? 22:34
shapr I'll keep that in mind.
I suspect most of my tuits will happen on Sunday.
Corion shapr: No hurry - it's merely cosmetic :)
Corion & zZzzzZzz 22:36
putter Corion: i just got a "no newline at end of file" warning with a fresh Compat.hs. fyi. 22:41
ninereasons is there some way to test the output of "say" ? I want to show that 'say' is the same as 'say $_' in some contexts, but not in others. 22:42
shapr Can you use the tests in want.t? 22:45
It would be nice to have a standard set of contexts for testing. 22:46
ninereasons I should say 'scope', rather than 'context' 22:47
sorry.
putter ninereasons: run pugs as subprocess, with output piped to file? hmm... can we rebind stdout yet? 22:49
ninereasons I think that what I want is to redirect $*OUT to a scalar; but that's a todo.
and there is no 'select'
and, i feel silly, but I can't tell whether "say $handle" will print $_ to $handle, or not. 22:50
or whether it should.
Juerd 22:37 < autrijus> $_ is rw by default? 22:53
It is.
ninereasons in any scope? 22:54
Juerd I'd rather explain that as "<-> $_" is used by default, rather than "-> $_ is rw" is used by default
But <-> isn't going to happen
ninereasons: No, as the default ->.
ninereasons did you see my paste, above? 22:55
Juerd No 23:06
ninereasons sial.org/pbot/9102 # its a bug, not purposely this way
elmex lolz, aimbot userz, y00, r0ck 23:08
oops, wrong channel
*g* ;)
pasteling "ninereasons" at 199.107.164.126 pasted "getting output of "say" into a variable." (7 lines, 176B) at sial.org/pbot/9103 23:11
ninereasons I'm so slow. I guess that works, though.
putter ninereasons: slow is ok. success! ;) 23:26
Juerd ninereasons: I'm browserless.
shapr is brainless
ninereasons then, will you forgive a paste to #perl ? It's fairly short 23:27
to #perl6 , that is
shapr looks at Juerd
shapr surely doesn't mind
putter hey, its perl, here comes one line... 23:28
ninereasons my $a := $_; for 1 .. 3 { $a++ }; say; # 3
for 1 .. 3 { say } # 3\n3\n3\n
for 1 .. 3 { $_++ }; # *** Error: cannot modify constant item at 1
success, yes, putter :) 23:30
shapr this is pugs?
ninereasons pugs, yep.
a broken nosed pugs, I think. 23:31
:(
shapr should it return a constant? 23:32
23:32 bd__ is now known as bd_
ninereasons $_ should be rw in both scopes; 23:33
and $_ should be the default topic for 1..3
not the global - the local
(it's confusing)
shapr is confused, yes.
ninereasons for 1..3 {say} should be the same as 23:34
for 1 .. 3 -> $_ { say $_ }
(but that's broken too)
(broken in a different way) 23:35
shapr blinks
ninereasons what test function do you use to say "should not succeed"? 23:36
putter notices "cannot modify constant item" appears 5 times in his most recent "make test". 23:37
ninereasons those errors are usually fatal.
it means that the test file did not execute completely (labelled "dubious") 23:38
s/means/indicates the probability/
putter notices row of green boxes can mean test died horribly ("dubious"). at least on nothingmuch.woobling.org/pugs_test_status/ (eg, t/builtins/undef.t) Contrast datenzoo.de/pugs/win2k.html which got it right. ??? 23:47
ninereasons interesting 23:54
what is the proper english name of "$_" ? 23:55
putter topic? (very fuzzy recollection)
ninereasons that's right, in some contexts; but how about the proper perl5 english name? 23:56
it's kind of like that name for the artist formerly called "priince". 23:57
it's ... you know ... "$_"
default scalar variable? 23:58
implied scalar?
putter "The default input and pattern-searching space." perlvar
ninereasons considers calling the test "The_default_input_and_pattern-searching_space.t" 23:59
putter ;)
ninereasons :)