this
The alternative approach to figuring out what is happening is to write
a program with AIO, and see what it looks like under truss.
truss is your friend :-)
Hmm. But solaris doesn't ship with a compiler, does it?
Nicholas Clark
On Fri, Sep 29, 2000 at 12:37:15PM -0400, Dan Sugalski wrote:
At 04:13 PM 9/29/00 +0100, Nicholas Clark wrote:
Are you suggesting that the attributes use the same mapping system as
the XS (or son-of-XS (XS++)) typemaps in lib/ExtUtils/typemap?
If so, will there be the "terse&qu
was to store floats as ASCII strings. If there's a way of tagging what is
"native" format of float, and hence reader knowing whether writer's
format is the same, one possibility could be to write out native ASCII
Then reader can fall back to parsing in the ASCII if the binary isn't
edible.
Nicholas Clark
?
[Having seen the pTHX_ appear all over perl5]
Nicholas Clark
the lexer to influence the tokeniser, what characters are we
going to use in (? ) for smoke and mirrors extensions? (?s) and (?m) are
already taken.
[Seriously, I was under the impression that the perl tokenizer was
influenced by the state of the lexer]
Nicholas Clark
a generic parser powerful enough to
parse perl (if this can be done), to me this would suggest that it would
allow a lot of other people to use it to rapidly implement parsers for just
about anything else.
Nicholas Clark
the PC from a branch table in memory.
Nicholas Clark
On Wed, Oct 25, 2000 at 06:23:20PM +0100, Tom Hughes wrote:
In message [EMAIL PROTECTED]
Nicholas Clark [EMAIL PROTECTED] wrote:
Specific example where you can't:
on ARM, the branch instructions (B and BL) are PC relative, but only have
a 24 bit offset field. The address space
ly copy anything (wasting time and (shared) memory
pages) until either $a or $b got changed.
[I have this feeling that there's a bit of this already in sv.c, but I'm
not sure how much]
Nicholas Clark
s of the 2 impossible?
Am I barking up the wrong tree completely?
Nicholas Clark
a
If PDDs start as "Proposed" without needing any approval does this remove
the problem of a small group having a stranglehold?
Nicholas Clark
Scientist and the
Church of the Latter Day Saints in your list of organisations.
Do we need a sub list perl6-conspiracy-theories so that we can keep the
main lists free for other discussions?
Nicholas Clark
such a document an "apprentice" job? (see perl6-meta))
Nicholas Clark
bites]
Not that that's important. But fflush(NULL) is, and we still seem to run
into that one on one current platform
But I agree with what you're saying.
Nicholas Clark
[UNKNOWN](sv2)
swaps to
sv2-add[NUM](sv1)
(It's "obvious" in the usual way - not obvious until you see it. I've been
prodding in pp_add in perl5, so I've been thinking about these sort of
things)
Nicholas Clark
but
ultimately theoretical arguments.
[Was it medieval scientists who preferred reasoning to experiments?]
Nicholas Clark
changes have made]
hangon, there was a point that was supposed to back up. Accuracy is needed,
but I fear that a single general scheme to deliver this will slow down the
common cases.
Nicholas Clark
On Tue, Dec 12, 2000 at 06:05:30PM +, David Mitchell wrote:
Nicholas Clark [EMAIL PROTECTED] wrote:
On Tue, Dec 12, 2000 at 02:20:44PM +, David Mitchell wrote:
If we assume that ints and nums are perl builtins, and that some people
have implemented the following external types
e issue, and waiting on the language spec
Nicholas Clark
s a series
of substr operations.
This doesn't answer the real challenge which is matching.
Nicholas Clark
it less efficiently.
Just a passing thought. Extrapolated up from 1 RISC CPU I know quite well.
Nicholas Clark
hing, so I try to keep quiet)
Nicholas Clark
On Wed, Dec 20, 2000 at 09:00:47AM -0600, Jarkko Hietaniemi wrote:
struct {
IV whatitis;
more a perl5 question - why IV not int?
int might be smaller and "more natural" (your words)
eg why does looks_like_number return IV not int? and various other bits
of the perl API use IV?
haviour
(TomC because it's not backwards compatible, Ilya because you can alter
a scalar's value as a side effect of accessing it, so what a scalar
appears to contain becomes a function of its access history, not simply
and solely what you assigned to it)
Nicholas Clark
s.
We old'ns need people that don't know "it can't be done" to tell us
how to do it - but we reserve the right to say "we tried that it didn't
work" too.
^ because
Nicholas Clark
On Thu, Dec 21, 2000 at 05:36:05PM +, Nick Ing-Simmons wrote:
Nicholas Clark [EMAIL PROTECTED] writes:
where it is possible to get "smart" when one arg is a "special case" of
the other.
And similarly numbers must be convertable to "complex long double&q
hacking to make perl5's compiler good enough to bootstrap a
clean perl6 compiler to compile the perl systems to a binary.
Nicholas Clark
use that year or two for the initial implementation
)
Perl is designed to make easy things easy and hard things possible.
We seem to be arguing about the best method for making it *im*possible
to use anything but the initially-chosen-implementation language to
implement perl. This feels like a bad thing.
Nicholas Clark
that be an acceptable perl5 compromise?
[follow up to p5p please]
Nicholas Clark
va does do it, but as it's all going through Java's windowing library,
the implementation know where the windowing system calls are going to be)
Upshot is that threading can be written if need be, so that's one less
(admittedly now obscure) platform that isn't excluded by threading.
Nicholas Clark
, with the speed up hack for the common case.
Nicholas Clark
On Wed, Feb 07, 2001 at 05:19:16PM +, David Mitchell wrote:
Nicholas Clark [EMAIL PROTECTED] mused:
On Wed, Feb 07, 2001 at 04:03:49PM +, David Mitchell wrote:
BTW, should the vtable include all the mutator operators too, ie
++, += and so on, on the grounds that an implementation
like, and that 2 + 3 doesn't overflow.
Hmm. += isn't another opcode
it's a special case of a = b + c where the PMCs for a and b are the same
thing. And I see no real reason why it can't be part of the + entry.
Nicholas Clark
On Wed, Feb 07, 2001 at 01:24:27PM -0500, Dan Sugalski wrote:
At 06:12 PM 2/7/2001 +, Nicholas Clark wrote:
But I don't like the thought of going in and out of a lot of generic
routines for
$a = 3;
$a += 2;
when the integer scalar ought to know what the inside of another integer
erstand that the intent was to make human
readable C files (as opposed to obfuscation for cpp)
Nicholas Clark
. ;-)
I don't think "will ever say" holds. And I think I'd phrase it as
"ongoing silence". But apart from that, it seems to be a working
assumption for design proposals.
Nicholas Clark
:
http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2000-02/msg00369.html
Nicholas Clark
it is possible to change the
underlying representation from something packed to unpacked whenever it
seems appropriate without breaking anything that plays by the rules.
Nicholas Clark
for "the largest
integer" which in this case would be 72 bits.
[and on a machine with nothing larger than 32 will be 32]
The type that used to be known as "unsigned long"
[before "unsigned long long" appeared on some machines and made life confusing]
Nicholas Clark
undefined by ANSI, so it's legal.
(Thanks Helmut for persevering until we tracked this one down)
Nicholas Clark
On Thu, Mar 08, 2001 at 01:55:57PM -0500, Dan Sugalski wrote:
At 06:49 PM 3/8/2001 +, Nicholas Clark wrote:
On Thu, Mar 08, 2001 at 11:43:31AM -0500, Dan Sugalski wrote:
I was thinking maybe (length/4)*31-bit 2s complement to make portable
overflow detection easier, but that would
that was expected, but didn't execute subsequence conditions
in the way that would be expected by an assembly programmer.
[However, I like the elegant sign bit testing logic you give.]
Nicholas Clark
On Thu, Mar 08, 2001 at 04:28:48PM -0500, Dan Sugalski wrote:
At 08:43 PM 3/8/2001 +, Nicholas Clark wrote:
I think most processors that do 32x32 multiply provide a way to get the
64-bit result. Whether *we* can is another matter, of course, but if
platform folks want to drop
ut because they are used in more than 1 source file do need external
linkage.
Or were your "linkers are dead-stupid" words meaning that we can't tell
linkers to partially link libperl.a and then declare a whole bunch of
symbols that now can't be used for any purpose external to libperl.a
Nicholas Clark
else has exposed. So don't write these problems into
perl6.
Nicholas Clark
by Hong don't have the same
term case used with them that the letters of various alphabets do.
[hence programs wouldn't suddenly get confused when something akin to
lc A1 changed both characters, as would be the situation if 1 were
classed as upper case, and a lower case 1 were defined]
Nicholas
getting a free copy into
another register.
Nicholas Clark
) {
}
will find fast integer ops useful.
Nicholas Clark
.
Nicholas Clark
://www.perl.com/, the Perl Home Page.
nick@thinking-cap [parrot]$
Nicholas Clark
program attached.
Hopefully this is a the right style of doing things.
Nicholas Clark
--- Configure.pl.orig Mon Dec 31 15:32:56 2001
+++ Configure.plMon Dec 31 18:18:26 2001
@@ -178,12 +178,6 @@
$c{PQ} = ';
}
-# If using gcc, crank up its warnings as much as possible and make
modules that it will need, and issue warnings to the user to go get
any that are missing before running make?
Nicholas Clark
upset about that sort of thing. IIRC the only thing that turned up on p5p
disliking casting function pointers to and from data pointers was some sort
of obsolescent Cray.
Nicholas Clark
On Mon, Dec 31, 2001 at 06:19:22PM -0500, Dan Sugalski wrote:
At 11:10 PM 12/31/2001 +, Nicholas Clark wrote:
But is the correct correction to swap the parameters
((op_func_prederef_t)*pc_prederef) (interpreter, pc_prederef);
or to change the typedef?
The functions all take
`Parrot_PerlArray_class_init'
But no tests have failed yet as I type this. I really should go to bed.
Nicholas Clark
--- Configure.pl~ Mon Dec 31 22:06:48 2001
+++ Configure.plTue Jan 1 02:16:02 2002
@@ -395,15 +395,34 @@
foreach ('intvalsize', 'opcode_t_size') {
my $which = $_ eq 'intvalsize
with knowing printf formats for
the length of our types so that the code will work on strict C89 systems
(the prophet ANSI spake unto us that long is the longest type - what is
this 'long long' heresy of which you speak?) and more recent systems with
long long.
Nicholas Clark
--- packfile.c~ Mon Dec
n);
} ENCODING;
given that the ANSI C library seems happy to put const on prototypes for
functions that return a non-const pointer into the string (eg strchr())
but that is a more fundamental change than removing the warning by changing
just 1 file (as appended).
Nicholas Clark
--- encodings
This patch shuts up this one:
cc -Wall -I./include -DHAS_JIT -o trace.o -c trace.c
trace.c: In function `trace_op_dump':
trace.c:71: warning: enumeration value `PARROT_ARG_OP' not handled in switch
Nicholas Clark
--- trace.c~Sun Dec 30 12:05:20 2001
+++ trace.c Tue Jan 1 17:47:12
This shuts this one up
cc -Wall -I./include -DHAS_JIT -o runops_cores.o -c runops_cores.c
runops_cores.c: In function `runops_slow_core':
runops_cores.c:49: warning: implicit declaration of function `trace_op'
Nicholas Clark
--- runops_cores.c.orig Thu Dec 27 23:24:45 2001
On Tue, Jan 01, 2002 at 10:05:44PM +, Nicholas Clark wrote:
So, what's going wrong, and why all the segvs?
I figured it was better to start by wondering about the prederef code.
But I might just go to bed instead. Or fix compiler warnings. or perl5
The first segv is the ret in this (test
on other RISC architectures. [I'm aware that Alpha Linux kernels have fixup
code for unaligned word accesses, but I'm not sure what other platforms do.
I believe HP UX will SIGBUS, so I'd expect gcc on PA RISC to issue this warning
everywhere that gcc on ARM does]
Nicholas Clark
initializer
include/parrot/jit_struct.h:68: warning: (near initialization for
`op_assembly[0].string_constant_address.info[0].flag')
[1832 logical lines of warnings wrapping to 2748 physical gets in the way of
seeing the real output. :-(]
Nicholas Clark
--- jit2h.pl~ Mon Dec 31 00:15:28 2001
of the right hand side,
doing an unsigned long shift (which spilled off the end completely. oops.
undefined behaviour, nevermind) and then promoting the result of that to
long long.
Nicholas Clark
include/parrot/key.h:54: warning: declaration of `index' shadows global declaration
include/parrot/key.h:55: warning: declaration of `index' shadows global declaration
include/parrot/key.h:57: warning: declaration of `index' shadows global declaration
by renaming index as idx
Nicholas Clark
stop?
Nicholas Clark
a better way.
Nicholas Clark
but awkward allocations we're
asking it for? [ie its bugs that we're going to have to work around]
Nicholas Clark
On Mon, Jan 07, 2002 at 09:34:05PM +, Nicholas Clark wrote:
I believe that this patch gets all of these:
Yes, right:
--- ./include/parrot/vtable.h~Mon Jan 7 20:38:08 2002
+++ ./include/parrot/vtable.h Mon Jan 7 20:42:43 2002
What's an RCS header doing in an auto-generated file
, flagged copy on write.
And if your grep-as-perl doesn't actually modify the buffer there's no
copying. This assumes that the housekeeping of copy-on-write is less than
the time spent copying.
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
name except _t would avoid non
conformance. (do we want to avoid non conformance that much?)
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
patch, and my vtable_h.pl patch for the index warnings. There are still many
gcc warnings, but there would be less with these two applied (or reworked)
[There's no hurry to answer - there's plenty of perl5 for me to be getting
on with in the meantime :-)]]
Nicholas Clark
--
ENOJOB http://www.ccl4
which earns its keep raising my monitor slightly?)
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
is not a VAX^Wx86, and on some platforms we're compiling on
even int * must be aligned, let alone things like long double * or complex
structs.
If we're not serious about doing this, please could we drop -Wcast-align
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
with that name.
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
--- vtable_h.pl~Mon Dec 31 16:15:23 2001
+++ vtable_h.pl Wed Jan 9 20:15:11 2002
@@ -1,3 +1,7 @@
+#!/usr/bin/perl
+
+# $Id: vtable_h.pl,v 1.8 2001/12/31 15:58:28 simon Exp $
+
use Parrot::Vtable;
my %vtable
creates will obscure any real new ones.
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
--- classes/Makefile.in.origSun Jan 13 20:21:41 2002
+++ classes/Makefile.in Mon Jan 14 22:34:44 2002
@@ -12,7 +12,7 @@
#DO NOT ADD C COMPILER FLAGS HERE
#Add them in Configure.pl--look
simple renaming things (or at least I believe that they were, and if they
weren't I didn't afford them enough attention) with the exception of the
typedef for the preferef code, where I spent over an hour trying to get my
head round just what it was doing before I changed only a few lines.
Nicholas
be overly paranoid.
No no no. There is no such thing as overly paranoid. Even now the bugs are
breeding, conspiring, out to get each and every one of us...
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
with perl's regexp engine
speed?
And then later perl5 be allowed its optimiser back once parrot has one.
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
don't know about how the internals of all these things work, so I
may well be wrong on any technical detail.
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
À la perl 5, it can be useful just to run 1 test script under the harness.
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
--- t/harness.orig Wed Jan 2 19:19:09 2002
+++ t/harness Mon Jan 21 11:46:54 2002
@@ -1,7 +1,9 @@
#! perl -w
+# $Id: $
use strict;
use Test
and Term::ReadLine::Perl
(and I don't know why Term::ReadLine::Perl later decided that it could do
multi-line editing when it initially was doing sideways scrolling)
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
--- Configure.pl.orig Sun Jan 20 22:57:28 2002
+++ Configure.pl
to run
perl -MExtUtils::Manifest -e ExtUtils::Manifest::fullcheck
(possibly as a Makefile target) is useful.
Currently:
Not in MANIFEST: include/parrot/rxstacks.h
Not in MANIFEST: rxstacks.c
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
--- /mnt/six/parrot/parrot_readline
-strings -Wconversion -Waggregate-return -Winline -W
-Wsign-compare -Wno-unused -I./include -DHAS_JIT -DI386 -o test_main.o -c
test_main.c
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
--- test_main.c.origMon Jan 14 20:32:55 2002
+++ test_main.c Mon Jan 21 17:58:38 2002
init function (which
otherwise gcc will warn about, on the zealous warnings we use)
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
--- ./include/parrot/global_setup.h.origMon Dec 31 15:58:28 2001
+++ ./include/parrot/global_setup.h Mon Jan 21 21:32:03 2002
@@ -14,6
On Mon, Jan 21, 2002 at 09:00:48PM +, Nicholas Clark wrote:
I'm not certain that putting the test in Configure.pl is the right place
for it, but I do believe that having an accurate MANIFEST.SKIP and the
ability to run
perl -MExtUtils::Manifest -e ExtUtils::Manifest::fullcheck
: int format, INTVAL arg (arg 3)
key.c:36: warning: int format, INTVAL arg (arg 4)
Nicholas Clark
--
ENOJOB http://www.ccl4.org/~nick/CV.html
--- key.c.orig Mon Jan 14 20:32:54 2002
+++ key.c Mon Jan 21 23:09:06 2002
@@ -26,14 +26,14 @@
debug_key (struct Parrot_Interp* interpreter, KEY* key
Something Jarkko has just sent to p5p reminded me of a comment I thought of
but failed to include in the e-mail
On Mon, Jan 21, 2002 at 10:47:20PM +, Nicholas Clark wrote:
+ # No, include yourself to check your headers match your bodies
There must be a decent Baron Munchausen quote
But I don't think this was the way to fix this.
That doesn't feel right either.
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
Any thoughts on this patch?
- Forwarded message from Nicholas Clark [EMAIL PROTECTED] -
Mailing-List: contact [EMAIL PROTECTED]; run by ezmlm
List-Post: mailto:[EMAIL PROTECTED]
List-Help: mailto:[EMAIL PROTECTED]
List-Unsubscribe: mailto:[EMAIL PROTECTED]
List-Subscribe: mailto:[EMAIL
of const in a few places to
make gcc shut up, rather than anything that adds to the readability or
maintainability of the code. And not tested on alpha, because I don't have
one.
Nicholas Clark
--
ENOCHOCOLATE http://www.ccl4.org/~nick/CV.html
--- jit.c.orig Sun Jan 20 22:57:30 2002
+++ jit.c
, const char *little)
But I can't see a way to tell gcc that we want to do this and locally
no warnings 'cast-qual'; (if you see what I mean)
There don't seem to be pragmata to do this, and I can't spot an obvious
construction to launder away the const-ness.
Nicholas Clark
--
ENOJOB http://www.ccl4
On Sat, Jan 26, 2002 at 10:45:02PM +, Simon Cozens wrote:
On Sat, Jan 26, 2002 at 10:17:12PM +, Nicholas Clark wrote:
But I can't see a way to tell gcc that we want to do this and locally
no warnings 'cast-qual'; (if you see what I mean)
There don't seem to be pragmata to do
Is a MANIFEST.SKIP a good idea, even if Configure.pl doesn't check it by
default?
Nicholas Clark
- Forwarded message from Nicholas Clark [EMAIL PROTECTED] -
Mailing-List: contact [EMAIL PROTECTED]; run by ezmlm
List-Post: mailto:[EMAIL PROTECTED]
List-Help: mailto:[EMAIL PROTECTED]
List
with precomputed hashes buy us enough to overcome the extra
memory needed to store the integer for the hash as well as the string?
On and off I've been playing with this in perl5, but it seems to be
impossible to make a benchmarkable difference (either faster *or* slower)
Nicholas Clark
--
EMCFT http
On Wed, Jan 30, 2002 at 01:15:42PM +, Simon Glover wrote:
This patch clears up warnings in embed.c and test_main.c coming
from function declarations of the form:
Thanks applied (with modifications, in that the functions in test_main are
now declared static).
Nicholas Clark
--
EMCFT
On Mon, Jan 28, 2002 at 08:13:11PM +, Nicholas Clark wrote:
Is a MANIFEST.SKIP a good idea, even if Configure.pl doesn't check it by
default?
Revised patch. Any objections?
[Either express objections or remove my commit privs else it goes in in 24
hours :-)]
You can now do:
nick@thinking
On Wed, Jan 30, 2002 at 02:55:54PM -0800, Steve Fink wrote:
On Wed, Jan 30, 2002 at 09:32:45PM +, Nicholas Clark wrote:
You can now do:
nick@thinking-cap maniskip$ make manitest
perl14405-32 -MExtUtils::Manifest=fullcheck -e fullcheck
Not in MANIFEST: Configure.pl.rej
On Fri, Feb 01, 2002 at 11:06:30AM +, Simon Glover wrote:
On Wed, 30 Jan 2002, Steve Fink wrote:
On Wed, Jan 30, 2002 at 09:32:45PM +, Nicholas Clark wrote:
Should I add classes/array.c classes/array.h docs/embed.pod docs/io_ops.pod
to MANIFEST?
*.pod, yes. classes
;
use strict;
-use vars qw(@EXPORT @ISA);
+use vars qw(@EXPORT @ISA $TEST_PROG_ARGS);
use Parrot::Config;
+# 5.005_03 Env.pm doesn't make its arguments immune from use strict 'vars';
use Env qw($TEST_PROG_ARGS);
require Exporter;
Nicholas Clark
--
EMCFT http://www.ccl4.org/~nick/CV.html
On Fri, Feb 01, 2002 at 01:32:13AM +, Nicholas Clark wrote:
This just about implements a jit for ARM. It doesn't actually do any ops in
assembler yet, except for end. It's names on the basis that it's for v3 or
This is where I give up on the current format.
Others are welcome to carry
1 - 100 of 800 matches
Mail list logo