develooper Front page | perl.perl6.internals | Postings from April 2006

Re: Value PMCs in Parrot?

Thread Previous | Thread Next
From:
Chip Salzenberg
Date:
April 4, 2006 11:30
Subject:
Re: Value PMCs in Parrot?
Message ID:
20060404164830.GD7662@tytlal.topaz.cx
As a followup to my previous early opinions:

I've done some [more] reading up on value types.  I'm now more sure now than
ever that my initial decision was the right one: Parrot 1.0 will _not_ have
native support for anything like value types.  Parrot 1.0's type universe
will consist entirely of [ISNP].

Thus, any implementation (emulation?) of value semantics will be built on
PMCs like other types, and will thus continue to live in the GC universe,
all a la JValue.

On Sun, Mar 12, 2006 at 02:35:11AM +0800, Audrey Tang wrote:
> The easy workaround for now is to have a "does readonly" interface in
> addition to the current "does scalar", which forbids all self-mutable
> vmethods.

That's a good hack.

Perhaps unrelated, perhaps not: Parrot will soon have a flyweight read-only
proxy PMC, which will address the use case of "sub foo($a)", in which $a
must be a read-only alias of the passed argument.  Language implementors may
find this useful in some otherwise value-oriented situations.

PS: Rant against the annoying introduction of scalar containers in Perl 6
    elided here, partly for brevity, but mostly for blood pressure.
-- 
Chip Salzenberg <chip@pobox.com>

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About