Re: pluralization idea that keeps bugging me

2008-01-26 Thread Yuval Kogman
een. It should be about the same level of complexity as Filter::Simple, except with much finer control and more correctness. I'm not the best person to answer this though. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpGuOUMaC21l.pgp Description: PGP signature

Re: pluralization idea that keeps bugging me

2008-01-26 Thread Yuval Kogman
#x27;s own string "interpolations" as things stand? E.g., is > there a way to add meaning to backslashed characters in a string that > would normally lack meaning? You can subclass the grammar and change everything. Theoretically that's a "yes"

Re: pluralization idea that keeps bugging me

2008-01-26 Thread Yuval Kogman
). -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418

Re: PERL arrays

2007-06-05 Thread Yuval Kogman
by this far using some online tutorial. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpIQKKbvB8dY.pgp Description: PGP signature

Re: Should a dirhandle be a filehandle-like iterator?

2007-04-13 Thread Yuval Kogman
up with it and make it bloat. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpNgghKAUJR3.pgp Description: PGP signature

Re: Interrogating closures

2006-11-30 Thread Yuval Kogman
; method blah { } } Conversely, I'd also like to be able to do Closure, which is a subrole of Code with a constructor. Or rather, an instantiated Code is a proto of Closure ;-) -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgp7EJqlaCYtM.pgp Description: PGP signature

Interrogating closures

2006-11-30 Thread Yuval Kogman
capture containing the body and all the closed over variables would be cool. This keeps things concise and lightweight, but does add the ability to inspect (via a well defined api) what a closure is encapsulating, etc. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org

Re: Closures, compile time, pad protos

2006-11-22 Thread Yuval Kogman
On Wed, Nov 22, 2006 at 18:55:15 +0100, Juerd wrote: > Yuval Kogman skribis 2006-11-22 16:01 (+0200): > > my $x ::= 3; > > sub foo { say ++$x }; > > Why would you be allowed to ++ this $x? It's bound to an rvalue! Perhaps my $x ::= BEGIN { Scala

Re: Closures, compile time, pad protos

2006-11-22 Thread Yuval Kogman
; sub foo { say ++$x; } BEGIN { foo(); moose(); foo(); } foo(); moose(); foo(); *foam oozes out of ears* -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEB

Closures, compile time, pad protos

2006-11-22 Thread Yuval Kogman
t.(); Does create a new sequence. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgplPyMaquTyx.pgp Description: PGP signature

Re: return Types: what are the enforcement details?

2006-08-30 Thread Yuval Kogman
er_hash. However, conversions that cannot be made could be cought at compile time, emitting a warning on an error depending if the runtime is a warning or an error. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpZuk0rgo5oy.pgp Description: PGP signature

Re: Curious corner cases concerning closure cloning

2006-08-14 Thread Yuval Kogman
x27; or something like that. > for 1,2 -> $x { > END { say $x } > } undef, because END is like a declaration putting the closure in some global, and doesn't actually happen at runtime. Otoh for 1,2 -> $x { state $y = $x;

Re: request addition of immutable Blob type

2006-08-09 Thread Yuval Kogman
What about str? Or is it called buf now? -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpaF4yq94mUW.pgp Description: PGP signature

Re: Type annotation on expressions

2006-08-08 Thread Yuval Kogman
12:17 < nothingmuch> i mean 12:17 < nothingmuch> the rules here are reversed 12:17 < nothingmuch> Point is not a parameter to .as in the natural sense 12:17 < audreyt> it is going to fail only if we consider the return type http://

Re: weak roles

2006-08-08 Thread Yuval Kogman
other_api in appropriate places like a > delegation interface. It's not quite as DWIMmy, but the class > doesn't do either role so errors will be caught quickly. It is also > annotation-agnostic. Hmm... Are the 'adapts' things actual class bodies? Like an inner c

Re: weak roles

2006-08-08 Thread Yuval Kogman
On Tue, Aug 08, 2006 at 11:35:30 +, Luke Palmer wrote: > On 8/8/06, Yuval Kogman <[EMAIL PROTECTED]> wrote: > >I personally prefer delegates for almost any design dillema, but > >most CPAN modules aren't that way. > > Well, what way are they? Usually not

Re: Type annotation on expressions

2006-08-08 Thread Yuval Kogman
Actually this particular example is just like coercion, and it's a bad one sorry. It's much more relevant for: fun( $x.foo :: Bar ); in order to annotate the return type for a call's context even if the 'fun' function's signature accepts Any. --

Re: weak roles

2006-08-08 Thread Yuval Kogman
this is necessary for anything heavyweight and probably better design, but again, hard to encourage on a wide scale. > Oh, and hello everyone. Long time no see :-) Welcome back =) -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpdqdaI70kz3.pgp Description: PGP signature

Re: Type annotation on expressions

2006-08-08 Thread Yuval Kogman
On Tue, Aug 08, 2006 at 11:12:11 +0100, Daniel Hulme wrote: > I may be in a little world of my own here, but isn't this what 'as' is > supposed to do? > > foo($x as Moose); as is a method invocation not a type annotation... It's related, but not the same (l

Type annotation on expressions

2006-08-08 Thread Yuval Kogman
syntax is shiny but everybody wants the colon: foo( ( $x :: Moose ) ); If we do find something (please ignore the fact that :: is probably not going to be the syntax), are these two the same? my $x = ( $y :: Moose ); my Moose $x = $y; -- Yuval Kogman <[EMAIL PRO

Re: weak roles

2006-08-08 Thread Yuval Kogman
the same time, and whoever is invoking the methods must explicitly say which behavior it prefers. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpZ2Gw5Yibt7.pgp Description: PGP signature

Re: weak roles

2006-08-08 Thread Yuval Kogman
that this wouldn't > work for the Perl community... Base classes, as opposed to roles, don't work well at *all* for these types of scenarios. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpYxhcH0dDFZ.pgp Description: PGP signature

weak roles

2006-08-07 Thread Yuval Kogman
#x27;re not as popular as they should be 2. they're more classes to write 3. they're harder to use Consequentially we have fairly few delegate based APIs for these problems (Email:Abstract is the only one I know). -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobli

underscores in the core lib

2006-08-06 Thread Yuval Kogman
However, we will also have new APIs, like the OO meta model: my @attrs = $meta.attributes; # shallow my @deep = $meta.compute_all_attributes; # deep, also from superclasses Than my @attrs = $meta.attrs; my @deep = $meta.compattrs; -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpVoL9QodN0W.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!) -- Explained

2006-07-14 Thread Yuval Kogman
[&&] (@a »eq« @b) Neither - it's on the natural types. If the types are different it's != -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpdVijcRjp0Q.pgp Description: PGP signature

Re: optimizing with === immutable comparitor

2006-07-14 Thread Yuval Kogman
ics allow that, but it has nothing to do with the language it might not even be faster. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgp2roLoyDefj.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!) -- Explained

2006-07-14 Thread Yuval Kogman
s are the same, or two hashes, you need to use Data::Compare, or to overload either == or eq, neither of which is a perfect fit. I have to catch my flight, so I'll explain more later. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgp4zdMSoN13m.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!) -- Explained

2006-07-13 Thread Yuval Kogman
sub &infix: ( Any $x, Any $y ) { ~$x === ~$y } -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgp3B4GnByYFK.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!) -- Explained

2006-07-13 Thread Yuval Kogman
On Thu, Jul 13, 2006 at 12:50:19 -0700, Larry Wall wrote: > On Thu, Jul 13, 2006 at 09:32:08PM +0300, Yuval Kogman wrote: > : [1] My preferred ergonomics: > : > : 1. eqv goes away > : 2. what was eqv is renamed to === > : 3. === becomes =:=, which has a "constan

Re: Run time dispatch on ~~

2006-07-13 Thread Yuval Kogman
my @list = $tree.filter_children( $match ); # very generic and useful -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgp8KEQiTHBTj.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!) -- Explained

2006-07-13 Thread Yuval Kogman
3. === becomes =:=, which has a "constant" feel to it 4. =:= is rarely useful IMHO, so you can just type variable($x) =:= variable($y) Ciao -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpU0Qe5CPlhQ.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!)

2006-07-13 Thread Yuval Kogman
jects. That creates a mess - sometimes objects compare themselves based on their value, and sometimes based on their containing slot. These are very different semantics. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpxFsetaGrOi.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!)

2006-07-12 Thread Yuval Kogman
s equal, etc). Should I go on? > I'd avoid saying "memory", here. Some implementations of Perl 6 might > not know what memory looks like (on a sufficiently abstract VM). "Slot" -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpvVdjsJ0Et9.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!)

2006-07-12 Thread Yuval Kogman
rhs matches the code ref (the code ref gets it as an argument it's a match! That's why ~~ isn't a comparison operator, but a smart match operator - it DWIMs *very* deeply. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpyx4u1552HO.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!)

2006-07-12 Thread Yuval Kogman
to the same variable as the RHS. Does this dereference? > Probably not, but I'm not sure, based on S03. Then it's a purely lexical opeation, and it doesn't even work for my $x := $array[3]; $x =:= $array[3]; but i'll pretend you didn't say that ;-) -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpPMmzta8SWk.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!)

2006-07-12 Thread Yuval Kogman
. This actually works like we expected, appearantly pugs does some sort of COW Under := slot semantics the first test should be false, the second should be true, the third should be true, the fourth should be false, the fifth should be false, and the sixth should be false. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpNFsdSOd2Lf.pgp Description: PGP signature

Re: ===, =:=, ~~, eq and == revisited (blame ajs!)

2006-07-12 Thread Yuval Kogman
is retained from perl 5 without introducing new complexity to the objects being compared as strings/numbers. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpefrROP9pJ6.pgp Description: PGP signature

===, =:=, ~~, eq and == revisited (blame ajs!)

2006-07-12 Thread Yuval Kogman
t =:= && === inside, and it could optimize arrays to check length first, and it could cache checksums and it could do whatever - please don't bring this up as a performance issue, it is one of correctness and ergonomics that must be resolved first. -- Yuval Kogman <[EMAIL PROTECTED]&g

Re: S?? OS interaction, POSIX and S29

2006-07-11 Thread Yuval Kogman
name than OS. That said, there's no reason why there shouldn't be a convenience wrapper around a more partitioned set of APIs, that provides a more toolchain like approach, and keeps the docs together. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpa4KWeuv2pQ.pgp Description: PGP signature

Re: Classy logging for Classes

2006-06-22 Thread Yuval Kogman
ethod, but this is not always the most "correct" behavior. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpOth0jMRVt0.pgp Description: PGP signature

Re: easier duck typing in .can

2006-06-18 Thread Yuval Kogman
On Sun, Jun 18, 2006 at 18:08:00 +1200, Sam Vilain wrote: > Why would you not use .does or .isa there? Are you wanting this > to go through all of the Class/Role's methods and check that the > $object.can() them? Because if you don't control $object's class you can&#

easier duck typing in .can

2006-06-17 Thread Yuval Kogman
r; # claim that you can do it, and if possible also # get compile time verification } without affecting our hard earned renewed purity of .isa and .does (due to roles in Perl 6). Comments? -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpuJ14rwywVH.pgp Description: PGP signature

Re: A shorter long dot

2006-04-29 Thread Yuval Kogman
On Sat, Apr 29, 2006 at 19:03:28 -0700, chromatic wrote: > Two invisible things look completely different to you? If dots looked like this: then they would be invisible. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgplPt8CiApME.pgp Descrip

Re: Fw: ([EMAIL PROTECTED]) Re: A shorter long dot

2006-04-29 Thread Yuval Kogman
; > > > Any ideas? > > Forward that message (with full headers) to [EMAIL PROTECTED] > who will then apply the LART. > > As I figure I'm about to get one, I'll (also) forward mine. Just got one... By LARTing you mean forcibly unsubscribing? because the message was se

Re: A shorter long dot

2006-04-29 Thread Yuval Kogman
$ba. .bar; $x. .bar; $foo.bar; $ba.:bar; $x. :bar; Frankly I don't think there's *that* much of a difference - each has pros and cons. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpWe4XRnb3kg.pgp Description: PGP signature

Re: The "whatever" context

2006-04-10 Thread Yuval Kogman
s. Just for grep or for any function? If just grep that means that grep simply doesn't use want. If it's any function, then it means that all are constants are "list" or "whatever", and all we really have are coercers. -- Yuval Kogman <[EMAIL PROTECTED]> htt

The "whatever" context

2006-04-09 Thread Yuval Kogman
r scalar values without having to think (== good for when you are evaluating a fucntion ref and you don't know what it is, but you want the "natural" value to be returned). b. writing eval bots and interactive shells: (whatever eval $expr).perl; ;-) -- Yuval Kogman <[E

Re: Set Theory (Was: Do junctions support determining interesections of lists)

2006-04-04 Thread Yuval Kogman
e garbage collector? ;-) -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpncGe7ozWIE.pgp Description: PGP signature

Re: replacement of $

2006-04-01 Thread Yuval Kogman
On Sun, Apr 02, 2006 at 02:04:07 +0300, Larry Wall wrote: ^^^-- (actually that was IDT in the headers) > Hi, > I'm in Israel and Japan at the same time! Nice one though ;-) If you guys would have participated in the keysigning parties... -- Y

Re: 'temp $x;' with no assignment

2006-03-27 Thread Yuval Kogman
On Mon, Mar 27, 2006 at 14:54:05 -0600, Jonathan Scott Duff wrote: > Make me believe your 90/10 numbers. http://cpansearch.bulknews.net/ is broken right now... =( -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpCMeQfldQFY.pgp Description: PGP signature

Re: 'temp $x;' with no assignment

2006-03-27 Thread Yuval Kogman
On Mon, Mar 27, 2006 at 14:35:52 -0600, Jonathan Scott Duff wrote: > On Mon, Mar 27, 2006 at 05:26:48PM +0200, Yuval Kogman wrote: > How did $x become 10?!?!? :-) GHC has this lovely error: "my brain just exploded" I think Perl 6 should have a similar runtime warning about ho

'temp $x;' with no assignment

2006-03-27 Thread Yuval Kogman
} # $x is 5 again and otherwise pretty much DWIMs, except from a historical perspective. -- Yuval Kogman <[EMAIL PROTECTED]> http://nothingmuch.woobling.org 0xEBD27418 pgpqVi7l1FtDo.pgp Description: PGP signature

Re: where will we die to?

2006-03-23 Thread Yuval Kogman
On Thu, Mar 23, 2006 at 08:14:03 -0800, Larry Wall wrote: > On Thu, Mar 23, 2006 at 02:27:07PM +0200, Yuval Kogman wrote: > > How else would you implement it that doesn't impact performance? > One of the main reasons for having exceptions is that they're exceptional, >

where will we die to?

2006-03-23 Thread Yuval Kogman
entries have a catch block. The other thing is to be able to trace an exception: if we have 'die "foo" but traced' then the exception should print "cought at rethrowed" as it's doing that. This second thing is much harder for me to pretend to implement --

Re: RFC - weird stuff I had to do (for fun or profit)

2006-03-13 Thread Yuval Kogman
27;s still pretty brutal ;-) Conclusions: I would have been happier if I could have a nice hook interface with which i could trap both module includes, and all IO operations and insert my own magic into the mess to aid me in my *DEVELOPMENT* process (not production related at all =) -- () Yuva

RFC - weird stuff I had to do (for fun or profit)

2006-03-13 Thread Yuval Kogman
s and core modules can be revisited and maybe better designed. Please reply to this thread with your tales of glory (or failures, and the reason they failed). -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me climbs a brick wall with

Perl 6 design wiki?

2006-03-03 Thread Yuval Kogman
ess formal" documentation of a language, if you will. Pugs has example code, some quick start guides, and a few other nice things in it's repository, which are not pugs specific in any way. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hac

Re: Separate compilation and compile-time things

2006-03-02 Thread Yuval Kogman
just hopefully not bite > people > too often? Should doing what this is trying to do be possible in a > different, longer-huffmanized way? I think separate compilation is more consistent - it allows much -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me tips over a cow: neeyah!! pgpvcXIoJdS3m.pgp Description: PGP signature

Re: Separate compilation and compile-time things

2006-03-02 Thread Yuval Kogman
eated in the compiler's runtime this is slightly consistent ;-) -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me supports the ASCII Ribbon Campaign: neeyah!!! pgpmGMthxUDLd.pgp Description: PGP signature

Re: A proposition for streamlining Perl 6 development

2006-02-09 Thread Yuval Kogman
On Wed, Feb 08, 2006 at 12:37:05 -0800, chromatic wrote: > On Tuesday 07 February 2006 23:55, Yuval Kogman wrote: > > > Does this imply that we should think up this process? > > Go ahead. We'll start at the Israel hackathon, with a little preamble. > The last time so

Re: A proposition for streamlining Perl 6 development

2006-02-08 Thread Yuval Kogman
wards trying to answer these questions. Thanks -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /methinks long and hard, and runs away: neeyah!!! pgpHSuE6cygmL.pgp Description: PGP signature

Re: A proposition for streamlining Perl 6 development

2006-02-07 Thread Yuval Kogman
the big void in the middle - the design of the perl 6 runtime, not just syntax/features. What I'm suggesting is a start in this clarification - trying to componentize the existing syntax/feature spec that we do have, so tha the design of the runtime can be simplified and more concrete/attai

Re: A proposition for streamlining Perl 6 development

2006-02-07 Thread Yuval Kogman
meta model's methods and features, for example. The doc explaining macros does not detail what the AST macros get (the definition of the AST). Etc etc etc. These things are also important to implementation, and amount to a huge chunk of code. If we can layer this code, chunk it up, compon

Re: A proposition for streamlining Perl 6 development

2006-02-07 Thread Yuval Kogman
On Wed, Feb 08, 2006 at 08:59:35 +0800, Audrey Tang wrote: > On 2/8/06, Yuval Kogman <[EMAIL PROTECTED]> wrote: > > If Audrey is willing, I think a correct new direction for pugs is to > > try and separate the parts even more - the prelude is a mess right > > now, many

Re: A proposition for streamlining Perl 6 development

2006-02-07 Thread Yuval Kogman
On Tue, Feb 07, 2006 at 14:02:54 -0800, chromatic wrote: > On Tuesday 07 February 2006 13:28, Yuval Kogman wrote: > > > Right now the biggest problem in Perl 6 land is project management. > > I disagree, but even if it were true, I don't think the solution is to add &g

Re: A proposition for streamlining Perl 6 development

2006-02-07 Thread Yuval Kogman
6's design, which I think is also important. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me does not drink tibetian laxative tea: neeyah! pgpQnTRA3i2ZH.pgp Description: PGP signature

A proposition for streamlining Perl 6 development

2006-02-07 Thread Yuval Kogman
e burn out. People have to do things more related to day jobs (that's why my pugs hacking is on hold, for example), people think things half way, etc. If we have a layered approach we can concentrate on providing something that is more balanced ... Phew. Ciao! -- () Yuval Kogman <[EMAIL

Universal Roles, and deriving these roles for any class

2006-02-05 Thread Yuval Kogman
for other interfaces. This also reminds me a bit of attribute grammars - i'd like to be able to automatically derive node roles inside AGs by just specifying a generic universal behavior, and behavior for the leaves. Err, comments please =) -- () Yuval Kogman <[EMAIL PROT

Re: Macros?

2006-01-29 Thread Yuval Kogman
On Sun, Jan 29, 2006 at 20:29:43 +, Herbert Snorrason wrote: > On 29/01/06, Yuval Kogman <[EMAIL PROTECTED]> wrote: > > Basically the plan is that when an internal AST language is decided > > upon, the macros will be able to get either the source code text, or > >

Re: Macros?

2006-01-29 Thread Yuval Kogman
anguage (maybe it'll be PIL based) is not yet final, so there's not much to say. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me climbs a brick wall with his fingers: neeyah! pgpjt66A0JBma.pgp Description: PGP signature

Re: facades, use_ok, and lexical export

2006-01-09 Thread Yuval Kogman
as a function could simply import $module into the non lexical scope because it's a runtime thing, unless it's made into a macro/some other compile time construct, that is more declarative in nature, and makes the whole process more opaque. -- () Yuval Kogman <[EMAIL PROTECTED]> 0x

Re: Perl grammar for Perl5 -> Perl6

2005-12-08 Thread Yuval Kogman
ecursion, exclusion > and so forth. Since perl 5's actual parser and tokenizer will be used for this it won't be very extensible, but this is important because perl is reallly hard to parse. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker &

Re: Capabilities in Perl6?

2005-12-01 Thread Yuval Kogman
rms of this security stuff. This is a very good start towards a model where a crippled runtime is mixed with a fully priviliged one, with grey areas in the middle. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: MMM

Re: Classification syntax [Was: Renaming grep]

2005-11-19 Thread Yuval Kogman
to append a function. This is more general since it allows classification to include duplicates. Grep is simply: sub grep (&filter, [EMAIL PROTECTED]) { classify -> $x, &f { f($x) if filter($x); } [EMAIL PROTECTED];

Re: Role Method Conflicts and Disambiguation

2005-11-02 Thread Yuval Kogman
er > composition until it's actually composing classes. Class composition also happens at compile time... There's no reason to make the error occur too early for usefulness to be around. As long as it's not too late ;-) -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: : neeyah! pgpABuzitn7pL.pgp Description: PGP signature

Re: Role Method Conflicts and Disambiguation

2005-11-01 Thread Yuval Kogman
On Fri, Oct 28, 2005 at 14:19:46 -0400, Stevan Little wrote: > Yuval, > > On Oct 28, 2005, at 10:59 AM, Yuval Kogman wrote: > >On Thu, Oct 27, 2005 at 22:19:16 -0400, Stevan Little wrote: > >>Now, at this point we have a method conflict in suspension since > >

Re: Role Method Conflicts and Disambiguation

2005-10-29 Thread Yuval Kogman
on-private attributes should conflict, but private attributes are no one's business except the package which made them. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: uhm, no, I think I'll sit this one out..: neeyah! pgpGGuBWg08p4.pgp Description: PGP signature

Re: Role Method Conflicts and Disambiguation

2005-10-28 Thread Yuval Kogman
t. Really? I didn't know that... In that case roles are broken... They will need instance data (that doesn't conflict when it's private) to support the methods they give their consumers. Is there any good reason to not allow roles to introduce member data into a class? -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me whallops greyface with a fnord: neeyah!!! pgp1rNFr6EZDh.pgp Description: PGP signature

Re: Role Method Conflicts and Disambiguation

2005-10-28 Thread Yuval Kogman
les are actually doing anyway. This will probably be familiar code, and if not it warrants familiarity. I don't think we can let the user use library code without being aware of the library code internals at all. Abstraction that works like this is usually either crippled or useless. 90% of the time you don't want to know, but there are exceptions. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me sushi-spin-kicks : neeyah pgpuXeiEdVhEc.pgp Description: PGP signature

Re: Making Wrong Code Type Wrong

2005-10-18 Thread Yuval Kogman
On Wed, Oct 19, 2005 at 02:48:05 +0200, Yuval Kogman wrote: > the Serializable role, which is an interface spec jointly maintained Err, I meant the Serializer role... The Serializable role is a role that takes a delegate that does Serializer, and lets the object that does it be frozen and tha

Re: Making Wrong Code Type Wrong

2005-10-18 Thread Yuval Kogman
is not to be taken literally, and applies only to the > described hypothetical universe. Huh? -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me does a karate-chop-flip: neeyah!! pgpGKPEzlMYiW.pgp Description: PGP signature

Re: Making Wrong Code Type Wrong

2005-10-18 Thread Yuval Kogman
On Tue, Oct 18, 2005 at 21:04:02 +0200, Juerd wrote: > Yuval Kogman skribis 2005-10-18 20:38 (+0200): > > the function encode has the type Unsafe -> Safe > > I read the article before. What occurred to me then did so again now. > What exactly do Unsafe and Safe mean? S

Making Wrong Code Type Wrong

2005-10-18 Thread Yuval Kogman
f rw and col and when you see those you know that they refer to rows and columns. Yep, they're both integers, but it never makes sense to assign between them. There is a real benefit to be gained here, but the usability of e.g. int formatting functions should not be hindered by overzealous typing. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me has realultimatepower.net: neeyah pgp0aSpBeHuHF.pgp Description: PGP signature

Book RFC - Migrating to Perl 6

2005-10-14 Thread Yuval Kogman
ossible. The wiki page illustrates how we think it will be structured, and how we think it should be written. Please post feedback and criticism on the list, #perl6 or the wiki page. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: MMM

Re: Should roles and classes be merged?

2005-10-14 Thread Yuval Kogman
ch sense when parametrized, but i don't really mind parametrizing roles that are really classes to make anonymous classes. This way it is clear that there can never be uninstantiatable classes around. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me

Re: Closed Classes Polemic (was Re: What the heck is a submethod (good for))

2005-10-13 Thread Yuval Kogman
something we like. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me sneaks up from another MIME part: neeyah! pgpDwgwZYGNe6.pgp Description: PGP signature

Re: What the heck is a submethod (good for)

2005-10-12 Thread Yuval Kogman
er private attributes of the same name, better polymorphism, better introspection, and a metamodel could have helped a lot in many places. This has even more implications with closed classes to which you don't have source level access, and if this can happen it will happen - i'm pretty sure th

Re: Sane (less insane) pair semantics

2005-10-09 Thread Yuval Kogman
On Sun, Oct 09, 2005 at 20:22:59 +0200, Ingo Blechschmidt wrote: > Opinions? Yes! -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: *shu*rik*en*sh*u*rik*en*s*hur*i*ke*n*: neeyah pgpPtAVtx26AP.pgp Description: PGP signature

Re: Type annotations

2005-10-07 Thread Yuval Kogman
e conditionals over e.g. $*OS are such a scenario) and the same program should be typed the same way everywhere for a given version of Perl. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me does a karate-chop-flip: neeyah!! pgpdHU54ECTW7.pgp Description: PGP signature

Re: Exceptuations

2005-10-07 Thread Yuval Kogman
ot already supports them. I see absolutely no reason why we would want to implement this any other way but using continuations. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: *shu*rik*en*sh*u*rik*en*s*hur*i*ke*n*: neeyah pgpRP3mAuY8ah.pgp Description: PGP signature

Re: Type annotations

2005-10-07 Thread Yuval Kogman
. That is - a value must be coerced as a copy to enter this container if it's type doesn't match. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me sushi-spin-kicks : neeyah pgpT5DKCUCMHu.pgp Description: PGP signature

Re: Exceptuations

2005-10-07 Thread Yuval Kogman
On Fri, Oct 07, 2005 at 05:23:55 +0100, Piers Cawley wrote: > "Peter Haworth" <[EMAIL PROTECTED]> writes: > > > On Wed, 5 Oct 2005 19:24:47 +0200, Yuval Kogman wrote: > >> On Wed, Oct 05, 2005 at 16:57:51 +0100, Peter Haworth wrote: > >> &

Re: Exceptuations

2005-10-07 Thread Yuval Kogman
On Fri, Oct 07, 2005 at 02:31:12 -0400, Austin Hastings wrote: > Yuval Kogman wrote: > > >On Thu, Oct 06, 2005 at 14:27:30 -0600, Luke Palmer wrote: > > > > > >>On 10/6/05, Yuval Kogman <[EMAIL PROTECTED]> wrote: > >> > >> > >&g

Re: Exceptuations

2005-10-06 Thread Yuval Kogman
On Thu, Oct 06, 2005 at 14:27:30 -0600, Luke Palmer wrote: > On 10/6/05, Yuval Kogman <[EMAIL PROTECTED]> wrote: > > when i can't open a file and $! tells me why i couldn't open, i > > can resume with an alternative handle that is supp

Re: Type annotations

2005-10-06 Thread Yuval Kogman
--> Array) { > [ $elems.map:{ $code($_) } ] > } > sub dynamic ($code, $elems) { > [ $elems.map:{ $code($_) } ] > } > static({ $_+1 }, dynamic("notcode", [1,2,3,4,5])); > dynamic("notcode", static({ $_+1 }, [1,2,3,4,5]));

Re: Exceptuations

2005-10-06 Thread Yuval Kogman
t way. CATCH { when Error::IO::... { open ... } when MyApp::Timeout { ask_user_to_continue_or_abort(); } ... } -- () Yuval Kogman <[EMAIL PROTECTED]>

Re: Exceptuations

2005-10-06 Thread Yuval Kogman
need to throw the error it just needs to fail (or delegate a fail), until the failure crosses into a 'use fatal' scope. That way both the catching code and the throwing code are reusable and orthogonal when they are unrelated, but the possibility of coupling handling code with throwing c

Re: Exceptuations

2005-10-06 Thread Yuval Kogman
ness of exceptions being handled by distant code. The code in the module inverts it's interface by calling code it doesn't know with a certain parameter, accepting a certain parameter back. That way encapsulation is not broken, but errors that happen deep inside a call chain can be dealt

Re: Exceptuations

2005-10-05 Thread Yuval Kogman
down the line > > of command. Much less of its innards. > > Well said. No! Not well said at all! The exception handler knows *EVERYTHING* because it knows what exception it caught: CATCH { when some_kind_of_error { $!.continue($ap

Re: my $key is sensitive;

2005-10-05 Thread Yuval Kogman
s be compiled only when necessary. Once you have that then you can implement 'is sensitive' as a taint-oriented-role, that installs an event handler for the tainting container and any value, marking a runtime specific flag that means "sensitive". That way the implementation of t

  1   2   3   >