»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! | Rakudo Star Released!
Set by diakopter on 6 September 2010.
00:05 Trashlord joined
colomon Util: it probably depends on what you're trying to do, no? 00:17
If you're sure you want to create an object of type Foo, (which is the type of the method in question), won't self.new() do it? 00:18
er, wait, no, now I'm confused. 00:20
Util colomon: I want to honor the type of anything that has subclassed Foo. 00:21
colomon because if class Bar is Foo, and you call that method, it will create an object of type Bar.
then self.new will work, I think, assuming you know what arguments to call it with.
rakudo: class A { has $.a; method foo() { self.new(:$.a); }; }; class B is A { }; B.new(:a(10)).foo.perl.say 00:23
p6eval rakudo 5f5bae: OUTPUT«B.new(a => 10)␤»
colomon but like I said, that assumes you know how to construct anything that subclasses Foo. 00:24
Util I agree that self.new (or the short-form .new) will do what I want, in the *current* implementation. But .new technically means "call .new on the *object* of type Foo (or subclass), while 00:25
.^new means "call new() on the *class* Foo (or subclass)", which seems more correct. 00:26
I just wonder if I am missing some subtle reason why I should use .^new when I am more inclined to use .new . 00:27
colomon Ah. Well, I admit it's entirely possible I'm missing it too. :)
Util That makes *both* our brains on the same conclusion. Right or wrong, it is helpful. Thanks! 00:30
00:35 xinming left
colomon A lot of the subtleties of the p6 object model still go right over my head. Give me another few years programming in it... ;) 00:37
00:37 masak joined
masak colomon, Util: let me tell you the way in which you're confused. 00:38
phenny masak: 29 Oct 23:45Z <sorear> tell masak to check out lhs2tex
colomon masak++
masak there's no .^new. forget .^new. if you're thinking of the metaclass in that way, you don't need it yet. forget about it for now.
colomon masak: is it that you never actually use inheritance in p6?
masak sure you can. and it's fine. 00:39
there's nothing wrong as such with inheritance.
00:39 jhuni left
colomon masak: there was a wink there I forgot to type. 00:39
masak (there's just this suspicion that some of us have that roles will make inheritance largely unnecessary)
anyway.
Util masak: thanks! 00:40
masak the only difference between C<Foo.new> and C<self.new> is that the former one is called on the object from which the new object is actually cloned, whereas the latter one...
...the latter one happens to be an instantiated object (probably), so Perl 6 will have to go look for the type object Foo and clone that. 00:41
colomon masak: is there any syntax for actually cloning the object?
masak does that make sense?
colomon: .clone
.new and .clone are actually very similar.
they take the same kinds of arguments.
the only difference is that .new clones the type object; .clone always clones C<self>.
00:42 dnl- joined
masak oh, and .new sets the "this is an 'instance' object (rather than a type object)" flag. 00:42
colomon but what does "clone" mean? I know that concept has hit on big trouble in C#, for instance...
masak don't know whether it's allowed to clone the type object and not set that flag.
00:43 plobsing joined
masak colomon: .clone in Perl 6 means (1) get a new repr object (2) fill it with the old object's attrs (3) supply the attrs optionally provided in the signature. 00:43
make sense?
Util also thinks role will vastly reduce usage of inheritance, but old habits will die hard for many OO-perl programmers, and I want to support them too.
s/role/roles/ 00:44
masak I basically came in here because I saw your confusion, and thought I might be able to help.
I'm really going to bed.
besides, big kudos to pmichaud++. I've listened to half the interview now.
people on the Interwebs seem to like it too: twitter.com/perttuauramo/status/29170432759 00:45
pmichaud: and you used the concept "The Golden Age" about the Pugs era! wow! :)
Util masak: yes, that makes sense, especially when I think about how an obect could have a different `new` method than its class (you can't without proto-style OO).
00:45 dnl left
masak classes don't have methods in Perl 6. so whatever you mean to say when you say that, you're abusing terminology slightly. 00:46
colomon masak: clone as described makes lots of sense. but so it *doesn't* call clone on the attributes (and so on, recursively)?
masak or well, classes *have* methods, but there are no class methods.
Util Thanks for the correction; I was about to scream. 00:47
masak colomon: nope. shallow clone. because deep cloning is inherently problematic to supply out-of-the-box.
colomon groovy.
masak Util: jnthn++ has some ideas on how to specify methods to go on the type object only, and methods to go on instantiated objects only. 00:48
it's in a conjectural part of S12, but it seems to be becoming reality.
colomon masak: just to put my current wonderment in someone else's brain --
masak when it does, we'll see people who use that write :D a lot. and :U
colomon how is .uniq supposed to react when passed (1/2, 1/2)? 00:49
masak .oO( cloning wonderment )
colomon: I see what you mean. relevant question. 00:50
Rats are value classes, so I expect "equal" to mean "value equivalent".
but it all comes down to how .uniq is spec'd to handle equivalence.
colomon but rakudo has no way of telling a value class from a non-value class.
(that I know of)
masak no, but value classes could give clues about equivalence being the relevant way to compare equality. 00:51
in other words, it could be solved with a level of indirection.
colomon I don't think the .uniq spec defines a difference between value classes and other classes, either 00:52
it's just something "obvious" that we understand.
masak this comes up when we start keying hashes on other things than Str, as well.
it's already a bit of a problem with Set.
I look forward to see how Perl 6 will solve this. it's a non-trivial problem that most languages face. 00:53
colomon it's exactly the same problem implementation-wise -- .uniq uses a hash internally right now.
I got to thinking about it today, and it just hurt my head.
masak it does hurt, yes.
colomon for instance, I don't think there's any guarantee that calling .perl on an object twice will return the same Str both times. 00:54
masak no, but I think you'd be hard pressed in Rakudo to show that those Str objects were actually different.
maybe === and WHICH would show it.
but if so, that's not so bad. 00:55
colomon ooo, no no no 00:56
I mean, for instance, if I say %h.perl, I will get all the pairs in the hash, but the ordering is arbitrary
00:57 pythonian4000afk is now known as pythonian4000, trembyl joined
colomon and in fact 00:57
rakudo: my %a = a => 4, b => 5; my %b = b => 5, a => 4; say :%a.perl; say :%b.perl; 00:58
p6eval rakudo 5f5bae: OUTPUT«"a" => {"a" => 4, "b" => 5}␤"b" => {"b" => 5, "a" => 4}␤»
masak don't see what that proves.
00:59 Trashlord left
masak anyway, $sack.hit; 00:59
00:59 masak left
colomon you can have two "equivalent" hashes with different .perl Strs. 00:59
01:03 whiteknight joined 01:11 trembyl left 01:20 tylercurtis left 01:22 patspam left, tylercurtis joined 01:23 xinming joined 01:33 jhuni joined 02:03 whiteknight left 02:04 molaf_ joined 02:08 molaf left 02:10 dnl- left 02:11 tylercurtis left
sorear I missed my chance to explain WHICH 02:16
02:19 ggoebel left 02:23 ggoebel joined 02:24 ggoebel left 02:26 tylercurtis joined, tylercurtis left 02:43 jaldhar left 02:44 jaldhar joined 02:49 tylercurtis joined 02:50 Holy_Cow joined 02:57 tylercurtis left 03:09 tylercurtis joined 03:21 Chillance left
cotto jnthn, ping 03:29
03:29 tylercurtis left
araujo tries to get a left-to-right precedence over a right-to-left one for infix operators in koan 03:38
colomon just got key changes working in the ABC code! 03:40
sorear araujo: koan uses the APL precedence rules?
araujo sorear, right now .. it does 03:41
:P
but I wonder if that is just too .... weird?
cotto jnthn wrote that one of his goals is to get lexical multi-dispatch working. What does the "lexical" part of that mean? 03:55
sorear pertaining to the program's structure as a text
as opposed to the dynamic structure of superclasses and call frames 03:56
cotto for example? 03:57
sorear multi sub foo(Int); multi sub foo(Num); # &foo is immediately known to have exactly two candidates 04:00
also is Bar; multi method foo(Int); multi method foo(Num); # The 'foo' method in the current class has at least two candidates, but could have more, depending on the definition of Bar, which could be anywhere 04:01
if you throw roles into the equation then runtime variability is even greater
cotto Thanks. 04:08
04:10 Holy_Cow left
araujo ~> 2 + 5 * 3 04:12
21
well, i think that makes it ... though the code is bit ugly ...
04:13 risou joined
sorear beautiful way to parse expressions: [\d+ ** '*'] ** '+' 04:14
sometimes viewed as : expr := <term> [ '+' <term> ]*; term := <factor> [ '*' <factor> ]*; factor := \d+ 04:15
I got that one from 'Let's Build a Compiler'. Required reading for anyone who fancies themselves in the field, despite the fact that it was written in 1986 using Turbo Pascal
04:33 justatheory left, kanishka joined
araujo well, with all the latest changes of these days, including if/let , now you can do: 04:35
~> a = b = 6; if a + b == a * b { yes } { no }
no
(also added the '=' operator today)
sorear looks like a cross between Perl 4 and PostScript. 04:37
araujo postscript? :P 04:44
TimToady Prescript, surely... 04:47
04:51 envi left
sorear TimToady: You've talked about void context as being a bit in the callframe in the past, while array context is something that is imposed by calling methods on the return value. What is the underlying difference? 04:56
araujo pastie.org/1261395 05:10
05:10 \xF0 left 05:11 \xF0 joined 05:19 Bzek_ joined 05:22 Bzek left
TimToady sorear: we can try it without a void bit and see what happens 05:23
sorear I think that the void bit is necessary
I've tried removing it and things got ugly 05:24
but I don't really understand *why&
05:25 rgrau_ left, kanishka left
cognominal how come one can introspect class with .methods and not packages and modules? 05:30
sorear Packages and modules don't support methods. 05:31
cognominal Agreed. bad wording from me. so how to introspect their subs? 05:32
sorear Package.WHO.keys 05:33
or Package::.keys
NYI in Rakudo, I think
but you can use the low-level Parrot API for now
cognominal maybe I can get away with a class that contains only submethods. ugly. 05:34
TimToady in general, subs aren't supposed to be put into packages any more 05:36
P6 is not like P5 that way
cognominal so where do they live? 05:37
TimToady lexical scopes, generally
that is "sub" defaults to "my sub" 05:38
and when you call foo() it doesn't look in packages, it searches out the lexical scopes 05:39
cognominal but if I want to "package" many subs in some special place, how do I do that?
TimToady you make a module that can export them 05:40
it's *possible* to put subs into packages with "our", but then you have to call them fully qualified
cognominal ok. thx 05:41
sorear So it turns out that while trying to make Niecza VM-independant, I accidentally implemented something extremely close to a Lorito prototype. 06:22
I'm going to try to retool it into one over the next week
diakopter sorear: what kinds of backends does your doloreanito target 06:48
sorear diakopter: PIR and C# have been considered explicitly 06:52
and a custom bytecode intrepreter
I hope to also target Java, CIL, and LLVM, but haven't done a detailed analysis 06:53
06:55 _kaare joined
sorear also, how do I parse doloreanito 07:02
07:14 risou left 07:15 envi joined 07:31 pythonian4000 is now known as pythonian4000afk 07:37 espadrine_ left 07:40 risou joined 08:07 mberends left 08:14 tadzik joined
tadzik o/ 08:14
sorear hello tadzik
08:16 pythonian4000afk is now known as pythonian4000 08:41 icwiener joined 08:52 Ross joined, Ross left, Ross joined, Ross left, Ross joined 08:59 tadzik left 09:15 proller_ left 09:26 wamba joined 09:30 risou_ joined 09:31 risou left 09:33 risou_ left 09:34 risou joined 09:44 kanishka joined 09:59 araujo left 10:07 risou left 10:12 skangas left 10:37 colbseton` joined, kanishka left 10:42 pythonian4000 is now known as pythonian4000afk 11:01 kanishka joined 11:20 ggoebel joined 11:22 jhuni left 11:36 MayDaniel joined
jnthn o/ 11:40
sbp waves 11:41
vx64z What is the significance of this 'o/' thing I keep seeing? 11:44
11:44 araujo joined
florz 12:40 < jnthn> o/ 11:45
12:41 * sbp waves
same thing, different person
sbp the o represents a head
and the / an arm. presumably the left arm
unless they're waving at someone inside your computer
jnthn florz: It's just waving hello. \o also works. :-) 11:46
vx64z Ah, I see it now!
jnthn :-)
colomon and if you're excited: \o/
florz jnthn: erm ... yeah? =:-) 11:47
vx64z That's cool. I've never seen that used outside of this channel.
jnthn florz: Oh, you were the person answering the question, not asking...
florz IC =:-) 11:48
jnthn florz: Sorry. My morning coffee didn't quite cool to drinking temperature yet. :-)
florz *g
*
jnthn cotto: (lexical multi-dispatch) sorear++ pretty much had it. Just multis that are stored in the lexical scope. The extra detail being that you may add candidates in nested scopes, and then they're only available within those scopes. 11:49
So you keep a candidate list per scope, which is kind of an instantiation (fsvo) of the proto.
11:49 kanishka left, M_o_C joined 11:55 cognominal left 11:58 am0c joined 11:59 dnl joined, orafu left
dnl moinsen 12:00
12:01 Ardette joined
Ardette 3hello 12:02
araujo properly implements infix notation (it was a hack before)
12:03 Ardette left 12:06 mavrc joined 12:30 risou joined 12:39 risou left 12:42 rgrau_ joined 12:49 whiteknight joined 12:51 rgrau_ left 12:52 risou joined 12:56 Ross left 12:57 Ross joined 12:58 kanishka joined 13:18 icwiener left 13:19 Patterner left 13:33 Psyche^ joined, Psyche^ is now known as Patterner 13:37 rgrau_ joined 13:38 Util left, Util joined 13:39 patspam joined 13:55 shelling_lab left, shelling_lab joined 13:56 shelling_lab left 14:00 shelling_lab joined, whiteknight left 14:03 SAA1D0O joined 14:05 javs joined 14:06 kanishka left 14:13 Chillance joined, risou left 14:23 meppl joined 14:31 kanishka joined 14:40 dual left
dalek odel: 0d51c06 | jnthn++ | README.txt:
Update the README a bit, to indicate that the Parrot implementation of 6model is no longer being done in here.
14:43
odel: 2fd812d | jnthn++ | / (3 files):
[dotnet] Make sure at_pos and at_key never return null, but rather something undefined. Allows duplicate method check to be uncommented.
odel: 6d965f2 | jnthn++ | dotnet/compiler/Actions.pm:
[dotnet] Quick hack in JnthnNQP to map is Foo in a package declaration to an add_parent call. (We don't quite have packages straight yet, though.)
odel: 3c4309f | jnthn++ | common/NQP/NQPSetting.pm:
[common] Much more filling out of NQPClassHOW, plus add a very basic NQPAttribute. This gets classes with methods, attributes and doing single inheritance working.
14:58 JimmyZ joined 15:24 sftp left 15:32 sftp joined, risou joined 15:34 sftp left 15:35 sftp joined 15:43 dual joined 15:48 toebu left 15:54 javs left 15:57 s1n joined 16:01 Trashlord joined 16:26 kensanata joined 16:29 MayDaniel left 16:32 MayDaniel joined, tadzik joined
tadzik o/ 16:33
JimmyZ \o 16:35
kensanata <ô> 16:39
kensanata is building Rakudo Star 2010.10 on an old Apple iBook running Ubuntu 10.04...
16:42 toebu joined 16:43 \xF0 left, \xF0 joined 16:47 icwiener joined 16:58 \xF0 left 17:01 jhuni joined 17:06 JimmyZ left 17:11 colbseton` left, risou left 17:12 colbseton` joined 17:13 risou joined
tadzik twit.tv/floss140 – does anyone have a video to share? 17:15
17:16 Axius joined 17:20 colbseton` left, colbseton` joined 17:25 dnl left 17:28 \xF0 joined 17:32 patspam left 17:36 cognominal joined 17:40 MayDaniel left 17:42 dnl joined 17:43 nadim left 17:45 kensanata left 17:47 kanishka left 17:49 ggoebel left 17:50 nadim joined 17:56 justatheory joined 17:57 M_o_C left 18:00 plobsing left 18:03 PacoLinux left 18:05 PacoLinux joined 18:12 kanishka joined 18:14 Axius_ joined 18:16 Axius left, kensanata joined 18:17 tadzik left 18:25 wamba left
dalek odel: b76e080 | jnthn++ | common/NQP/NQPSetting.pm:
[common] Allow NQPClassHOW to take and store the name of the class, and add .name method for introspecting it.
18:25
odel: 2c0e138 | jnthn++ | dotnet/compiler/Actions.pm:
[dotnet] Update JnthnNQP to pass package name along when creating the meta-object.
odel: ba72d85 | jnthn++ | dotnet/compiler/Actions.pm:
[dotnet] Build proto methods so that they have a dispatch list, so we'll be able to add candidates and also to distinguish them from only methods.
18:26 \xF0 left 18:27 \xF0 joined 18:30 PacoLinux left, MayDaniel joined 18:34 plobsing joined 18:36 tadzik joined 18:52 tadzik left
dalek odel: 16e40fb | jnthn++ | dotnet/runtime/Runtime/Ops.cs:
[dotnet] Add ops for pushing an extra dispatchee onto a dispatch list and checking if something is a dispatcher or not.
19:03
odel: 6e2fb41 | jnthn++ | common/NQP/NQPSetting.pm:
[dotnet] First cut of multi-methods in NQPClassHOW. At the moment, only works in the case where the proto and multis are in the same class, rather than having an inherited proto.
19:05 nomad joined 19:06 nomad left, nomad joined 19:07 kensanata left
jnthn D'oh, that last one shoulda been tagged [common] 19:10
moritz_ re 19:11
jnthn o/ moritz_
19:13 nomad left
diakopter kensanata: did the build finish? 19:13
19:28 PacoLinux joined
dalek odel: dc36346 | jnthn++ | common/NQP/NQPSetting.pm:
[common] Implement searching for a proto in parent classes too, and instantiating it anew in the child class that is doing candidate incorporation. Won't yet handle re-composition and new candidates added beyond composition, but that's evil anyway, so no hurry there. :-)
19:29
moritz_ jnthn: I just saw the epic proto re-working commit from TimToady++ - are you happier now? 19:32
jnthn TimToady: I've spent the weekend implementing it. :-)
cah 19:33
19:33 kensanata joined
jnthn moritz_: ^^ 19:33
:-)
moritz_: And yes, I'm happy. I'm *very* happy with the resulting implementation too.
moritz_ jnthn: \o/
jnthn moritz_: Though that this works is a little scary: gist.github.com/655709 19:35
In a good way. I think. :-)
19:35 molaf_ left
moritz_ jnthn: in current rakudo? 19:36
jnthn moritz_: No
moritz_: That's running on the .Net impl of NQP
moritz_: I've been prototyping it all there. 19:37
moritz_ jnthn: then I'm duely impressed how much works in the .Net impl :-)
19:37 lichtkind joined
lichtkind www.perlfoundation.org/perl6/index....#main_goal 19:37
any comments?
19:37 meppl left 19:38 MayDaniel left 19:39 tadzik joined 19:41 Axius_ left 19:52 Axius joined
lue lichtkind: aside from some spelling and grammar issues (which certainly aren't bad to confuse anybody), I think it's a well written page. 19:53
[ I didn't know about the 'second system syndrome done right' slogan :) ]
lichtkind lue: thank you ,
yes larry used it several time and moritz wrote about it 19:54
which grammar issues
?
lue The only thing I remember was an extra comma or two. I can fix it for you if you like. 19:55
lichtkind i would be glad, thanks
sorear all your paradigms 'are' belong to us 19:59
er, paradigm 20:00
20:03 lue left 20:04 xabbu42 joined 20:05 risou left 20:16 Limbic_Region joined 20:20 xabbu42 left, lue joined
lue sorry lichtkind, had to reboot. I'll fix it just as soon as everything's done starting up :) 20:21
lichtkind thanks 20:22
20:22 dnl left
lue
.oO( *sigh*... Firefox decided to stop working :/ )
20:30
20:31 masonkramer joined 20:42 nadim left, nadim joined 20:45 Chat7248 joined, Chat7248 left, Chat7248 joined, Chat7248 left
dalek odel: e42de56 | jnthn++ | dotnet/ (4 files):
[dotnet] Add a definedness constraint enumeration, storage slot for it in a parameter object and update signature compilation to set it, if provided.
20:45
odel: 842f693 | jnthn++ | dotnet/compiler/ (2 files):
[dotnet] Get JnthnNQP to parse :D, :U and :_ and pass it down to the PAST compiler.
20:46 Axius left
moritz_ can't really make sense of the :U smiley :-) 20:49
jnthn I know that ":D" is the appropriate one for "my multi-dispatcher can now differentiate based upon them" though. ;-) 20:50
dalek odel: 1420bae | jnthn++ | dotnet/runtime/Runtime/MultiDispatch/MultiDispatcher.cs:
[dotnet] Get multi-dispatcher to consider :U/:D/:_. The multi-dispatch cache is already wired to be able to cache on this too.
20:50 kensanata left 20:56 Bzek_ left
Tene will ☺ be supported as an alais for :D? ;) 20:57
20:57 Ross^ joined
jnthn Tene: Well, you have a 6model commit bit... :P 20:57
20:57 icwiener left, Ross left 20:58 Bzek joined 21:00 nadim left
sorear I'm thinking of allowing method foo:D(...) without 'multi' 21:01
21:02 Ross^ left
sorear it would just involve setting up different method tables for defined and undefined objects 21:02
jnthn sorear: They're modifiers on types, not methods.
sorear the multi dispatch form are type modifiers
but an only-form could also work
21:02 Ross^ joined
jnthn Don't see the point off-hand. 21:02
Other than syntactic sugar. 21:03
Which I agree would be nice.
It'd still need to be multi to get both available though.
But you can use it solely as a constraint without multi-dispatch too.
21:04 Bzek left
jnthn Don't really think folks will write these enough to justify the extra syntax though. 21:04
21:04 nadim joined
jnthn Not sure if we want to encourage 'em to either... 21:04
Tene If it turns out you're wrong about that, you can change it later. 21:05
jnthn Tene: I'd rather not add syntactic sugar without user demand, tbh.
If that happens then yes, it's nice to have. 21:06
I'm just not convinced they're going to be used that heavily.
Tene jnthn: tha's what I was saying, yes.
jnthn Oh, OK. You're arguing it the same way as me. :-)
Tene If we turn out to need extra sugar for this, it can be added later.
Yes. :)
jnthn :)
Tene Easier to add than to deprecate+remove or support forever.
21:07 kanishka left, Ross^ left, pothos_ left 21:08 y3llow_ left 21:09 y3llow joined, pothos joined 21:10 Bzek joined 21:12 \xF0 left 21:13 \xF0 joined 21:22 icwiener joined 21:24 MayDaniel joined
lue lichtkind: I assume [%DATE%] unformatted was on purpose? 21:26
lichtkind #yes
it was an inside joke meaning today
because its always these buzz chatter talks about today in these times we cann't .... :)
lue I thought so. Just editing it and seeing UNFORMATTED: [%DATE%] in a big bubble made me wonder. 21:28
lichtkind actually i had to embrace it into {{...}} that wiki doesnt make a link out of it
lue I fixed it up. You should look it over, make sure I didn't screw up content-wise along the way :) 21:33
21:38 alester joined
lichtkind lue: no its perfect i just link the * with its WITCH chapter 21:39
dalek odel: e081fb5 | jnthn++ | dotnet/compiler/ROADMAP.txt:
[dotnet] Update ROADMAP, which - given I last updated it in August - was terribly out of date.
21:40 kjeldahl left
lichtkind lue: sooner or later all terms in that text will be proper linked 21:40
21:42 kensanata joined
dalek ecs: 2fee9b3 | moritz++ | S05-regex.pod:
[S05] remove a context sensitivity fossile noticed by masak++
21:45
21:50 colbseton` left 21:59 kensanata left 22:07 mavrc left
moritz_ just finished listening to www.twit.tv/floss140 merlyn++ pmichaud++ 22:08
jnthn Yes, it was a good listen. :-) 22:09
22:20 jaldhar left 22:25 MayDaniel left 22:26 icwiener left 22:28 _kaare left 22:31 patspam joined
Limbic_Region I enjoyed it as well except my girls kept running around screaming wondering if it was time to go trick-or-treating yet 22:32
22:33 masak joined
masak #perl6! \o/ 22:33
22:34 aindilis left
diakopter hi 22:34
jnthn masak! \o/
colomon Trick-or-treating is going like crazy here, have gotten 47 kids in the last 30 minutes. 22:35
masak wow, that's a lot of kids! 22:36
jnthn WHOA!
I think that's almost as many kids as the village I grew up in had. :P
22:39 dukeleto left, dukeleto joined
lue ohai masak o/ 22:41
colomon: good luck to ya!
masak lue: I found out today that your IRC nick means something in the 1881 pre-Esperanto variant named "Lingvo universala". 22:42
22:42 jaldhar joined 22:43 tadzik left
colomon I don't think we ever got more than ten kids in a year at my parents' house. 22:44
22:44 dukeleto left
colomon but this city is about 6x bigger, and this neighborhood is perfect for trick-or-treating. 22:44
22:45 dukeleto joined
colomon is wondering why Pictures at an Exhibition / Night on Bald Mountain are not in his MP3 library.... 22:45
lue masak: it does? what?
masak "far [away]"
lue how strange, for I am in my TARDIS right now... :) 22:46
lucs Au loin
masak lucs: quite possibly related, yes.
lue (actually I'm taking various version of the DW theme and trying to match them together in Audacity so I can hear 2+ themes at once! Sad, I know) 22:47
masak no, it actually sounds like a worthwhile effort.
lue So far I got the '07 and '63 themes together (the 2010 theme is bloody difficult to get matched up with anything because of how its arranged.) 22:48
masak: I think NetHack would be a good source of inspiration for that adventure game. First inspiration: don't use every single button on the keyboard, each one performing a different function. 22:51
masak I agree about Nethack being a good inspiration.
I'm still waiting for some more specific inspiration that would make the game unique and fun to play/build with. 22:52
jnthn masak: Does "jnthn" mean anything in Esperanto? :-)
22:52 MaL0 joined
lue I can already tell you it'd be a noun. 22:53
masak I doubt that consonant cluster exists in any language, expect maybe in Ithquil :)
lue nevermind, I got confused
jnthn masak: Yeah...it's too extreme even for Slavic languages. 22:54
dalek odel: ee58ecd | diakopter++ | / (3 files):
implemented (copypaste) >,>=,<,<= for NQPInts & NQPNums
jnthn diakopter++
lue I've always thought of this platformer where you change the axes you're on and it changes the field. For example, if you're in the XY plane and there's something you can't reach, you might rotate into the XZ plane to get to a certain spot that'll let you get the treasure when you rotate back. 22:55
masak you just described Fez.
due in 2011.
lue Darn it! 22:57
lue looks up Fez
masak lue: vimeo.com/3841540
lue That's a video, isn't it? 22:58
masak yes.
sorear is looking through the TeX sources now... this memory manager is very interesting
lue
.oO(I *really* need a new laptop)
22:59
sorear I have a PI laptop lying around with 512 MB of disk... 23:00
Util perl6: say Bar(); multi sub Bar ( ) { return 42 }; 23:01
p6eval pugs, rakudo 5f5bae: OUTPUT«42␤»
Util perl6: say Bar(); multi sub Bar ( ) { return 42 }; multi sub Bar (:$baz!) { return $baz };
p6eval rakudo 5f5bae: OUTPUT«No applicable candidates found to dispatch to for 'Bar'. Available candidates are:␤:()␤:(Any :baz($baz)!)␤␤ in main program body at line 22:/tmp/UGNiomLxSC␤»
..pugs: OUTPUT«42␤»
Util In Rakudo, why is the second declaration interfering?
masak looks like a bug to me.
...possibly reported already. 23:02
sorear Perl 6.0 is not required to support multiple dispatch with named parameters
masak but I thought Rakudo did.
jnthn No 23:03
Well, it doesn't consdier them other than as constraints.
e.g. if one is required it's a constraint.
Util sorear: it is more than just a named parm; it is a *required* named parm. Shouldn't that make it part of the dispatch?
masak apparently, it's difficult to do that in practice. 23:04
jnthn Rakudo already considered required named params as constraints.
Otherwise a bunch of our trait_mods would never work.
It even has an optimization for the single-required-named-param case. :-) 23:05
Util: Can you file a ticket? 23:06
That looks like a bug to me. :S
Util Will file rakudobug. Thanks, all!
jnthn Util++ 23:07
But it turns out to be a silly thinko. :-)
Somewhere in that little file, perl6multisub.pmc :-)
masak: There's another one in RT that I think is discinct from this but may end up related in the end. 23:08
masak jnthn: ok. I didn't find anything about required nameds.
23:09 risou joined
jnthn masak: I think it was about an argless candidate. 23:09
Or at least, that's the common dominator between these two. 23:10
23:11 y3llow left
lichtkind jnthn: cheers 23:11
23:12 y3llow joined
jnthn ahoj, lichtkind :-) 23:12
Ako sa mas?
23:13 sftp left
lichtkind jnthn: dost dobře , musim připravit jeste jednu přednašku 23:13
jnthn O com bude prednaska? 23:14
lichtkind o zajimave novějši funkce v ruznich editorech 23:17
23:17 sbp left, sbp joined
lichtkind understood% 23:20
jnthn Ano :-)
Features you want to steal for Kephra? ;-)
lichtkind or already have, your very smart 23:21
jnthn My Czech is...mostly read-only guesswork. :-)
lichtkind yes basically its kephra marketing without mentioning it :)
23:21 xabbu42 joined
jnthn hehe :-) 23:22
lichtkind to get excited about interesting stuff without to worry to promise when its implemented
jnthn
.oO( I could submit talks to unsuspecting conferences like "The job of mutable grammars!" and "Pimp my metamodel" to sneakily talk about Perl 6... )
*the joy of...
lichtkind yes 23:23
i will held this in vienna
i think these guys are very forgiving :)
jnthn Nice city. Very nice city. :-)
lichtkind and my rebol talk or course
i think you will be not there
23:24 pythonian4000afk is now known as pythonian4000
jnthn No, sadly not. 23:25
masak is going to Vienna on Wednesday
just for two days. 23:26
jnthn masak: Have a schnitzel for me.
lue masak: taking advantage of eval(), maybe part of the adventure game could have a function where you code changes to the game in real-time! [The ability could be received after a sidequest or something]
jnthn ;-)
masak jnthn: I will.
lue: I like the way you're thinking. (but am not necessarily sure that &eval is the best tool here.)
I say that as generally an &eval proponent. 23:27
lue Whatever tool is to be used. &eval is the only thing I know of right now.
masak I think it'd be difficult here to have expressiveness while still protecting the user from herself. 23:28
in some ways, &eval is too blunt a tool here.
but as I said, I like the general notion.
lue
.oO(This is an awful boss battle! [key combo] Game.debug.transport_to('bonus_room');)
23:29
masak consider this: great ideas are often born from clever use of restrictions. &eval offers the complete opposite of restrictions -- it basically offers ultimate cheating, God mode, etc, removing the sport from the game. 23:31
lue
.oO(You received the ability to recode this game, aka GOD MODE. It's side effects include: insanity, death, dizzine— **YOU HAVE DIED** Restart?)
23:32
lichtkind masak: so i see you in friday? 23:33
masak lichtkind: only staying till Thursday :/
masak wonders if Perl 6 could steal Newspeak's nested classes... 23:34
described here: blog.3plus4.org/2008/12/04/a-taste-...es-part-1/ 23:36
lue Maybe something a little less extreme, such as a part where you need to code P6 to move along. (but won't recode the game itself)
masak my current hunch is that the way the game would be extensible/flexible would be that playing the game blends into extending the game. 23:37
TimToady: starting at 06:30, Bracha has something interesting to say about package versioning that I think applies to Perl 6. confreaks.net/videos/121-elcamp2010-newspeak 23:39
or at least may resonate with Perl 6. 23:40
(in the problem space if not the solution space)
lue attempts to solidify this intriguing concept for the game 23:44
23:49 am0c left 23:54 Chat7871 joined 23:55 Chat7871 left, Chat7871 joined 23:59 Chat7871 left
jnthn lol i blug 6guts.wordpress.com/2010/11/01/mult...el-on-net/ 23:59
masak lul!
jnthn Yes, I did.
colomon \o/