Re: [RfD] parrot run loops

2003-01-31 Thread Steve Fink
I don't really know a whole lot about this area, but I remember I was
surprised the first time I looked at this and discovered it was based
on pointers instead of offsets. I assumed there was some good reason
for it that I didn't know at the time (eg performance), but now I
doubt that. Your way seems much better to me. (It makes debugging
slightly easier too.) Have you tried it on a more RISC-y machine where
any performance loss might be more noticeable? I tried the change you
suggested on a PPC, and saw no speed difference.



Re: [RfD] parrot run loops

2003-01-31 Thread Leopold Toetsch
Steve Fink wrote:


I don't really know a whole lot about this area, but I remember I was
surprised the first time I looked at this and discovered it was based
on pointers instead of offsets. I assumed there was some good reason
for it that I didn't know at the time (eg performance), but now I
doubt that. Your way seems much better to me. (It makes debugging
slightly easier too.) 


Yep


... Have you tried it on a more RISC-y machine where
any performance loss might be more noticeable? I tried the change you
suggested on a PPC, and saw no speed difference.



No, I just did this quick test on 2 machines (1 Athlon, 1 Pentium). On 
RISC machines with probably plenty registers I expect similar i.e. no 
effects.

But even when there is a slight speed impact - which I doubt - then this 
speed impact would only harm the interpreted run loops and only, when 
the whole program is just looping like  mops.pasm.

But for such programs, timings like these hold (on Athlon 800):

CGoto: 20
fast_core: 12
Prederef:  17
JIT:  800
C no opt  195
C -O3:277


So when the whole thing is run loop bound, you have already lost ;-)
Real world programs are not run loop bound, so I don't see any harm in 
changing the run loops to take an offset.

leo



Re: [RfD] parrot run loops

2003-01-31 Thread Leopold Toetsch
Leopold Toetsch wrote:

[ mops timings ]


C -O3:277


BTW, same (probably alignment caused) timing diffs (gcc 2.95.2):
$ for i in $(seq 20); do ./mops; done
328.089625 M op/s
319.657445 M op/s
333.533456 M op/s
371.050336 M op/s
345.721672 M op/s
307.465496 M op/s
364.405245 M op/s
330.797305 M op/s
305.609485 M op/s
396.188487 M op/s <
343.082872 M op/s
304.868686 M op/s
325.303605 M op/s
337.969318 M op/s
341.722460 M op/s
371.781657 M op/s
266.488824 M op/s <
367.296091 M op/s
294.070148 M op/s
327.632312 M op/s

leo




tinderbox troubles?

2003-01-31 Thread Leopold Toetsch
Proxy Error
The proxy server received an invalid response from an upstream server.

The proxy server could not handle the request GET 
/tinderbox/bdshowbuild.cgi.

Reason: Could not connect to remote machine: Operation timed out

Apache/1.3.26 Server at tinderbox.perl.org Port 80


TIA,
leo



Re: occasioanl CVS hickups?

2003-01-31 Thread Leopold Toetsch
Robert Spier wrote:


Odd.  

There's not enough information in the logs to figure out what's going
on.  (And the code shouldn't have this kind of failure mode.)

If it keeps happening, please keep me in the loop.

Todays imcc commit didn't show up at cvs.perl.org.
No error message - looked all good and code is in.

leo




Re: tinderbox troubles?

2003-01-31 Thread Zach Lipton
Strange. I can ssh in, and apachectl claims that the webserver is running,
but I'm getting that error too.

Ask, Robert: any ideas?

Zach

On 1/31/03 4:09 AM, "Leopold Toetsch" <[EMAIL PROTECTED]> wrote:

> Proxy Error
> The proxy server received an invalid response from an upstream server.
> 
> The proxy server could not handle the request GET
> /tinderbox/bdshowbuild.cgi.
> 
> Reason: Could not connect to remote machine: Operation timed out
> 
> Apache/1.3.26 Server at tinderbox.perl.org Port 80
> 
> 
> TIA,
> leo




Re: Parrot developer world map

2003-01-31 Thread gregor
An interactive SVG version is (temporarily) available at:

http://www.focusresearch.com/gregor/map.html


Regards,

-- Gregor





Leon Brocard <[EMAIL PROTECTED]>
01/28/2003 05:24 PM

 
To: [EMAIL PROTECTED]
cc: 
Subject:Parrot developer world map


Last week I collected your data. This week I bring you pretty pictures:

  http://www.astray.com/parrot/worldmap/

So London would seem a good place for a Parrot developer day, as would
California. I guess most people will be meeting up at Perl conferences
anyway.

What do people have in mind for such a thing? A room, at least one
computer, an internet connection and a Plan? Are you looking to learn
more about Parrot or do you have something more specific in mind?

Leon

ps feel free to send in your location if you've forgotten to:

-- 
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/

... Famous last words - Don't worry, I can handle it






Re: Parrot developer world map

2003-01-31 Thread gregor
Greg --

Thats the centroid. You can see its dual South of Australia.


Regards,

-- Gregor





Greg Woodhouse <[EMAIL PROTECTED]>
01/31/2003 03:52 PM

 
To: [EMAIL PROTECTED]
cc: 
Subject:Re: Parrot developer world map


So, what's the yellow dot in the middle of the Atlantic?

--- [EMAIL PROTECTED] wrote:
> An interactive SVG version is (temporarily) available at:
> 
> http://www.focusresearch.com/gregor/map.html
> 
> 
> Regards,
> 
> -- Gregor
> 
> 
> 
> 
> 
> Leon Brocard <[EMAIL PROTECTED]>
> 01/28/2003 05:24 PM
> 
> 
> To: [EMAIL PROTECTED]
> cc: 
> Subject:Parrot developer world map
> 
> 
> Last week I collected your data. This week I bring you pretty
> pictures:
> 
>   http://www.astray.com/parrot/worldmap/
> 
> So London would seem a good place for a Parrot developer day, as
> would
> California. I guess most people will be meeting up at Perl
> conferences
> anyway.
> 
> What do people have in mind for such a thing? A room, at least one
> computer, an internet connection and a Plan? Are you looking to learn
> more about Parrot or do you have something more specific in mind?
> 
> Leon
> 
> ps feel free to send in your location if you've forgotten to:
> 
> -- 
> Leon Brocard.http://www.astray.com/
> scribot.http://www.scribot.com/
> 
> ... Famous last words - Don't worry, I can handle it
> 
> 
> 


=

Greg Woodhouse 
[EMAIL PROTECTED]

It is better to be complex than complicated.







Re: What's core? (was Re: Arrays: is computed)

2003-01-31 Thread Austin Hastings

--- Michael Lazzaro <[EMAIL PROTECTED]> wrote:
> So, is it obvious that I'm a little discouraged lately?  Don't
> suppose  anyone can come up with some numbingly inspirational 
> words to cheer us  (well, me) up...


  Go us.



Re: Arrays: Default Values

2003-01-31 Thread Leopold Toetsch
Dave Mitchell wrote:


On Fri, Jan 31, 2003 at 05:59:46PM +0100, Leopold Toetsch wrote:



IMHO some sort of proxy could be passed here, saying: "if you write to 
me, this will be at @a[0]". Or auto-vivify the entry.


This is what Perl 5 does at the moment:

$ perl5.8.0 -MDevel::Peek -e 'sub f{Dump($_[0])}; f($a[9])'



Ah, same idea ;-)


However, I think this is clumsy and overly complex; since Perl6 allows us
to declare parameters rw or whatever, I think it should always autovivify
unless we know the param is read-only (or in-only, or whatever the correct
terminology is).


It's probably not too complex, it's IMHO the same, what we would need to 
implement the multi_keyed opcodes like:
@a[$x] = @b{$y} - @c[2;$i]

We can't implement all the opcodes per se, this would need ~64K ops, so 
one of my proposals (some time ago) was, to split this operation in 3 
keyed fetch ops and one plain subtraction. The LHS whould need - as I 
can set it now - a very similar treatment like above's example.

To come back to the array example:
- when the sub param is ro, you said it, no autovifiy should happen
- for rw (the default?) there is always a chance, that no write will 
occur, and for the case nothing gets written, we have a volatile PMC 
(the proxy) collected with the next DOD run. With autovivification we 
create an anchored value, that is more expensive.

A (of course) constructed example could check in a subroutine, if 
one/some/all elements exist

sub e() {return exists shift;}
for ([EMAIL PROTECTED]) -> $i { do_some($i) if e($a[$i]); }
# modulo syntax, operator and other errs :)

And, from DWIM POV, autovivification was not the clearest things in the 
docs, when it could happen or not. I would just expect: when I don't set 
this very elememt in this array, why is something there.

leo



Re: Arrays: Default Values

2003-01-31 Thread Leopold Toetsch
Aaron Sherman wrote:


On Tue, 2003-01-28 at 16:23, Leopold Toetsch wrote:



Arrays (or hashes) don't grow on reading - never.



But for less pure forms of reading:

	foo(@a[0]);

auto-vivification will have to happen in some cases. e.g. if foo
requires a lvalue parameter. 


A lvalue param is not strictly reading, but here has to happen something 
differently - yes:

IMHO some sort of proxy could be passed here, saying: "if you write to 
me, this will be at @a[0]". Or auto-vivify the entry.

leo






What's core? (was Re: Arrays: is computed)

2003-01-31 Thread Michael Lazzaro

On Thursday, January 30, 2003, at 10:44  PM, Leopold Toetsch wrote:

Michael Lazzaro wrote:

[EMAIL PROTECTED] wrote:

Shouldn't access to 'is computed' arrays be read-only?

In general, I would hope that 90% of them would be, but it's been 
stated that it won't be a requirement.

If you want such 'is computed' thingy, then tie it or wrap it in your 
own - IMHO. Everyone seems to need different things, so the simplest 
and by far the safest way is to make this explicit in your code.

Yep.  Sigh.  This is all quite frustrating, because everyone has 
different ideas on what's valuable enough to be a builtin, but it's the 
design team that finalizes that, and the information is sort of 
scattered piecemeal through the A's/E's/p6l.  If you look around 
enough, there's a pile of builtin stuff that's obliquely referred to, 
but never quite spelled out.  And even the simplest ones -- what 
"default" means, for example -- aren't necessarily obvious at first 
glance.

All I want is a list of what the already-known builtins *are*, or what 
other things people *demand* should be there, and the gist of what they 
do.  Even if I have to change it later.  Even if they're not in core, 
but they're things that people are going to immediately build because 
they're so obvious.  Something to make me feel that the precise 
behaviors have really been pinned down -- and can be reliably 
extrapolated from -- preferably *before* people spend a lot of time 
coding them.

Lord, this is just *arrays*.  Not even *hashes*, yet...

So, is it obvious that I'm a little discouraged lately?  Don't suppose 
anyone can come up with some numbingly inspirational words to cheer us 
(well, me) up...

MikeL



summarizing the obvious (was: arrays, hashes unified ...)

2003-01-31 Thread Garrett Goebel
From: Piers Cawley [mailto:[EMAIL PROTECTED]]
> Garrett Goebel <[EMAIL PROTECTED]> writes:
> >
> > $idx_of_foo = $queue['foo']; # named lookup
> > $nth_foo= $queue[600];   # ordered lookup
> >
> > One is SvPOK the other SvIOK...
> >
> > Can't we handle both and still have the ordered lookup be fast?
[...]
> YOU CAN'T USE THE TYPE OF THE 'INDEX' OBJECT TO DETERMINE
> WHETHER YOU'RE DOING A HASHLIKE OR AN ARRAYLIKE LOOKUP. As
> Dan pointed out ages ago.

Got it. 

Conflating indexed and named lookups (creating a syntactic homonym), isn't
desirable or reasonably feasible. If we went down that route, it'd wind up
being more confusing, self-limiting, breed complexity in a response to
resolve the over-simplification, and drag down performance. Or probably
better left at "not desirable".

Or for the extremely thick:
  GOOD: Separate syntax for indexed vs. named lookups
  BAD:  Same syntax with >= 2 contextual meanings

Apologies for revisiting the graveyard of bad ideas and contributing
negatively to the signal to noise ratio. I too have great difficulty in
keeping up with the list. For the most part, I tend to read the replies of
the more enlightened to others' questions, comments, and proposals. How
Damian, our most prolific, found the time to sift through so much I don't
know.


I'm disappointed that The Perl Foundation (TPF) has been so quiet and
unresponsive on support for our core language designers and architects. I
dropped a note to all the TPF contacts over a week ago, and have yet to
receive a reply. It is a sad state of affairs when a language as prevalent
as Perl and with such a strong sense of community can be so disorganized and
lacking when it comes to financial sustenance.




Re: summarizing the obvious

2003-01-31 Thread Michael Lazzaro

On Friday, January 31, 2003, at 09:40  AM, Garrett Goebel wrote:

Or for the extremely thick:
  GOOD: Separate syntax for indexed vs. named lookups
  BAD:  Same syntax with >= 2 contextual meanings


Seriously, everyone read Damian's "Seven Deadly Sins" thing, if ya 
haven't read/heard it already.  It's quite short, and quite good at 
pointing out Things That Suck about programming languages.

http://www.csse.monash.edu.au/~damian/papers/PDF/SevenDeadlySins.pdf


I'm disappointed that The Perl Foundation (TPF) has been so quiet and
unresponsive on support for our core language designers and 
architects. I
dropped a note to all the TPF contacts over a week ago, and have yet to
receive a reply. It is a sad state of affairs when a language as 
prevalent
as Perl and with such a strong sense of community can be so 
disorganized and
lacking when it comes to financial sustenance.


It's worse than that, IMO.  Think of all the businesses that benefit 
from Perl... it's bloody *everywhere*.  It's the, what, fourth most 
popular language, after C/C++/Java, according to that 
monster-job-search-based-statistic on slashdot.  And yet the entire 
population of the Perl-using planet can't support 4 or 5 full time 
designers/developers?  Have we just not been effective in getting the 
word out, or are businesses truly that cheap?  Does Perl need to be 
made into a commercially supported product, w/ venture capital, a'la 
other recent open source pkgs, in order to get funded?

MikeL



Re: Arrays: Default Values

2003-01-31 Thread Dave Mitchell
On Fri, Jan 31, 2003 at 05:59:46PM +0100, Leopold Toetsch wrote:
> A lvalue param is not strictly reading, but here has to happen something 
> differently - yes:
> 
> IMHO some sort of proxy could be passed here, saying: "if you write to 
> me, this will be at @a[0]". Or auto-vivify the entry.

This is what Perl 5 does at the moment:

$ perl5.8.0 -MDevel::Peek -e 'sub f{Dump($_[0])}; f($a[9])'
SV = PVLV(0x8177118) at 0x8166a74
  REFCNT = 1
  FLAGS = (GMG,SMG)
  IV = 0
  NV = 0
  PV = 0
  MAGIC = 0x816e7e0
MG_VIRTUAL = &PL_vtbl_defelem
MG_TYPE = PERL_MAGIC_defelem(y)
  TYPE = y
  TARGOFF = 9
  TARGLEN = 1
  TARG = 0x817ad88
SV = PVAV(0x8183bd4) at 0x817ad88
  REFCNT = 2
  FLAGS = ()
  IV = 0
  NV = 0
  ARRAY = 0x0
  FILL = -1
  MAX = -1
  ARYLEN = 0x0
  FLAGS = (REAL)

However, I think this is clumsy and overly complex; since Perl6 allows us
to declare parameters rw or whatever, I think it should always autovivify
unless we know the param is read-only (or in-only, or whatever the correct
terminology is).

-- 
"There's something wrong with our bloody ships today, Chatfield."
Admiral Beatty at the Battle of Jutland, 31st May 1916.



out-of-place-rant (was: summarizing the obvious)

2003-01-31 Thread Garrett Goebel
Michael Lazzaro wrote:
> On Friday, January 31, 2003, at 09:40  AM, Garrett Goebel wrote:
> >
> > 
> > I'm disappointed that The Perl Foundation (TPF) has been so 
> > quiet and unresponsive on support for our core language
> > designers and architects. I dropped a note to all the TPF
> > contacts over a week ago, and have yet to receive a reply.
> > It is a sad state of affairs when a language as prevalent
> > as Perl and with such a strong sense of community can be so 
> > disorganized and lacking when it comes to financial
> > sustenance.
> > 
> 
> It's worse than that, IMO.  Think of all the businesses that benefit 
> from Perl... it's bloody *everywhere*.  It's the, what, fourth most 
> popular language, after C/C++/Java, according to that 
> monster-job-search-based-statistic on slashdot.  And yet the entire 
> population of the Perl-using planet can't support 4 or 5 full time 
> designers/developers?  Have we just not been effective in getting the 
> word out, or are businesses truly that cheap?  Does Perl need to be 
> made into a commercially supported product, w/ venture capital, a'la 
> other recent open source pkgs, in order to get funded?

Don't forget giving credit where credit is due. YetAnother has accomplished
a good deal. I don't understand the current relative silence, but they did
setup and administer The Perl Foundation (TPF). Quite a number of companies
and individual did fund TPF's 2002 grants
(http://donate.perl-foundation.org/index.pl?node=Fund+Drive+Details&selfund=
2). O'Reilly and ActiveState have for a long time employeed a substantial
number of people who spend a significant amount of time improving Perl. And
don't forget the folks and hardware donations behind CPAN. There are
doubtlessly many other organizations which support people like ValueClick
has Ask.

I just don't follow the lack of active and organized financial support for
Perl6...

I may not have the time, knowledge, and ability to contribute much to Perl6
language design or Parrot. But, point me where I can send a check that'll
support Larry, Damian, and Dan. That for the moment, I can still manage... 

I'll shut up now. No need to mention that this belongs on advocacy.

--
Garrett Goebel
IS Development Specialist

ScriptPro   Direct: 913.403.5261
5828 Reeds Road   Main: 913.384.1008
Mission, KS 66202  Fax: 913.384.2180
www.scriptpro.com  [EMAIL PROTECTED]



Re: tinderbox troubles?

2003-01-31 Thread Robert Spier
> Strange. I can ssh in, and apachectl claims that the webserver is running,
> but I'm getting that error too.
> 
> Ask, Robert: any ideas?

Looks like the apache had hung somewhere.  I shut it down and started
it up, and it seems ok.

-R