The basic status is that lots of people, many of them coincidentally
named Leopold Toetsch, have been fixing zillions of things and
implementing a number of new features. Nearly everything needed for
0.0.9 has happened, and a lot else besides.
I personally have been busy with my day job, shipping
ralph wrote:
Other than the placeholder situation, I
don't understand when one could do the
'is given($_)' and not do the ($_ = $_).
Any time that the caller's topic isn't supposed to be
explicitly passed as an argument, but is still used within
the subroutine.
For example, the Class::Contract
Dan Sugalski wrote:
We're definitely going to need to nail the semantics down. Would one
thread throwing an exception require all the threads being aborted, for
example?
I would imagine so. You can't reasonably build a junction out of values
that weren't successfully created. If you write:
$
On Nov-15, Leopold Toetsch wrote:
> Steve Fink wrote:
>
> >I replied to ticket #16941 a while back but I don't think I had RT
> >actually send any mail to anybody. Anyone have an opinion on the patch
> >I put in it? (I'm trying to clean out some local changes so I can
> >apply other people's patch
> > my sub foo ($_ = $_)
> >
> > to just propagate the outer $_ inward.
>
> That only works when $_ can somehow be
> shoe-horned into the parameter list.
> Whereas:
>
>my sub foo is given($_)
>
> works for *any* parameter list.
Other than the placeholder situation, I
don't understa
At 3:45 PM +1100 11/19/02, Damian Conway wrote:
Dave Whipp wrote:
Does the exception get deferred until after all the threads have completed?
I would doubt it.
We're definitely going to need to nail the semantics down. Would one
thread throwing an exception require all the threads being abor
On Monday, November 18, 2002, at 08:19 PM, Damian Conway wrote:
(B
(B>> What was the final syntax for vector ops?
(B>> @a $B"c(B+$B"d(B @b
(B>> @a $B"d(B+$B"c(B @b
(B>
(B> The latter (this week, at least ;-).
(B
(BThis reminds me: I though of another set of bracing characte
Iain 'Spoon' Truskett wrote:
@a ???+??? @b
@a ???+??? @b
Y'know, for those of us who still haven't set up Unicode, they look
remarkably similar =)
"Think Of It As Evolution In Action"
;-)
Damian
Dave Whipp wrote:
Under my junctive semantics it is. It simply calls C twice, with
the two states, and returns a conjunction of the resulting filehandles.
Though you probably really want a *dis*junction there.
The thing that's worrying me is: what happens when one of them throws an
exception?
Larry wrote:
The long and the short of it was that
my sub foo ($_ := $arg = $_)
is how you might set $arg to be both the "topic" and the "given".
Wow. I'm surprised by how much I don't like that syntax! ;-)
I mean, two entirely different meanings for $_ in the space of one parameter
defi
"Damian Conway" <[EMAIL PROTECTED]> wrote > >my $file = open "error.log"
& "../some/other.log"; # I hope this is legal
>
> Under my junctive semantics it is. It simply calls C twice, with
> the two states, and returns a conjunction of the resulting filehandles.
> Though you probably really wan
On Monday, November 18, 2002, at 08:17 PM, Damian Conway wrote:
Sure. C always evaluates its condition in a scalar context.
Oh, duh. Thanks.
David
--
David Wheeler AIM: dwTheory
[EMAIL PROTECTED] ICQ: 15726394
http://david.w
* Damian Conway ([EMAIL PROTECTED]) [19 Nov 2002 15:19]:
> Luke Palmer asked:
> > What was the final syntax for vector ops?
> >
> >@a ???+??? @b
> >@a ???+??? @b
> The latter (this week, at least ;-).
Y'know, for those of us who still haven't set up Unicode, they look
remarkably similar =
Luke Palmer asked:
What was the final syntax for vector ops?
@a ≪+≫ @b
@a ≫+≪ @b
The latter (this week, at least ;-).
Damian
David Wheeler asked:
while <$fh> {...}# Iterate until $fh.readline returns EOF?
That's a scalar context?
Sure. C always evaluates its condition in a scalar context.
Damian
> Date: Tue, 19 Nov 2002 14:29:46 +1100
> From: Damian Conway <[EMAIL PROTECTED]>
>
> Ken Fox lamented:
>
> >> Or the circumfix <<...>> operator. Which is the problem here.
> >
> > This is like playing poker with God.
>
> I hear God prefers dice.
>
>
> > What does the circumfix <<...>> opera
On Monday, November 18, 2002, at 08:05 PM, Damian Conway wrote:
while <$fh> {...}# Iterate until $fh.readline returns EOF?
More or less. Technically: call <$fh.next> and execute the loop body
if that method
returns true. Whether it still has the automatic binding to $_ and the
implic
David Wheeler asked:
How will while behave?
C evaluates its first argument in scalar context, so:
while <$fh> {...}# Iterate until $fh.readline returns EOF?
More or less. Technically: call <$fh.next> and execute the loop body if that method
returns true. Whether it still has the au
> Mailing-List: contact [EMAIL PROTECTED]; run by ezmlm
> X-Sent: 19 Nov 2002 02:51:54 GMT
> Date: Tue, 19 Nov 2002 13:51:56 +1100
> From: Damian Conway <[EMAIL PROTECTED]>
> X-Accept-Language: en, en-us
> Cc: "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
> X-SMTPD: qpsmtpd/0.12, http://develooper.com/co
matt diephouse wrote:
sub foo($param is junction) {...}
Doesn't that go against perl's dynamic philosophy?
???
That requires me to type my methods where I may not want to.
> Let's say I have a sub that logs errors:
sub log_error($fh, $error) { # filehandle and error msg
$
On Monday, November 18, 2002, at 06:51 PM, Damian Conway wrote:
for <$fh> {...}# Build and then iterate a lazy array (the elements
# of which call back to the filehandle's input
# retrieval coroutine)
for <$iter> {...} # Build and then iterate a lazy array (the elements
Seriously, that's a good trick. How does it work? What do these
examples do?
print <<"a" "b" "c">>;
Squawks about finding the string "b" immediately after the heredoc introducer.
print <<"a"
"b"
"c">>;
Likewise.
Is it illegal now to use quotes in qw()?
Nope. Onl
On Monday, November 18, 2002, at 05:47 PM, Luke Palmer wrote:
It's either that or have your functions, which were perfectly logical
suddenly be subject to junction logic. That is, if $x == 2 and $x
== 3 both being true, when your code relies on them not both firing.
I think it's a very good d
Damian Conway wrote:
It's [<<...>>>] the ASCII synonym for the «...» operator, which
is a synonym for the qw/.../ operator.
Nope. Heredocs still start with <<.
Hey! Where'd *that* card come from? ;)
Seriously, that's a good trick. How does it work? What do these
examples do?
print <<"a" "
Ken Fox lamented:
Or the circumfix <<...>> operator. Which is the problem here.
This is like playing poker with God.
I hear God prefers dice.
What does the circumfix <<...>> operator do?
It's the ASCII synonym for the «...» operator, which is a
synonym for the qw/.../ operator.
Here d
Damian Conway wrote:
Ken Fox wrote:
The < must begin the circumfix <> operator.
Or the circumfix <<...>> operator. Which is the problem here.
This is like playing poker with God. Assuming you can get over
the little hurdles of Free Will and Omniscience, there's still
the problem of Him pullin
On Tue, Nov 19, 2002 at 07:45:25AM +1100, Damian Conway wrote:
: >What might be is an interesting, er, topic.
:
: I would argue it ought to be just $_, which is, after all,
: the One True Topic. And conveniently lexically predeclared in all scopes.
:
: I would also argue that it ought not be cal
At 4:47 PM -0800 11/18/02, kj wrote:
Hello Jonathan,
I just dropped my shell resources back down (datasize 6144k,
stacksize 512k) and the tests pass for the version compiled with the
gcc-3.1-based compiler. Looks like we found our culprit, at least
for Darwin 5.5.
I wonder which version
Larry wrote:
So you can do it any of these ways:
for <$dance> {
for $dance.each {
for each $dance: {
^ note colon
Then there's this approach to auto-iteration:
my @dance := Iterator.new(@squares);
for @dance {
Okay, so now I need to make sense of the
I've updated the literals tests to fully account for the radix notation;
and I've also updated the tests to use the new radix#(number):(number)
notation. Let me know if anyone finds any errors.
Find them at:
http://jryan.perlmonk.org/images/literals.tar.gz
Michael Lazzaro wrote:
--- Numeric L
Hello again,
I tried upping the datasize to 80 meg and stacksize to 8 meg in my
shell, and compiled with gcc3:
Reading specs from /usr/libexec/gcc/darwin/ppc/3.1/specs
Thread model: posix
Apple Computer, Inc. GCC version 1041, based on gcc version 3.1 20020105
(experimental)
Parrot built c
Hello Jonathan,
I just dropped my shell resources back down (datasize 6144k, stacksize
512k) and the tests pass for the version compiled with the gcc-3.1-based
compiler. Looks like we found our culprit, at least for Darwin 5.5.
I wonder which version of the compiler is on glastig? Having
On Tue, Nov 19, 2002 at 08:53:17AM +1100, Damian Conway wrote:
: my $dance = Iterator.new(@squares);
: for $dance {
Scalar variables have to stay scalar in list context, so $dance cannot
suddenly start behaving like a list. Something must tell the scalar
to behave like a list, and I don't
> Mailing-List: contact [EMAIL PROTECTED]; run by ezmlm
> Date: Mon, 18 Nov 2002 18:59:58 -0500
> From: matt diephouse <[EMAIL PROTECTED]>
> X-SMTPD: qpsmtpd/0.12, http://develooper.com/code/qpsmtpd/
>
> Damian Conway wrote:
>
>> matt diephouse wrote:
> >
> >>> $junction = $x | $y | $z;
> >>>
Larry:
> > sub bar(; $foo = ) {...}
Damian:
> topic [would be] C.
I assumed implied an 'is given'.
I don't see why it couldn't.
Damian:
> Hm. Given that the topic is in some sense
> a property of the lexical scope of the subroutine
> body, this might be a possibility:
>
> sub bar($foo i
Dan Sugalski wrote:
Hrm. What happens if the junction is then used as an iterator?
$junction = File::Open("foo") | File::Open("bar);
for (<$junction>) {
...
}
In Larry's formulation that's just the same as:
while $_ := $junction.next { ... }
which, when called on a junction, Cs e
Damian Conway wrote:
matt diephouse wrote:
$junction = $x | $y | $z;
foo($junction);# Call foo($x), foo($y), and foo($z)
# in parallel and collect the results
# in a disjunction
Looking at that code, I'm w
Damian Conway:
# Larry Wall wrote:
# > On Mon, Nov 18, 2002 at 08:05:47AM +1100, Damian Conway wrote:
# > : I still think my original:
# > :
# > : sub bar(; $foo = $topic) is given($topic) {...}
# > :
# > : is the appropriate compromise.
# >
# > Won't fly. Referring to something lexical before
On Monday, November 18, 2002, at 01:33 PM, Dave Whipp wrote:
my int $a is range(1000..1255) is unchecked; # auto-infer 8bit
Just to clarify: I think of the latter (C) for efficient
packing into arrays (e.g. a 5-bit range can be packed efficiently,
even though there is no 5-bit c-type): b
On Monday, November 18, 2002, at 12:48 PM, Garrett Goebel wrote:
I went back through those posts, and I found where you suggested
0c0123... but I can't find a post from Larry confirming it.
It's not confirmed, just wild speculation. If we're reasonably sure we
don't have any gaping errors in
On Mon, 2002-11-18 at 10:08, Erik Steven Harrison wrote:
>
> --
>
> On 17 Nov 2002 11:09:53 -050
> Bryan C. Warnock wrote:
> >On Wed, 2002-11-13 at 13:26, Angel Faus wrote:
> >>
> >> There are many ways to specify literal numeric values in perl, but
> >> they default to base 10 for input an
If memory serves me right, Leopold Toetsch wrote:
>
> > Hmm... I guess I can only quote the ECMA spec here ...
> > conv.i1 Convert to int8, pushing int32 on stack
>
>
> truncate to [-128..127]? And why the push?
IL is a fully stack language ... pop int32, trunc, push int8 ...
Yes,
--- Damian Conway <[EMAIL PROTECTED]> wrote:
> Austin Hastings asked:
> > That is, can I say
> >
> > for (@squares)
> > {
> > ...
> > if $special.instructions eq 'Advance three spaces'
> > {
> > $_.next.next.next;
> > }
> > ...
> > }
> >
> > or some other suchlike thing that will
Leopold Toetsch wrote:
> > If memory serves me right, Leopold Toetsch wrote:
>
>^^^...
>
> Your mailer should know ;-)
That's his mailer talking. It always does that. :-)
> > Hmm... I guess I can only quote the ECMA spec here ...
> > conv.i1 Convert to int8, pushing int32 on
At 9:05 AM +1100 11/19/02, Damian Conway wrote:
matt diephouse wrote:
$junction = $x | $y | $z;
foo($junction);# Call foo($x), foo($y), and foo($z)
# in parallel and collect the results
# in a disjunction
Lo
On Mon, 18 Nov 2002, Iacob Alin wrote:
> > Hmm... I guess I can only quote the ECMA spec here ...
> > conv.i1 Convert to int8, pushing int32 on stack
> > conv.i2 Convert to int16, pushing int32 on stack
[etc.]
> This might be a stupid question, but are this datatypes going to be PMCs?
It's a ve
Iacob Alin wrote:
This might be a stupid question, but are this datatypes going to be PMCs?
Only types bigger then our current native types:
INTVAL typically 32 bit long on 32 bit machines
FLOTVAL typically double
Alin
leo
Gopal V wrote:
If memory serves me right, Leopold Toetsch wrote:
^^^...
Your mailer should know ;-)
Hmm... I guess I can only quote the ECMA spec here ...
conv.i1 Convert to int8, pushing int32 on stack
truncate to [-128..127]? And why the push?
What is the behaviour on overflow?
co
matt diephouse wrote:
$junction = $x | $y | $z;
foo($junction);# Call foo($x), foo($y), and foo($z)
# in parallel and collect the results
# in a disjunction
Looking at that code, I'm wondering how you pass a
Damian Conway wrote:
BTW, in thinking about it further, I realize that Dan is going
to have to tackle this issue anyway. There's fundamentally no
difference in the exigencies of:
$junction = $x | $y | $z;
foo($junction);# Call foo($x), foo($y), and foo($z)
Austin Hastings asked:
By extension, if it is NOT given an iterator object, will it appear to
create one?
Yep.
That is, can I say
for (@squares)
{
...
if $special.instructions eq 'Advance three spaces'
{
$_.next.next.next;
}
...
}
or some other suchlike thing that will enab
"Michael Lazzaro" <[EMAIL PROTECTED]> wrote
> (A) How shall C-like primitive types be specified, e.g. for binding
> to/from C library routines, etc?
>
>Option 1: specify as property
>
> my numeric $a is ctype("unsigned long int"); # standard C type
> my numeric $b is ctype("my_int32"
Ken Fox wrote:
Damian Conway wrote:
my $iter = fibses();
for < <$iter> > {...}
(Careful with those single angles, Eugene!)
Operator << isn't legal when the grammar is expecting an
expression, right?
Right.
The < must begin the circumfix <> operator.
Or the circumfix <<...>> op
From: Michael Lazzaro [mailto:[EMAIL PROTECTED]]
> On Monday, November 18, 2002, at 11:37 AM, Garrett Goebel wrote:
> > In perl5, octal is signified by the leading zero. There is no 0c0123
> > notation.
>
> Right, but on p6l we had been talking about eliminating the assumed
> octalness of 0123,
Larry Wall wrote:
On Mon, Nov 18, 2002 at 08:05:47AM +1100, Damian Conway wrote:
: I still think my original:
:
: sub bar(; $foo = $topic) is given($topic) {...}
:
: is the appropriate compromise.
Won't fly. Referring to something lexical before it's declared is
a no-no.
I would maintain
On Mon, Nov 18, 2002 at 08:05:47AM +1100, Damian Conway wrote:
: I still think my original:
:
: sub bar(; $foo = $topic) is given($topic) {...}
:
: is the appropriate compromise.
Won't fly. Referring to something lexical before it's declared is
a no-no. I think we need some other way of
On Monday, November 18, 2002, at 11:37 AM, Garrett Goebel wrote:
In perl5, octel is signified by the leading zero. There is no 0c0123
notation.
Right, but on p6l we had been talking about eliminating the assumed
octalness of 0123, therefore requiring us to come up with an alternate
syntax, e
On Mon, Nov 18, 2002 at 10:59:07AM -0800, Larry Wall wrote:
> On Thu, Nov 14, 2002 at 07:40:38PM +0100, Angel Faus wrote:
> : I would preferer to limit the usage of "letter notation" to just base
> : 11-36, and have n:F = n:f for every n.
> :
> : It is simpler, and we can always use de "dot notat
Michael Lazzaro wrote:
>
> decimal notation:
> 123 # int 123
> 0123 # int 123
[...]
> 0c0123 # oct
[...]
> - need to verify that 0b1, 0c1, 0x1 are still allowed
Found a problem:
perl -e "print 0123"
gives: 83
perl -e "print 0c0123"
gives:
Bareword found
Gopal V said:
> If memory serves me right, Leopold Toetsch wrote:
>
> > Please have a look at include/parrot/datatypes.h. I hope that there are
> > all types you'll need.
>
> It seems so ... but I'm not really certain about Float data types ...
>
> > Can you specify, what opcodes you would need?
>
On Monday, November 18, 2002, at 10:57 AM, Michael Lazzaro wrote:
Eek, that one was short-lived! No problem: if Larry decides on Ada
syntax, the following changes happen:
s/:/#/ (for explicit radix)
s/./:/ (for dotted -- er, coloned -- form)
- floating point becomes allowed in
On Thu, Nov 14, 2002 at 07:40:38PM +0100, Angel Faus wrote:
: I would preferer to limit the usage of "letter notation" to just base
: 11-36, and have n:F = n:f for every n.
:
: It is simpler, and we can always use de "dot notation" for bigger
: bases.
I'm thinking at the moment that I'd like t
Here are some issues we need the design team to decide.
(A) How shall C-like primitive types be specified, e.g. for binding
to/from C library routines, etc?
Option 1: specify as property
my numeric $a is ctype("unsigned long int"); # standard C type
my numeric $b is ctype("my_int32"
--- Numeric Literals ---
decimal notation:
123 # int 123
0123 # int 123
123.0 # num 123.0
-123 # int -123
0_1.2_3 # ok
_01.23 # wrong
01.23_ # wrong
01_._23 # wrong
1__2# wrong
exponential notation:
-1.23e4
> -Original Message-
> From: kj [mailto:[EMAIL PROTECTED]]
>
> I'm getting mixed results building from this morning's CVS -- on
> Linux/x86 I only get the t/op.lexicals.t failures, but on Darwin/PPC I'm
> also getting failures in t/pmc/scratchpad.t. Would your patch have
> anything to do
--- Damian Conway <[EMAIL PROTECTED]> wrote:
> The semantics of C would simply be that if it is given an
> iterator object (rather than a list or array), then it calls
> that object's iterator once per loop.
By extension, if it is NOT given an iterator object, will it appear to
create one?
That
On Monday, November 18, 2002, at 07:14 AM, Graham Barr wrote:
Are we not just getting too carried away with all this base
of literals.
I also think -documentation is the wrong place to discuss this.
Yep. I'll try and come up with a summary today or tomorrow that marks
all the *known* behavi
From: Dave Storrs [mailto:[EMAIL PROTECTED]]
> On Thu, Nov 14, 2002 at 02:29:38PM -0600, Garrett Goebel wrote:
> > It is interesting that no one has yet taken the time to
> > start defining the terms we're using.
>
> Good point. I volunteered to be keeper of the glossary a while ago,
> but I nev
On Mon, Nov 18, 2002 at 03:14:52PM +, Graham Barr wrote:
> On Sat, Nov 16, 2002 at 11:12:15PM -0800, Dave Storrs wrote:
> > 24*60*60:10 # one day in seconds, easy representation
>
> And the advantage of that over 24*60*60*10 would be ?
Well, for one thing, my version means 1 day
On Mon, Nov 18, 2002 at 10:47:17AM -0600, Garrett Goebel wrote:
> I've tried asking if lists are literals or not... but I've been Warnock'd.
I have comments to make on several things posted recently. I'm waiting
for my boss to ask our legal department if I can contribute. There may
be others doi
At 2:57 PM + 11/18/02, Nicholas Clark wrote:
But I'm not sure if parrot is going to give the perl interpreter cheap
threading. (Does the async IO mean that one parrot interpreter could
internally co-operatively thread perl in some cases?)
Oh, it could do it preemptively. And parrot can (and,
At 9:10 PM -0800 11/17/02, Dave Whipp wrote:
Dan Sugalski wrote:
The expensive part is the shared data. All the structures in an
interpreter are too large to act on atomically without any sort of
synchronization, so everything shared between interpreters needs to
have a mutex associated with i
Graham Barr wrote:
> On Sat, Nov 16, 2002 at 11:12:15PM -0800, Dave Storrs wrote:
> > Or how about run-time evaluated versions?
> >
> > # Set a timer to run for either a day or an hour, depending
> > $timer = 60*60*($use_days ? 24 : 1):10
>
> Then it is no longer a literal is it.
True. But t
On Sat, Nov 16, 2002 at 11:12:15PM -0800, Dave Storrs wrote:
> Hmm, interesting. Just as an aside, this gives me an idea: would it be
> feasible to allow the base to be specified as an expression instead of
> a constant? (I'm pretty sure it would be useful.) For example:
>
> 4294967296:1.2.3.4
--
On 17 Nov 2002 11:09:53 -050
Bryan C. Warnock wrote:
>On Wed, 2002-11-13 at 13:26, Angel Faus wrote:
>>
>> There are many ways to specify literal numeric values in perl, but
>> they default to base 10 for input and output. Once the number has
>
>Surely, Perl 6 will allow changing the ra
On Mon, Nov 18, 2002 at 08:22:45AM +1100, Damian Conway wrote:
> Luke Palmer asked:
>
> > Of course, there will be a pragma or something to instruct it to
> > operate serially, yes?
>
> I doubt it. Unless there's a pragma to instruct threads to operate
> serially.
>
> In any case, I'm not sure w
If memory serves me right, Leopold Toetsch wrote:
> Please have a look at include/parrot/datatypes.h. I hope that there are
> all types you'll need.
It seems so ... but I'm not really certain about Float data types ...
> Can you specify, what opcodes you would need?
Hmm... I guess I can only q
Damian Conway wrote:
my $iter = fibses();
for < <$iter> > {...}
(Careful with those single angles, Eugene!)
Operator << isn't legal when the grammar is expecting an
expression, right? The < must begin the circumfix <> operator.
Is the grammar being weakened so that yacc can handle it?
Rhys Weatherley wrote:
I've been working on some other stuff lately, so this is the
first opportunity I've had to catch up on Parrot.
I'm interested in the current status of the following within
Parrot:
- object/class support
- fixed-sized integers and/or conversion opcodes
- embedding
I've been working on some other stuff lately, so this is the
first opportunity I've had to catch up on Parrot.
I'm interested in the current status of the following within
Parrot:
- object/class support
- fixed-sized integers and/or conversion opcodes
- embedding of binary extension sect
Simon Glover (via RT) wrote:
# New Ticket Created by Simon Glover
# Please include the string: [perl #18445]
# in the subject line of all future correspondence about this issue.
# http://rt.perl.org/rt2/Ticket/Display.html?id=18445 >
Applied, thanks
leo
The biggest problem currently seems to be string_to_cstring. Some time
ago, I made a change, that the returned cstr has the
BUFFER_immobile_FLAG set, which should be the Right Thing(tm), *but* -
though immobile strings don't move - the memory_pool, where these
strings live, get freed at the end
JIT has big improvement in integer related programs but did lack to
improve real world i.e. PMC using apps.
I wanted to test, how much we can gain, by doing vtable calls directly
in JIT and did optimize 4 ops (dec_p, inc_p, if_p_ic, unless_p_ic)
(which happen to be used in mops_p.pasm's MOPS lo
On Wed, 2002-11-13 at 13:26, Angel Faus wrote:
>
> There are many ways to specify literal numeric values in perl, but
> they default to base 10 for input and output. Once the number has
Surely, Perl 6 will allow changing the radix on a more global scale.
use radix(16); # or something of the il
Dan Sugalski wrote:
The expensive part is the shared data. All the structures in an
interpreter are too large to act on atomically without any sort of
synchronization, so everything shared between interpreters needs to have
a mutex associated with it. Mutex operations are generally cheap, but i
85 matches
Mail list logo