6.2.10 released! xrl.us/hxnb | geoffb's column (/. ed): xrl.us/hxhk | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6 | www.geeksunite.net Set by integral on 25 October 2005. |
|||
rafl | theorbtwo: ;-) | 00:33 | |
theorbtwo: It's kind of usual in germany though. night == Nacht; eight == acht; N8 == Nacht. | 00:34 | ||
theorbtwo | Oh. I suppose that makes sense... in German. | 00:36 | |
rafl | Well, not even there, imho. | 00:37 | |
theorbtwo | It's stupid still, but at least it makes sense, which is something. | ||
luqui | Holásteis! | 02:45 | |
scook0 | err...hi | 02:49 | |
nice 'role' post, btw | |||
theorbtwo | A happy all-holows-eve to you too. | ||
luqui | thanks | ||
luqui is going to be whatshisface from Clockwork Orange | 02:50 | ||
theorbtwo has nothing planned, sadly. | |||
02:54
justathe1ry is now known as justatheory
|
|||
buu | All holows, eh? | 03:19 | |
luqui | wow... www.securetactics.com/SpySoftware | 03:20 | |
commercial trojans | |||
nothingmuch | Alex deLarge methinks | 04:00 | |
he's a very froody droog | |||
autrijus | *purr* | ||
nothingmuch remembers why he doesn't play computer games | 04:01 | ||
but it's too late again ;-) | |||
autrijus | why? | ||
nothingmuch | addiction problems | ||
nothingmuch loses track of time | |||
and gets nothing done | |||
but my brain needs the rest | |||
i've been on the brink of burning myself out for weeks now | |||
autrijus | do remember that this will pass, and get enough rest | 04:02 | |
nothingmuch | aye | ||
nothingmuch is constantly letting his people die in Rainbow Six 3 | |||
which is a bad thing | |||
autrijus | I am _very_ happy that you did not let me introduce you to nethack. | ||
nothingmuch | but I cant do any better | ||
ongoing things that can be paused are usually not a big problem | 04:03 | ||
i tend to play several minutes a day of those | |||
but i'm still afraid of it ;-) | |||
luqui | nothingmuch, yes, that's the one | ||
nothingmuch | if we would have holloween i would dress up as the korova milk bar to complement | 04:04 | |
luqui | If my desktop's hard drive were present I would probably be addicted to rag doll kung fu at this point | ||
nothingmuch | i'll need some mannequins, and milk, and a high end water cooling system ;-) | ||
luqui | on the other hand, the reviews weren't that great | ||
nothingmuch | (cpu cooling system) | ||
luqui | :-p | ||
nothingmuch | rag doll kung fu? | ||
luqui | an experimental fighting game that I've been looking forward to | 04:05 | |
luqui is a fan of fighting games... or rather would be if any of them were any good | |||
nothingmuch | hmm... no mac version? | ||
luqui | nein | ||
nothingmuch watches the trailer instead | 04:06 | ||
that would be very cool with a programming edge in it | 04:09 | ||
luqui | what would you program? | ||
nothingmuch | combos | 04:10 | |
luqui | aa | ||
nothingmuch really likes tekken (3) because of all the juggling | |||
it's a very elegant way to kick ass | |||
luqui always found that annoying, being at the kicked ass side | 04:11 | ||
nothingmuch | ah | ||
luqui | I think Soul Calibur is about as good a fighting game as they've made yet | ||
nothingmuch | i am always on the ass kicked side, except in tekken and unreal tournament | ||
nothingmuch hasn't played that yet | |||
luqui | it's pretty good. But it's still attached to the realtime/buttonmash/energybar paradigm. | 04:12 | |
Glorified tekken, as it were. It's just very well balanced. | |||
nothingmuch | buttonmashing is not that fun | ||
what I like in tekken is that you sometimes need to wait a second to get something in | |||
if you are slightly less trigger happy than 100% you will win | 04:13 | ||
scook0 | ever tried virtua fighter? | ||
buu | You know what's better? Quake. | ||
luqui | heh | ||
nothingmuch | scook0: my parents didn't let me play violent games at that age ;-) | ||
nothingmuch doesn't like quake | |||
buu | FREAK. | ||
nothingmuch | it's not as fun aasUT | ||
buu | meh | ||
Same thing. | |||
nothingmuch | nuh uh | ||
UT has more style | |||
buu | Does UT have strafe jumping and such? | ||
luqui | I remember when there was just Quake. No Quake 2, no quake 3 arena. When you said "I'm going to go online and frag somebody", you just went online and fragged somebody. | ||
buu | heh | ||
nothingmuch | you mean strafing in the air? or jumping sideways? | ||
buu | I remember playing q2 over a dialup | 04:14 | |
nothingmuch: Nope. | |||
luqui | (I actually never played Quake... any version. I'm not a big fan of FPSs) | ||
By which I mean I despise them | |||
buu | Sucks to be you! | ||
nothingmuch | that wasn't a yes or no question, that was multiple choice ;-) | ||
buu | (0 || 0) == 0! | ||
nothingmuch | uh, your point being? | ||
buu | That 'no' means no to both. | 04:15 | |
luqui | But 0! == 1 | ||
:-) | |||
buu | luqui: 0! is a syntax error! | ||
nothingmuch | ah | ||
so wtf is strafe jumping if it's not one of those? | |||
scook0 | also !0 == 0! | ||
buu | nothingmuch: Strafe jumping is when you accelerate via jumping | ||
luqui | woah | ||
that's scary | |||
nothingmuch | ah | ||
buu | ?eval 0! | ||
evalbot_7763 | Error: unexpected "!" expecting "x", "d", octal digit, "o", "b", digit, fraction, exponent, term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input | ||
scook0 | those crazy physics exploits? | ||
nothingmuch | that's bad game design | ||
buu | nothingmuch: Bad.. game.. de.. what? What the hell? How can you even make that claim? | 04:16 | |
Obviously the rocket launchers in UT are bad game design, cause they shoot rockets. | |||
I mean, hey, if we don't need logic.. | |||
luqui | ?eval sub postfix:<!> ($x) { if $x == 0 { 1 } else { $x * ($x-1)! } } 5! | ||
evalbot_7763 | Error: unexpected "i" expecting ";", statements or "}" reserved word | ||
luqui | qua? | ||
nothingmuch | ?eval multi postfix:<!> (0) { 1 }; multi postfix:<!> ($n) { $n * ($n - 1)! }; 5! | ||
evalbot_7763 | Error: unexpected "0" expecting formal parameter, ":" or ")" | ||
luqui | didn't that used to work? | ||
nothingmuch | darn | ||
buu: it's bad game design because it's stupid behavior | 04:17 | ||
buu | nothingmuch: You mean stupider than taking a rocket in the face and surviving? | ||
nothingmuch | someone didn't notice the fault in the physics engine and jump parameters | ||
scook0 | I'm not sure it was deliberate | ||
buu | nothingmuch: Dude, they put it in there deliberately. | ||
theorbtwo | nothingmuch: Because it's not like the real world? | ||
buu | Southen: It was deliberate after the first patch =] | ||
nothingmuch | no, because it's imbalanced | ||
buu | oh | ||
nothingmuch | it would be nicer if: | ||
buu | Obviously only one player can strafe jump. | ||
nothingmuch | you could jump around and be slow | ||
or be a sitting duck and go fast | |||
buu | Oh wait, every player can strafe jump. Thus making it balanced. | 04:18 | |
luqui thinks that you only have bad game design when you make a game that isn't fun, because you've missed the whole point of making a game. For example, Deus Ex 2. | |||
nothingmuch | what does deus ex do wrong? | ||
luqui | Deus Ex was great. Deus Ex 2 was too caught up in being a movie to be a good game. | ||
buu | Deus Ex was so awesome. I've always wanted to play DX2, but everyone hated it =[ | 04:19 | |
scook0 interleaves IRC with rounds of counterstrike... | 04:22 | ||
luqui | counterstrike was a FPS that I actually liked pretty well | 04:23 | |
scook0 | I never got into it in the HL1 days | 04:25 | |
nothingmuch | oh god: www.boingboing.net/2005/10/28/no_tr..._stra.html | ||
luqui | scook0, likewise. I started at CS:S | ||
theorbtwo | Well, at least they came up with a reasonable result, even if their reasoning was completely bonkers. | 04:26 | |
luqui | nothingmuch, is it just me, or did they completely miss the point? | ||
nothingmuch | who did? | 04:27 | |
luqui | the article | ||
about strawberries | |||
the court | |||
nothingmuch | yep | 04:28 | |
theorbtwo | The question was "can the scent of fresh strawberies be trademarked". | ||
Their answer was "no". | |||
Good answer. | |||
nothingmuch | i was actually "oh god"ing more at the court than the company | ||
theorbtwo: the sad thing is that the answer was actually 'no, because strawberies have *five different* scents' | 04:29 | ||
theorbtwo | Yes. | ||
nothingmuch | on the other hand, grass has one scent, so that's OK | ||
theorbtwo | Not such a good reason. | ||
Right. | |||
I hope this is largely poor reporting. | |||
nothingmuch somehow doubts the BBC will make it sound this bad | 04:30 | ||
i trust the BBC more than I trust the judicinal and political systems that govern stuff that has to do with patents and trademarks and all that crap | |||
stevan | luqui: ping | 05:14 | |
luqui: I sent you a mail re: theory.pod, I am trying to understand where it fits in with the metamodel/object-space/runtime stuff I have been working on | 05:15 | ||
I think it does all fit together to a degree, but the code in theory.pod is just so haskellish, so I am unclear of the details | 05:16 | ||
anyway check your mail,.. I have to sleep now & | |||
xinming | seen autrijus | 05:50 | |
jabbot | xinming: autrijus was seen 1 hours 47 minutes 50 seconds ago | ||
xinming | by the way, Is continuation a bit like Rule in perl 6? | 06:17 | |
luqui | welll... uh | 06:22 | |
no | |||
rule execution may be implemented using continuations, but the similarities end there | |||
unless there is a similarity I am not seeing | |||
xinming | luqui: thanks, need more reading on haskell tutorial. | 06:23 | |
autrijus proceeds to go to the airport (to brussels) | 07:09 | ||
see you in a few hours... safely in liz's place and ready to hack | 07:10 | ||
<- almost finished PickAxe2 | |||
which fills my mind with weird constructs like | |||
my $x = if 3 then { 4 } else { 5 }; | |||
(instead of) | |||
xinming | autrijus: did you meet Larry? :-P | ||
autrijus | my $x = do if 3 then { 4 } else { 5 }; | ||
xinming: sure did | |||
worked on the tuple syntax a bit | 07:11 | ||
xinming | my $x = 3 ?? 4 !! 5 ; | ||
why not use this? | |||
autrijus | sure | ||
but still | |||
my $x = given $y { when 3 { 4 } default { 5 } }; | |||
(in ruby all statements are expressions) | |||
they don't have a Stmt form, it's all Exp | |||
xinming | autrijus: hmm, did Larry consider construct the object using class name in some situation? | 07:12 | |
oh,ok | |||
autrijus | xinming: I don't know... you mean like | ||
my $dbh = DBI(dsn => $dsn, user => 'foo'); | |||
? | |||
xinming | yes. | 07:13 | |
autrijus | I think it makes sense. the "new" method though is then implicit in this case | ||
which may or may not be a good thing | |||
<- coding monkey, not really designer | |||
xinming | hmm, sometimes, we don't need an instance to be held. | 07:14 | |
autrijus | :) | ||
autrijus goes packing some more | |||
xinming | class A { has $.a; method show { $.a.say } }; A( a = 5 ).show; | ||
if we use A( a => 5 ).new.show, | 07:15 | ||
autrijus | oh, singleton classes | ||
? | |||
xinming | the .new is a bit annonying | ||
if there are many classes like this. :-P | 07:16 | ||
autrijus | I tend to agree :) | 07:17 | |
xinming | hmm, most times, the small program will only hold only an instance of a class | ||
page( document => "path/to/doc", save_to = "path/to/cache" ).process; cache( file = "path/to/cache" ).show; | 07:19 | ||
that's what I think useful :-) | 07:20 | ||
autrijus | nodnod... otoh you can do | ||
xinming | what does otoh mean? :-S | 07:21 | |
scook0 | xinming: I can see Larry's point about wanting Classname($foo) to be a cast rather than a constructor though | ||
autrijus | on the other hand | ||
class A { sub A is export { call ./new } }; | |||
or something like that | |||
xinming | hmm, Yes, I know, we can make method to be an constructor... | 07:22 | |
autrijus: But, If there are method... This is not handful.. | |||
scook0 | but if we're going to have Haskell-style data types, we'll need a shorter construction form anyway | 07:23 | |
xinming | if there are lots of methods. | ||
scook0 | A:( a => 5 ).show # woo, colon! | ||
autrijus | _everybody_ wants colons! | 07:24 | |
scook0 | because they're so versatile | ||
xinming | hmm, why not make `my A: $o .= new( ... )` ? | ||
autrijus | off to airport... bbl :) *wave* & | ||
scook0 | and because everything else is already taken | ||
xinming: what are you suggesting? | 07:25 | ||
xinming | and use A( ... ) as a constructor? | ||
for now, we use `my A $o .= new( ... )` to get an instance. | |||
hmm, and I saw Larry replied about my question, | 07:26 | ||
So, I just suggest using `my A: $o .= new` instead of `my A $o .= new` | |||
scook0 | xinming: oh, I didn't realise you hadn't read it | ||
I don't think that was his objection though | 07:27 | ||
xinming | certainly, I won't be able to think as far as you can do, So, Just show my Humble opinion. :-( | 07:28 | |
www.nntp.perl.org/group/perl.perl6....uage/23874 | |||
?eval class A { has $.a; }; new A( a => 1 ); | 07:39 | ||
evalbot_7763 | Error: cannot cast from VObject (MkObject {objType = (mkType "Class"), objAttrs = <ref>, objOpaque = Nothing, objId = 51}) to Pugs.AST.Internals.VCode (VCode) | ||
xinming | the perl 5 style doesn't works. :'( | 07:40 | |
anyone here can tell me if `class.new a => 1` would work? IMHO This is a bit like a function call without parenthesis. | 07:59 | ||
Detonite | Morning | 08:04 | |
xinming | afternoon here. :-P | 08:05 | |
Detonite | Well the point comes across still I hope | 08:06 | |
rafl_ | What tests do I need to run to chech if parrot embedding works? | 09:03 | |
scook0 | xinming: `class.new:a(1)` should work | 09:11 | |
`class.new a=>1` won't work because method calls need either parens or adverbs | 09:12 | ||
xinming | scook0: thanks | 09:16 | |
scook0 | I think someone (Juerd?) was trying to get rid of the method-call-parens restriction, but I don't know if that went anywhere | 09:17 | |
xinming | hmm, by the way, how about `new class: a(1)` ? | 09:18 | |
indirect object syntax can be used in method calls, how about the constructor? | |||
though, It's a special method. | 09:19 | ||
scook0 | I think `new MyClass: a => 1` or `new MyClass: :a(1)` would be the syntax | 09:23 | |
`new MyClass: a(1)` would call &a with arg 1 | 09:24 | ||
xinming thinks perl 6 might be the most complicated language in the world... | 09:36 | ||
Juerd | scook0: I want method calls to be possibly parenless | ||
Just like sub calls | 09:37 | ||
It just takes everything until the end of the expression, | |||
scook0 | what was the original motivation for them being different? | ||
xinming | so do I, as method is kind of sub... | ||
Juerd | That the signature is unknown at compile time, and Perl cannot know how many arguments to take | ||
lc $foo, $bar is actually lc($foo), $bar | 09:38 | ||
While split $foo, $bar is split($foo, $bar) | |||
scook0 | do one-arg subs automatically become prefix-unary ops? | 09:41 | |
Juerd | It works like that in Perl 5 | ||
And isn't specified to change, so yes. | |||
scook0 | I just wonder how that interacts with multis | 09:43 | |
Juerd | The same | 09:50 | |
scook0 | (there are a lot of things I wonder about multis) | 09:51 | |
like being able to pass positional args using named-arg syntax | 09:52 | ||
for singular subs, it's easy enough | 09:53 | ||
for multis, it's *possible*, but I doubt it can be done efficiently | |||
r0nny | yo | 10:09 | |
rafl_: alive ? | |||
rafl_ | r0nny: Sure. | 10:26 | |
r0nny | rafl_: any idea hol long it will take to make your sixpan tools run under gentoo ? | 10:29 | |
hol = how | |||
rafl_ | They already do, imho. | 10:30 | |
Install dpkg and dpkg-deb and go for it. | |||
r0nny | hmm | 10:32 | |
rafl_: is there a svn repo up allready ? | |||
rafl_ | r0nny: kane uses p4. I'll set up an svk mirror soon. | 10:34 | |
r0nny | p4 ? | 10:35 | |
rafl_ | perforce. | ||
r0nny | sad - its comnerecial | ||
well - going to read the license | 10:36 | ||
rafl_ | Well, you don't need to pay for a usable version. | ||
I also like it, of course. | |||
r0nny | atm im a monotone fan | 10:37 | |
rafl_ | Well, pugs uses svn/svk. I'll check it in its repository. | 10:38 | |
r0nny | i allready installed p4 | 10:40 | |
repo url ? | 10:41 | ||
rafl_ | I don't have my laptop handy. I guess p4.elixus.org or something like that. | ||
r0nny | argh - wont work :/ | 10:43 | |
xerox | Howdy. | 10:44 | |
rafl_ | r0nny: ask kane or look at the wiki. | ||
r0nny: BrainStorming. There's a p4 url somewhere. | |||
r0nny | ok | ||
rafl_: cant do a checkout :/ | 10:48 | ||
rafl_ | Ask kane. | ||
r0nny | where is he ? | ||
rafl_ | [email@hidden.address] or on irc.perl.org sometimes. | 10:49 | |
drbean | h /server | 11:05 | |
r0nny | hmm | 11:06 | |
hes online, but not answering :/ | |||
guess hes busy | 11:07 | ||
Juerd | ARGH | 11:41 | |
The term "auto reference" really clouds vision and understanding | |||
It makes things seem MUCH more magical than they are. | |||
An array doesn't "auto reference" "when needed". | 11:42 | ||
It returns a reference to itself in scalar context, that's all. | |||
And yes, Array context is a form of scalar context | |||
The only thing that's a bit magical is automatic *de*referencing | 11:43 | ||
THAT has the "when used as" thing. | 11:44 | ||
"when used as" an array, an arrayref dereferences automatically. | |||
But it's not so that an array "when not used as" an array, automatically references. | |||
Or, alternatively, call +@foo auto-elemsing | 11:45 | ||
And ~@foo auto-stringification | |||
Which it is NOT. It's not auto, it's explicit because of context. | |||
xerox | Do you know in which debian package are uu{encode,decode} ? | ||
Juerd | apt-cache search uuencode | 11:46 | |
Pick the one beginning with s. | |||
rafl_ | apt-file search bin/uuencode | ||
xinming | xern: try apt-cache search uuencode | 11:51 | |
Juerd | xinming: Now there's a novel idea. | ||
xinming | sharutils | ||
Juerd | xinming: Glad you thought of it. | ||
Otherwise he'd never have found it! | |||
xinming | Juerd: :-) what I use apt-cache most time, as it might find some good related softwares. :-) | 11:52 | |
Juerd | xinming: I think I have to agree. | ||
(is blindness bliss too?) | 11:53 | ||
xinming | apt-cache search uuencode|grep uuencode | ||
aish - ish/base64/uuencoded_file converter | |||
sharutils - shar, unshar, uuencode, uudecode | |||
Juerd | You're so smart. | 11:54 | |
xinming | ... | 11:55 | |
Juerd | I just wish I had thought of that | 11:56 | |
theorbtwo | (apt-cache)++ | ||
xinming | apt-cache is a better tool most time in my opinion, apt-file is better for searching using absolute path for a file. | 11:57 | |
Juerd | I use both | 11:58 | |
But apt-cache much more often | |||
rafl_ as well. | |||
But for the given task (finding a binary) apt-file seems to be a better tool. | 11:59 | ||
xinming nods. | |||
Juerd | rafl_: Well, yes. But uudecode is often used within larger tasks, for which apt-cache might reveal integrated solutions | ||
xinming really likes perl 6. | 12:02 | ||
?eval "asdfg/" ~~ rx:perl5{^(\w+)?/(\w+)?}; $1 ?? "true".say !! "false".say ; | 12:04 | ||
evalbot_7763 | true bool::true | ||
xinming | Is this a bug? | ||
$1 get nothing, But it is true. | |||
s/get/gets/ | |||
rafl_ | ?eval "asdfg/" ~~ rx:perl5{^(\w+)?/(\w+)?}; $1.perl | ||
evalbot_7763 | "\\MkMatch \{matchOk = True, matchFrom = 0, matchTo = 0, matchStr = \"\", matchSubPos = [], matchSubNamed = \{}}" | ||
xinming | I know there is a property can be set using `0 but true` | 12:05 | |
But, Why here is true? | |||
rafl_ | ?eval "asdfg/" ~~ rx:perl5{^(\w+)?/(\w+)?}; "$1" | 12:06 | |
evalbot_7763 | "" | ||
rafl_ | I think it's a bug. | ||
xinming | hmm, I don't know which to choose. :-) | ||
we can say that it is a bug, because null string should be false. | 12:07 | ||
rafl_ | ?eval "" | ||
evalbot_7763 | "" | ||
rafl_ | ?eval ?"" | ||
evalbot_7763 | bool::false | ||
xinming | But, if we need the match status of the match, this might be right behaivour | ||
rafl_ | Well, write a test in t/pugsbugs/ | ||
xinming | Ok, >_< | 12:08 | |
theorbtwo | Write a test when you don't know what the correct behavior is? | ||
rafl_ | Hm, good point. | 12:10 | |
xinming | I think, This might be better to ask on the mailing-list. | 12:12 | |
Juerd | ?eval "foobar" =~ rx:perl5/(foo)(bar)/; "--$0--$1--" | ||
evalbot_7763 | Error: Can't modify constant item: VStr "foobar" | ||
Juerd | ?eval "foobar" ~~ rx:perl5/(foo)(bar)/; "--$0--$1--" | 12:13 | |
evalbot_7763 | "--foo--bar--" | ||
Juerd | Simple case works. | ||
Re (\w+)? not matching anything: its variable should be false | 12:14 | ||
Not because it matched a null string, because it cannot match a null string. | |||
But because it didn't match, because of the + condition. | 12:15 | ||
xinming | so many because... >_< | 12:26 | |
the test is written, | |||
after the bug is fixed, Where should this test be? | |||
Ok, I think I know, rules | 12:27 | ||
theorbtwo | rules/p5, or something? | ||
svnbot6 | r7764 | yiyihu++ | add a bug test for numbered match variable. | ||
xinming | maybe | 12:28 | |
I wonder, what will `` be used for in perl 6? | |||
still the same as perl 5? | 12:29 | ||
scook0 | xinming: I'm not sure, but I think `` will be reserved for the user | 12:32 | |
(for P5 ``, use q:x//) | |||
xinming | Larry might think he used too much... :-P leave a ascii for user to play with | 12:37 | |
theorbtwo | qx isn't useful enough to take a rare ASCII character for. | 12:38 | |
scook0 | bah, all Perl 6 users should just go out and buy APL keyboards :-P | 12:39 |