Idea: infir types of constants

2008-04-13 Thread John M. Dlugosz
Just surfing, I noticed something about the D programming language: The types of constants need not be specified explicitly as the compiler infers their types http://en.wikipedia.org/wiki/Type_inference from the right-hand sides of assignments. const fact_7 = Factorial!(7); Now in C++,

A TEMP block?

2008-04-13 Thread John M. Dlugosz
S06 Temporization, along with 'temp' variables, defines a TEMP block. Do we really need such a thing? It appears to be a LEAVE block with another level of indirection. Hmm, that is, the body of the TEMP block executes at its normal place at run-time, unlike the episodic blocks it resembles;

Re: Clarify Design by Contract

2008-04-13 Thread Moritz Lenz
John M. Dlugosz wrote: PRE/POST on methods: When applied to a method, the semantics provide support for the Design by Contract style of OO programming: a precondition of a particular method is met if all the PRE blocks associated with that method return true. Otherwise, the

Re: Idea: infir types of constants

2008-04-13 Thread Moritz Lenz
John M. Dlugosz wrote: Just surfing, I noticed something about the D programming language: The types of constants need not be specified explicitly as the compiler infers their types http://en.wikipedia.org/wiki/Type_inference from the right-hand sides of assignments. const fact_7 =

Re: A TEMP block?

2008-04-13 Thread John M. Dlugosz
The more I think about it, the less I like it. I see now that the reason for the construct was to support temp foo.wrap(blahblah); which seems like an odd duck otherwise. But the restoring ability of the TEMP block has nothing to do with the return value handle. And just how does that

Re: Nomenclature Question - BEGIN etc.

2008-04-13 Thread Richard Hainsworth
How about 'contingent blocks', because they are contingent on some event, without having to use the word 'event'. Richard TSa wrote: HaloO, Larry Wall wrote: Hmm, maybe control event blocks and control events, then... I would call them flow blocks because this is where they are called and

Re: Idea: infir types of constants

2008-04-13 Thread John M. Dlugosz
I'm thinking that if strong typing is enabled, mixing untyped and typed things will cause warnings or errors that need not be there. I'm thinking that 'constant' is more special than other variables, and that the formal description of strong typing and static types should say that the

Re: Clarify Design by Contract

2008-04-13 Thread John M. Dlugosz
Moritz Lenz moritz-at-casella.verplant.org |Perl 6| wrote: This is described in depth in Object oriented software construction by Bertrand Meyer. OK, reading about it in Wiki, I see what it's supposed to do. PRE - derived classes may weaken but not strengthen. So if it fails, but the

[perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread via RT
# New Ticket Created by Bob Rogers # Please include the string: [perl #52838] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=52838 These are holdovers from the bad old days of limited registers. In the rare case

[perl #52842] [CORE] Remove stack.ops and user_stack

2008-04-13 Thread via RT
# New Ticket Created by Bob Rogers # Please include the string: [perl #52842] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=52842 The ops in src/ops/stack.ops are holdovers from the bad old days of limited

[perl #52840] [CAGE] Recode PIR and PASM tests that use stack.ops

2008-04-13 Thread via RT
# New Ticket Created by Bob Rogers # Please include the string: [perl #52840] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=52840 This is a prerequisite to removing the user_stack operations. These ops can be

[svn:parrot-pdd] r26955 - trunk/docs/pdds/draft

2008-04-13 Thread kjs
Author: kjs Date: Sun Apr 13 05:08:55 2008 New Revision: 26955 Modified: trunk/docs/pdds/draft/pdd29_compiler_tools.pod Log: [pdd29] add a few more things so i won't forget. Modified: trunk/docs/pdds/draft/pdd29_compiler_tools.pod

[perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread James Keenan via RT
On Sat Apr 12 20:20:30 2008, rgrjr wrote: There are only a few uses/references left in the codebase: /usr/src/parrot/docs/pdds/draft/pdd06_pasm.pod /usr/src/parrot/docs/pdds/draft/pdd19_pir.pod /usr/src/parrot/editor/kate_syntax.pl

[perl #52202] [BUG]: Rakudo build attempted on Win32 but couldn't get to Hello World

2008-04-13 Thread James Keenan via RT
On Sun Mar 30 17:13:30 2008, [EMAIL PROTECTED] wrote: Let me see if I can get the original tester to post an update. No luck on this. Closing this ticket. If the issue pops up again elsewhere, we'll open a new ticket.

[perl #52726] [BUG]: 'make' failure on Darwin: possibly PGE-related

2008-04-13 Thread James Keenan via RT
This appears to have been corrected by pmichaud with the same fix used in RT 52680. Closing ticket.

Re: Q on function returning

2008-04-13 Thread Brandon S. Allbery KF8NH
On Apr 13, 2008, at 1:20 , John M. Dlugosz wrote: So, what is the role of the inner and outer return types that are declared on the function? While some details have changed since then, you might want to review this thread: http://www.mail-archive.com/[EMAIL PROTECTED]/msg21114.html

Re: 'returns' vs 'of'

2008-04-13 Thread Brandon S. Allbery KF8NH
On Apr 13, 2008, at 1:28 , John M. Dlugosz wrote: I don't like the assignments of 'returns' and 'of'. I think it is easily confused. I've written foo (Int $x) returns Int I think the main problem here is that of is there only for completeness; one would normally say our Int sub foo

Re: Idea: infir types of constants

2008-04-13 Thread Brandon S. Allbery KF8NH
On Apr 13, 2008, at 2:02 , John M. Dlugosz wrote: In Perl 6, I think you would have to arrange to write the return type later rather than sooner to do this: sub foo (::T $a, T $b) is of T and writing it the other way around would violate the one-pass parsing. Just from looking at

build failure with gmake on Solaris

2008-04-13 Thread James E Keenan
I recently obtained shell accounts on some Solaris boxes. Today I made my first attempt to compile and build Parrot on one of them. Configuration was very smooth. See log attached. Note for reference: Determining if your platform supports GMP.yes. ... Determining if your platform

Re: parrot benchmarking

2008-04-13 Thread Nuno 'smash' Carvalho
On Fri, Apr 11, 2008 at 8:55 PM, Nuno 'smash' Carvalho [EMAIL PROTECTED] wrote: On Fri, Apr 11, 2008 at 8:18 PM, chromatic [EMAIL PROTECTED] wrote: On Friday 11 April 2008 12:02:23 Nuno 'smash' Carvalho wrote: I just posted a little Parrot benchmark in my use.perl's journal that

[perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread Bob Rogers
From: James Keenan via RT [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 05:28:17 -0700 On Sat Apr 12 20:20:30 2008, rgrjr wrote: There are only a few uses/references left in the codebase: /usr/src/parrot/docs/pdds/draft/pdd06_pasm.pod

Re: Clarify Design by Contract

2008-04-13 Thread Moritz Lenz
John M. Dlugosz wrote: Moritz Lenz moritz-at-casella.verplant.org |Perl 6| wrote: This is described in depth in Object oriented software construction by Bertrand Meyer. OK, reading about it in Wiki, I see what it's supposed to do. PRE - derived classes may weaken but not strengthen.

Re: [perl #52840] [CAGE] Recode PIR and PASM tests that use stack.ops

2008-04-13 Thread Patrick R. Michaud
On Sat, Apr 12, 2008 at 08:24:57PM -0700, Bob Rogers wrote: This is a prerequisite to removing the user_stack operations. These ops can be found easily by adding: real_exception(interp, NULL, 1, Stack op 'xyz' used.\n); to the code in src/ops/stack.ops, running make test, and

Re: [perl #47828] [TODO] Implement the 'copy' opcode

2008-04-13 Thread Patrick R. Michaud
On Sun, Apr 13, 2008 at 09:05:38AM -0700, Bernhard Schmalhofer via RT wrote: On Mi. 19. Mär. 2008, 07:38:36, pmichaud wrote: On Thu Dec 13 17:47:05 2007, [EMAIL PROTECTED] wrote: Implement a 'copy' assignment (at least until we get the 'copy' opcode -- see RT#47828). The copy

Re: [perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread Patrick R. Michaud
On Sun, Apr 13, 2008 at 11:34:33AM -0400, Bob Rogers wrote: From: James Keenan via RT [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 05:28:17 -0700 Of these five files, the only ones that we (or, more to the point, I) could not safely do right away is

Re: [perl #52840] [CAGE] Recode PIR and PASM tests that use stack.ops

2008-04-13 Thread Bob Rogers
From: Patrick R. Michaud [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 10:56:08 -0500 For others who may be reading this ticket/thread, I just want to reconfirm and/or verify that we're *not* intending to eliminate the bsr/ret opcodes themselves from Parrot . . . Yes, that is correct.

parrot benchmarking, introducing recursion

2008-04-13 Thread Nuno 'smash' Carvalho
Greetings all, We did another Parrot benchmarking, this time using a common programming technique: recursion. We created a function to calculate the number of nodes in a full binary tree given the tree's height. I guess this time the results where not so satisfactory, for Parrot. You can see the

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Patrick R. Michaud
On Sun, Apr 13, 2008 at 06:57:26PM +0100, Nuno 'smash' Carvalho wrote: Greetings all, We did another Parrot benchmarking, this time using a common programming technique: recursion. We created a function to calculate the number of nodes in a full binary tree given the tree's height. I guess

parrot benchmarking, introducing recursion

2008-04-13 Thread Bob Rogers
From: Nuno 'smash' Carvalho [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 18:57:26 +0100 Greetings all, We did another Parrot benchmarking, this time using a common programming technique: recursion. We created a function to calculate the number of nodes in a full binary tree given

Re: [perl #52778] Are resizable arrays too Perlish?

2008-04-13 Thread Patrick R. Michaud
On Fri, Apr 11, 2008 at 12:53:31PM -0700, Bob Rogers wrote: # New Ticket Created by Bob Rogers # Please include the string: [perl #52778] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=52778 As the

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Nuno 'smash' Carvalho
On Sun, Apr 13, 2008 at 7:06 PM, Patrick R. Michaud [EMAIL PROTECTED] wrote: On Sun, Apr 13, 2008 at 06:57:26PM +0100, Nuno 'smash' Carvalho wrote: Greetings all, We did another Parrot benchmarking, this time using a common programming technique: recursion. We created a function to

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Nuno 'smash' Carvalho
On Sun, Apr 13, 2008 at 7:13 PM, Bob Rogers [EMAIL PROTECTED] wrote: From: Nuno 'smash' Carvalho [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 18:57:26 +0100 Greetings all, We did another Parrot benchmarking, this time using a common programming technique: recursion. We created

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Patrick R. Michaud
On Sun, Apr 13, 2008 at 07:21:06PM +0100, Nuno 'smash' Carvalho wrote: On Sun, Apr 13, 2008 at 7:06 PM, Patrick R. Michaud [EMAIL PROTECTED] wrote: On Sun, Apr 13, 2008 at 06:57:26PM +0100, Nuno 'smash' Carvalho wrote: Greetings all, We did another Parrot benchmarking, this time

Help understanding syntax in S06 Pairs as lvalues

2008-04-13 Thread John M. Dlugosz
:(:who($name), :why($reason)) := (why = $because, who = me); What do the symbols $name and $reason refer to? Are they names already in scope? Alternately, the my declarator can also force treatment of its argument as a signature. That would be my (:who($name), :why($reason)) := (why =

Re: [svn:parrot] r26959 - trunk/src

2008-04-13 Thread chromatic
On Sunday 13 April 2008 11:26:45 [EMAIL PROTECTED] wrote: Modified: trunk/src/main.c Log: [gettext] setup gettext in parrot main If this happens in src/main.c, it won't be in libparrot, so anyone who wants to embed Parrot (and use gettext) will have to enable it explicitly in the

the nature of 'temp'

2008-04-13 Thread John M. Dlugosz
Does 'temp' operate on the value or on the container? The text starts, The temp macro temporarily replaces the value of an existing variable... and the description seems consistent with that. temp $*foo = 'foo'; The restore feature is generated by calling VAR($*foo).TEMP, and the method

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread chromatic
On Sunday 13 April 2008 10:57:26 Nuno 'smash' Carvalho wrote: We did another Parrot benchmarking, this time using a common programming technique: recursion. We created a function to calculate the number of nodes in a full binary tree given the tree's height. I guess this time the results

Re: [svn:parrot] r26959 - trunk/src

2008-04-13 Thread Patrick R. Michaud
On Sun, Apr 13, 2008 at 02:01:50PM -0700, chromatic wrote: On Sunday 13 April 2008 11:26:45 [EMAIL PROTECTED] wrote: Modified: trunk/src/main.c Log: [gettext] setup gettext in parrot main If this happens in src/main.c, it won't be in libparrot, so anyone who wants to embed

Re: [svn:parrot] r26963 - trunk/languages/perl6/src/builtins

2008-04-13 Thread Patrick R. Michaud
On Sun, Apr 13, 2008 at 02:50:42PM -0700, [EMAIL PROTECTED] wrote: Modified: trunk/languages/perl6/src/builtins/control.pir Log: [rakudo] First cut at eval. Sucks because it doesn't allow you to use variables in the lexical scope the code is compiled in. Yet. FWIW, I had a note about

Re: [svn:parrot] r26959 - trunk/src

2008-04-13 Thread jerry gay
On Sun, Apr 13, 2008 at 3:07 PM, Patrick R. Michaud [EMAIL PROTECTED] wrote: On Sun, Apr 13, 2008 at 02:01:50PM -0700, chromatic wrote: On Sunday 13 April 2008 11:26:45 [EMAIL PROTECTED] wrote: Modified: trunk/src/main.c Log: [gettext] setup gettext in parrot main

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Bob Rogers
From: chromatic [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 14:35:11 -0700 . . . If they're stable (and they're not always perfectly stable), -Oc should improve the recursion benchmark. -- c AFAICS, there are no calls in tail position, and hence no opportunity for tailcall

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Alberto Simoes
Bob Rogers wrote: From: Nuno 'smash' Carvalho [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 18:57:26 +0100 Greetings all, We did another Parrot benchmarking, this time using a common programming technique: recursion. We created a function to calculate the number of nodes in a

[perl #52854] [bug] Build failure with G++

2008-04-13 Thread Senaka Fernando
# New Ticket Created by Senaka Fernando # Please include the string: [perl #52854] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=52854 The build of Parrot fails with g++, which is a possible indication that it fails

[perl #47828] [TODO] Implement the 'copy' opcode

2008-04-13 Thread Bernhard Schmalhofer via RT
On Mi. 19. Mär. 2008, 07:38:36, pmichaud wrote: On Thu Dec 13 17:47:05 2007, [EMAIL PROTECTED] wrote: Implement a 'copy' assignment (at least until we get the 'copy' opcode -- see RT#47828). The copy opcode has been added in r23917. Can this ticket be resolved now? Regards, Bernhard

Re: In lieu of This Week in Perl 6

2008-04-13 Thread Patrick R. Michaud
On Sat, Apr 12, 2008 at 11:52:44PM +0200, Moritz Lenz wrote: Conrad Schneiker wrote: Also, please consider referring people to the Perl 6 wiki (and any relevant subsections thereof) for more information when writing things that may get wider attention beyond the immediate Perl 6

[perl #52858] $ vars in PASM don't work, but aren't disallowed either

2008-04-13 Thread via RT
# New Ticket Created by Bob Rogers # Please include the string: [perl #52858] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=52858 If you run the following PASM code: new P0, 'Integer' set P0, 77

RE: cross operator and empty list

2008-04-13 Thread Miller, Hugh
-Original Message- From: Moritz Lenz [mailto:[EMAIL PROTECTED] Sent: Saturday, April 12, 2008 10:37 AM To: [EMAIL PROTECTED] Cc: p6l Subject: Re: cross operator and empty list [EMAIL PROTECTED] wrote: Technically the Cartesian cross operator doesn't have an identity value. It has.

Re: [perl #52854] [bug] Build failure with G++

2008-04-13 Thread chromatic
On Sunday 13 April 2008 08:14:11 Senaka Fernando wrote: The build of Parrot fails with g++, which is a possible indication that it fails on other C++ compilers too. I have attached herewith patches to some issues. Thanks, applied as r26965, except for the patch to compilers/imcc/imclexer.c,

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Bob Rogers
From: Alberto Simoes [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 19:16:39 +0100 This is my fault. I prefer smooth curves. But I think smash can include the gplot data together with the source code. That would be ideal. 3. A semi-log plot would be easier to interpret. Smash

Re: parrot benchmarking, introducing recursion

2008-04-13 Thread Geoffrey Broadwell
On Sun, 2008-04-13 at 14:35 -0700, chromatic wrote: As well, the optimizations I recommend for Parrot (if you want to use optimization flags) are: -O2, to choose the fastest available runcore Not so, unless this has been fixed without resolving the RT bug:

[perl #42699] r18304 Test failures on NexentaOS (GNU/OpenSolaris)

2008-04-13 Thread Ronald Blaschke via RT
On Mon Apr 07 21:54:27 2008, coke wrote: On Tue Apr 24 03:05:33 2007, rblasch wrote: The version of parrot this ticket was opened is 11 months old. Can we get another test run with svn-latest or the latest snapshot from CPAN? Here's the result of r26955. Failed Test Stat Wstat

Re: [perl #42699] r18304 Test failures on NexentaOS (GNU/OpenSolaris)

2008-04-13 Thread chromatic
On Sunday 13 April 2008 10:34:22 Ronald Blaschke via RT wrote: Here's the result of r26955. Failed Test Stat Wstat Total Fail Failed List of Failed --- t/examples/shootout.t 13 332820 13 65.00%

[perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread James Keenan via RT
On Sun Apr 13 08:35:08 2008, rgrjr wrote: The usages in ncidef2pasm.pl appear to have nothing per se to do with these ops . . . I couldn't even figure out what ncidef2pasm.pl was for, let alone how to test it. Is this dead code? Not quite. This is one of a number of scripts

context vs context

2008-04-13 Thread John M. Dlugosz
The term context is used for two different purposes. I don't like that. The context can refer to list context, item context etc. The context can also refer to the dynamic calling chain, which are Context objects navigated by the context function.

[perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread Bob Rogers
From: James Keenan via RT [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 19:13:01 -0700 But here is a patch which partially implements the objective of this RT. Excellent; thank you. Did you want to apply it, or shall I? What's missing is a revision of docs/pdds/draft/pdd19_pir.pod.

[perl #39877] [BUG] [CAGE] Distro tests incomplete

2008-04-13 Thread James Keenan via RT
Coke: Have we overcome this problem? kid51

Re: [perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread chromatic
On Sunday 13 April 2008 19:30:50 Bob Rogers wrote: From: James Keenan via RT [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 19:13:01 -0700 But here is a patch which partially implements the objective of this RT. Excellent; thank you. Did you want to apply it, or shall I? What's

[perl #41095] [BUG] Segfault in test.exe during Configuration

2008-04-13 Thread James Keenan via RT
Jonathan: Do you know if we've overcome this problem? Thank you very much. kid51

[perl #41601] [BUG] parrotbug b0rken

2008-04-13 Thread James Keenan via RT
IIRC, Coke recently verified that parrotbug is working (even if not ideally). Is that so? Can we close this RT? thanks kid51

Re: [perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread Bob Rogers
From: chromatic [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 19:36:38 -0700 On Sunday 13 April 2008 19:30:50 Bob Rogers wrote: From: James Keenan via RT [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 19:13:01 -0700 Still to be addressed is this portion of the OP: When

[perl #50056] [BUG] Undefined symbols on OS X

2008-04-13 Thread James Keenan via RT
Hearing no objections, am resolving ticket.

Re: [perl #52838] [CORE] Remove the saveall and restoreall ops

2008-04-13 Thread jerry gay
On Sun, Apr 13, 2008 at 7:36 PM, chromatic [EMAIL PROTECTED] wrote: On Sunday 13 April 2008 19:30:50 Bob Rogers wrote: From: James Keenan via RT [EMAIL PROTECTED] Date: Sun, 13 Apr 2008 19:13:01 -0700 But here is a patch which partially implements the objective of this RT.

[perl #52706] [BUG]: t/dynpmc/gdbmhash.t hanging on Darwin

2008-04-13 Thread James Keenan via RT
Update: Discussed this with particle, who requested that we revert to the revision before 26790 for the purpose of getting us through this week's release. This was done tonight in r26966. We'll resume analysis after the release. Thank you very much. kid51

Re: cross operator and empty list

2008-04-13 Thread Mark A. Biggar
Miller, Hugh wrote: From: Moritz Lenz [mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Technically the Cartesian cross operator doesn't have an identity value. It has. The set which contains only the emty set, or in perl terms ([]); Or am I missing something? Should be a (any) 1 point set