Dan Sugalski wrote:
So we can get the damn thing nailed down and done. If there's
something pending throw it on as a reply and we'll gather them up and
see about making it work.
Someone conversant with the OO bits of the Python bytecode should do a
side-by-side feature comparison to see
On Tue, 2004-04-06 at 08:42, Dan Sugalski wrote:
So we can get the damn thing nailed down and done. If there's
something pending throw it on as a reply and we'll gather them up and
see about making it work.
I'd like to:
- pass arguments to a constructor (or initializer, or whatever
At 11:24 AM +0100 3/14/04, Leopold Toetsch wrote:
Dan Sugalski [EMAIL PROTECTED] wrote:
... --should we have the
base object system participate in multimethod dispatch? That is, if
someone does an:
add P1, P2, P3
and P2 is a parrot object, should that add vtable method
automatically
On Fri, Mar 12, 2004 at 08:12:52PM -0500, Dan Sugalski wrote:
: Okay, so I'm fiddling around in the guts of the object system getting
: the groundwork laid for some speed increases (I hope--we're just
: barely faster than perl 5 when doing the equivalent of perl's tie
: with the base object
Dan Sugalski [EMAIL PROTECTED] wrote:
... --should we have the
base object system participate in multimethod dispatch? That is, if
someone does an:
add P1, P2, P3
and P2 is a parrot object, should that add vtable method
automatically redispatch to MMD if the vtable method can't be
Okay, so I'm fiddling around in the guts of the object system getting
the groundwork laid for some speed increases (I hope--we're just
barely faster than perl 5 when doing the equivalent of perl's tie
with the base object type) and one thing occurred--should we have the
base object system
At 9:05 PM +0100 1/11/04, Leopold Toetsch wrote:
Harry Jackson [EMAIL PROTECTED] wrote:
I am at the point now where I need to know what type of format you want
the data to come out in.
The first question is: how are these data returned in C.
For posgres, that's easy (which is part of the
At 6:03 PM + 1/11/04, Harry Jackson wrote:
Dan Sugalski wrote:
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
Dan Sugalski wrote:
At 9:05 PM +0100 1/11/04, Leopold Toetsch wrote:
Harry Jackson [EMAIL PROTECTED] wrote:
I am at the point now where I need to know what type of format you want
the data to come out in.
The first question is: how are these data returned in C.
For posgres, that's easy
Dan Sugalski wrote:
Well...
What I'd like, I think, is something simple and straightforward. Right
now we've got to fetch each column for each row one by one, which is a
pain in the neck if you want to get a full row back. Having a fetchrow
that returned an Array with the value for column one
At 4:07 PM + 1/12/04, Harry Jackson wrote:
Dan Sugalski wrote:
Well...
What I'd like, I think, is something simple and straightforward.
Right now we've got to fetch each column for each row one by one,
which is a pain in the neck if you want to get a full row back.
Having a fetchrow that
Dan Sugalski wrote:
That works too. If the information's available someone'll build what
they want. Whichever way you're comfortable with. (Though given my
preferences, I'd add in the hash fetch version as part of the low-level
interface)
Roger:
To clarify you want:
1. You want a hash with
On Jan 12, 2004, at 8:07 AM, Harry Jackson wrote:
Dan Sugalski wrote:
Having a fetchrow_hash that returned a Hash where the keys are the
column names and the values are the column values would be most of
the rest.
I read somewhere that accessing a hash was slightly slower than
accessing and
Jeff Clites wrote:
On Jan 12, 2004, at 8:07 AM, Harry Jackson wrote:
Dan Sugalski wrote:
Having a fetchrow_hash that returned a Hash where the keys are the
column names and the values are the column values would be most of
the rest.
I read somewhere that accessing a hash was slightly slower
At 4:50 PM + 1/12/04, Harry Jackson wrote:
Dan Sugalski wrote:
That works too. If the information's available someone'll build
what they want. Whichever way you're comfortable with. (Though
given my preferences, I'd add in the hash fetch version as part of
the low-level interface)
Roger:
On Monday, January 12, 2004, at 11:37 , Dan Sugalski wrote:
At 4:07 PM + 1/12/04, Harry Jackson wrote:
Dan Sugalski wrote:
Well...
What I'd like, I think, is something simple and straightforward.
Right now we've got to fetch each column for each row one by one,
which is a pain in the neck
Gordon Henriksen wrote:
fetchrow_hashref is definitely a very useful, but my favorite (and also
the most efficient) DBI methodology is bind_columns. DBI maintains a
list of references corresponding to columns in the result set, and when
the result set is advanced, stores the values into the
Dan Sugalski wrote:
At 4:50 PM + 1/12/04, Harry Jackson wrote:
done similar to
80 getnext:
81
82 .pcc_begin prototyped
83 .pcc_call fetchrow_hash
84 nextrow:
85 .result rowhash
86 .result answer
87
Harry Jackson wrote:
The following shows roughly what I had to do to display it. I am using a
global HASH called MetaData that stores various bits about the current
statement being executed.
Sorry: missed a bit
The MetData is where I get the TupleData Array and the associated
FieldData Array
Dan Sugalski wrote:
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.
OK.
I am at the point now where I need to
Harry Jackson wrote:
Dan Sugalski wrote:
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.
OK.
I am at the
Harry Jackson [EMAIL PROTECTED] wrote:
I am at the point now where I need to know what type of format you want
the data to come out in.
The first question is: how are these data returned in C. If that's a
defined structure, I'd overlay this structure with an UnManagedStruct
PMC and then access
At 1:02 PM + 12/27/03, Harry Jackson wrote:
Dan Sugalski wrote:
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),
Dan Sugalski wrote:
At 1:02 PM + 12/27/03, Harry Jackson wrote:
Being fairly new to parrot and probably naive I can see a few different
ways of doing this.
A C wrapper ie: parrot/classes/parrotdbi.pmc etc
A C wrapper ie: parrot/dynclasses/parrotdbi.pmc etc
A loadable pasm function library
Dan Sugalski wrote:
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),
I did some benchmarks using your original
On Sat, Dec 27, 2003 at 01:02:34PM +, Harry Jackson wrote:
Dan Sugalski wrote:
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
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
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
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
At 9:47 PM + 12/11/03, Harry Jackson wrote:
Dan Sugalski wrote:
Yep, though that's a big part of it. postgres.pasm is generated
from postgres.declarations, FWIW--there's a script in the library
somewhere.
Is /parrot/build_tools/build_nativecall.pl the script in question and if
so whats its
At 3:42 PM -0500 12/11/03, Melvin Smith wrote:
At 03:05 PM 12/11/2003 -0500, Gordon Henriksen wrote:
Melvin Smith [EMAIL PROTECTED] wrote:
my $foo = Oracle::Instance::DEV1::db_block_buffers;
The namespace lookup in Oracle::Init checks the Oracle config
parameters which is external code.
All
On Dec 10, 2003, at 12:37 AM, Luke Palmer wrote:
Dan Sugalski writes:
At 05:14 PM 12/5/2003 +0100, Leopold Toetsch wrote:
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the assembler mangle the Foo::i to Foo\0i
I don't like it either, but the
I think a heirarchy is a good idea for namespacing in general. I've
always wanted to be able to tie namespaces in Perl 5. It would only
make sense that if I tie Foo::, that Foo::anything:: would also go
through that tie to get the anything:: stash.
What do you mean by tie here? Are you talking
At 03:05 PM 12/11/2003 -0500, Gordon Henriksen wrote:
Melvin Smith [EMAIL PROTECTED] wrote:
my $foo = Oracle::Instance::DEV1::db_block_buffers;
The namespace lookup in Oracle::Init checks the Oracle config
parameters which is external code.
All sorts of neat possibilities. :)
It is truly
Melvin Smith [EMAIL PROTECTED] wrote:
my $foo = Oracle::Instance::DEV1::db_block_buffers;
The namespace lookup in Oracle::Init checks the Oracle config
parameters which is external code.
All sorts of neat possibilities. :)
It is truly remarkable the lengths that Perl programmers seem to
Dan Sugalski wrote:
Yep, though that's a big part of it. postgres.pasm is generated from
postgres.declarations, FWIW--there's a script in the library somewhere.
Is /parrot/build_tools/build_nativecall.pl the script in question and if
so whats its usage.
I have done postgres.declarations, please
On Thu, 2003-12-11 at 12:05, Gordon Henriksen wrote:
It is truly remarkable the lengths that Perl programmers seem to be
willing go to in order to hide a function call or obscure the existence
of an object. :)
Not all of the poly- and allomorphism in the world comes from
traditional object
On Dec 9, 2003, at 3:40 PM, Dan Sugalski wrote:
At 5:46 PM +0100 12/5/03, Leopold Toetsch wrote:
Melvin Smith [EMAIL PROTECTED] wrote:
At 05:14 PM 12/5/2003 +0100, Leopold Toetsch wrote:
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the
Dan Sugalski writes:
At 05:14 PM 12/5/2003 +0100, Leopold Toetsch wrote:
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the assembler mangle the Foo::i to Foo\0i
I don't like it either, but the alternative is to impose an external
On Wed, Dec 10, 2003 at 01:37:22AM -0700, Luke Palmer wrote:
I think a heirarchy is a good idea for namespacing in general. I've
always wanted to be able to tie namespaces in Perl 5. It would only
make sense that if I tie Foo::, that Foo::anything:: would also go
through that tie to get
Dan Sugalski wrote:
If someone'd like to take a shot at making a nice OO wrapper for
Postgres, especially if they'd like to upgrade the postgres interface to
7.4, I would very much appreciate it. It'd be a nice demo, and a good
start on a DBI module for us. (And yeah, there's an element of do
At 01:37 AM 12/10/2003 -0700, Luke Palmer wrote:
Dan Sugalski writes:
At 05:14 PM 12/5/2003 +0100, Leopold Toetsch wrote:
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the assembler mangle the Foo::i to Foo\0i
I don't like it either, but
At 12:16 PM 12/10/2003 +, Tim Bunce wrote:
*{Foo\0Bar\0Baz}-{var};
or
*{Foo\0Bar\0Baz\0var};
[snip]
I think Dan was proposing the first and that's fine.
I think the second would be a mistake.
Using a character that won't collide with HLL has a disadvantage
in the general
Quoth Melvin Smith:
It be a bit friendlier to make the scope resolution operator something
that at least 1 or 2 languages use as their own already; then all the rest
still have to mangle.
Uh oh, time to vote?
At 11:34 AM 12/10/2003 -0600, Robert Eaglestone wrote:
Quoth Melvin Smith:
It be a bit friendlier to make the scope resolution operator something
^^ ACK
that at least 1 or 2 languages use as their own already; then all the rest
still have to mangle.
Uh oh, time to vote?
Voting for
Voting for myself for having the most consecutive posts with bad grammar.
-Melvin
This may be the wrong forum to post this, but it has to
be said: the combination of humility, professionalism,
and competence in the developers of Parrot is amazing.
It is very refreshing and encouraging.
On Wed, Dec 10, 2003 at 12:26:04PM -0500, Melvin Smith wrote:
At 12:16 PM 12/10/2003 +, Tim Bunce wrote:
*{Foo\0Bar\0Baz}-{var};
or
*{Foo\0Bar\0Baz\0var};
[snip]
I think Dan was proposing the first and that's fine.
I think the second would be a mistake.
Using a
At 4:28 PM + 12/10/03, Harry Jackson wrote:
Dan Sugalski wrote:
If someone'd like to take a shot at making a nice OO wrapper for
Postgres, especially if they'd like to upgrade the postgres
interface to 7.4, I would very much appreciate it. It'd be a nice
demo, and a good start on a DBI
At 5:46 PM +0100 12/5/03, Leopold Toetsch wrote:
Melvin Smith [EMAIL PROTECTED] wrote:
At 05:14 PM 12/5/2003 +0100, Leopold Toetsch wrote:
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the assembler mangle the Foo::i to Foo\0i
Something about
I've checked in a bunch of object stuff mainly attributes and a first
try to call a method.
Some remarks:
newclass P1, Foo
addattrib I1, P1, i
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the assembler mangle the Foo::i to Foo\0i
Same
At 05:14 PM 12/5/2003 +0100, Leopold Toetsch wrote:
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the assembler mangle the Foo::i to Foo\0i
Something about this embedded \0 character
bugs me. I know its what Dan has in the design doc but
it just
Melvin Smith [EMAIL PROTECTED] wrote:
At 05:14 PM 12/5/2003 +0100, Leopold Toetsch wrote:
set I2, P1[Foo\x00i] # I1 == I2
gets currently the attribute idx (0) of $Foo::i.
Q: Should the assembler mangle the Foo::i to Foo\0i
Something about this embedded \0 character
bugs me. I know its
Michal Wallace [EMAIL PROTECTED] wrote:
What is the _return_cc attribute on an
exception? Can I use it to resume the
code as if the exception never happened?
When an exception is resumable, you can return by invoking this return
continuation. But details (i.e. is C_return_cc put into P1
On Dec 3, 2003, at 12:03 PM, Dan Sugalski wrote:
At 12:17 PM +0100 12/3/03, Leopold Toetsch wrote:
Dan Sugalski [EMAIL PROTECTED] wrote:
*) Exceptions we're happy with
Create an Exception class hierarchy?
I'm not 100% sure I want to go with a real OO style of exceptions, but
that might just
Dan Sugalski [EMAIL PROTECTED] wrote:
The code definitely needs some looking at and cleanup. It's not
perfect and I expect it's flawed in a number of places. I'm just
happy to get the damn stuff into the repository so the bytecode tests
can start.
I've put in a first test. Needed some
At 12:17 PM +0100 12/3/03, Leopold Toetsch wrote:
Dan Sugalski [EMAIL PROTECTED] wrote:
The code definitely needs some looking at and cleanup. It's not
perfect and I expect it's flawed in a number of places. I'm just
happy to get the damn stuff into the repository so the bytecode tests
can
Dan Sugalski [EMAIL PROTECTED] wrote:
At 12:17 PM +0100 12/3/03, Leopold Toetsch wrote:
Create an Exception class hierarchy?
I'm not 100% sure I want to go with a real OO style of exceptions,
but that might just be the neo-luddite in me.
It probably depends what HLL want to have. Anyway, I
On Wed, 3 Dec 2003, Leopold Toetsch wrote:
Dan Sugalski [EMAIL PROTECTED] wrote:
At 12:17 PM +0100 12/3/03, Leopold Toetsch wrote:
Create an Exception class hierarchy?
I'm not 100% sure I want to go with a real OO style of exceptions,
but that might just be the neo-luddite in me.
At 2:05 AM +0300 12/2/03, Vladimir Lipsky wrote:
From: Dan Sugalski [EMAIL PROTECTED]
Sent: Monday, December 01, 2003 9:53 PM
*) I've made the Parrot_base_vtable array movable again, as it needs
to be resized. This is a temporary hack, since there are horrible
threading issues here. (Not to
Now that objects at least limp along a bit (albeit in a crashy,
hackish way) it's time to look forward a bit.
The code definitely needs some looking at and cleanup. It's not
perfect and I expect it's flawed in a number of places. I'm just
happy to get the damn stuff into the repository so the
I'm working on objects this morning--I need 'em, so they've become
unavoidable. (boo!) So, anyway, here are a few design decision things.
*) While we've facilities for a method cache, I'm ducking that for
now. I expect performance to suck rocks until that's undone, but to
do it right requires
From: Dan Sugalski [EMAIL PROTECTED]
Sent: Monday, December 01, 2003 9:53 PM
*) I've made the Parrot_base_vtable array movable again, as it needs
to be resized. This is a temporary hack, since there are horrible
threading issues here. (Not to mention the fact that this table is
global and
I still have most of yesterday's p6i mail to dig through (and
probably won't until this evening), but one thing that's struck me
(courtesy of an ill-timed grumble about objects) is that there are
really three ways to do inheritance, and most languages sort of do
them, with varying amounts of
63 matches
Mail list logo