»ö« 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/ |