Re: patch that causes imcc to hang

2008-07-03 Thread Moritz Lenz
Patrick R. Michaud wrote:
> As I noted online and in the Perl 6 design meeting earlier today,
> the attached patch (applied to r28973) causes imcc to hang 
> while building rakudo at the step
> 
> ../../parrot -o perl6.pbc perl6.pir 
> 
> This step never completes -- in fact, I inadvertently left 
> it running for four hours and it hadn't completed.
> 
> I'm reporting this because it's extremely odd; the patch itself
> does nothing more than add a function to src/builtins/guts.pir;
> in fact, Rakudo doesn't even use that function yet.  Within the
> function, simply changing the placement of the push_eh opcode
> seems to be enough to get things to compile again.
> 
> Can anyone reproduce the problem on their systems?

Yes. On a very normal i386 32bit Linux box (Debian Etch) I get the same
behaviour.

Moritz

-- 
Moritz Lenz
http://moritz.faui2k3.org/ |  http://perl-6.de/


next generation parrot compiler tools

2008-07-03 Thread Klaas-Jan Stol
a Brainf*** interpreter in lolcode:

http://forum.lolcode.com/viewtopic.php?id=51

I wonder whether it runs on parrot :-)

kjs


[perl #41666] Test PIR and PASM by generating PBC and running it

2008-07-03 Thread Bernhard Schmalhofer via RT
On Mi. 02. Jul. 2008, 23:25:56, [EMAIL PROTECTED] wrote:
> make testr does this; if that doesn't work, let's re-open the ticket.

Actually 'make testr' does something a little bit different. 
It creates a '*.pbc' File, converts it into an executable and runs the
executable.

It doesn't run the pbc-File directly.

-- 
/* [EMAIL PROTECTED] */


Re: next generation parrot compiler tools

2008-07-03 Thread Moritz Lenz
Klaas-Jan Stol wrote:
> a Brainf*** interpreter in lolcode:
> 
> http://forum.lolcode.com/viewtopic.php?id=51
> 
> I wonder whether it runs on parrot :-)

it does not:
$ ../../parrot lolcode.pbc ~/bf.lol
Syntax error at line 6, near "I HAS A IN"
current instr.: 'parrot;PGE::Util;die' pc 120
(runtime/parrot/library/PGE/Util.pir:82)
..

Moritz

-- 
Moritz Lenz
http://moritz.faui2k3.org/ |  http://perl-6.de/


Re: [svn:parrot] r28816 - trunk/languages/perl6/tools

2008-07-03 Thread jerry gay
On Wed, Jul 2, 2008 at 11:06 PM, chromatic <[EMAIL PROTECTED]> wrote:
>$ parrot perl6.pbc --output=buggy.pir --trace=PIR buggy.p6
>
s/trace/target/


[PATCH] suggestion for the file "grammar.pg"

2008-07-03 Thread Gerd Pokorra
Hello,

I suggest the little attached patch (diff -u) for the file
"languages/perl6/src/parser/grammar.pg", so that the following code

my $a = .2;

will also be accepted from Rakudo.

Gerd Pokorra



patch.tar
Description: Unix tar archive


[perl #56548] PATCH] for file "01-literals.t"

2008-07-03 Thread [EMAIL PROTECTED] (via RT)
# New Ticket Created by  [EMAIL PROTECTED] 
# Please include the string:  [perl #56548]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56548 >


Hello,

this patch for the file "languages/perl6/t/00-parrot/01-literals.t" adds
a test for a literal with a radix.

Gerd Pokorra




patch.tar
Description: Unix tar archive


Re: [perl #53394] [BUG] Divide-by-zero error in test on Windows

2008-07-03 Thread ajr

>> > On Windows XP Home Edition, using gcc, the following test error is
>> > occurring:
>> >
>> > Divide by zero^M
>> > current instr.: 'life' pc 175 (examples\pir\life.pir:102)
>> >

> Can any of our windows users duplicate this bug? If not, it may not
> exist anymore.

It didn't show up in the tests run after R29021. The cause appeared to be
time values (for the default number of generations) taken so close
together that the divisor, (their difference) was zero. IIRC, the default
number of generations was 3, but now appears to be 5,000.


--

Email and shopping with the feelgood factor!
55% of income to good causes. http://www.ippimail.com



[perl #56544] [PATCH] install_files.pl

2008-07-03 Thread Reini Urban via RT
This is the next version.
About the /usr/runtime location I'm not sure yet. 
Is this really kosher?

On cygwin the .include searchpath is now:
  /usr/runtime/parrot/include
  /usr/runtime/parrot
  /usr
  /usr/lib/parrot/include
  /usr/lib/parrot/
  .
with extensions: "" .exe .lnk .exe.lnk .past .past.exe .past.lnk
.past.exe.lnk 
.pir .pir.exe .pir.lnk .pir.exe.lnk

The exe .lnk magic is cygwin specific. The rest is common.
-- 
Reini Urban
2008-07-03 20:43:41 rurban

	use sane defaults without destdir, prefix and without buildprefix.
	esp. main and library files to /usr/lib/parrot and not just to prefix 
	(/usr) is important.
	there's also a fix for a minor cygwin stat-copy discrepancy.
	does does about the same as the fedora spec file, the debian rule, 
	the gentto ebuild and freebsd ports Makefile.

diff -u  src/parrot-0.6.3/tools/dev/install_files.pl.orig
--- origsrc/parrot-0.6.3/tools/dev/install_files.pl	2008-05-18 16:44:14.0 +
+++ src/parrot-0.6.3/tools/dev/install_files.pl	2008-07-03 07:46:47.5 +
@@ -126,7 +126,7 @@
 bindir  => '/usr/bin',
 libdir  => '/usr/lib',
 includedir  => '/usr/include',
-docdir  => '/usr/share/doc',
+docdir  => '/usr/share/doc/parrot',
 'dry-run'   => 0,
 );
 
@@ -189,6 +189,7 @@
 }
 elsif ( $meta{include} ) {
 $dest =~ s/^include//;
+$dest =~ s/^src/parrot/;
 $dest = File::Spec->catdir( $options{includedir}, $dest );
 }
 elsif ( $meta{doc} ) {
@@ -197,12 +198,14 @@
 elsif ( $meta{pkgconfig} ) {
 
 # For the time being this is hardcoded as being installed under libdir
-# as it is typically donw with automake installed packages.  If there
+# as it is typically done with automake installed packages.  If there
 # is a use case to make this configurable we'll add a seperate
 # --pkgconfigdir option.
 $dest = File::Spec->catdir( $options{libdir}, 'pkgconfig', $dest );
 }
 else {
+$dest =~ s|^src/|lib/parrot/src/|;
+next if $dest =~ /compilers|config|language|tools/;
 $dest = File::Spec->catdir( $options{prefix}, $dest );
 }
 
@@ -243,6 +247,7 @@
 }
 else {
 next unless -e $src;
+next if $^O eq 'cygwin' and -e "$src.exe"; # cygwin stat works, but copy not
 copy( $src, $dest ) or die "copy $src to $dest: $!\n";
 print "$dest\n";
 }


[perl #56558] [PATCH] pdb rename to parrot_pdb

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56558]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56558 >


---
osname= cygwin
osvers= 1.5.25(0.15642)
arch=   cygwin-thread-multi-64int
cc= gcc
---
Flags:
 category=core
 severity=medium
 ack=no
---

2008-07-03 17:17:39 rurban

* requires a svn rename before:
svn rename src/pdb.c src/parrot_pdb.c
svn rename t/tools/pdb.t t/tools/parrot_pdb.t

* MANIFEST, docs/debug.pod, docs/debugger.pod, docs/parrot.pod
src/parrot_pdb.c, t/tools/parrot_pdb.t: rename pdb to parrot_pdb
to avoid conflicts with existing pdb binaries - e.g. the python
debugger or the IBM parallel debugger.

Index: parrot-svn/MANIFEST
===
--- parrot-svn.orig/MANIFEST
+++ parrot-svn/MANIFEST
@@ -3070,7 +3070,7 @@ src/packfile/pf_items.c
  src/packout.c   []
  src/pbc_info.c  []
  src/pbc_merge.c []
-src/pdb.c   []
+src/parrot_pdb.c[]
  src/pdump.c []
  src/pic.c   []
  src/pic_jit.c   []
@@ -3857,7 +3857,7 @@ t/tools/ops2pmutils/09-prepare_real_ops.
  t/tools/ops2pmutils/10-print_module.t   []
  t/tools/ops2pmutils/11-print_h.t[]
  t/tools/pbc_merge.t []
-t/tools/pdb.t   []
+t/tools/parrot_pdb.t[]
  t/tools/pmc2c.t []
  t/tools/pmc2cutils/00-qualify.t []
  t/tools/pmc2cutils/01-pmc2cutils.t  []
Index: parrot-svn/docs/debug.pod
===
--- parrot-svn.orig/docs/debug.pod
+++ parrot-svn/docs/debug.pod
@@ -75,9 +75,9 @@ different objects over the lifetime of t
  Let's say you have written (or generated) a huge .pasm or .pir file. 
It's not
  working. You'd like some help in figuring out why.

-=head2 pdb
+=head2 parrot_pdb

-One possible tool is C, the Parrot Debugger. See 
F for
+One possible tool is C, the Parrot Debugger. See 
F for
  details on it.

  =head2 stabs
Index: parrot-svn/docs/debugger.pod
===
--- parrot-svn.orig/docs/debugger.pod
+++ parrot-svn/docs/debugger.pod
@@ -7,12 +7,12 @@ docs/debugger.pod - The Parrot Debugger

  =head1 ABSTRACT

-This document describes F, the Parrot Debugger.
+This document describes F, the Parrot Debugger.

  =head1 DESCRIPTION

  Starting from version 0.0.6 Parrot has its own debugger, which is 
modeled after
-Perl's one. Its name is F, and is an interactive environment that 
let you
+Perl's one. Its name is F, and is an interactive 
environment that let you
  step through bytecode, set breakpoints, evaluate assembly instructions 
and peek
  at the interpreter status.

@@ -29,17 +29,17 @@ target:

  (where C is the same C incarnation you used to build Parrot).

-If everything goes well, you should come up with a F executable in the
+If everything goes well, you should come up with a F 
executable in the
  same directory as the Parrot program.

  =head1 THE DEBUGGER SHELL

  To start the debugger type:

-  pdb file.pbc
+  parrot_pdb file.pbc

-That is, F takes exactly one argument, which is the Parrot 
bytecode that
-you're going to debug. F will automatically load and disassemble the
+That is, F takes exactly one argument, which is the Parrot 
bytecode that
+you're going to debug. F will automatically load and 
disassemble the
  bytecode file for you.

  Note that you can't pass command line arguments to your program when 
you invoke
@@ -49,7 +49,7 @@ After the version banner, you'll see the

(pdb)

-F is ready to receive commands and give output. To list the available
+F is ready to receive commands and give output. To list the 
available
  commands type 'h'. To quit the debugger type 'q'.

  As with the Perl debugger, whenever it halts and shows you a line of 
code, it
@@ -69,7 +69,7 @@ sensitive.

  A blank line always repeats the last command entered.

-Also note that at this point in its development, F has very poor error
+Also note that at this point in its development, F has very 
poor error
  checking on commands and their arguments, so type carefully or 
something bad
  will happen. Feel free to report bugs, or better yet patch the source 
code (see
  L below).
Index: parrot-svn/docs/parrot.pod
===
--- parr

[perl #56554] [TODO] add languages/*/Makefile install targets

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56554]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56554 >


---
osname= cygwin
osvers= 1.5.25(0.15642)
arch=   cygwin-thread-multi-64int
cc= gcc
---
Flags:
 category=install
 severity=medium
 ack=no
---

make install in languages
should gather the language docs and examples/*

---
Summary of my parrot 0.6.3 (r0) configuration:
   configdate='Wed Jul  2 19:08:15 2008 GMT'
   Platform:
 osname=cygwin, archname=cygwin-thread-multi-64int
 jitcapable=1, jitarchname=i386-cygwin,
 jitosname=CYGWIN, jitcpuarch=i386
 execcapable=1
 perl=/usr/bin/perl.exe
   Compiler:
 cc='gcc', ccflags='-U__STRICT_ANSI__  -pipe -I/usr/local/include 
-DHASATTRIBUTE_CONST  -DHASATTRIBUTE_DEPRECATED  -DHASATTRIBUTE_MALLOC 
-DHASATTRIBUTE_NONNULL  -DHASATTRIBUTE_NORETURN  -DHASATTRIBUTE_PURE 
-DHASATTRIBUTE_UNUSED  -DHASATTRIBUTE_WARN_UNUSED_RESULT 
-falign-functions=16 -maccumulate-outgoing-args -W -Wall 
-Waggregate-return -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment 
-Wdisabled-optimization -Wendif-labels -Wextra -Wformat 
-Wformat-extra-args -Wformat-nonliteral -Wformat-security -Wformat-y2k 
-Wimplicit -Wimport -Winit-self -Winline -Winvalid-pch -Wmissing-braces 
-Wno-missing-format-attribute -Wpacked -Wparentheses -Wpointer-arith 
-Wreturn-type -Wsequence-point -Wno-shadow -Wsign-compare 
-Wstrict-aliasing -Wstrict-aliasing=2 -Wswitch -Wswitch-default 
-Wtrigraphs -Wundef -Wunknown-pragmas -Wno-unused -Wwrite-strings 
-Wbad-function-cast -Wdeclaration-after-statement 
-Wimplicit-function-declaration -Wimplicit-int -Wmain 
-Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wnonnull 
-DDISABLE_GC_DEBUG=1 -DNDEBUG -O3 -DHAS_GETTEXT',
   Linker and Libraries:
 ld='gcc', ldflags=' -Wl,--enable-auto-import 
-Wl,--export-all-symbols -Wl,--stack,8388608 
-Wl,--enable-auto-image-base -L/usr/local/lib',
 cc_ldflags='',
 libs='-ldl -lcrypt -lgmp -lreadline -lpcre -lglut -lGLU -lGL 
-lcrypto -lintl'
   Dynamic Linking:
 share_ext='.dll', ld_share_flags='-shared',
 load_ext='.dll', ld_load_flags='-shared'
   Types:
 iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4,
 ptrsize=4, ptr_alignment=1 byteorder=1234,
 nv=double, numvalsize=8, doublesize=8

---
Environment:
 CYGWIN =server
 HOME =/home/rurban
 LANG  (unset)
 LANGUAGE  (unset)
 LD_LIBRARY_PATH  (unset)
 LOGDIR  (unset)
 PATH 
=/usr/src/perl/parrot/parrot-svn/blib/lib:~/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/rurban/bin:/usr/bin:/usr/local/bin:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32:/usr/X11R6/bin:/cygdrive/c/bat:/cygdrive/p/MSVS6/reskit:/usr/bin:/usr/lib/gstreamer-0.8:/usr/lib/lapack
 SHELL  (unset)

-- 
Reini Urban




[perl #56558] [PATCH] pdb rename to parrot_pdb

2008-07-03 Thread Reini Urban via RT
Added patch
-- 
Reini Urban
2008-07-03 17:17:39 rurban

	* requires a svn rename before:
	svn rename src/pdb.c src/parrot_pdb.c
	svn rename t/tools/pdb.t t/tools/parrot_pdb.t
	* MANIFEST, docs/debug.pod, docs/debugger.pod, docs/parrot.pod
	src/parrot_pdb.c, t/tools/parrot_pdb.t: rename pdb to parrot_pdb
	to avoid conflicts with existing pdb binaries - e.g. the python 
	debugger or the IBM parallel debugger.

Index: parrot-svn/MANIFEST
===
--- parrot-svn.orig/MANIFEST
+++ parrot-svn/MANIFEST
@@ -3070,7 +3070,7 @@ src/packfile/pf_items.c 
 src/packout.c   []
 src/pbc_info.c  []
 src/pbc_merge.c []
-src/pdb.c   []
+src/parrot_pdb.c[]
 src/pdump.c []
 src/pic.c   []
 src/pic_jit.c   []
@@ -3857,7 +3857,7 @@ t/tools/ops2pmutils/09-prepare_real_ops.
 t/tools/ops2pmutils/10-print_module.t   []
 t/tools/ops2pmutils/11-print_h.t[]
 t/tools/pbc_merge.t []
-t/tools/pdb.t   []
+t/tools/parrot_pdb.t[]
 t/tools/pmc2c.t []
 t/tools/pmc2cutils/00-qualify.t []
 t/tools/pmc2cutils/01-pmc2cutils.t  []
Index: parrot-svn/docs/debug.pod
===
--- parrot-svn.orig/docs/debug.pod
+++ parrot-svn/docs/debug.pod
@@ -75,9 +75,9 @@ different objects over the lifetime of t
 Let's say you have written (or generated) a huge .pasm or .pir file.  It's not
 working. You'd like some help in figuring out why.
 
-=head2 pdb
+=head2 parrot_pdb
 
-One possible tool is C, the Parrot Debugger. See F for
+One possible tool is C, the Parrot Debugger. See F for
 details on it.
 
 =head2 stabs
Index: parrot-svn/docs/debugger.pod
===
--- parrot-svn.orig/docs/debugger.pod
+++ parrot-svn/docs/debugger.pod
@@ -7,12 +7,12 @@ docs/debugger.pod - The Parrot Debugger
 
 =head1 ABSTRACT
 
-This document describes F, the Parrot Debugger.
+This document describes F, the Parrot Debugger.
 
 =head1 DESCRIPTION
 
 Starting from version 0.0.6 Parrot has its own debugger, which is modeled after
-Perl's one. Its name is F, and is an interactive environment that let you
+Perl's one. Its name is F, and is an interactive environment that let you
 step through bytecode, set breakpoints, evaluate assembly instructions and peek
 at the interpreter status.
 
@@ -29,17 +29,17 @@ target:
 
 (where C is the same C incarnation you used to build Parrot).
 
-If everything goes well, you should come up with a F executable in the
+If everything goes well, you should come up with a F executable in the
 same directory as the Parrot program.
 
 =head1 THE DEBUGGER SHELL
 
 To start the debugger type:
 
-  pdb file.pbc
+  parrot_pdb file.pbc
 
-That is, F takes exactly one argument, which is the Parrot bytecode that
-you're going to debug. F will automatically load and disassemble the
+That is, F takes exactly one argument, which is the Parrot bytecode that
+you're going to debug. F will automatically load and disassemble the
 bytecode file for you.
 
 Note that you can't pass command line arguments to your program when you invoke
@@ -49,7 +49,7 @@ After the version banner, you'll see the
 
   (pdb)
 
-F is ready to receive commands and give output. To list the available
+F is ready to receive commands and give output. To list the available
 commands type 'h'. To quit the debugger type 'q'.
 
 As with the Perl debugger, whenever it halts and shows you a line of code, it
@@ -69,7 +69,7 @@ sensitive.
 
 A blank line always repeats the last command entered.
 
-Also note that at this point in its development, F has very poor error
+Also note that at this point in its development, F has very poor error
 checking on commands and their arguments, so type carefully or something bad
 will happen. Feel free to report bugs, or better yet patch the source code (see
 L below).
Index: parrot-svn/docs/parrot.pod
===
--- parrot-svn.orig/docs/parrot.pod
+++ parrot-svn/docs/parrot.pod
@@ -112,7 +112,7 @@ A beginner's guide to debugging the Parr
 
 =item F
 
-Documentation for C, the Parrot debugger.
+Documentation for C, the Parrot debugger.
 
 =back
 
Index: parrot-svn/src/parrot_pdb.c
===
--- parrot-svn.orig/src/parrot_pdb.c
+++ parrot-svn/src/parrot_pdb.c

[ITP] parrot-0.6.3 with parrot-perl6

2008-07-03 Thread Reini Urban

I would like to contribute and maintain the parrot packages.

I've discussed the layout at #parrot and got their blessing,
esp. the favor of parrot-perl6 over parrot-rakudo, as it
is called on fedora.
Just the new php, now called pipp is still called plumhead. This will be 
in the next release 0.6.4. Updates appear every month.


Maintaining pugs, the still defacto reference implementation of perl6, 
requires ghc, which requires a complicated bootstrap, similar in 
complexity to sbcl.


parrot, libparrot0 and libparrot-devel is in debian, freebsd ports, 
fedora and gentoo.

parrot-perl6 in debian at least.
parrot-languages is my compressed version of the fedora split,
they have for every single language a seperate package.
Otherwise the package layout is similar to fedora, debian, gentoo and 
freebsd.

It's still a mess and a make install is not fully supported yet,
but we have to start somewhere to get it finished.
I just left the docs/examples, the others stripped it.
pdb is called parrot_pdb, disassemble is called pbc_disassemble.

README and setup.hints attached.

Download:
wget -x -nH --cut-dirs=1 \

http://rurban.xarch.at/cygr/parrot/libparrot-devel/libparrot-devel-0.6.3-1.t
ar.bz2 \
  http://rurban.xarch.at/cygr/parrot/libparrot-devel/setup.hint \

http://rurban.xarch.at/cygr/parrot/libparrot0/libparrot0-0.6.3-1.tar.bz2 \
  http://rurban.xarch.at/cygr/parrot/libparrot0/setup.hint \
  http://rurban.xarch.at/cygr/parrot/parrot-0.6.3-1-src.tar.bz2 \
  http://rurban.xarch.at/cygr/parrot/parrot-0.6.3-1.tar.bz2 \

http://rurban.xarch.at/cygr/parrot/parrot-languages/parrot-languages-0.6.3-1
.tar.bz2 \
  http://rurban.xarch.at/cygr/parrot/parrot-languages/setup.hint \

http://rurban.xarch.at/cygr/parrot/parrot-perl6/parrot-perl6-0.6.3-1.tar.bz2
 \
  http://rurban.xarch.at/cygr/parrot/parrot-perl6/setup.hint \
  http://rurban.xarch.at/cygr/parrot/setup.hint

--
Reini Urban
http://phpwiki.org/  http://murbreak.at/


sdesc: "Parrot Virtual Machine development headers and libraries"
ldesc: "Libraries and headers needed for development against Parrot"
category: Libs
requires: parrot readline libncurses-devel libicu-devel libgmp-devel 
libgdbm-devel perl pcre-devel libglut-devel
external-source: parrot
sdesc: "libparrot dll"
category: Libs
external-source: parrot
requires: libreadline6 libintl8 libicu38 libgmp3 libgdbm4parrot
--
Parrot is a virtual machine designed to efficiently compile and
execute bytecode for interpreted languages. Parrot is a target for Perl 6 
and a lot of other languages.

.include searchpath:
  /usr/runtime/parrot/include
  /usr/runtime/parrot
  /usr
  /usr/lib/parrot/include
  /usr/lib/parrot/
  .
with extensions: "" .exe .lnk .exe.lnk .past .past.exe .past.lnk .past.exe.lnk 
.pir .pir.exe .pir.lnk .pir.exe.lnk

Runtime requirements:
  parrot readline ncurses libicu gmp gdbm

Build requirements:
  readline-devel ncurses-devel libicu-devel gmp-devel gdbm-devel perl

Canonical homepage:
  http://www.parrotcode.org/

Canonical download:
  http://www.parrotcode.org/release/devel

---

Build instructions:

  cd /usr/src
  cygport parrot--.cygport all

This will create:
  /usr/src/parrot---src.tar.bz2
  /usr/src/parrot--.tar.bz2
  /usr/src/libparrot0--.tar.bz2
  /usr/src/libparrot-devel--.tar.bz2
  /usr/src/parrot-perl6--.tar.bz2

Or use 'cygport parrot--.cygport prep' to get a patched 
source directory.

---

Files included in the =parrot= package:

  /usr/bin/parrot.exe
  /usr/bin/parrot_pdb.exe
  /usr/bin/pbc_info.exe
  /usr/bin/pbc_merge.exe
  /usr/bin/pbc_to_exe.exe
  /usr/bin/pdump.exe
  /usr/lib/parrot/config_lib.pasm
  /usr/lib/parrot/dynext/apl_group.dll
  /usr/lib/parrot/dynext/digest_group.dll
  /usr/lib/parrot/dynext/dotnet.dll
  /usr/lib/parrot/dynext/dotnet_ops.dll
  /usr/lib/parrot/dynext/dotnet_ops_cg.dll
  /usr/lib/parrot/dynext/dotnet_ops_cgp.dll
  /usr/lib/parrot/dynext/dotnet_ops_switch.dll
  /usr/lib/parrot/dynext/dotnet_runtime.dll
  /usr/lib/parrot/dynext/dynlexpad.dll
  /usr/lib/parrot/dynext/eclectus_group.dll
  /usr/lib/parrot/dynext/gdbmhash.dll
  /usr/lib/parrot/dynext/libglutcb.dll
  /usr/lib/parrot/dynext/libnci_test.dll
  /usr/lib/parrot/dynext/lua_group.dll
  /usr/lib/parrot/dynext/match_group.dll
  /usr/lib/parrot/dynext/perl6_group.dll
  /usr/lib/parrot/dynext/rational.dll
  /usr/lib/parrot/dynext/subproxy.dll
  /usr/lib/parrot/dynext/tcl_group.dll
  /usr/lib/parrot/dynext/wmls_group.dll
  /usr/lib/parrot/dynext/wmls_ops.dll
  /usr/lib/parrot/dynext/wmls_ops_cg.dll
  /usr/lib/parrot/dynext/wmls_ops_cgp.dll
  /usr/lib/parrot/dynext/wmls_ops_switch.dll
  /usr/lib/parrot/library/CGI/QueryHash.pbc
  /usr/lib/parrot/library/CGI/QueryHash.pir
  /usr/lib/parrot/library/Config/JSON.pir
  /usr/lib/parrot/library/Crow.pir
  /usr/lib/parrot/library/Data/Dumper.pbc
  /usr/lib/parrot/library/

Re: [perl #56548] PATCH] for file "01-literals.t"

2008-07-03 Thread Moritz Lenz
(sorry if this arrives multiple times, br0ken ISP and all..)

Hi,

[EMAIL PROTECTED] (via RT) wrote:
> this patch for the file "languages/perl6/t/00-parrot/01-literals.t" adds
> a test for a literal with a radix.

Although there are some similar tests in t/00-parrot/ I wouldn't start
adding more in this file, because the official test suite lives in the
pugs repository under t/spec (svn co http://svn.pugscode.org/pugs/t/spec ).
The file S02-literals/radix.t seems like the better place to start,
there you also have access to better testing tools (like is(), ok() etc.)

If you want to contribute to the test suite, please tell us your desired
nick name and you can get a commit bit.

Cheers,
Moritz

-- 
Moritz Lenz
http://moritz.faui2k3.org/ |  http://perl-6.de/



Re: [PATCH] suggestion for the file "grammar.pg"

2008-07-03 Thread Moritz Lenz
Hi,

Gerd Pokorra wrote:
> I suggest the little attached patch (diff -u) for the file
> "languages/perl6/src/parser/grammar.pg", so that the following code
> 
> my $a = .2;
> 
> will also be accepted from Rakudo.

But does the language specification allow it? I don't think so, and
STD.pm (after which rakudo's parser is modeled) doesn't allow it.

Cheers,
Moritz

-- 
Moritz Lenz
http://moritz.faui2k3.org/ |  http://perl-6.de/


[perl #56562] [PATCH] root.in: add cygwin importlib

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56562]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56562 >


config/gen/makefiles/root.in: add the cygwin importlib to please
-lparrot in packaged version.
-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/
2008-07-03 13:44:35 rurban

	* config/gen/makefiles/root.in: add the cygwin importlib to please
	-lparrot in packaged version.

--- origsrc/parrot-0.6.3/config/gen/makefiles/root.in	2008-06-16 13:06:01.0 +
+++ src/parrot-0.6.3/config/gen/makefiles/root.in	2008-07-03 11:40:14.171875000 +
@@ -870,7 +870,8 @@
 $(LIBPARROT_SHARED) : $(O_FILES)
 	$(MKPATH) @blib_dir@
 	$(LD) $(LD_SHARE_FLAGS) $(LDFLAGS) @[EMAIL PROTECTED]@ @libparrot_soname@ \
-$(O_FILES) $(C_LIBS) $(ICU_SHARED)
+#CONDITIONED_LINE(cygchkdll):		-Wl,--out-implib=libparrot.dll.a \
+		$(O_FILES) $(C_LIBS) $(ICU_SHARED)
 #CONDITIONED_LINE(libparrot_shared_alias):	( cd @blib_dir@ ; ln -sf @libparrot_shared@ @libparrot_shared_alias@ )
 
 


[perl #56564] [TODO] add languages/*/Makefile install targets

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56564]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56564 >


make install should gather the language docs and examples/*
-- 
Reini Urban



[perl #56566] [PATCH] pdb rename to parrot_pdb

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56566]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56566 >


2008-07-03 17:17:39 rurban

* requires a svn rename before:
svn rename src/pdb.c src/parrot_pdb.c
svn rename t/tools/pdb.t t/tools/parrot_pdb.t

* MANIFEST, docs/debug.pod, docs/debugger.pod, docs/parrot.pod
src/parrot_pdb.c, t/tools/parrot_pdb.t: rename pdb to parrot_pdb
to avoid conflicts with existing pdb binaries - e.g. the python
debugger or the IBM parallel debugger.

[ patch extra ]
-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/




[perl #56570] [PATCH] root.in: add cygwin importlib

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56570]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56570 >


---
osname= cygwin
osvers= 1.5.25(0.15642)
arch=   cygwin-thread-multi-64int
cc= gcc
---
Flags:
 category=core
 severity=medium
 ack=no
---

config/gen/makefiles/root.in: add the cygwin importlib to please
-lparrot in packaged version.

2008-07-03 13:44:35 rurban

* config/gen/makefiles/root.in: add the cygwin importlib to please
-lparrot in packaged version.

--- origsrc/parrot-0.6.3/config/gen/makefiles/root.in   2008-06-16 
13:06:01.0 +
+++ src/parrot-0.6.3/config/gen/makefiles/root.in   2008-07-03 
11:40:14.171875000 +
@@ -870,7 +870,8 @@
  $(LIBPARROT_SHARED) : $(O_FILES)
$(MKPATH) @blib_dir@
$(LD) $(LD_SHARE_FLAGS) $(LDFLAGS) @[EMAIL PROTECTED]@ 
@libparrot_soname@ \
-$(O_FILES) $(C_LIBS) $(ICU_SHARED)
+#CONDITIONED_LINE(cygchkdll):  -Wl,--out-implib=libparrot.dll.a \
+   $(O_FILES) $(C_LIBS) $(ICU_SHARED)
  #CONDITIONED_LINE(libparrot_shared_alias):( cd @blib_dir@ ; ln -sf 
@libparrot_shared@ @libparrot_shared_alias@ )



---
Summary of my parrot 0.6.3 (r28667) configuration:
   configdate='Thu Jul  3 15:28:37 2008 GMT'
   Platform:
 osname=cygwin, archname=cygwin-thread-multi-64int
 jitcapable=1, jitarchname=i386-cygwin,
 jitosname=CYGWIN, jitcpuarch=i386
 execcapable=1
 perl=/usr/bin/perl5.10.0.exe
   Compiler:
 cc='gcc', ccflags='-U__STRICT_ANSI__  -pipe -I/usr/local/include 
-DHASATTRIBUTE_CONST  -DHASATTRIBUTE_DEPRECATED  -DHASATTRIBUTE_MALLOC 
-DHASATTRIBUTE_NONNULL  -DHASATTRIBUTE_NORETURN  -DHASATTRIBUTE_PURE 
-DHASATTRIBUTE_UNUSED  -DHASATTRIBUTE_WARN_UNUSED_RESULT 
-falign-functions=16 -maccumulate-outgoing-args -W -Wall 
-Waggregate-return -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment 
-Wdisabled-optimization -Wendif-labels -Wextra -Wformat 
-Wformat-extra-args -Wformat-nonliteral -Wformat-security -Wformat-y2k 
-Wimplicit -Wimport -Winit-self -Winline -Winvalid-pch -Wmissing-braces 
-Wno-missing-format-attribute -Wpacked -Wparentheses -Wpointer-arith 
-Wreturn-type -Wsequence-point -Wno-shadow -Wsign-compare 
-Wstrict-aliasing -Wstrict-aliasing=2 -Wswitch -Wswitch-default 
-Wtrigraphs -Wundef -Wunknown-pragmas -Wno-unused -Wwrite-strings 
-Wbad-function-cast -Wdeclaration-after-statement 
-Wimplicit-function-declaration -Wimplicit-int -Wmain 
-Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wnonnull 
-DDISABLE_GC_DEBUG=1 -DNDEBUG -O3 -DHAS_GETTEXT',
   Linker and Libraries:
 ld='gcc', ldflags=' -Wl,--enable-auto-import 
-Wl,--export-all-symbols -Wl,--stack,8388608 
-Wl,--enable-auto-image-base -L/usr/local/lib',
 cc_ldflags='',
 libs='-ldl -lcrypt -lgmp -lreadline -lpcre -lglut32 -lglu32 
-lopengl32 -lcrypto -lintl'
   Dynamic Linking:
 share_ext='.dll', ld_share_flags='-shared',
 load_ext='.dll', ld_load_flags='-shared'
   Types:
 iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4,
 ptrsize=4, ptr_alignment=1 byteorder=1234,
 nv=double, numvalsize=8, doublesize=8

---
Environment:
 CYGWIN =server
 HOME =/home/rurban
 LANG  (unset)
 LANGUAGE  (unset)
 LD_LIBRARY_PATH  (unset)
 LOGDIR  (unset)
 PATH 
=/home/rurban/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/rurban/bin:/usr/bin:/usr/local/bin:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32:/usr/X11R6/bin:/cygdrive/c/bat:/cygdrive/p/MSVS6/reskit:/usr/bin:/usr/lib/gstreamer-0.8:/usr/lib/lapack
 SHELL  (unset)


[perl #56574] [PATCH] pdb rename to parrot_pdb

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56574]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56574 >


2008-07-03 17:17:39 rurban

* requires a svn rename before:
svn rename src/pdb.c src/parrot_pdb.c
svn rename t/tools/pdb.t t/tools/parrot_pdb.t

* MANIFEST, docs/debug.pod, docs/debugger.pod, docs/parrot.pod
src/parrot_pdb.c, t/tools/parrot_pdb.t: rename pdb to parrot_pdb
to avoid conflicts with existing pdb binaries - e.g. the python
debugger or the IBM parallel debugger.

-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/
2008-07-03 17:17:39 rurban

	* requires a svn rename before:
	svn rename src/pdb.c src/parrot_pdb.c
	svn rename t/tools/pdb.t t/tools/parrot_pdb.t
	* MANIFEST, docs/debug.pod, docs/debugger.pod, docs/parrot.pod
	src/parrot_pdb.c, t/tools/parrot_pdb.t: rename pdb to parrot_pdb
	to avoid conflicts with existing pdb binaries - e.g. the python 
	debugger or the IBM parallel debugger.

Index: parrot-svn/MANIFEST
===
--- parrot-svn.orig/MANIFEST
+++ parrot-svn/MANIFEST
@@ -3070,7 +3070,7 @@ src/packfile/pf_items.c 
 src/packout.c   []
 src/pbc_info.c  []
 src/pbc_merge.c []
-src/pdb.c   []
+src/parrot_pdb.c[]
 src/pdump.c []
 src/pic.c   []
 src/pic_jit.c   []
@@ -3857,7 +3857,7 @@ t/tools/ops2pmutils/09-prepare_real_ops.
 t/tools/ops2pmutils/10-print_module.t   []
 t/tools/ops2pmutils/11-print_h.t[]
 t/tools/pbc_merge.t []
-t/tools/pdb.t   []
+t/tools/parrot_pdb.t[]
 t/tools/pmc2c.t []
 t/tools/pmc2cutils/00-qualify.t []
 t/tools/pmc2cutils/01-pmc2cutils.t  []
Index: parrot-svn/docs/debug.pod
===
--- parrot-svn.orig/docs/debug.pod
+++ parrot-svn/docs/debug.pod
@@ -75,9 +75,9 @@ different objects over the lifetime of t
 Let's say you have written (or generated) a huge .pasm or .pir file.  It's not
 working. You'd like some help in figuring out why.
 
-=head2 pdb
+=head2 parrot_pdb
 
-One possible tool is C, the Parrot Debugger. See F for
+One possible tool is C, the Parrot Debugger. See F for
 details on it.
 
 =head2 stabs
Index: parrot-svn/docs/debugger.pod
===
--- parrot-svn.orig/docs/debugger.pod
+++ parrot-svn/docs/debugger.pod
@@ -7,12 +7,12 @@ docs/debugger.pod - The Parrot Debugger
 
 =head1 ABSTRACT
 
-This document describes F, the Parrot Debugger.
+This document describes F, the Parrot Debugger.
 
 =head1 DESCRIPTION
 
 Starting from version 0.0.6 Parrot has its own debugger, which is modeled after
-Perl's one. Its name is F, and is an interactive environment that let you
+Perl's one. Its name is F, and is an interactive environment that let you
 step through bytecode, set breakpoints, evaluate assembly instructions and peek
 at the interpreter status.
 
@@ -29,17 +29,17 @@ target:
 
 (where C is the same C incarnation you used to build Parrot).
 
-If everything goes well, you should come up with a F executable in the
+If everything goes well, you should come up with a F executable in the
 same directory as the Parrot program.
 
 =head1 THE DEBUGGER SHELL
 
 To start the debugger type:
 
-  pdb file.pbc
+  parrot_pdb file.pbc
 
-That is, F takes exactly one argument, which is the Parrot bytecode that
-you're going to debug. F will automatically load and disassemble the
+That is, F takes exactly one argument, which is the Parrot bytecode that
+you're going to debug. F will automatically load and disassemble the
 bytecode file for you.
 
 Note that you can't pass command line arguments to your program when you invoke
@@ -49,7 +49,7 @@ After the version banner, you'll see the
 
   (pdb)
 
-F is ready to receive commands and give output. To list the available
+F is ready to receive commands and give output. To list the available
 commands type 'h'. To quit the debugger type 'q'.
 
 As with the Perl debugger, whenever it halts and shows you a line of code, it
@@ -69,7 +69,7 @@ sensitive.
 
 A blank line always repeats the last command entered.
 
-Also note that at this point in its development, F has very poor error
+Also note that at this point in its development, F has very poor error
 checking

[perl #48014] [DEPRECATED] PMC union struct

2008-07-03 Thread Allison Randal via RT
A bit more detail on the conversion process for a PMC:

1) Find the core data of the PMC, and convert it into a series of ATTR
statement at the beginning of the "pmclass" block. So, if the PMC uses
only 'PMC_int_val', create a single entry: 'ATTR INTVAL integer_data;'
(Pick a meaningful name, and add a comment at the end of the line
explaining what it is. A good example is src/pmc/eventhandler.pmc.)

If the core data of the PMC is a whole struct stored in PMC_data, you
can directly copy the body of that struct into the .pmc file, and just
prepend ATTR to each line.

2) Change any calls to PMC_int_val (or whatever macro the particular PMC
uses) to 'GET_ATTR_integer_data' or 'SET_ATTR_integer_data' (the
lower-case half of the accessor macros matches the name you gave the
attribute in the 'ATTR' declaration.) If your attribute is a
PMC/STRING/INTVAL/FLOATVAL type, the accessor is generated to correctly
set/retrieve the native type directly. These macros must be used on a
separate line, and can't be embedded within other C code on a line. See
src/pmc/exporter.pmc for an example. So this is correct:

GET_ATTR_ns_src(interp, SELF, tmp_ns_src);

but this is wrong:

tmp_ns_src = GET_ATTR_ns_src(interp, SELF);

3) Change 'init' and 'init_pmc' to initialize the auto-generated struct
instead of whatever initialization it was doing before. For example, if
it was previously setting a default value in PMC_int_val, it now needs
to allocate a struct of the appropriate type (the autogenerated structe
is always named Parrot_, so the Exporter PMC has a struct named
Parrot_Exporter), store that struct in PMC_data, and then set default
values on the struct. See src/pmc/exporter.pmc for a good example of
'init'. 

4) Any place you need to directly access the core struct of the PMC, use
the accessor macro for the PMC's struct. It is named the same as the
struct but in all caps (for example, the Exporter PMC's accessor macro
for the core data struct used like 'Parrot_Exporter *core_struct =
PARROT_EXPORTER(SELF);').

5) Change 'destroy' to destroy PMC_data.

6) Change 'mark' to mark any PMC elements of the core data struct.

7) Check 'freeze'/'thaw' and related vtable entries for direct access to
old data elements and update it to the new data elements.

That should get you 90-95% of the way there. Rebuild the PMC (make sure
the src/pmc/pmc_.h header file for the PMC was regenerated to
include the Parrot_ struct GETATTR and SETATTR macros). Check
for compile errors and test failures. If the cause of any errors isn't
immediately obvious, check with allison or chromatic.

Allison


Re: [ITP] parrot-0.6.3 with parrot-perl6

2008-07-03 Thread Geoffrey Broadwell
First, thank you for working on this!

Now some comments ...

On Thu, 2008-07-03 at 19:07 +0200, Reini Urban wrote:
> parrot-languages is my compressed version of the fedora split,
> they have for every single language a seperate package.

Thank you for choosing the single-package route here.

> I just left the docs/examples, the others stripped it.
> pdb is called parrot_pdb, disassemble is called pbc_disassemble.

Both of these are good changes (and I don't think the other packagers
should have stripped the examples; they are arguably necessary to
understand certain constructions, since our official docs are not
complete and are difficult to navigate in places).

> .include searchpath:
>   /usr/runtime/parrot/include
>   /usr/runtime/parrot
>   /usr
>   /usr/lib/parrot/include
>   /usr/lib/parrot/
>   .

/usr/runtime doesn't seem "right" to me (and it's not FHS-compliant,
IIRC).  I notice that none of your packages install to /usr/runtime, and
I'd prefer to just drop it.  Why is raw '/usr' included?

Side note to the Parrot Porters: the redundant 'parrot' directory under
'runtime' in the source tree makes no sense to me.  I'm in favor of
moving its three subdirectories up a level, and dropping the extra
cruft.

>   /usr/share/doc/parrot/LICENSE
>   /usr/share/doc/parrot/RESPONSIBLE_PARTIES
>   /usr/share/doc/parrot/TODO

Should probably include NEWS here in the main parrot package; for the
last year and a half, all of the key updates have been listed there
(ChangeLog is only useful for historical spelunking, and can be placed
in -devel).  Also, CREDITS fills in a lot of details that
RESPONSIBLE_PARTIES leaves out, and it arguably belongs in the main
package right next to the LICENSE.  Plus it maximizes karma exposure for
our valued contributor base; for the same reason, I'd vote for
DONORS.pod here as well.  A "binary package" version of the official
README that drops the PREREQUISITES, INSTRUCTIONS, and NOTES blocks
seems like a good idea too.

DEPRECATED.pod and PBC_COMPAT need to be in the -devel package.

Speaking of all these docs, do the various distro ports/packages include
manpages (at least a minimal 'parrot' manpage, as I believe Debian and
OpenBSD require to comply with their respective policies)?


-'f




[perl #56568] [PATCH] root.in: add cygwin importlib

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56568]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56568 >


config/gen/makefiles/root.in: add the cygwin importlib to please
-lparrot in packaged version.
-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/



[perl #56572] [PATCH] pdb rename to parrot_pdb

2008-07-03 Thread via RT
# New Ticket Created by  Reini Urban 
# Please include the string:  [perl #56572]
# in the subject line of all future correspondence about this issue. 
# http://rt.perl.org/rt3/Ticket/Display.html?id=56572 >


2008-07-03 17:17:39 rurban

* requires a svn rename before:
svn rename src/pdb.c src/parrot_pdb.c
svn rename t/tools/pdb.t t/tools/parrot_pdb.t

* MANIFEST, docs/debug.pod, docs/debugger.pod, docs/parrot.pod
src/parrot_pdb.c, t/tools/parrot_pdb.t: rename pdb to parrot_pdb
to avoid conflicts with existing pdb binaries - e.g. the python
debugger or the IBM parallel debugger.

[resent, after three hours not in rt]
-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/

2008-07-03 17:17:39 rurban

	* requires a svn rename before:
	svn rename src/pdb.c src/parrot_pdb.c
	svn rename t/tools/pdb.t t/tools/parrot_pdb.t
	* MANIFEST, docs/debug.pod, docs/debugger.pod, docs/parrot.pod
	src/parrot_pdb.c, t/tools/parrot_pdb.t: rename pdb to parrot_pdb
	to avoid conflicts with existing pdb binaries - e.g. the python 
	debugger or the IBM parallel debugger.

Index: parrot-svn/MANIFEST
===
--- parrot-svn.orig/MANIFEST
+++ parrot-svn/MANIFEST
@@ -3070,7 +3070,7 @@ src/packfile/pf_items.c 
 src/packout.c   []
 src/pbc_info.c  []
 src/pbc_merge.c []
-src/pdb.c   []
+src/parrot_pdb.c[]
 src/pdump.c []
 src/pic.c   []
 src/pic_jit.c   []
@@ -3857,7 +3857,7 @@ t/tools/ops2pmutils/09-prepare_real_ops.
 t/tools/ops2pmutils/10-print_module.t   []
 t/tools/ops2pmutils/11-print_h.t[]
 t/tools/pbc_merge.t []
-t/tools/pdb.t   []
+t/tools/parrot_pdb.t[]
 t/tools/pmc2c.t []
 t/tools/pmc2cutils/00-qualify.t []
 t/tools/pmc2cutils/01-pmc2cutils.t  []
Index: parrot-svn/docs/debug.pod
===
--- parrot-svn.orig/docs/debug.pod
+++ parrot-svn/docs/debug.pod
@@ -75,9 +75,9 @@ different objects over the lifetime of t
 Let's say you have written (or generated) a huge .pasm or .pir file.  It's not
 working. You'd like some help in figuring out why.
 
-=head2 pdb
+=head2 parrot_pdb
 
-One possible tool is C, the Parrot Debugger. See F for
+One possible tool is C, the Parrot Debugger. See F for
 details on it.
 
 =head2 stabs
Index: parrot-svn/docs/debugger.pod
===
--- parrot-svn.orig/docs/debugger.pod
+++ parrot-svn/docs/debugger.pod
@@ -7,12 +7,12 @@ docs/debugger.pod - The Parrot Debugger
 
 =head1 ABSTRACT
 
-This document describes F, the Parrot Debugger.
+This document describes F, the Parrot Debugger.
 
 =head1 DESCRIPTION
 
 Starting from version 0.0.6 Parrot has its own debugger, which is modeled after
-Perl's one. Its name is F, and is an interactive environment that let you
+Perl's one. Its name is F, and is an interactive environment that let you
 step through bytecode, set breakpoints, evaluate assembly instructions and peek
 at the interpreter status.
 
@@ -29,17 +29,17 @@ target:
 
 (where C is the same C incarnation you used to build Parrot).
 
-If everything goes well, you should come up with a F executable in the
+If everything goes well, you should come up with a F executable in the
 same directory as the Parrot program.
 
 =head1 THE DEBUGGER SHELL
 
 To start the debugger type:
 
-  pdb file.pbc
+  parrot_pdb file.pbc
 
-That is, F takes exactly one argument, which is the Parrot bytecode that
-you're going to debug. F will automatically load and disassemble the
+That is, F takes exactly one argument, which is the Parrot bytecode that
+you're going to debug. F will automatically load and disassemble the
 bytecode file for you.
 
 Note that you can't pass command line arguments to your program when you invoke
@@ -49,7 +49,7 @@ After the version banner, you'll see the
 
   (pdb)
 
-F is ready to receive commands and give output. To list the available
+F is ready to receive commands and give output. To list the available
 commands type 'h'. To quit the debugger type 'q'.
 
 As with the Perl debugger, whenever it halts and shows you a line of code, it
@@ -69,7 +69,7 @@ sensitive.
 
 A blank line always repeats the last command entered.
 
-Also note that at this point in its development, F has very poor error
+Also note that at this point in its devel

[perl #43334] [TODO] config/auto/icu.pm: Write unit tests

2008-07-03 Thread James Keenan via RT
Coleoid just pasted this failure report:

t/steps/auto_icu-041/12
#   Failed test 'Got expected return value: failed'
#   at t/steps/auto_icu-04.t line 48.
#  got: 'no'
# expected: 'failed'
# Looks like you failed 1 test of 12.
t/steps/auto_icu-04 Dubious, test returned 1
(wstat 256, 0x100)
 Failed 1/12 subtests

Am looking into it.

kid51


Re: [perl #37664] [TODO] create autogenerated files read-only

2008-07-03 Thread Bob Rogers
   From: chromatic <[EMAIL PROTECTED]>
   Date: Wed, 2 Jul 2008 22:48:02 -0700

   These are the files in a pristine repository with 'ex: set ro:' in
   them; can you (or another Emacs user) edit them to add the
   appropriate tag for Emacs?

The attached patch does this, but raises a question.  In the process, I
discovered that most of these source files became read-only, because
Emacs was looking at the wrong "Local variables:" list!  Here is what
Emacs expects:

The start of the local variables list must be no more than 3000
characters from the end of the file, and must be in the last
page if the file is divided into pages.  Otherwise, Emacs will
not notice it is there . . .  [1]

It turns out that Emacs uses the *first* such list in the last page or
3000 chars [2], which is often the one in the heredoc.  To correct that,
I had to add formfeeds to the end of some files.  Is this obscure enough
in the Perl world to need a comment before the formfeed, so that
somebody doesn't delete it?

-- Bob Rogers
   http://rgrjr.dyndns.org/

[1]  See the "File Variables" node in the Emacs manual,
 M-: (Info-goto-node "(emacs)File Variables")

[2]  I should probably report this as a bug in Emacs, but that won't
 help until Emacs 23.1 has been out for a while.

* tools/build/jit2c.pl:
* tools/build/pbcversion_h.pl:
* tools/build/vtable_h.pl:
* tools/build/vtable_extend.pl:
* tools/build/c2str.pl:
* tools/build/parrot_config_c.pl:
* lib/Parrot/Ops2pm/Utils.pm:
* lib/Parrot/Manifest.pm:
* lib/Parrot/Ops2c/Utils.pm:
* MANIFEST:
* MANIFEST.generated:
* config/gen/call_list.pm:
* config/gen/platform.pm:
   + Add "buffer-read-only: t" to Emacs "Local variables:" sections in
 generated files.  In most cases, this also means adding a formfeed
 character before the source file's "Local variables:" section so
 that Emacs can tell which one to use.

Diffs between last version checked in and current workfile(s):

Index: tools/build/jit2c.pl
===
--- tools/build/jit2c.pl(revision 29037)
+++ tools/build/jit2c.pl(working copy)
@@ -507,6 +507,7 @@
 /*
  * Local variables:
  *   c-file-style: "parrot"
+ *   buffer-read-only: t
  * End:
  * vim: expandtab shiftwidth=4:
  */
@@ -520,6 +521,7 @@
 return ( ( $ptr eq '&' ? '&' : '' ) . sprintf( $argmaps{ 
$type_to_arg{$type} }, $index ) );
 }
 
+
 # Local Variables:
 #   mode: cperl
 #   cperl-indent-level: 4
Index: tools/build/pbcversion_h.pl
===
--- tools/build/pbcversion_h.pl (revision 29037)
+++ tools/build/pbcversion_h.pl (working copy)
@@ -55,11 +55,13 @@
 /*
  * Local variables:
  *   c-file-style: "parrot"
+ *   buffer-read-only: t
  * End:
  * vim: expandtab shiftwidth=4:
  */
 EOF
 
+
 # Local Variables:
 #   mode: cperl
 #   cperl-indent-level: 4
Index: tools/build/vtable_h.pl
===
--- tools/build/vtable_h.pl (revision 29037)
+++ tools/build/vtable_h.pl (working copy)
@@ -67,11 +67,13 @@
 /*
  * Local variables:
  *   c-file-style: "parrot"
+ *   buffer-read-only: t
  * End:
  * vim: expandtab shiftwidth=4:
  */
 EOC
 
+
 # Local Variables:
 #   mode: cperl
 #   cperl-indent-level: 4
Index: tools/build/vtable_extend.pl
===
--- tools/build/vtable_extend.pl(revision 29037)
+++ tools/build/vtable_extend.pl(working copy)
@@ -48,6 +48,7 @@
 /*
  * Local variables:
  *   c-file-style: "parrot"
+ *   buffer-read-only: t
  * End:
  * vim: expandtab shiftwidth=4:
  */
@@ -157,6 +158,7 @@
 
 close $OUT or die $!;
 
+
 # Local Variables:
 #   mode: cperl
 #   cperl-indent-level: 4
Index: tools/build/c2str.pl
===
--- tools/build/c2str.pl(revision 29037)
+++ tools/build/c2str.pl(working copy)
@@ -227,6 +227,7 @@
 /*
  * Local variables:
  *   c-file-style: "parrot"
+ *   buffer-read-only: t
  * End:
  * vim: expandtab shiftwidth=4:
  */
@@ -236,6 +237,7 @@
 return;
 }
 
+
 # Local Variables:
 #   mode: cperl
 #   cperl-indent-level: 4
Index: tools/build/parrot_config_c.pl
===
--- tools/build/parrot_config_c.pl  (revision 29037)
+++ tools/build/parrot_config_c.pl  (working copy)
@@ -105,11 +105,13 @@
 /*
  * Local variables:
  *   c-file-style: "parrot"
+ *   buffer-read-only: t
  * End:
  * vim: expandtab shiftwidth=4:
  */
 EOC
 
+
 # Local Variables:
 #   mode: cperl
 #   cperl-indent-level: 4
Index: lib/Parrot/Ops2pm/Utils.pm
===
--- lib/Parrot/Ops2pm/Utils.pm  (revision 29037)
+++ lib/Parrot/Ops2pm/Utils.pm  (working copy)
@@ -613,6 +613,7 @@
 /

Re: [PATCH] suggestion for the file "grammar.pg"

2008-07-03 Thread Patrick R. Michaud
On Fri, Jul 04, 2008 at 12:15:24AM +0200, Moritz Lenz wrote:
> Hi,
> 
> Gerd Pokorra wrote:
> > I suggest the little attached patch (diff -u) for the file
> > "languages/perl6/src/parser/grammar.pg", so that the following code
> > 
> > my $a = .2;
> > 
> > will also be accepted from Rakudo.
> 
> But does the language specification allow it? I don't think so, and
> STD.pm (after which rakudo's parser is modeled) doesn't allow it.

According to S02:420, a leading dot is allowed to introduce a Num:

... (The C<.123> form with a leading dot is still allowed 
however when a term is expected, and is equivalent
to C<0.123> rather than C<$_.123>.)

Moritz is correct, however, that STD.pm doesn't seem to allow this
yet, and since Rakudo is trying to follow STD.pm as closely as
we can, we may just wait to see what STD.pm does.  Also, the 
patch seems to have a bug in it, as it replaces C< \d+[_\d+]* >
with C< \d*d[_\d+]* >.  I'm not sure what the extra 'd' in '\d*d' 
is supposed to represent, but I'm pretty sure it's wrong.  And 
if we just use

\d*[_\d+]*

then we end up with the case that 'E+3' can be parsed as a
valid .

Thanks for the patch, though -- perhaps if we tweak it enough it'll
get adopted into STD.pm (and then we can more comfortably add it
to rakudo).

Pm