Brent Dax wrote:

Joseph F. Ryan:
# By default, references should not stringify to anything # "pretty", they should stringifiy to something useful for # debugging. Heck, even perl5 style should be fine. Not only
Why? Isn't the pretty form more generally useful?

I don't think so; I'd think it to be annoying to have type more code
in order to specify a more cocise form; if I need to dump a structure,
I'd prefer to do it manually.

# is this handy, but also prevents problems with circular # referencing data structures, huge data structures, etc. # However, all built-in types should have a .repr() method, # which should provide primitive Data::Dumper-ish output
# # So:
# # $var = [1,2,3];
# print "$var";
# print "\n";
# print "$($var.repr)";
# # Might print something like:
# # [REF_TO_ARRAY_AT: '0x1245AB']

What's wrong with a Perl 5-esque format for the debugging version?

Array(0x1245AB)

Personally, I like this format. It's succinct, informative, and tells
you enough to do identity testing.

I like it too, but I thought everyone else hated it :)

# Next, objects:
# # Objects should have an AS_STRING method inherited from # UNIVERSAL defined as follows:

I'd prefer if we drop the capitals. str() ought to work fine, IMHO.

# method AS_STRING() {
# return "[CLASS_INSTANCE_OF: '" ~ $self.CLASS() ~ "']";
# }

Once again, what's wrong with:

method str() {
#Unnamed invocant means you need $_, right?
return $_.class() ~ "($_.id())";
}

(where id() returns a uniquely identifying integer, usually the
address).

Objects aren't references anymore, are they?  So I don't think it is
apporpriate for an object to stringify with its id.

Joseph F. Ryan
[EMAIL PROTECTED]

Reply via email to