pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/lang/parrot Update parrot to 0.4.11.



details:   https://anonhg.NetBSD.org/pkgsrc/rev/bdc92e417669
branches:  trunk
changeset: 528076:bdc92e417669
user:      obache <obache%pkgsrc.org@localhost>
date:      Fri Apr 20 14:01:00 2007 +0000

description:
Update parrot to 0.4.11.
Based on patch provided in PR 36157, update to 0.4.10.

New in 0.4.11

- Compilers:
 + IMCC: added documentation for C-based Parrot Calling Conventions,
   refactorings and bug fixes
 + PGE: new perl6regex front end reflecting recent S05 syntax changes
 + PIRC: new prototype PIR parser
- Languages:
 + Updated Lua, PHP ("Plumhead"), BASIC, pynie
 + Lua implements environment
- Design:
 + PDD15 "Objects" - details added, and draft approved
- Documentation:
 + Added guidelines for PMC documentation
- Implementation:
 + PDD15 implementation is largely complete, including role-based composition,
   introspection, and C3 method resolution order
 + new Exporter PMC for importing globals between namespaces
 + new string utilities for radix conversion
 + PCCINVOKE and Parrot_PCCINVOKE allow calling using the full Parrot Calling
   Conventions from PMCs and C code respectively
- Build:
 + Refactorings and improvements in test coverage for 'Configure.pl'
- Misc:
 + many bugfixes, enhancements, and code cleanup
 + added example subversion config file
 + extended support for gcc, icc, and other compilers
 + extended support for Solaris and other platforms


New in 0.4.10

- Compilers:
 + IMCC: Parrot calling conventions now available between two C PMCs (PMINVOKE)
 + PGE: Match object improvements
 + smop: added Attribute and Class PMCs
 + HLLCompiler: improvements for interactive mode
- PAST:
 + extended binding to a list of variables
- Languages:
 + Updated Lua, PHP ("Plumhead"), Tcl ("ParTcl"), Ruby ("Cardinal")
 + Update PIR, regex, Zcode
 + New language: Pynie - a Python compiler for Parrot
 + Lua implements require and many other ops, improved regex support
 + Remove parakeet
- Design:
 + PDD01 "Overview" - updated architecture and platform information
 + PDD15 "Objects" - details on roles, objects, and classes added
 + PDD22 "I/O" - added async ops and Status PMC details
- Documentation:
 + Added guides for Metacommitter, Relase Manager, and Cage Cleaner roles
- Implementation:
 + Object, Class, Role, and Attribute PMC implementation has begun
 + Perl 5 module "Parrot::Embed" now compiles and links on all platforms
- Build:
 + Major improvements in test coverage for 'ops2c.pl'
- Misc:
 + New utility: Crow, a template processor
 + New library module: Config/JSON for reading/writing JSON files
 + many bugfixes, enhancements, and coding standard updates, code cleanup

New in 0.4.9

- Compilers:
   + IMCC: Parrot calling conventions now available in C PMCs, allowing
     named, optional, slurpy, and flat parameter passing
   + PGE: extended support for Perl 5 Regexes
   + smop: prototype object model implementation
   + hllcompiler: refactored to run a configurable set of compilation stages
- PAST:
   + redesigned assign/binding to support Perl 6 binding semantics
- Languages:
   + Updated Lua, PHP ("Plumhead"), Tcl ("ParTcl"), perl6, perl5
   + New language: PIR - a PGE-based implementation of Parrot PIR
   + perl6 now supports binding (':=') and 'join'
   + lua generates tail calls, and supports its own regex flavor (PGE-based)
   + Pheme still works, huzzah!
- Design:
   + PDD21 "Objects" - rewritten
   + PDD22 "I/O" - updated and 'TODO' tests added
- Documentation:
   + Interface stability classification standards approved
   + Roles and Responsibilities documented approved
   + Official 'drafts' directory created (was 'clip')
- Implementation:
   + More NameSpace and OS PMC methods implemented
   + Parrot executable fullname and basename now available in PIR/PASM code
   + new 'chomp' library function
- Build:
   + Major improvements in test coverage for 'ops2pm.pl'
- Misc:
   + many bugfixes, enhancements, and coding standard updates
   + extended support for Sun Workshop Compilers
   + Parrot now builds on PocketPC platform

New in 0.4.8

- Compilers:
   + HLLCompiler: added tracing options, modified api
   + PGE & TGE bugfixes and updates
- PAST:
   + added global and lexical variable support
   + added looping constructs, arrays, hashes
- Languages:
   + Updated PHP ("Plumhead"), Tcl ("ParTcl"),
     forth, perl6, lua, abc, APL, WMLScript, punie
   + ParTcl is passing > 24.9% of Tcl cvs-latest test suite
   + perl6 now supports hashes, arrays, method calls, arity-based
     multisubs, quoted terms, ranges (non-lazy), try blocks, $!
- Design:
   + PDD01 "Overview" - updated
   + PDD22 "I/O" - rewritten and approved
- Test Suite:
   + Converted Perl 5 Regex tests to PIR, with notable speedup
   + Added tests for opcodes, compilers, languages, and coding standards
- Build:
   + Major improvements in test coverage for 'pmc2c.pl'
- Misc:
   + many bugfixes, enhancements, and coding standard updates
   + extended support for non-core platforms including Cygwin, Tru64

New in 0.4.7

- New languages: PHP ("Plumhead"), Forth
- Updated languages: Ruby ("Cardinal"), Tcl, Lua
- Remove old Python implementation from Parrot repository; the new Python
  language code is hosted at http://pirate.tangentcode.com
- Compilers:
   + PGE updated with more expressions, latest changes to S05
   + new Perl6 grammar compiler
- Integration:
   + Perl 5 module "Parrot::Embed" allows easy embedding of a Parrot
     runtime into a Perl 5 program
- PIR:
   + new :init pragma for subs that must run before the main function
   + new :vtable pragma to identify subs that override PMC vtable methods,
     eliminating the need for special subroutine names
   + PIR parser/compiler does not stop on first syntax error
   + Vanilla register allocator ("register alligator") greatly improves
     performance compiling large functions
   + Eliminated limit on number of PIR macros
- PMCs:
   + hash lookups return null instead of None for missing keys
- Design:
   + PDD13 "Bytecode files: format and manipulation" - new
   + PDD10 "Embedding" - new
   + PDD25 "Concurrency" - rewritten
   + PDD15 "Objects" - new section on redesign requirements
   + PDD07 "Coding standards" - significant updates and automated tests
- Test Suite:
   + Many many more new tests
- Build Process:
   + autoconf compatible install options
- Misc:
   + Namespace refinements
   + Coroutine improvements
   + An impressive swarm of other bugfixes and enhancements

New in 0.4.6

- New languages: Ruby ("Cardinal"), Javascript ("ecmascript")
- Updated languages: Tcl, dotnet, bc, Pheme, Punie, WMLScript
- Updated compilers: PGE, TGE
- IMCC updates:
   + ".loadlib" directive expresses dependencies
   + ".namespace" with no parameter goes to HLL root
   + lexer is reentrant (reentrant grammar in progress)
- Namespace improvements:
   + new suite of opcodes to access namespaces and globals
     ("find_global" and "store_global" will be phased out)
   + namespace '' no longer means HLL root
- Design document updates:
    namespaces (pdd23), basic types (pdd17), embedding
- Updated tool requirements for developers:
    flex 2.5.33, bison 2.1, perl 5.6.1
- New to-do list for people new to Parrot:
    cage/todo.pod
- The usual plethora of bugfixes and enhancements

New in 0.4.5

- unicode subroutine names
- hierarchical class names finished including MMD support
- new dotnet CLI to PIR translator
- improved TGE code and compiler
- APL: vector handling
- new STM branch in the svn repository
- the usual bugfixes and enhancements

New in 0.4.4

- hierarchical class names
- APL compiler
  - under development
  - understands simple vector ops, strings
  - demonstrates use of Unicode in Parrot
- pgc, a compiler for rules and operator precedence parsers
- Major redesign and improvements for PGE
  - compilers understand named parameter options
  - :ratchet option implemented to support non-backtracking quantifiers
- TGE (tree grammar engine) for tree transformations
  - tgc, tree grammar compiler
- perl6 compiler
  - support for many operators, lexical scalars, regex matches
- new pheme (Parrot scheme) compiler

New in 0.4.3

- namespaces partially implemented
- rulec, Perl6 rule compiler
- PGE improvements including return values for closure
- parts of a Perl6 parser based on PGE
- complex trigonometric methods
- type of Sub PMC is now overridable by HLL
- NetBSD support
- many bug fixes and improvements

New in 0.4.2

- improved PPC and x86 JIT support including JIT compilation
  of very simple PASM/PIR subroutines
- preliminary libreadline support
- better trace and debug features
- pkgconfig support
- META.yml to support proper indexing on CPAN
- new opcode: hcf (in "my_ops" in dynamic op library)
- new File pmc for file specific ops (is_dir, is_file, copy, rename...)
- named arguments and parameters (both :named("") and => syntaxes)
- ongoing config improvements
- tons of bug fixes and other small improvements - too much to list all

diffstat:

 lang/parrot/Makefile         |   33 +++---
 lang/parrot/PLIST            |  226 +++++++++++++++++++++++++++++++++---------
 lang/parrot/distinfo         |   10 +-
 lang/parrot/patches/patch-ab |   35 ------
 lang/parrot/patches/patch-ac |   12 --
 5 files changed, 197 insertions(+), 119 deletions(-)

diffs (truncated from 660 to 300 lines):

diff -r a99008bbc3f2 -r bdc92e417669 lang/parrot/Makefile
--- a/lang/parrot/Makefile      Fri Apr 20 13:48:16 2007 +0000
+++ b/lang/parrot/Makefile      Fri Apr 20 14:01:00 2007 +0000
@@ -1,10 +1,9 @@
-# $NetBSD: Makefile,v 1.12 2006/09/30 13:43:52 obache Exp $
+# $NetBSD: Makefile,v 1.13 2007/04/20 14:01:00 obache Exp $
 #
 
-DISTNAME=              parrot-0.4.1
-PKGREVISION=           1
+DISTNAME=              parrot-0.4.11
 CATEGORIES=            lang
-MASTER_SITES=          ${MASTER_SITE_PERL_CPAN:=../by-authors/id/L/LT/LTOETSCH/}
+MASTER_SITES=          ${MASTER_SITE_PERL_CPAN:=../by-authors/id/M/MD/MDIEP/}
 
 MAINTAINER=            debolaz%gmail.com@localhost
 HOMEPAGE=              http://www.parrotcode.org/
@@ -15,10 +14,14 @@
 PTHREAD_OPTS+=         require
 BUILD_TARGET=          world
 TEST_TARGET=           test
+INSTALL_TARGET=                reallyinstall
+HAS_CONFIGURE=         yes
 
 .include "../../mk/pthread.buildlink3.mk"
 .include "../../mk/bsd.prefs.mk"
 
+CONFIG_SHELL=          perl
+CONFIGURE_SCRIPT=      Configure.pl
 CONFIGURE_ARGS+=       --prefix=${PREFIX:Q} \
                        --icu-config=${PREFIX}/bin/icu-config
 
@@ -30,19 +33,15 @@
                        --execcapable
 .endif
 
-do-configure:
-       cd ${WRKSRC} && ${PERL5} Configure.pl ${CONFIGURE_ARGS}
-
-post-configure:
-       ${MV} ${WRKSRC}/Makefile ${WRKSRC}/Makefile.orig
-       ${SED}  -e 's|-pthread||g' \
-               -e 's|-lpthread||g' \
-               -e 's|-lc_r||g' \
-               -e '/^CFLAGS /s|$$|${PTHREAD_CFLAGS}|' \
-               -e '/^LINKFLAGS /s|$$|${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}|' \
-               -e '/^LDFLAGS /s|$$|${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}|' \
-               < ${WRKSRC}/Makefile.orig \
-               > ${WRKSRC}/Makefile
+SUBST_CLASSES+=                pthread
+SUBST_STAGE.pthread=   post-configure
+SUBST_FILES.pthread=   Makefile
+SUBST_SED.pthread=     -e 's|-pthread||g'
+SUBST_SED.pthread+=    -e 's|-lpthread||g'
+SUBST_SED.pthread+=    -e 's|-lc_r||g'
+SUBST_SED.pthread+=    -e '/^CFLAGS /s|$$|${PTHREAD_CFLAGS:Q}|'
+SUBST_SED.pthread+=    -e '/^LINKFLAGS /s|$$|${PTHREAD_LDFLAGS:Q} ${PTHREAD_LIBS:Q}|'
+SUBST_SED.pthread+=    -e '/^LDFLAGS /s|$$|${PTHREAD_LDFLAGS:Q} ${PTHREAD_LIBS:Q}|'
 
 post-install:
        if [ -e ${PREFIX}/lib/libparrot.so.0.4.1 ]; then \
diff -r a99008bbc3f2 -r bdc92e417669 lang/parrot/PLIST
--- a/lang/parrot/PLIST Fri Apr 20 13:48:16 2007 +0000
+++ b/lang/parrot/PLIST Fri Apr 20 14:01:00 2007 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.3 2006/01/09 17:47:07 wiz Exp $
+@comment $NetBSD: PLIST,v 1.4 2007/04/20 14:01:00 obache Exp $
 bin/disassemble
 bin/parrot
 bin/parrot-config
@@ -6,11 +6,24 @@
 bin/pbc_merge
 bin/pdb
 bin/pdump
-include/parrot/autoprefix.h
+compilers/imcc/imclexer.c
+config/gen/cpu/${MACHINE_ARCH}/memcpy_mmx.c
+config/gen/cpu/${MACHINE_ARCH}/memcpy_sse.c
+config/gen/platform/ansi/dl.c
+config/gen/platform/ansi/time.c
+config/gen/platform/darwin/memalign.c
+config/gen/platform/generic/stat.c
+config/gen/platform/win32/stat.c
+include/parrot/atomic.h
+include/parrot/atomic/fallback.h
+include/parrot/atomic/gcc_pcc.h
+include/parrot/atomic/gcc_x86.h
+include/parrot/atomic/sparc.h
 include/parrot/builtin.h
 include/parrot/caches.h
 include/parrot/cclass.h
 include/parrot/charset.h
+include/parrot/compiler.h
 include/parrot/config.h
 include/parrot/core_pmcs.h
 include/parrot/datatypes.h
@@ -23,8 +36,6 @@
 include/parrot/events.h
 include/parrot/exceptions.h
 include/parrot/exec.h
-include/parrot/exec_dep.h
-include/parrot/exec_save.h
 include/parrot/exit.h
 include/parrot/extend.h
 include/parrot/extend_vtable.h
@@ -36,18 +47,14 @@
 include/parrot/headers.h
 include/parrot/hll.h
 include/parrot/inter_call.h
-include/parrot/interp_guts.h
 include/parrot/interpreter.h
 include/parrot/intlist.h
 include/parrot/io.h
-include/parrot/jit.h
-include/parrot/jit_emit.h
 include/parrot/key.h
 include/parrot/library.h
 include/parrot/list.h
 include/parrot/longopt.h
 include/parrot/memory.h
-include/parrot/method_util.h
 include/parrot/misc.h
 include/parrot/mmd.h
 include/parrot/nci.h
@@ -61,7 +68,6 @@
 include/parrot/oplib/ops.h
 include/parrot/packfile.h
 include/parrot/parrot.h
-include/parrot/perltypes.h
 include/parrot/pic.h
 include/parrot/platform.h
 include/parrot/platform_interface.h
@@ -70,29 +76,26 @@
 include/parrot/pobj.h
 include/parrot/register.h
 include/parrot/resources.h
-include/parrot/runops_cores.h
 include/parrot/settings.h
 include/parrot/slice.h
 include/parrot/smallobject.h
 include/parrot/stacks.h
 include/parrot/stat.h
+include/parrot/stm/backend.h
 include/parrot/string.h
 include/parrot/string_funcs.h
 include/parrot/string_primitives.h
-include/parrot/string_private_cstring.h
 include/parrot/sub.h
 include/parrot/thr_pthread.h
 include/parrot/thr_windows.h
 include/parrot/thread.h
-include/parrot/trace.h
 include/parrot/tsq.h
-include/parrot/unicode.h
 include/parrot/vtable.h
 include/parrot/vtables.h
 include/parrot/warnings.h
+include/src/jit_emit.h
+include/src/string_private_cstring.h
 lib/libparrot.a
-lib/libparrot.so
-lib/libparrot.so.${PKGVERSION}
 lib/parrot/dynext/dynlexpad.so
 lib/parrot/dynext/libnci_test.so
 lib/parrot/dynext/match_group.so
@@ -104,6 +107,7 @@
 lib/parrot/include/errors.pasm
 lib/parrot/include/except_severity.pasm
 lib/parrot/include/except_types.pasm
+lib/parrot/include/hllmacros.pir
 lib/parrot/include/iglobals.pasm
 lib/parrot/include/interpcores.pasm
 lib/parrot/include/interpdebug.pasm
@@ -117,6 +121,7 @@
 lib/parrot/include/parrotlib.pbc
 lib/parrot/include/pmctypes.pasm
 lib/parrot/include/signal.pasm
+lib/parrot/include/sockets.pasm
 lib/parrot/include/stat.pasm
 lib/parrot/include/stdio.pasm
 lib/parrot/include/stringinfo.pasm
@@ -125,6 +130,9 @@
 lib/parrot/include/tm.pasm
 lib/parrot/include/vtable_methods.pasm
 lib/parrot/include/warnings.pasm
+lib/parrot/library/CGI/QueryHash.pir
+lib/parrot/library/Config/JSON.pir
+lib/parrot/library/Crow.pir
 lib/parrot/library/Data/Dumper.pbc
 lib/parrot/library/Data/Dumper.pir
 lib/parrot/library/Data/Dumper/Base.pbc
@@ -140,16 +148,23 @@
 lib/parrot/library/File/Spec.pir
 lib/parrot/library/File/Spec/Unix.pir
 lib/parrot/library/File/Spec/Win32.pir
-lib/parrot/library/Getopt/Long.pbc
-lib/parrot/library/Getopt/Long.pir
+lib/parrot/library/Getopt/Obj.pbc
+lib/parrot/library/Getopt/Obj.pir
+lib/parrot/library/HTTP/Daemon.pir
+lib/parrot/library/Iter.pir
 lib/parrot/library/JSON.pir
-lib/parrot/library/JSON/Parser.pir
+lib/parrot/library/MIME/Base64.pir
 lib/parrot/library/PGE.pbc
 lib/parrot/library/PGE/Dumper.pir
 lib/parrot/library/PGE/Glob.pir
 lib/parrot/library/PGE/Hs.pir
+lib/parrot/library/PGE/P6Grammar.pir
 lib/parrot/library/PGE/Text.pir
 lib/parrot/library/PGE/Util.pir
+lib/parrot/library/Parrot/Capture_PIR.pir
+lib/parrot/library/Parrot/Coroutine.pir
+lib/parrot/library/Parrot/HLLCompiler.pir
+lib/parrot/library/Pg.pir
 lib/parrot/library/SDL.pir
 lib/parrot/library/SDL/App.pir
 lib/parrot/library/SDL/Button.pir
@@ -165,6 +180,7 @@
 lib/parrot/library/SDL/Sprite.pir
 lib/parrot/library/SDL/StopWatch.pir
 lib/parrot/library/SDL/Surface.pir
+lib/parrot/library/STM.pir
 lib/parrot/library/Stream/Base.pbc
 lib/parrot/library/Stream/Base.pir
 lib/parrot/library/Stream/Combiner.pbc
@@ -183,6 +199,7 @@
 lib/parrot/library/Stream/Sub.pir
 lib/parrot/library/Stream/Writer.pbc
 lib/parrot/library/Stream/Writer.pir
+lib/parrot/library/String/Utils.pir
 lib/parrot/library/Test/Builder.pir
 lib/parrot/library/Test/Builder/Output.pir
 lib/parrot/library/Test/Builder/Test.pir
@@ -200,6 +217,7 @@
 lib/parrot/library/ncurses.pbc
 lib/parrot/library/ncurses.pir
 lib/parrot/library/parrotlib.pbc
+lib/parrot/library/parrotlib.pir
 lib/parrot/library/pcore.pir
 lib/parrot/library/pcre.pbc
 lib/parrot/library/pcre.pir
@@ -207,14 +225,24 @@
 lib/parrot/library/postgres.pasm
 lib/parrot/library/postgres.pir
 lib/parrot/library/random_lib.pir
+lib/parrot/library/tcpstream.pir
+lib/pkgconfig/parrot.pc
+share/doc/parrot/LICENSES/Artistic
+share/doc/parrot/LICENSES/gpl.txt
 share/doc/parrot/RESPONSIBLE_PARTIES
 share/doc/parrot/TODO
+share/doc/parrot/docs/art/pp001-intro.pod
+share/doc/parrot/docs/art/pp002-pmc.pod
+share/doc/parrot/docs/art/pp003-oop.pod
 share/doc/parrot/docs/debugger.pod
-share/doc/parrot/docs/dev/byteorder.dev
-share/doc/parrot/docs/dev/jit_${MACHINE_ARCH}.dev
-share/doc/parrot/docs/dev/longopt.dev
+share/doc/parrot/docs/dev/byteorder.pod
+share/doc/parrot/docs/dev/jit_${MACHINE_ARCH}.pod
+share/doc/parrot/docs/dev/longopt.pod
 share/doc/parrot/docs/dev/nanoparrot.c
 share/doc/parrot/docs/dev/optimizer.pod
+share/doc/parrot/docs/dev/pccmethods.pod
+share/doc/parrot/docs/dev/pmc_object_design_meeting_notes.pod
+share/doc/parrot/docs/dev/wranglers.pod
 share/doc/parrot/docs/embed.pod
 share/doc/parrot/docs/extend.pod
 share/doc/parrot/docs/faq.pod
@@ -232,48 +260,66 @@
 share/doc/parrot/docs/memory_internals.pod
 share/doc/parrot/docs/mmd.pod
 share/doc/parrot/docs/native_exec.pod
+share/doc/parrot/docs/optable.pod
 share/doc/parrot/docs/overview.pod
 share/doc/parrot/docs/parrot.pod
 share/doc/parrot/docs/parrotbyte.pod
+share/doc/parrot/docs/parrothist.pod
+share/doc/parrot/docs/pcc_state.pod
 share/doc/parrot/docs/pdds/README
-share/doc/parrot/docs/pdds/clip/pdd01_overview.pod
-share/doc/parrot/docs/pdds/clip/pdd02_vtables.pod
-share/doc/parrot/docs/pdds/clip/pdd04_datatypes.pod
-share/doc/parrot/docs/pdds/clip/pdd05_opfunc.pod
-share/doc/parrot/docs/pdds/clip/pdd06_pasm.pod
-share/doc/parrot/docs/pdds/clip/pdd07_codingstd.pod
-share/doc/parrot/docs/pdds/clip/pdd08_keys.pod
-share/doc/parrot/docs/pdds/clip/pdd09_gc.pod
-share/doc/parrot/docs/pdds/clip/pdd10_embedding.pod
-share/doc/parrot/docs/pdds/clip/pdd11_extending.pod
-share/doc/parrot/docs/pdds/clip/pdd12_assembly.pod
-share/doc/parrot/docs/pdds/clip/pdd13_bytecode.pod
-share/doc/parrot/docs/pdds/clip/pdd14_bignum.pod
-share/doc/parrot/docs/pdds/clip/pdd15_objects.pod
-share/doc/parrot/docs/pdds/clip/pdd16_native_call.pod
-share/doc/parrot/docs/pdds/clip/pdd17_basic_types.pod
-share/doc/parrot/docs/pdds/clip/pdd18_security.pod
-share/doc/parrot/docs/pdds/clip/pdd19_pir.pod
+share/doc/parrot/docs/pdds/draft/pdd01_overview.pod



Home | Main Index | Thread Index | Old Index