of subset would be necessary - surely the
most useful constructs are also the most complicated...
Leon
--
Leon Brocard.http://www.astray.com/
yapc::Europehttp://yapc.org/Europe/
... Where has all that spare time just come from? ;-)
- for executables, perhaps?
Lucy McWilliam:
.rip?
HTH, Leon
--
Leon Brocard.http://www.astray.com/
Iterative Software...http://www.iterative-software.com/
... Fascinating, Captain
is 1
I reg 1 is 1
I reg 1 is 2
I reg 1 is 3
I reg 1 is 3
I reg 1 is 6
I reg 1 is 4
I reg 1 is 10
I reg 1 is 5
I reg 1 is 15
I reg 1 is 6
I reg 1 is 21
I reg 1 is 7
I reg 1 is 28
I reg 1 is 8
I reg 1 is 36
I reg 1 is 9
I reg 1 is 45
Cool, huh. Much more on this soon! Leon
--
Leon Brocard
. I'm
interested in converting between languages. At the moment I expect to
do that using pasm, but the second we have a bytecode-writing module...
Look at all these programming languages for the JVM.
s/JVM/ParrotVM/ perhaps?
http://grunge.cs.tu-berlin.de/~tolk/vmlanguages.html
Leon
--
Leon
Brocard.http://www.astray.com/
Iterative Software...http://www.iterative-software.com/
...
# Some simple code to print some Fibonacci numbers
# Leon Brocard [EMAIL PROTECTED]
print The first 20 fibonacci numbers are:\n
set I1, 0
set
figure out why.
HTH, Leon
--
Leon Brocard.http://www.astray.com/
Iterative Software...http://www.iterative-software.com/
... Mr. Worf, blow the Windows-powered Borg ship out of this Universe!
Index: t/euclid.pasm
a bit more:
http://java.sun.com/docs/books/vmspec/html/ClassFile.doc.html
Leon
[1] No, attributes aren't limited to four characters. Let's
be modern about this...
--
Leon Brocard.http://www.astray.com/
Iterative Software...http://www.iterative-software.com
calling it pvm? parrotvm?
--
Leon Brocard.http://www.astray.com/
Iterative Software...http://www.iterative-software.com/
... I am serious. And don't call me Shirley
class Bench {
public static void main (String args[]) {
int q = 1;
int w = 1
blackdown had that. Now a smaller difference:
[acme@piglet parrot]$ time java -Xint Bench
16.430u 0.080s 0:18.17 90.8%0+0k 0+0io 5783pf+0w
Didn't want to panic you all, Leon
--
Leon Brocard.http://www.astray.com/
Iterative Software...http://www.iterative
;-)?
Leon
--
Leon Brocard.http://www.astray.com/
Iterative Software...http://www.iterative-software.com/
... With a rubber duck, one's never alone
bytecode verification stage
(before it runs the bytecode). It does some simple checks to see if
the bytecode is doing reasonable things (no halting problem here, move
along). Something for later, perhaps.
Leon
--
Leon Brocard.http://www.astray.com/
Iterative Software
for inc coming up once this is fixed
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
... And he disappeared in a puff of logic
,
although Simon's recent article on perl.com was damn good.
Leon
ps the assembler doesn't grok if I5, NEXT4, NEXT3 or comments
on lines which just have labels
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
... My
start filing bug reports in rt if my assembler bugs
aren't being fixed? ;-)
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
... Have you seen Quasimoto? I have a hunch he's back!
Index: basic_opcodes.ops
Leon Brocard sent the following bits through the ether:
Attached are trivial comment fixes for two files.
Oh go on, I know we're in a feature freeze but this is a doc
patch. Can someone apply these please?
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware
I get a warning during the Configure process:
...
Alright, now I'm gonna check some stuff by compiling and running
a small C program. This could take a bit...
test.c:13:1: warning: no newline at end of file
...
Attached is a trivial patch which adds a newline.
Leon
--
Leon Brocard
so darn useful.
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
... You seem a decent fellow, I hate to kill you
Index: assemble.pl
===
RCS
prefer to have code which does real liveliness
calculations and can do real optimisations before we start talking
about adding more opcodes ;-)
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
... C program run. C
Gibbs Tanton - tgibbs sent the following bits through the ether:
For the 0.0.2 release
While we're at it: Simon, what do we need to have ready before
we release the next version?
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware
Bart Lateur sent the following bits through the ether:
What underlying graphics engine would you use?
I see a great need for OpenGL opcodes (let's forget about
arrays and hashes, right?) ;-)
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware
greek to me, Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
... 1001 Things To Do With Whipped Cream, LGLB (1995)
Leon Brocard sent the following bits through the ether:
It's all greek to me, Leon
The following bytecode:
0075 [01d4]: 0032 0008 000a 0008
gt_nc_ic N8, [nc:10], L2
is wrong. It shouldn't be [nc:10]. 10 is the numeric constant which
and not
have to worry about static type inference...
Errr, so not yet. But I'll be updating the parrotcode.org examples
rsn, honest...
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
... Gravity is a myth
for you I imagine ;-)
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
Okay - right after this one we're BACK to the TOPIC
Dan Sugalski sent the following bits through the ether:
For the Java-impaired (i.e. me :) what's the -Xint option do?
It turns off the JIT (which is enabled by default).
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http
# prints 4
print \n
set I0, 2
set I1, 2
add I2, I0, I1
print I2 # prints 4
print \n
end
Hope this helps, Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http
it clear, Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
Error 404: There is no spoon
: 108.442655
with -O3:
mops.pasm: 17.030964
./mops: 240.719673
NEW LOOP
mops.pasm: 10.647256
./mops: 73.574232
with -O3:
mops.pasm: 15.141514
./mops: 150.416772
Of course, the benchmark could be improved, but I suggest we should at
least change it to be good, tight code ;-)
Leon
--
Leon
Leon Brocard sent the following bits through the ether:
o JVM is stack-based, Parrot is register-based (major difference!)
I forgot to point out that details of the JVM are available at:
http://java.sun.com/docs/books/vmspec/2nd-edition/html/VMSpecTOC.doc.html
Leon
--
Leon Brocard
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
Do not clone your neighbors in their sleep
objects and
classes. Converting the bytecode isn't the problem, it's converting
the Java APIs that is...
HTH, Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
#include witty.f
Dan Sugalski sent the following bits through the ether:
We should come up with an alternative for the bytecode files that
has the line number info out of band.
This is what Java bytecode does. It has an oob offset = line number
mapping. Are .pyc the same?
Leon
--
Leon Brocard
Andy Wardley sent the following bits through the ether:
http://andywardley.com/parrot/
That's a wonderful colour! ;-)
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
High message: 9434567. Message
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
It is now pitch dark. If you proceed, you will likely fall into a pit
attached a fledgling jvm.ops. Does my C code
look ok?
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
(c) The Intergalactic Thought Association
/*
** jvm.ops
*/
VERSION = PARROT_VERSION;
=head1 NAME
jvm.ops
;
}
Cheers, Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
All generalizations are false, including this one
- End forwarded message -
--
Leon Brocard.http
Sebastian Bergmann sent the following bits through the ether:
NMAKE : fatal error U1073: 'config_h.in' konnte nicht erstellt werden
Stop.
And likewise here on my linux box:
make: *** No rule to make target `config_h.in', needed by `Makefile'. Stop.
Leon
--
Leon Brocard
.
The main problem is that Perl is so dynamic. You can redefine almost
anything in Perl at runtime. This means we need a very dynamic virtual
machine behind it in order to run Perl (and possibly Ruby, Python)
efficiently.
Hope this helps, Leon
--
Leon Brocard.http
the patch). A BF compiler would be neat too, of
course.
Any chance of this going in the languages directory if I provide more
docs and examples?
Leon
ps yes, interpreters for real languages on the way
--
Leon Brocard.http://www.astray.com/
Nanoware
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
He who reads many fortunes gets confused
that are never called
externally you're welcome to optimise away and ignore the calling
conventions]
Next update will be PMC examples... Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
Abandon all hope
proper
nested datastructures... ;-)
Leon
--
Leon Brocard.http://www.astray.com/
Nanoware...http://www.nanoware.org/
I have seen the evidence. I want DIFFERENT evidence!
? We'll try and help and then add docs or
whatever.
HTH, Leon
ps as it so happens, blogan's question could go into a faq...
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
I'd love to go out with you, but I'm
it would make an ideal
PMC to learn from in future. Any takers? ;-)
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
If this were an actual tagline, it would be funny
Alberto Manuel Brandão Simões sent the following bits through the ether:
This means one more function to the vtable!
FWIW every object in Java must implement a hashCode method:
http://java.sun.com/j2se/1.4/docs/api/java/lang/Object.html#hashCode()
Leon
--
Leon Brocard
?
Cheers, Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
This sentence no verb
that there were a couple of patches which appear to have slipped
though the gapes. Patch authors - if you follow the Parrot patch
procedure we won't forget your patches!
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http
=head1 TITLE
Perl 6 summary for week ending 2002-07-21
=head1 AUTHOR
Leon Brocard [EMAIL PROTECTED]
=head1 DETAILS
Another week, another Perl 6 summary. Cunningly this week I have taken
over the summary from Piers in order to make it easier for me to
namecheck myself. It's been a good week
Simon Cozens sent the following bits through the ether:
The mops test for C# in the parrot distribution uses long-integers,
which are 64-bit values, instead of the 32-bit integers used by the
other tests in the directory.
Cool. How do we fix it? Change long to int?
Leon
--
Leon Brocard
soon. BTW anyone want to work on getting Parrot to use less memory so
it can run on palmtops? ;-)
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
Try? Try not. Do, or do not. There is no try
Leon Brocard sent the following bits through the ether:
I have a weird bug where concatenation is sometimes failing
Well, this bug is still here. I saw some patches fly by but which of
them is the right patch and can it be applied please? ;-)
Leon
--
Leon Brocard
../../platform.o -lm
ld: multiple definitions of symbol _n_spilled
imcparser.o definition of _n_spilled in section (__DATA,__common)
imc.o definition of _n_spilled in section (__DATA,__common)
make: *** [imcc] Error 1
If only I knew more C / linker foo...
Cheers, Leon
--
Leon Brocard
: Undefined symbols:
_main
make[1]: *** [blib/lib/libparrot.so] Error 1
make: *** [all] Error 2
Thanks, Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
Borderline psychotic with hermit-like tendencies
Andy Dougherty sent the following bits through the ether:
Yup, That's a long-standing bug. Here, again, is the correct fix for it.
Cool, finally imcc works. Now, what's the best way to roll in all the
patches? Are they the correct fixes?
Leon
--
Leon Brocard
to the Perl Foundation.
Enjoy, Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
Bioengineers wear designer genes
? Or
multiarray? Perhaps replacing one of these would be better?
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
Useless invention no. 404: Breathable space suit
/Java-JVM-Classfile/
In the past couple of weeks I've been wondering whether a hybrid
scheme a la Inline::Java where we dispatch stuff to a real JVM may be
a faster approach to get running.
Why, what exactly did you have in mind?
Leon
--
Leon Brocard.http
://donate.perl-foundation.org and feed back
and/or T?iBooks to me, mailto:[EMAIL PROTECTED]. As usual, the fee
paid for publication of this summary on perl.com has been donated
directly to the Perl Foundation.
Enjoy, Leon
--
Leon Brocard.http://www.astray.com
then it should be
fairly easy to target Parrot too (still-to-be-developed-features not
withstanding. This is quite interesting indeed, especially if you have
a good test suite ;-) I'll try and have a look at it over the weekend.
Leon
--
Leon Brocard.http://www.astray.com/
scribot
://www.dotgnu.org/pipermail/developers/2002-October/008345.html
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
Drive A: format failure, formatting C: instead...
Leon Brocard sent the following bits through the ether:
It looks like the DotGNU weekly IRC meeting will be discussing
Parrot. Could be interesting:
It was quite interesting. I managed to make it to the early one and
Dan to the later one. An annotated and abridged chatlog is available:
http
/vmspec/2nd-edition/html/Concepts.doc.html#33377
HTH, Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
Cryptonomicon: The girl's guide to geek guys
I get:
Loaded...
dlfunced...
../parrot: relocation error: /usr/lib/libSDL-1.2.so.0: undefined symbol:
pthread_mutexattr_init
Well, the C code on the page works fine, but of course you have to
link it with -lpthread. How would I do this for the parrot code?
Leon
--
Leon Brocard
Dan Sugalski sent the following bits through the ether:
pthreads tends to want to be part of the initial program load.
FYI adding -lpthreads to C_LIBS and rebuilding parrot makes it work
for me. Now to get the hand of the signatures...
Leon
--
Leon Brocard.http
Leon Brocard sent the following bits through the ether:
Now to get the hand of the signatures...
Ah, well, I gave up on SDL as it was a little complicated. Instead, I
played with curses. Please find attached a cute little curses life
program loading and calling curses at runtime with dlfunc
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... You're in a maze of twisty little Java VMs, all different
with parrot, so it
doesn't work. I've attached a patch to config/gen/makefiles/ook.in to
make it work with imcc, although I assume we'd want $(IMCC) to work at
some point.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http
/classpath.html
HTH, Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... Hmm... How *did* they finally kill Frosty?
Thanks! Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... Famous last words - You and what army?
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
set P1, P0[1]
typeof S0, P1
print S0
print \n
end
Leon
ps i fixed your code
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... Useless invention no. 404: Inflatable anchor
numbers? It'd be nice to have
objects, otherwise we're restricted to toy languages.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... Komputors nefer maik erers
languages, and that gives away the fact that objects would
help in their implementation.
Objects are coming, though I've been too pressed for time recently.
String rework first, then objects.
Excellent.
Leon
--
Leon Brocard.http://www.astray.com/
scribot
Alberto Sim?es/EPL sent the following bits through the ether:
Anybody can tell me the address for RT/perl software?
http://rt.perl.org/ is what you should be using to submit bugs (and
patches!)
HTH, Leon
ps it runs http://www.bestpractical.com/rt/
--
Leon Brocard
for the bug report. I've patched parrot in CVS to use perldoc
-U.
To be honest, I'm not entirely sure that any of us actually install
parrot at the moment, but it is a great area to investigate.
Leon
--
Leon Brocard.http://www.astray.com/
scribot
CVS commit too :-(
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... 668 - Neighbor of the Beast
I just noticed that nobody had emailed perl6-internals about
ponie, which was announced yesterday as OSCON.
Ponie is perl 5 on parrot. For more info:
http://use.perl.org/article.pl?sid=03/07/09/0237202
Leon
--
Leon Brocard.http://www.astray.com/
scribot
mrnobo1024 sent the following bits through the ether:
Parrot_sprintf isn't recognizing 7 as a number in the precision field, so
trying to use that results in a '7' is not a valid sprintf format error.
Thanks, patch applied.
Leon
--
Leon Brocard.http
J?rgen B?mmels sent the following bits through the ether:
The offending line is exceptions.c:123
if (m[strlen(m-1)] != '\n')
Thanks, applied.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com
things becoming dead-ends. How much work do you think
it'd be to extend it some more and update it to latest Lua? Would it
be worth checking this into parrot CVS?
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com
;-)
We've used the Perl testing framework (Test::Harness, eg: 1..1\nok 1)
in the main parrot test suite. It's working well for Perl and a Parrot
version of it might be nice idea...
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http
idea. We
can always move the logic into the assembler later if we decide to
prune ops.
ObLeonBrocard: he just be restin', arrr
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... I was young, I needed the money
Brent Dax sent the following bits through the ether:
Are there any objections to this?
Sounds good. For embedding (eg Ponie), we're going to have to make
sure that all symbols start with parrot_ / Parrot_...
Leon
--
Leon Brocard.http://www.astray.com/
scribot
Dan Sugalski sent the following bits through the ether:
So, the question--shall we do objects and maybe miss the Feb 29th
release, or do the Feb 29th release and do objects for the next
release?
Objects please!
Leon
--
Leon Brocard.http://www.astray.com
Dan Sugalski sent the following bits through the ether:
A (Grand?) Unified Theory of Storage Reclamation
Slides here: http://www.research.ibm.com/people/d/dfb/talks/Bacon04Grand.ppt
Leon
--
Leon Brocard.http://www.astray.com/
scribot
Removes a warning.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... We're not worthy! We're not worthy!
Index: imcc/pbc.c
===
RCS file: /cvs
On our shiny 64-bit Opteron box I get a warning here. This silences
the warning.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... Borg? Where? I don't se*(#$#..NO CARRIER
Index: pf/pf_items.c
Leopold Toetsch sent the following bits through the ether:
Is this available on e.g. Windows?
Possibly, it's just POSIX. I have no way to test this however.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com
Leopold Toetsch sent the following bits through the ether:
Both interpreter and unit aren't unused, if JIT is enabled. Changed a
bit.
Ooh. Oops. Anyway, warnings bad.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http
issues, this might be an interesting thing to look
at.
Leon
--
Leon Brocard.http://www.astray.com/
scribot.http://www.scribot.com/
... Better to understand a little than to misunderstand a lot
Dan Sugalski sent the following bits through the ether:
I'd like everyone to give a welcome to Patrick Michaud, who's
volunteered to officially take charge of getting the Perl 6 compiler
module written.
Welcome Patrick! What's your plan of attack?
Leon
--
Leon Brocard
91 matches
Mail list logo