Re: This week's summary

2003-12-26 Thread Michael Joyce
Thank you for a lovely Christmas Present.

Michael

On Dec 24, 2003, at 2:37 AM, The Perl 6 Summarizer wrote:

The Perl 6 Summary for the week ending 20031221
Welcome one and all to the penultimate Perl 6 Summary for 2003. The
nights are long, the air is cold, freezing fog made the journey 
home
from watching *The Return of the King* a deeply fraught experience
(though probably not as fraught for us as for the chap who 
obviously
didn't see the roundabout in time and went straight over it).

If you're in the southern hemisphere, feel free to ignore the 
foregoing
flavour text.

It should come as no surprise to you by now that we start with the
internals list.
  Namespaces II
Dan returned from a bout of paying work to finish up the current
understanding of how namespaces are managed in Parrot. A namespace
selector becomes a multidimensional key (using a multidimensional 
key
instead of a single long namespace name makes for easier sharing of
namespaces between languages; there's no need to go guessing what
separator the other language uses in its namespace naming because 
that's
essentially irrelevant at the Parrot level). Looking up a 
particular
variable in a namespace is still a two step process, first get the
namespace, then do the lookup within the namespace. Dan explained 
that
this is a win because it should allow for holding onto namespaces 
in a
register when dealing with multiple variables.

Leo Tötsch wasn't entirely convinced by the new syntax introduced, 
and
proposed a mechanism which used the standard syntax for accessing
multikeyed structures with a proposed Namespace PMC.

http://tinyurl.com/2wtkd

  Another keyed ops proposal
Leo continues to make proposals for rethinking keyed ops. Somewhat
surprisingly, Dan didn't entirely reject the latest one involving a
possible new set of key registers.
http://tinyurl.com/2za5t

  Leo adds threads
Leo Tötsch checked in a patch to allow Parrot to spawn threads. As 
he
admitted, there's a lot missing, but it's a start. He solicited 
comments
and further pointers.

Later in the week he asked for some design decisions related to 
making
various of the interpreter's internal data structures thread safe.
Elizabeth Mattijsen had several comments to make, based on 
experience
with Perl 5's ithread system. In essence her suggestion was that 
as many
things as possible should be made copy on write between threads. 
(I have
a faint recollection of Nicholas Clark delivering a wonderful 
lightning
talk/dance explaining his proposal for making Perl 5 use copy on 
write
structures for ithreads. It's worth seeing if you get the 
chance...)

http://tinyurl.com/3egyu

http://tinyurl.com/yrjrm

  PDD03 and method calls
Leo queried the design of Parrot's calling conventions for calling 
a
method and proposed a slightly different convention with the 
object put
in P5 rather than P2. Dan thought that the calling conventions
documented was the right way to go, but didn't seem to convince
everyone.

http://tinyurl.com/2npnn

  Rolling back "clone"
Leo pointed out that "clone"'s semantics had got altered to take an
uninitialized destination PMC as an argument back when the GC 
system was
flaky. He suggested switching back to a version that creates the 
new PMC
itself now that GC was working properly. Dan told Leo to go for it.

http://tinyurl.com/35c57

Meanwhile, in perl6-language
Um... sorry about this, but I'm punting on writing the promised
Roles/Traits/Classes summary. I was planning on doing it today, but
things have been hellish; I've spent about 8 hours fighting fires 
today
rather than writing the summary. Sorry.

Work on Perl 6's object system continues apace though; things are
looking very good and powerful.
By the way from now on I'll try and stick to Larry's usage of
capitalizing 'Traits' when referring back to the Traits paper, and
keeping it lower case when referring to Perl 6's compile-time 
traits.

  Runtime CHECK?
Piers Cawley asked if Perl 6 modules that get loaded at runtime 
will
have their "CHECK" blocks (or their equivalent) executed. Larry
initially thought not, but Rafael Garcia-Suarez noted that Perl 5
shouldn't be held up as exemplary and that there was definitely a 
need
for some kind of special block that would get run at the end of the
compilation phase of any arbitrary compilation unit.

http://tinyurl.com/2ytze

  "but true"
Adam D. Lopresto wondered how the recent work on Roles, Properties 
and
Traits fit in with already declared stuff like "but true". Larry
confessed that he was still thinking hard about this, but that he
thought "but" wasn't powerful enough yet.

http://tinyurl.com/2v2ef

Acknowledgements, Announcements, Apologies
Cross your fingers

[perl #24758] [PATCH] 'Unknown signature' in examples/assembly/pcre.imc

2003-12-26 Thread via RT
# New Ticket Created by  Bernhard Schmalhofer 
# Please include the string:  [perl #24758]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=24758 >


Hi,

this patch fixes a panic message "Unknown signature type" emitted by
build_call_func() in src/nci.c.
It happen when using pcre.imc, for example when doing a 
  ./parrot examples/assembly/pcre.imc asdf as

The reason seems to be that the needed routines in nci.c, for the 'dlfunc'
op calls in library/pcre.imc, haven't
been set up in 'src/call_list.txt'. After adding the needed declarations,
'examples/assembly/pcre.imc' seems to
be happy again.

After applying the patch a 'make reconfig' propably needs to be done, as
src/nci.c needs to be rebuilt.

I have no clue why it ever worked before.


 

-- 
/* [EMAIL PROTECTED] */

+++ GMX - die erste Adresse fÃr Mail, Message, More +++
Neu: Preissenkung fÃr MMS und FreeMMS! http://www.gmx.net


call_types.txt.20031226.patch
Description: Binary data


Re: [perl #24758] [PATCH] 'Unknown signature' in examples/assembly/pcre.imc

2003-12-26 Thread Leopold Toetsch
Bernhard Schmalhofer <[EMAIL PROTECTED]> wrote:

> After applying the patch a 'make reconfig' propably needs to be done, as
> src/nci.c needs to be rebuilt.

Makefile dependencies are ok for that.

> I have no clue why it ever worked before.

On i386/JIT systems NCI stubs are normally build on the fly. As that is
currently disabled due to multi-threading issues, the static NCI stuff
is used, which needs the signature to be defined.

Thanks, applied,
leo


[perl #24759] [PATHC] clean up vtable.dump

2003-12-26 Thread via RT
# New Ticket Created by  Bernhard Schmalhofer 
# Please include the string:  [perl #24759]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=24759 >


Hi,

when doing a make realclean in the 'parrot' directory, I noticed that the
file 'vtable.dump' isn't cleaned up.
I added the removal of vtable.dump in config/gen/makefiles/classes.in.

A patch is attached.

-- 
/* [EMAIL PROTECTED] */

+++ GMX - die erste Adresse fÃr Mail, Message, More +++
Neu: Preissenkung fÃr MMS und FreeMMS! http://www.gmx.net


clean_up_vtable_dump_20031226.patch
Description: Binary data


Re: More object stuff

2003-12-26 Thread Dan Sugalski
At 11:10 PM + 12/18/03, Harry Jackson wrote:
Dan Sugalski wrote:
It's util/ncidef2pasm.pl, actually. build_nativecall builds the 
stub routines for the interpreter if a JIT isn't available. The 
definitions of the characters are the same, but ncidef2pasm's a bit 
better documented. (There's embedded POD) Invocation is:

  perl util/ncidef2pasm.pl definition_file output.pasm
 >
I have done postgres.declarations, please see below.
Woo! And, might I add, hoo! :) Thanks.
Do you want me to do anything else with it. The script above works 
fine on the file.
Dunno if I replied, but... Next step is a higher level wrapper, if 
you're up for fiddling with Postgres itself. Stuff like a single call 
to connect (right now you have to make the connect call and poll over 
and over again), getting back a full row as an array, getting back a 
full row as a hash, and stuff like that. Nothing fancy, and nothing 
that high-level, but enough to work the basics without quite as 
manual work as the current libpg requires.

This'll probably be the basis for the DB driver interface for 
Parrot's DBI library, so this is your chance to make a mark. :)
--
Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
  teddy bears get drunk