2017-04-22 23:03:07 +02:00
|
|
|
# $NetBSD: Makefile,v 1.86 2017/04/22 21:03:12 adam Exp $
|
2001-09-13 16:18:03 +02:00
|
|
|
#
|
|
|
|
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
DISTNAME= parrot-${PARROT_VERSION}
|
2017-04-22 23:03:07 +02:00
|
|
|
PKGREVISION= 12
|
Update to 0.4.0, provided by Anders Nor Berle in PR 32448.
New in 0.4.0
- New lexical handling and closure support including better
introspection for caller and outer
- PGE (Parrot Grammar Engine) provides now compilers for P6Rule,
P6Grammar, P5Regexp, and Glob
- ca. 1000 new tests including 800 for Perl5 regexp
- Improved unicode charset and encoding support
- Calling conventions for exception handlers
- Punie (Perl 1) uses TGE (Tree Grammar Engine) to convert from
PGE match objects to AST via two steps of tree transformation grammars
- New languages: amber and lua
- The usual code fixes, cleanup, and improvements, including an overhaul
of the config and test framework
New in 0.3.1
- Variable sized register frames are finished. Each subroutine gets
the amount of registers that it actually needs. No more spilling.
- Vastly improved PGE (Parrot Grammar Engine) including shift-reduce,
precedence-based expression parser and support for matching of
bracketed text delimited by e.g. ()[]{}'"
- uniccode character classification (is_upper ...)
- support for heredoc syntax in assembler
- improved examples, basic JSON support
- debian packaging support
- the usual improvements, bug fixes, and cleanup
- test count exceeds 3000
New in 0.3.0
- New calling conventions implemented: see PDD03 for details
- Merge multiple Parrot bytecode (PBC) files into a singe PBC file
- 'make smoke' target going beta
- bc now supports if statements, comparison ops, prefix inc/dec
- ParTcl adds [lassign], [switch] (partially); [expr] converted to a compiler
- Many exciting doc updates, tests, and bugfixes, too numerous to mention
New in 0.2.3
- Dynamic classes now compile on Windows (including ParTcl)
- New Super PMC allows easy access to superclass methods
- Implement C3 method resolution order (just like Perl6 & Python)
- ParTcl has new PIR-based parser and passes more Tcl tests
- added character class support in Globs to PGE
- added language implementations of unlambda, Lazy-k
- many bugfixes, including GC and memory leaks
- the new calling scheme continued to evolve in branches/leo-ctx5
New in 0.2.2
- new call scheme: docs/pdds/pdd03_calling_conventions.pod
- partial implementation of the new calling conventions
PASM only, don't mix PIR foo() call syntax with the new scheme
- grammar and rule support in PGE - the Parrot Grammar Engine
- TCL passes >10% of the tcl test suite
- the usual bugfixes and improvements
New in 0.2.1
- better HLL support (short names for object attributes, and
.HLL and n_operators pragmas)
- string encoding and charset can now be set independently
- experimental mmap IO layer for slurping files
- distinct debug and trace flag settings
- glob support in PGE
- new character classification opcodes and interfaces
New in 0.2.0
- parrot repository is now under subversion
- MMD (Multi Method Dispatch) enhanced
- new unary and infix opcodes that return new result PMCs
- dynamic scalar PMCs inherit now almost all from Parrot core PMCs
- more unification of PMCs and ParrotObjects
- tailcalls for functions and methods
- PGE (Parrot Grammar Engine) reworked
- Pugs creates Parrot code and Pugs is a registered compiler now
- new languages/lisp
- the usual bug fixes and improvements
New in 0.1.2
- New string handling code. Strings now have charset and encoding
- Parts of a generation garbage collector
- Better Python code, separated in dynclasses
- Parrot Grammar Engine
- Improved test coverage and documentation
New in 0.1.1
Parrot 0.1.1 is an intermediate release with tons of updates and fixes.
- Python support: Parrot runs 4/7 of the pie-thon test suite
- Better OS support: more platforms, compiler, OS functions
- Improved PIR syntax for method calls and <op>= assignment
- Dynamic loading reworked including a "make install" target
- MMD - multi method dispatch for binary vtable methods
- Library improvement and cleanup
- BigInt, Complex, *Array, Slice, Enumerate, None PMC classes
- IA64 and hppa JIT support
- Tons of fixes, improvements, new tests, and documentation updates.
A lot is unfinished and keeps changing. Nethertheless Parrot is stable
and usable at the surface, while internals are moving.
New in 0.1.0
- "Ladies and gentlemen, I give you... objects!"
- Huge documentation overhaul
- More supported platforms, s. PLATFORMS
- Basic thread support for pthread based architectures
- Basic event handling for timers and signals including:
- PASM callbacks for NCI (native C) functions.
- Improved platform configuration
- COW stacks now working, stacks code redone
- Structure handling vastly improved
- Random PMC and rand primitives
- Better subroutine call syntax in PIR
- Make PIR subroutines compliant with pdd03
- Improved profiling (DOD, GC timings)
- Hash code improvements, incl. random key order support
- Experimental freeze/thaw code for some PMC types
- IO improvements for buffered layer and Win32
- String iterators
- String bitwise vtables
- Many new opcodes
- Support for JIT, where malloced memory isn't executable
- Priority DOD scheme for objects that need timely destruction
- Improved byte code loading (e.g. onLoad functions)
- Language updates: forth, Perl6/P6C, m4
- Libraries: Getopt_Long, SDL, Dumper, Sort
- new JAPH examples
- Unified imcc and parrot test handling
- Many new tests (make test reports 1386 tests)
- Numerous bug fixes
New in 0.0.13
- The Big Move: Parrot source and build files rearranged into sub dirs
- Build imcc as parrot
- Objects more finished
- Delegate vtable methods to byte code
- Binary multi-method dispatching
- Isa and does methods for PMCs
- Call byte code from C
- Start of extension interface
- Experimental struct handling
- Catch access to NULL PMCs
- Experimental network socket interface code and opcodes
- IO fixes and improvements
- Dynamic opcode libraries
- Fix-assigned opcode numbers
- Argument flattening for function calls
- More native call interface (NCI) signatures
- Ncurses, postgres, and pcre interface libraries
- Forth language is vastly improved
- BSD and Win32 build improvements
- Many new tests and fixes
New in 0.0.12
- This number intentionally left blank
New in 0.0.11
- Executable output
- Dynamic PMC registration
- Trial exception system
- Beginnings of object system
- Iterators
- Ordered hashes
- I/O system improvements
- References
- Documentation for basic PMC types
- IMCC support of Parrot Calling Conventions
- Runtime loading of chartypes (and other string improvements)
- Conditional breakpoints
- Dramatically accelerated sweeps for finalizable objects
- Small PMCs (PMCs split into core and extensions)
- Loadable bytecode packfiles
- Constant PMCs
- Sub variants that deal with the stack correctly
- Switched runops core
- Line numbers in warnings
- Environment access
- Many documentation cleanups
- Conversion to CPS style!
- BASIC debugger and many other wacky features
- Filename, line number parsing support in IMCC
New in 0.0.10
- IMCC integration
- eval
- some more benchmarking
- cgp core
- optimized math ops
- intersegment branches
- more complete use of PObjs
- beefed up packfiles
- sub/continuation/coroutine fixes
- better NCI (native calling interface)
- many imcc improvements
- jako improvements
New in 0.0.9
- Native function calling interface (Dan)
- Stack/list aggregate rewrite (Leo)
- Scratchpads (Jonathan Sillito)
- Preliminary DotGNU support -- type conversion ops (Gopal V + Leo)
- Buffer/PMC unification (Leo)
- stabs debugging support for JIT (Leo)
- Jako overhaul (Gregor)
- Optional Lea allocator (Leo)
- Parrot sprintf (Brent)
- Miniparrot (Josh)
- PMC Properties (Dan)
- Various JIT improvements (D. Grunblatt + Leo)
- Extensible packfiles (Juergen)
- Restructured PMC hierarchy (Leo)
- Real Scheme (Juergen)
New in 0.0.8
- Several new grammars and a BNF -> perl5 and perl6 converter (Jeff)
- Working Perl6 REs (Sean)
- Keyed Access (Tom Hughes et al)
- New PMCs (Alberto et al)
- Better Documentation
- New COW semantics
- GC acceleration (Mike Lambert)
- Lexical scope (Jonathan Sillito)
- IMCC patches
- JIT for the ARM
New in 0.0.7
- Perl 6 Grammar and Compiler (Sean)
- Subroutines, coroutines, and continuations (Melvin)
- GC improvements (Peter Gibbs, Mike Lambert)
- Global variables (Melvin)
- Intermediate bytecode compiler (Melvin, Angel)
- And much, much more.
New in 0.0.6
- New assembler that support keyed types (Jeff)
- New macro layer, allowing constants (Jeff)
- New Configure.pl (Brent)
- Changes to bytecode format, endian issues resolved (Melvin)
- GC improvements and bug fixes (Peter Gibbs, Mike Lambert)
- JIT compiler rewrite (Jason and Daniel)
- Parrot assembler in Parrot (Daniel)
- Parrot debugger (Daniel)
- BASIC polished, Eliza.bas is new (Clint)
- Cola compiler committed and working, with limited OOP (Melvin)
- Keyed aggregates (Steve Fink)
- Global ops (Melvin)
- Compile-time speedup (Melvin)
- Much documentation
- New PDDs (Dan)
- Contributed tetris and lzw files
- And many more, from the cast of thousands
New in 0.0.5
- Full GC
- Perl Scalar support in PMCs
- Array and Hash types almost ready for prime-time
- Internal support for keyed types
- EMACS editing mode
- New PDDs
- New Language - BASIC
- Regular expression compiler
- More tests
- Many, many bug fixes, enhancements, and speedups
New in 0.0.4
- Arena-based memory allocation system
- Copying GC
- New IO subsystem
- "Predereferencing" mode - ./parrot -P - 22% speedup
- JIT compiler - ./parrot -j
- Parrot now builds warnings-clean on many platforms
- Many more PMC methods implemented
- Regular expression operations
- Added a FAQ
- Basic support for embedding Parrot in other programs
- Warnings support
- Added PDDs to distribution
- Bignum library
- PMC inheritance
- Added an assembly optimizer
- Improved string encoding/type support
- Many more tests
- Source reformatting
- Major refactoring in packfile library
- More Miniperl functionality
- New PMC "clone" operator
- Beginnings of key-based access to PMCs - arrays and hashes
- MOPS comparisons in examples/mops/
New in 0.0.3
- PMCs!
- Perl base scalar types implemented
- A new minilanguage, Scheme
- Much improved documentation
- Register stacks pushing and popping
- User stack pushing, popping and rotating
- Jako updates: subroutines, more example programs, optimizations
- test_prog renamed to 'parrot'
- Added features to the assembler: @ for current location, and global
labels
- Build tweaks for VMS
- Bytecode typing clean-ups
- More platforms: OS X, HPUX, OS/2
- The proliferation of runops cores reduced to one fast and one slow one
- Opcode tracing, bounds checking, profiling
- Vastly improved string support, with separation of encoding and
charset
- Lots more tests
- Multiple interpreter creation support - the beginnings of threading
- Much better resource handling - the beginnings of GC
New in 0.0.2
- Parrot now works on all core platforms
- A large number of tests, in the standard Perl testing framework
- A new minilanguage (Jako) which compiles to Parrot assembly
- Documentation about the assembly language (docs/parrot_assembly.pod)
- Separate modules for assembly (Parrot::Assemble) and bytecode
manipulation (Parrot::PackFile::*, packfile.c)
- Assembler completely rewritten
- Better operand-type guessing in the assembler
- Assembler support for '\n' etc. in string constants
- Code reformatted to match the coding standards
- New ops for register-constant INTEGER comparisons
- Macro expansion in the assembler
- IVs and NVs renamed to more friendly INTVAL and NUMVAL
- Hard-coded pack("") formats removed
- Better handling of floating-point numbers in assembler
- Moved floats to constant table (fixing many alignment issues)
2006-01-03 20:25:06 +01:00
|
|
|
CATEGORIES= lang
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
MASTER_SITES= ftp://ftp.parrot.org/pub/parrot/releases/${PARROT_RTYPE}/${PARROT_VERSION}/
|
2001-09-13 16:18:03 +02:00
|
|
|
|
2009-03-26 00:01:48 +01:00
|
|
|
MAINTAINER= he@NetBSD.org
|
Update to 0.4.0, provided by Anders Nor Berle in PR 32448.
New in 0.4.0
- New lexical handling and closure support including better
introspection for caller and outer
- PGE (Parrot Grammar Engine) provides now compilers for P6Rule,
P6Grammar, P5Regexp, and Glob
- ca. 1000 new tests including 800 for Perl5 regexp
- Improved unicode charset and encoding support
- Calling conventions for exception handlers
- Punie (Perl 1) uses TGE (Tree Grammar Engine) to convert from
PGE match objects to AST via two steps of tree transformation grammars
- New languages: amber and lua
- The usual code fixes, cleanup, and improvements, including an overhaul
of the config and test framework
New in 0.3.1
- Variable sized register frames are finished. Each subroutine gets
the amount of registers that it actually needs. No more spilling.
- Vastly improved PGE (Parrot Grammar Engine) including shift-reduce,
precedence-based expression parser and support for matching of
bracketed text delimited by e.g. ()[]{}'"
- uniccode character classification (is_upper ...)
- support for heredoc syntax in assembler
- improved examples, basic JSON support
- debian packaging support
- the usual improvements, bug fixes, and cleanup
- test count exceeds 3000
New in 0.3.0
- New calling conventions implemented: see PDD03 for details
- Merge multiple Parrot bytecode (PBC) files into a singe PBC file
- 'make smoke' target going beta
- bc now supports if statements, comparison ops, prefix inc/dec
- ParTcl adds [lassign], [switch] (partially); [expr] converted to a compiler
- Many exciting doc updates, tests, and bugfixes, too numerous to mention
New in 0.2.3
- Dynamic classes now compile on Windows (including ParTcl)
- New Super PMC allows easy access to superclass methods
- Implement C3 method resolution order (just like Perl6 & Python)
- ParTcl has new PIR-based parser and passes more Tcl tests
- added character class support in Globs to PGE
- added language implementations of unlambda, Lazy-k
- many bugfixes, including GC and memory leaks
- the new calling scheme continued to evolve in branches/leo-ctx5
New in 0.2.2
- new call scheme: docs/pdds/pdd03_calling_conventions.pod
- partial implementation of the new calling conventions
PASM only, don't mix PIR foo() call syntax with the new scheme
- grammar and rule support in PGE - the Parrot Grammar Engine
- TCL passes >10% of the tcl test suite
- the usual bugfixes and improvements
New in 0.2.1
- better HLL support (short names for object attributes, and
.HLL and n_operators pragmas)
- string encoding and charset can now be set independently
- experimental mmap IO layer for slurping files
- distinct debug and trace flag settings
- glob support in PGE
- new character classification opcodes and interfaces
New in 0.2.0
- parrot repository is now under subversion
- MMD (Multi Method Dispatch) enhanced
- new unary and infix opcodes that return new result PMCs
- dynamic scalar PMCs inherit now almost all from Parrot core PMCs
- more unification of PMCs and ParrotObjects
- tailcalls for functions and methods
- PGE (Parrot Grammar Engine) reworked
- Pugs creates Parrot code and Pugs is a registered compiler now
- new languages/lisp
- the usual bug fixes and improvements
New in 0.1.2
- New string handling code. Strings now have charset and encoding
- Parts of a generation garbage collector
- Better Python code, separated in dynclasses
- Parrot Grammar Engine
- Improved test coverage and documentation
New in 0.1.1
Parrot 0.1.1 is an intermediate release with tons of updates and fixes.
- Python support: Parrot runs 4/7 of the pie-thon test suite
- Better OS support: more platforms, compiler, OS functions
- Improved PIR syntax for method calls and <op>= assignment
- Dynamic loading reworked including a "make install" target
- MMD - multi method dispatch for binary vtable methods
- Library improvement and cleanup
- BigInt, Complex, *Array, Slice, Enumerate, None PMC classes
- IA64 and hppa JIT support
- Tons of fixes, improvements, new tests, and documentation updates.
A lot is unfinished and keeps changing. Nethertheless Parrot is stable
and usable at the surface, while internals are moving.
New in 0.1.0
- "Ladies and gentlemen, I give you... objects!"
- Huge documentation overhaul
- More supported platforms, s. PLATFORMS
- Basic thread support for pthread based architectures
- Basic event handling for timers and signals including:
- PASM callbacks for NCI (native C) functions.
- Improved platform configuration
- COW stacks now working, stacks code redone
- Structure handling vastly improved
- Random PMC and rand primitives
- Better subroutine call syntax in PIR
- Make PIR subroutines compliant with pdd03
- Improved profiling (DOD, GC timings)
- Hash code improvements, incl. random key order support
- Experimental freeze/thaw code for some PMC types
- IO improvements for buffered layer and Win32
- String iterators
- String bitwise vtables
- Many new opcodes
- Support for JIT, where malloced memory isn't executable
- Priority DOD scheme for objects that need timely destruction
- Improved byte code loading (e.g. onLoad functions)
- Language updates: forth, Perl6/P6C, m4
- Libraries: Getopt_Long, SDL, Dumper, Sort
- new JAPH examples
- Unified imcc and parrot test handling
- Many new tests (make test reports 1386 tests)
- Numerous bug fixes
New in 0.0.13
- The Big Move: Parrot source and build files rearranged into sub dirs
- Build imcc as parrot
- Objects more finished
- Delegate vtable methods to byte code
- Binary multi-method dispatching
- Isa and does methods for PMCs
- Call byte code from C
- Start of extension interface
- Experimental struct handling
- Catch access to NULL PMCs
- Experimental network socket interface code and opcodes
- IO fixes and improvements
- Dynamic opcode libraries
- Fix-assigned opcode numbers
- Argument flattening for function calls
- More native call interface (NCI) signatures
- Ncurses, postgres, and pcre interface libraries
- Forth language is vastly improved
- BSD and Win32 build improvements
- Many new tests and fixes
New in 0.0.12
- This number intentionally left blank
New in 0.0.11
- Executable output
- Dynamic PMC registration
- Trial exception system
- Beginnings of object system
- Iterators
- Ordered hashes
- I/O system improvements
- References
- Documentation for basic PMC types
- IMCC support of Parrot Calling Conventions
- Runtime loading of chartypes (and other string improvements)
- Conditional breakpoints
- Dramatically accelerated sweeps for finalizable objects
- Small PMCs (PMCs split into core and extensions)
- Loadable bytecode packfiles
- Constant PMCs
- Sub variants that deal with the stack correctly
- Switched runops core
- Line numbers in warnings
- Environment access
- Many documentation cleanups
- Conversion to CPS style!
- BASIC debugger and many other wacky features
- Filename, line number parsing support in IMCC
New in 0.0.10
- IMCC integration
- eval
- some more benchmarking
- cgp core
- optimized math ops
- intersegment branches
- more complete use of PObjs
- beefed up packfiles
- sub/continuation/coroutine fixes
- better NCI (native calling interface)
- many imcc improvements
- jako improvements
New in 0.0.9
- Native function calling interface (Dan)
- Stack/list aggregate rewrite (Leo)
- Scratchpads (Jonathan Sillito)
- Preliminary DotGNU support -- type conversion ops (Gopal V + Leo)
- Buffer/PMC unification (Leo)
- stabs debugging support for JIT (Leo)
- Jako overhaul (Gregor)
- Optional Lea allocator (Leo)
- Parrot sprintf (Brent)
- Miniparrot (Josh)
- PMC Properties (Dan)
- Various JIT improvements (D. Grunblatt + Leo)
- Extensible packfiles (Juergen)
- Restructured PMC hierarchy (Leo)
- Real Scheme (Juergen)
New in 0.0.8
- Several new grammars and a BNF -> perl5 and perl6 converter (Jeff)
- Working Perl6 REs (Sean)
- Keyed Access (Tom Hughes et al)
- New PMCs (Alberto et al)
- Better Documentation
- New COW semantics
- GC acceleration (Mike Lambert)
- Lexical scope (Jonathan Sillito)
- IMCC patches
- JIT for the ARM
New in 0.0.7
- Perl 6 Grammar and Compiler (Sean)
- Subroutines, coroutines, and continuations (Melvin)
- GC improvements (Peter Gibbs, Mike Lambert)
- Global variables (Melvin)
- Intermediate bytecode compiler (Melvin, Angel)
- And much, much more.
New in 0.0.6
- New assembler that support keyed types (Jeff)
- New macro layer, allowing constants (Jeff)
- New Configure.pl (Brent)
- Changes to bytecode format, endian issues resolved (Melvin)
- GC improvements and bug fixes (Peter Gibbs, Mike Lambert)
- JIT compiler rewrite (Jason and Daniel)
- Parrot assembler in Parrot (Daniel)
- Parrot debugger (Daniel)
- BASIC polished, Eliza.bas is new (Clint)
- Cola compiler committed and working, with limited OOP (Melvin)
- Keyed aggregates (Steve Fink)
- Global ops (Melvin)
- Compile-time speedup (Melvin)
- Much documentation
- New PDDs (Dan)
- Contributed tetris and lzw files
- And many more, from the cast of thousands
New in 0.0.5
- Full GC
- Perl Scalar support in PMCs
- Array and Hash types almost ready for prime-time
- Internal support for keyed types
- EMACS editing mode
- New PDDs
- New Language - BASIC
- Regular expression compiler
- More tests
- Many, many bug fixes, enhancements, and speedups
New in 0.0.4
- Arena-based memory allocation system
- Copying GC
- New IO subsystem
- "Predereferencing" mode - ./parrot -P - 22% speedup
- JIT compiler - ./parrot -j
- Parrot now builds warnings-clean on many platforms
- Many more PMC methods implemented
- Regular expression operations
- Added a FAQ
- Basic support for embedding Parrot in other programs
- Warnings support
- Added PDDs to distribution
- Bignum library
- PMC inheritance
- Added an assembly optimizer
- Improved string encoding/type support
- Many more tests
- Source reformatting
- Major refactoring in packfile library
- More Miniperl functionality
- New PMC "clone" operator
- Beginnings of key-based access to PMCs - arrays and hashes
- MOPS comparisons in examples/mops/
New in 0.0.3
- PMCs!
- Perl base scalar types implemented
- A new minilanguage, Scheme
- Much improved documentation
- Register stacks pushing and popping
- User stack pushing, popping and rotating
- Jako updates: subroutines, more example programs, optimizations
- test_prog renamed to 'parrot'
- Added features to the assembler: @ for current location, and global
labels
- Build tweaks for VMS
- Bytecode typing clean-ups
- More platforms: OS X, HPUX, OS/2
- The proliferation of runops cores reduced to one fast and one slow one
- Opcode tracing, bounds checking, profiling
- Vastly improved string support, with separation of encoding and
charset
- Lots more tests
- Multiple interpreter creation support - the beginnings of threading
- Much better resource handling - the beginnings of GC
New in 0.0.2
- Parrot now works on all core platforms
- A large number of tests, in the standard Perl testing framework
- A new minilanguage (Jako) which compiles to Parrot assembly
- Documentation about the assembly language (docs/parrot_assembly.pod)
- Separate modules for assembly (Parrot::Assemble) and bytecode
manipulation (Parrot::PackFile::*, packfile.c)
- Assembler completely rewritten
- Better operand-type guessing in the assembler
- Assembler support for '\n' etc. in string constants
- Code reformatted to match the coding standards
- New ops for register-constant INTEGER comparisons
- Macro expansion in the assembler
- IVs and NVs renamed to more friendly INTVAL and NUMVAL
- Hard-coded pack("") formats removed
- Better handling of floating-point numbers in assembler
- Moved floats to constant table (fixing many alignment issues)
2006-01-03 20:25:06 +01:00
|
|
|
HOMEPAGE= http://www.parrotcode.org/
|
|
|
|
COMMENT= Virtual machine made to run Perl 6 and other languages
|
Update from version 1.0.0 to 1.1.0 (now that 1.2.0 is about to be released :)
Pkgsrc changes:
o Add LICENSE setting (artistic-2.0)
o Centralize version number setting
o Assume that this supports user-destdir
Upstream changes:
- Core
+ Added op: load_language, find_caller_lex
+ socket IO are back as PMC
+ refactor some PMC: Hash, ManagedStruct
- Compiler
+ PGE
- Allow \x, \c, and \o in enumerated character classes (incl ranges)
- Add initial greedy-only version of ** quantifier
+ PCT
- Add HLL source line bytecode annotations
- Add another dumper format to assist syntax highlighters
- Revise mk_language_shell.pl to updated create_language.pl
- Deprecations
+ Removed ops: gcd, exec, classname, need_finalize, runinterp, substr_r
+ Removed dynamic op: mul
+ Removed .HLL_map directive; use interp's .hll_map() instead
+ Removed PMCs: slice, bound_nci, ref
+ Removed Configure.pl option: --pmc
+ Removed PMC union struct
- Documentation
+ Book
- Reorganization and many improvements & additions
- Tools
+ Add a parrot-fuzzer
- Miscellaneous
+ Improve Debian/Ubuntu package
+ various bugfixes, code cleanups, and coding standard fixes
2009-05-19 23:41:48 +02:00
|
|
|
LICENSE= artistic-2.0
|
2001-09-13 16:18:03 +02:00
|
|
|
|
2006-09-30 15:43:52 +02:00
|
|
|
USE_LANGUAGES= c c++
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
USE_TOOLS+= perl gmake
|
Update to 0.4.1, from Anders Nor Berle in PR 32480.
New in 0.4.1
- Installation: 'make install' is using standard locations now
(/usr/local is the default --prefix)
- Produce static and shared libraries on some systems
- Configure system rearragement
- OS pmc started (mkdir,cd,cwd,rm,umask,stat)
- Shootout examples
- Test files are now testable with 'prove'
- Smoke (and smokej) outputs progress
- PIR supports: I = A < B (>,<=,>=,==,!=)
- Add support for octal number constants
- partcl updates:
- almost finish [string]; start [file]
- add build tool for generating inline'd tcl builtins from templates.
- Jako updates: NCI, subroutines, global variables and constants all work.
(Gregor)
Failed 3/190 test scripts, 98.42% okay. 15/4580 subtests failed, 99.67% okay.
2006-01-09 18:47:07 +01:00
|
|
|
PTHREAD_OPTS+= require
|
|
|
|
BUILD_TARGET= world
|
|
|
|
TEST_TARGET= test
|
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
2007-04-20 16:01:00 +02:00
|
|
|
HAS_CONFIGURE= yes
|
2013-09-18 14:07:05 +02:00
|
|
|
MAKE_JOBS_SAFE= no
|
2001-09-13 16:18:03 +02:00
|
|
|
|
Update to 0.4.1, from Anders Nor Berle in PR 32480.
New in 0.4.1
- Installation: 'make install' is using standard locations now
(/usr/local is the default --prefix)
- Produce static and shared libraries on some systems
- Configure system rearragement
- OS pmc started (mkdir,cd,cwd,rm,umask,stat)
- Shootout examples
- Test files are now testable with 'prove'
- Smoke (and smokej) outputs progress
- PIR supports: I = A < B (>,<=,>=,==,!=)
- Add support for octal number constants
- partcl updates:
- almost finish [string]; start [file]
- add build tool for generating inline'd tcl builtins from templates.
- Jako updates: NCI, subroutines, global variables and constants all work.
(Gregor)
Failed 3/190 test scripts, 98.42% okay. 15/4580 subtests failed, 99.67% okay.
2006-01-09 18:47:07 +01:00
|
|
|
.include "../../mk/pthread.buildlink3.mk"
|
Update to 0.4.0, provided by Anders Nor Berle in PR 32448.
New in 0.4.0
- New lexical handling and closure support including better
introspection for caller and outer
- PGE (Parrot Grammar Engine) provides now compilers for P6Rule,
P6Grammar, P5Regexp, and Glob
- ca. 1000 new tests including 800 for Perl5 regexp
- Improved unicode charset and encoding support
- Calling conventions for exception handlers
- Punie (Perl 1) uses TGE (Tree Grammar Engine) to convert from
PGE match objects to AST via two steps of tree transformation grammars
- New languages: amber and lua
- The usual code fixes, cleanup, and improvements, including an overhaul
of the config and test framework
New in 0.3.1
- Variable sized register frames are finished. Each subroutine gets
the amount of registers that it actually needs. No more spilling.
- Vastly improved PGE (Parrot Grammar Engine) including shift-reduce,
precedence-based expression parser and support for matching of
bracketed text delimited by e.g. ()[]{}'"
- uniccode character classification (is_upper ...)
- support for heredoc syntax in assembler
- improved examples, basic JSON support
- debian packaging support
- the usual improvements, bug fixes, and cleanup
- test count exceeds 3000
New in 0.3.0
- New calling conventions implemented: see PDD03 for details
- Merge multiple Parrot bytecode (PBC) files into a singe PBC file
- 'make smoke' target going beta
- bc now supports if statements, comparison ops, prefix inc/dec
- ParTcl adds [lassign], [switch] (partially); [expr] converted to a compiler
- Many exciting doc updates, tests, and bugfixes, too numerous to mention
New in 0.2.3
- Dynamic classes now compile on Windows (including ParTcl)
- New Super PMC allows easy access to superclass methods
- Implement C3 method resolution order (just like Perl6 & Python)
- ParTcl has new PIR-based parser and passes more Tcl tests
- added character class support in Globs to PGE
- added language implementations of unlambda, Lazy-k
- many bugfixes, including GC and memory leaks
- the new calling scheme continued to evolve in branches/leo-ctx5
New in 0.2.2
- new call scheme: docs/pdds/pdd03_calling_conventions.pod
- partial implementation of the new calling conventions
PASM only, don't mix PIR foo() call syntax with the new scheme
- grammar and rule support in PGE - the Parrot Grammar Engine
- TCL passes >10% of the tcl test suite
- the usual bugfixes and improvements
New in 0.2.1
- better HLL support (short names for object attributes, and
.HLL and n_operators pragmas)
- string encoding and charset can now be set independently
- experimental mmap IO layer for slurping files
- distinct debug and trace flag settings
- glob support in PGE
- new character classification opcodes and interfaces
New in 0.2.0
- parrot repository is now under subversion
- MMD (Multi Method Dispatch) enhanced
- new unary and infix opcodes that return new result PMCs
- dynamic scalar PMCs inherit now almost all from Parrot core PMCs
- more unification of PMCs and ParrotObjects
- tailcalls for functions and methods
- PGE (Parrot Grammar Engine) reworked
- Pugs creates Parrot code and Pugs is a registered compiler now
- new languages/lisp
- the usual bug fixes and improvements
New in 0.1.2
- New string handling code. Strings now have charset and encoding
- Parts of a generation garbage collector
- Better Python code, separated in dynclasses
- Parrot Grammar Engine
- Improved test coverage and documentation
New in 0.1.1
Parrot 0.1.1 is an intermediate release with tons of updates and fixes.
- Python support: Parrot runs 4/7 of the pie-thon test suite
- Better OS support: more platforms, compiler, OS functions
- Improved PIR syntax for method calls and <op>= assignment
- Dynamic loading reworked including a "make install" target
- MMD - multi method dispatch for binary vtable methods
- Library improvement and cleanup
- BigInt, Complex, *Array, Slice, Enumerate, None PMC classes
- IA64 and hppa JIT support
- Tons of fixes, improvements, new tests, and documentation updates.
A lot is unfinished and keeps changing. Nethertheless Parrot is stable
and usable at the surface, while internals are moving.
New in 0.1.0
- "Ladies and gentlemen, I give you... objects!"
- Huge documentation overhaul
- More supported platforms, s. PLATFORMS
- Basic thread support for pthread based architectures
- Basic event handling for timers and signals including:
- PASM callbacks for NCI (native C) functions.
- Improved platform configuration
- COW stacks now working, stacks code redone
- Structure handling vastly improved
- Random PMC and rand primitives
- Better subroutine call syntax in PIR
- Make PIR subroutines compliant with pdd03
- Improved profiling (DOD, GC timings)
- Hash code improvements, incl. random key order support
- Experimental freeze/thaw code for some PMC types
- IO improvements for buffered layer and Win32
- String iterators
- String bitwise vtables
- Many new opcodes
- Support for JIT, where malloced memory isn't executable
- Priority DOD scheme for objects that need timely destruction
- Improved byte code loading (e.g. onLoad functions)
- Language updates: forth, Perl6/P6C, m4
- Libraries: Getopt_Long, SDL, Dumper, Sort
- new JAPH examples
- Unified imcc and parrot test handling
- Many new tests (make test reports 1386 tests)
- Numerous bug fixes
New in 0.0.13
- The Big Move: Parrot source and build files rearranged into sub dirs
- Build imcc as parrot
- Objects more finished
- Delegate vtable methods to byte code
- Binary multi-method dispatching
- Isa and does methods for PMCs
- Call byte code from C
- Start of extension interface
- Experimental struct handling
- Catch access to NULL PMCs
- Experimental network socket interface code and opcodes
- IO fixes and improvements
- Dynamic opcode libraries
- Fix-assigned opcode numbers
- Argument flattening for function calls
- More native call interface (NCI) signatures
- Ncurses, postgres, and pcre interface libraries
- Forth language is vastly improved
- BSD and Win32 build improvements
- Many new tests and fixes
New in 0.0.12
- This number intentionally left blank
New in 0.0.11
- Executable output
- Dynamic PMC registration
- Trial exception system
- Beginnings of object system
- Iterators
- Ordered hashes
- I/O system improvements
- References
- Documentation for basic PMC types
- IMCC support of Parrot Calling Conventions
- Runtime loading of chartypes (and other string improvements)
- Conditional breakpoints
- Dramatically accelerated sweeps for finalizable objects
- Small PMCs (PMCs split into core and extensions)
- Loadable bytecode packfiles
- Constant PMCs
- Sub variants that deal with the stack correctly
- Switched runops core
- Line numbers in warnings
- Environment access
- Many documentation cleanups
- Conversion to CPS style!
- BASIC debugger and many other wacky features
- Filename, line number parsing support in IMCC
New in 0.0.10
- IMCC integration
- eval
- some more benchmarking
- cgp core
- optimized math ops
- intersegment branches
- more complete use of PObjs
- beefed up packfiles
- sub/continuation/coroutine fixes
- better NCI (native calling interface)
- many imcc improvements
- jako improvements
New in 0.0.9
- Native function calling interface (Dan)
- Stack/list aggregate rewrite (Leo)
- Scratchpads (Jonathan Sillito)
- Preliminary DotGNU support -- type conversion ops (Gopal V + Leo)
- Buffer/PMC unification (Leo)
- stabs debugging support for JIT (Leo)
- Jako overhaul (Gregor)
- Optional Lea allocator (Leo)
- Parrot sprintf (Brent)
- Miniparrot (Josh)
- PMC Properties (Dan)
- Various JIT improvements (D. Grunblatt + Leo)
- Extensible packfiles (Juergen)
- Restructured PMC hierarchy (Leo)
- Real Scheme (Juergen)
New in 0.0.8
- Several new grammars and a BNF -> perl5 and perl6 converter (Jeff)
- Working Perl6 REs (Sean)
- Keyed Access (Tom Hughes et al)
- New PMCs (Alberto et al)
- Better Documentation
- New COW semantics
- GC acceleration (Mike Lambert)
- Lexical scope (Jonathan Sillito)
- IMCC patches
- JIT for the ARM
New in 0.0.7
- Perl 6 Grammar and Compiler (Sean)
- Subroutines, coroutines, and continuations (Melvin)
- GC improvements (Peter Gibbs, Mike Lambert)
- Global variables (Melvin)
- Intermediate bytecode compiler (Melvin, Angel)
- And much, much more.
New in 0.0.6
- New assembler that support keyed types (Jeff)
- New macro layer, allowing constants (Jeff)
- New Configure.pl (Brent)
- Changes to bytecode format, endian issues resolved (Melvin)
- GC improvements and bug fixes (Peter Gibbs, Mike Lambert)
- JIT compiler rewrite (Jason and Daniel)
- Parrot assembler in Parrot (Daniel)
- Parrot debugger (Daniel)
- BASIC polished, Eliza.bas is new (Clint)
- Cola compiler committed and working, with limited OOP (Melvin)
- Keyed aggregates (Steve Fink)
- Global ops (Melvin)
- Compile-time speedup (Melvin)
- Much documentation
- New PDDs (Dan)
- Contributed tetris and lzw files
- And many more, from the cast of thousands
New in 0.0.5
- Full GC
- Perl Scalar support in PMCs
- Array and Hash types almost ready for prime-time
- Internal support for keyed types
- EMACS editing mode
- New PDDs
- New Language - BASIC
- Regular expression compiler
- More tests
- Many, many bug fixes, enhancements, and speedups
New in 0.0.4
- Arena-based memory allocation system
- Copying GC
- New IO subsystem
- "Predereferencing" mode - ./parrot -P - 22% speedup
- JIT compiler - ./parrot -j
- Parrot now builds warnings-clean on many platforms
- Many more PMC methods implemented
- Regular expression operations
- Added a FAQ
- Basic support for embedding Parrot in other programs
- Warnings support
- Added PDDs to distribution
- Bignum library
- PMC inheritance
- Added an assembly optimizer
- Improved string encoding/type support
- Many more tests
- Source reformatting
- Major refactoring in packfile library
- More Miniperl functionality
- New PMC "clone" operator
- Beginnings of key-based access to PMCs - arrays and hashes
- MOPS comparisons in examples/mops/
New in 0.0.3
- PMCs!
- Perl base scalar types implemented
- A new minilanguage, Scheme
- Much improved documentation
- Register stacks pushing and popping
- User stack pushing, popping and rotating
- Jako updates: subroutines, more example programs, optimizations
- test_prog renamed to 'parrot'
- Added features to the assembler: @ for current location, and global
labels
- Build tweaks for VMS
- Bytecode typing clean-ups
- More platforms: OS X, HPUX, OS/2
- The proliferation of runops cores reduced to one fast and one slow one
- Opcode tracing, bounds checking, profiling
- Vastly improved string support, with separation of encoding and
charset
- Lots more tests
- Multiple interpreter creation support - the beginnings of threading
- Much better resource handling - the beginnings of GC
New in 0.0.2
- Parrot now works on all core platforms
- A large number of tests, in the standard Perl testing framework
- A new minilanguage (Jako) which compiles to Parrot assembly
- Documentation about the assembly language (docs/parrot_assembly.pod)
- Separate modules for assembly (Parrot::Assemble) and bytecode
manipulation (Parrot::PackFile::*, packfile.c)
- Assembler completely rewritten
- Better operand-type guessing in the assembler
- Assembler support for '\n' etc. in string constants
- Code reformatted to match the coding standards
- New ops for register-constant INTEGER comparisons
- Macro expansion in the assembler
- IVs and NVs renamed to more friendly INTVAL and NUMVAL
- Hard-coded pack("") formats removed
- Better handling of floating-point numbers in assembler
- Moved floats to constant table (fixing many alignment issues)
2006-01-03 20:25:06 +01:00
|
|
|
.include "../../mk/bsd.prefs.mk"
|
2005-06-16 08:57:37 +02:00
|
|
|
|
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
2007-04-20 16:01:00 +02:00
|
|
|
CONFIG_SHELL= perl
|
|
|
|
CONFIGURE_SCRIPT= Configure.pl
|
Update to 0.4.1, from Anders Nor Berle in PR 32480.
New in 0.4.1
- Installation: 'make install' is using standard locations now
(/usr/local is the default --prefix)
- Produce static and shared libraries on some systems
- Configure system rearragement
- OS pmc started (mkdir,cd,cwd,rm,umask,stat)
- Shootout examples
- Test files are now testable with 'prove'
- Smoke (and smokej) outputs progress
- PIR supports: I = A < B (>,<=,>=,==,!=)
- Add support for octal number constants
- partcl updates:
- almost finish [string]; start [file]
- add build tool for generating inline'd tcl builtins from templates.
- Jako updates: NCI, subroutines, global variables and constants all work.
(Gregor)
Failed 3/190 test scripts, 98.42% okay. 15/4580 subtests failed, 99.67% okay.
2006-01-09 18:47:07 +01:00
|
|
|
CONFIGURE_ARGS+= --prefix=${PREFIX:Q} \
|
2010-08-17 15:27:51 +02:00
|
|
|
--icu-config=${PREFIX}/bin/icu-config \
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
--without-opengl --without-pcre \
|
|
|
|
--without-zlib \
|
|
|
|
--without-libffi \
|
2010-08-17 15:27:51 +02:00
|
|
|
--optimize
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
# --without-llvm
|
2001-09-13 16:18:03 +02:00
|
|
|
|
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
2007-04-20 16:01:00 +02:00
|
|
|
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}|'
|
Update to 0.4.0, provided by Anders Nor Berle in PR 32448.
New in 0.4.0
- New lexical handling and closure support including better
introspection for caller and outer
- PGE (Parrot Grammar Engine) provides now compilers for P6Rule,
P6Grammar, P5Regexp, and Glob
- ca. 1000 new tests including 800 for Perl5 regexp
- Improved unicode charset and encoding support
- Calling conventions for exception handlers
- Punie (Perl 1) uses TGE (Tree Grammar Engine) to convert from
PGE match objects to AST via two steps of tree transformation grammars
- New languages: amber and lua
- The usual code fixes, cleanup, and improvements, including an overhaul
of the config and test framework
New in 0.3.1
- Variable sized register frames are finished. Each subroutine gets
the amount of registers that it actually needs. No more spilling.
- Vastly improved PGE (Parrot Grammar Engine) including shift-reduce,
precedence-based expression parser and support for matching of
bracketed text delimited by e.g. ()[]{}'"
- uniccode character classification (is_upper ...)
- support for heredoc syntax in assembler
- improved examples, basic JSON support
- debian packaging support
- the usual improvements, bug fixes, and cleanup
- test count exceeds 3000
New in 0.3.0
- New calling conventions implemented: see PDD03 for details
- Merge multiple Parrot bytecode (PBC) files into a singe PBC file
- 'make smoke' target going beta
- bc now supports if statements, comparison ops, prefix inc/dec
- ParTcl adds [lassign], [switch] (partially); [expr] converted to a compiler
- Many exciting doc updates, tests, and bugfixes, too numerous to mention
New in 0.2.3
- Dynamic classes now compile on Windows (including ParTcl)
- New Super PMC allows easy access to superclass methods
- Implement C3 method resolution order (just like Perl6 & Python)
- ParTcl has new PIR-based parser and passes more Tcl tests
- added character class support in Globs to PGE
- added language implementations of unlambda, Lazy-k
- many bugfixes, including GC and memory leaks
- the new calling scheme continued to evolve in branches/leo-ctx5
New in 0.2.2
- new call scheme: docs/pdds/pdd03_calling_conventions.pod
- partial implementation of the new calling conventions
PASM only, don't mix PIR foo() call syntax with the new scheme
- grammar and rule support in PGE - the Parrot Grammar Engine
- TCL passes >10% of the tcl test suite
- the usual bugfixes and improvements
New in 0.2.1
- better HLL support (short names for object attributes, and
.HLL and n_operators pragmas)
- string encoding and charset can now be set independently
- experimental mmap IO layer for slurping files
- distinct debug and trace flag settings
- glob support in PGE
- new character classification opcodes and interfaces
New in 0.2.0
- parrot repository is now under subversion
- MMD (Multi Method Dispatch) enhanced
- new unary and infix opcodes that return new result PMCs
- dynamic scalar PMCs inherit now almost all from Parrot core PMCs
- more unification of PMCs and ParrotObjects
- tailcalls for functions and methods
- PGE (Parrot Grammar Engine) reworked
- Pugs creates Parrot code and Pugs is a registered compiler now
- new languages/lisp
- the usual bug fixes and improvements
New in 0.1.2
- New string handling code. Strings now have charset and encoding
- Parts of a generation garbage collector
- Better Python code, separated in dynclasses
- Parrot Grammar Engine
- Improved test coverage and documentation
New in 0.1.1
Parrot 0.1.1 is an intermediate release with tons of updates and fixes.
- Python support: Parrot runs 4/7 of the pie-thon test suite
- Better OS support: more platforms, compiler, OS functions
- Improved PIR syntax for method calls and <op>= assignment
- Dynamic loading reworked including a "make install" target
- MMD - multi method dispatch for binary vtable methods
- Library improvement and cleanup
- BigInt, Complex, *Array, Slice, Enumerate, None PMC classes
- IA64 and hppa JIT support
- Tons of fixes, improvements, new tests, and documentation updates.
A lot is unfinished and keeps changing. Nethertheless Parrot is stable
and usable at the surface, while internals are moving.
New in 0.1.0
- "Ladies and gentlemen, I give you... objects!"
- Huge documentation overhaul
- More supported platforms, s. PLATFORMS
- Basic thread support for pthread based architectures
- Basic event handling for timers and signals including:
- PASM callbacks for NCI (native C) functions.
- Improved platform configuration
- COW stacks now working, stacks code redone
- Structure handling vastly improved
- Random PMC and rand primitives
- Better subroutine call syntax in PIR
- Make PIR subroutines compliant with pdd03
- Improved profiling (DOD, GC timings)
- Hash code improvements, incl. random key order support
- Experimental freeze/thaw code for some PMC types
- IO improvements for buffered layer and Win32
- String iterators
- String bitwise vtables
- Many new opcodes
- Support for JIT, where malloced memory isn't executable
- Priority DOD scheme for objects that need timely destruction
- Improved byte code loading (e.g. onLoad functions)
- Language updates: forth, Perl6/P6C, m4
- Libraries: Getopt_Long, SDL, Dumper, Sort
- new JAPH examples
- Unified imcc and parrot test handling
- Many new tests (make test reports 1386 tests)
- Numerous bug fixes
New in 0.0.13
- The Big Move: Parrot source and build files rearranged into sub dirs
- Build imcc as parrot
- Objects more finished
- Delegate vtable methods to byte code
- Binary multi-method dispatching
- Isa and does methods for PMCs
- Call byte code from C
- Start of extension interface
- Experimental struct handling
- Catch access to NULL PMCs
- Experimental network socket interface code and opcodes
- IO fixes and improvements
- Dynamic opcode libraries
- Fix-assigned opcode numbers
- Argument flattening for function calls
- More native call interface (NCI) signatures
- Ncurses, postgres, and pcre interface libraries
- Forth language is vastly improved
- BSD and Win32 build improvements
- Many new tests and fixes
New in 0.0.12
- This number intentionally left blank
New in 0.0.11
- Executable output
- Dynamic PMC registration
- Trial exception system
- Beginnings of object system
- Iterators
- Ordered hashes
- I/O system improvements
- References
- Documentation for basic PMC types
- IMCC support of Parrot Calling Conventions
- Runtime loading of chartypes (and other string improvements)
- Conditional breakpoints
- Dramatically accelerated sweeps for finalizable objects
- Small PMCs (PMCs split into core and extensions)
- Loadable bytecode packfiles
- Constant PMCs
- Sub variants that deal with the stack correctly
- Switched runops core
- Line numbers in warnings
- Environment access
- Many documentation cleanups
- Conversion to CPS style!
- BASIC debugger and many other wacky features
- Filename, line number parsing support in IMCC
New in 0.0.10
- IMCC integration
- eval
- some more benchmarking
- cgp core
- optimized math ops
- intersegment branches
- more complete use of PObjs
- beefed up packfiles
- sub/continuation/coroutine fixes
- better NCI (native calling interface)
- many imcc improvements
- jako improvements
New in 0.0.9
- Native function calling interface (Dan)
- Stack/list aggregate rewrite (Leo)
- Scratchpads (Jonathan Sillito)
- Preliminary DotGNU support -- type conversion ops (Gopal V + Leo)
- Buffer/PMC unification (Leo)
- stabs debugging support for JIT (Leo)
- Jako overhaul (Gregor)
- Optional Lea allocator (Leo)
- Parrot sprintf (Brent)
- Miniparrot (Josh)
- PMC Properties (Dan)
- Various JIT improvements (D. Grunblatt + Leo)
- Extensible packfiles (Juergen)
- Restructured PMC hierarchy (Leo)
- Real Scheme (Juergen)
New in 0.0.8
- Several new grammars and a BNF -> perl5 and perl6 converter (Jeff)
- Working Perl6 REs (Sean)
- Keyed Access (Tom Hughes et al)
- New PMCs (Alberto et al)
- Better Documentation
- New COW semantics
- GC acceleration (Mike Lambert)
- Lexical scope (Jonathan Sillito)
- IMCC patches
- JIT for the ARM
New in 0.0.7
- Perl 6 Grammar and Compiler (Sean)
- Subroutines, coroutines, and continuations (Melvin)
- GC improvements (Peter Gibbs, Mike Lambert)
- Global variables (Melvin)
- Intermediate bytecode compiler (Melvin, Angel)
- And much, much more.
New in 0.0.6
- New assembler that support keyed types (Jeff)
- New macro layer, allowing constants (Jeff)
- New Configure.pl (Brent)
- Changes to bytecode format, endian issues resolved (Melvin)
- GC improvements and bug fixes (Peter Gibbs, Mike Lambert)
- JIT compiler rewrite (Jason and Daniel)
- Parrot assembler in Parrot (Daniel)
- Parrot debugger (Daniel)
- BASIC polished, Eliza.bas is new (Clint)
- Cola compiler committed and working, with limited OOP (Melvin)
- Keyed aggregates (Steve Fink)
- Global ops (Melvin)
- Compile-time speedup (Melvin)
- Much documentation
- New PDDs (Dan)
- Contributed tetris and lzw files
- And many more, from the cast of thousands
New in 0.0.5
- Full GC
- Perl Scalar support in PMCs
- Array and Hash types almost ready for prime-time
- Internal support for keyed types
- EMACS editing mode
- New PDDs
- New Language - BASIC
- Regular expression compiler
- More tests
- Many, many bug fixes, enhancements, and speedups
New in 0.0.4
- Arena-based memory allocation system
- Copying GC
- New IO subsystem
- "Predereferencing" mode - ./parrot -P - 22% speedup
- JIT compiler - ./parrot -j
- Parrot now builds warnings-clean on many platforms
- Many more PMC methods implemented
- Regular expression operations
- Added a FAQ
- Basic support for embedding Parrot in other programs
- Warnings support
- Added PDDs to distribution
- Bignum library
- PMC inheritance
- Added an assembly optimizer
- Improved string encoding/type support
- Many more tests
- Source reformatting
- Major refactoring in packfile library
- More Miniperl functionality
- New PMC "clone" operator
- Beginnings of key-based access to PMCs - arrays and hashes
- MOPS comparisons in examples/mops/
New in 0.0.3
- PMCs!
- Perl base scalar types implemented
- A new minilanguage, Scheme
- Much improved documentation
- Register stacks pushing and popping
- User stack pushing, popping and rotating
- Jako updates: subroutines, more example programs, optimizations
- test_prog renamed to 'parrot'
- Added features to the assembler: @ for current location, and global
labels
- Build tweaks for VMS
- Bytecode typing clean-ups
- More platforms: OS X, HPUX, OS/2
- The proliferation of runops cores reduced to one fast and one slow one
- Opcode tracing, bounds checking, profiling
- Vastly improved string support, with separation of encoding and
charset
- Lots more tests
- Multiple interpreter creation support - the beginnings of threading
- Much better resource handling - the beginnings of GC
New in 0.0.2
- Parrot now works on all core platforms
- A large number of tests, in the standard Perl testing framework
- A new minilanguage (Jako) which compiles to Parrot assembly
- Documentation about the assembly language (docs/parrot_assembly.pod)
- Separate modules for assembly (Parrot::Assemble) and bytecode
manipulation (Parrot::PackFile::*, packfile.c)
- Assembler completely rewritten
- Better operand-type guessing in the assembler
- Assembler support for '\n' etc. in string constants
- Code reformatted to match the coding standards
- New ops for register-constant INTEGER comparisons
- Macro expansion in the assembler
- IVs and NVs renamed to more friendly INTVAL and NUMVAL
- Hard-coded pack("") formats removed
- Better handling of floating-point numbers in assembler
- Moved floats to constant table (fixing many alignment issues)
2006-01-03 20:25:06 +01:00
|
|
|
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
PLIST_SUBST+= PARROT_VERSION=${PARROT_VERSION:Q}
|
|
|
|
PRINT_PLIST_AWK+= { gsub(/${PARROT_VERSION}/, "$${PARROT_VERSION}") }
|
2009-10-21 16:23:13 +02:00
|
|
|
PLIST_SRC+= ${PLIST_SRC_DFLT}
|
|
|
|
# Default this to ELF shared libs with .so,
|
|
|
|
# Darwin has PLIST.Darwin which gets included automatically.
|
|
|
|
.if (${OPSYS} != "Darwin")
|
|
|
|
PLIST_SRC+= PLIST.shared
|
|
|
|
.endif
|
|
|
|
|
Update parrot from version 1.7.0 to 1.8.0.
Update OK'ed by agc@
Pkgsrc changes:
o Replace perl and parrot interpreter references where we can
(one perl module not available at pre-configure time not done)
o Remove patches which are no longer necessary, since they either
came from upstream or have been adopted there
o Update the PLIST to sync with what's being installed
Upstream changes:
- Functionality
+ The FileHandle PMC now exposes the exit code of child process
that was run as pipe.
+ Experimental support for overriding VTABLE invoke in PIR objects
was added.
+ The method 'type' was added to the PackfileAnnotations PMC.
+ The internals of the parrot calling conventions, PCC, were
reworked. All call paths now use a CallSignature object for
passing arguments and return values.
+ The new API-function 'Parrot_ext_call' was added for calling
into C-land.
+ The fixed-size allocator was improved.
+ The files installed by 'make install-dev' are now covered by
'make install' as well.
+ The experimental ops 'fetch' and 'vivify' were added.
+ The -I option to the command 'parrot' now prepends items to
the search path.
+ The Context struct was substituted with auto attributes
(context_auto_attrs branch).
+ Use the osname determined in auto::arch in subsequent configuration
steps (convert_OSNAME branch).
+ Eliminated dependence on Perl 5 '%Config' in auto::format
(auto_format_no_Config branch).
+ MultiSub PMCs now stringify to the name of their first candidate,
instead of the number of candidates.
+ The platform detection at the start of the configuration process
was improved.
+ The 'lineof' method on CodeString objects now precomputes line
number information to be more efficient on variable-width
encoded strings.
+ P6object now supports .WHO and .WHERE methods on protoobjects.
- Compilers
+ A shiny new self-hosting implementation of NQP has been added
in ext/nqp-rx.
- New NQP available as nqp-rx.pbc or parrot-nqp fakecutable.
- NQP includes direct support for grammars and regexes, including
protoregexes.
- NQP has a new PAST-based regex engine (intended to replace PGE).
- Regexes may contain code assertions, parameters, lexical
declarations, and more.
- Double-quoted strings now interpolate scalar variables and closures.
- Subroutine declarations are now lexical by default.
+ PCT
- PAST::Block now supports an 'nsentry' attribute.
- PAST::Var allows 'contextual' scope.
- Attribute bindings now return the bound value.
- Platforms
+ Fixes for the port of Parrot to RTEMS were applied. Yay, first
port to a real time OS!
+ On NetBSD, shared libs are now used.
- Performance
+ Use the the fixed-sized allocator in the Context and the
CallSignature PMC.
+ Many small speed improvements.
- New deprecations
+ MT19937, the Mersenne twisted pseudorandom number generator,
is now hosted on github and will be removed from the Parrot
core. (eligible in 2.1)
+ The 'Parrot_call_*' functions for invoking a sub/method object from C are
deprecated. They are replaced by 'Parrot_ext_call'. (eligible in 2.1)
+ All bitwise VTABLE functions are deprecated. (eligible in 2.1)
+ All bitwise ops will become dynops. (eligible in 2.1)
- Realized deprecations
+ The slice VTABLE entry was removed.
+ The last traces of the 'malloc' garbage collector were removed.
+ Parrot_pcc_constants() was renamed to Parrot_pcc_get_constants().
+ The deprecated functions from the Embedding/Extension interface
were removed.
+ The library YAML/Parser/Syck.pir was removed.
+ The VTABLE function instantiate_str() was removed.
+ Building of parrot_nqp was removed.
- Tests
+ The test coverage of the time-related ops was much improved.
+ New testing functions in Test::More: lives_ok() and dies_ok().
+ The Perl 5 based test scripts t/op/bitwist.t, t/op/comp.t,
t/op/inf_nan.t, t/op/literal.t, t/op/number.t, t/op/sprintf2.t,
and t/op/00ff-dos.t were converted to PIR.
+ The test scripts t/op/annotate.t and t/op/time.t have begun
to be translated from Perl 5 to PIR.
+ In some tests the dependency on %Config from Perl 5 was eliminated.
- Documentation
+ The meaning of 'p' means in NCI function call signatures was clarified.
- Tools
+ The stub for a new language, as created by mk_language_shell.pl,
now relies on the PIR-based tools, which are replacing the Perl
5-based tools.
+ The library Configure.pir was added.
+ The library distutils.pir was added.
- Miscellaneous
+ The mailing list parrot-users and a corresponding google group was created,
http://groups.google.com/group/parrot-users.
+ Many bugfixes, code cleanups, and coding standard fixes.
2009-12-17 15:47:35 +01:00
|
|
|
REPLACE_PERL+= tools/build/ops2c.pl
|
|
|
|
REPLACE_PERL+= tools/build/pmc2c.pl
|
2010-09-07 09:41:51 +02:00
|
|
|
REPLACE_PERL+= tools/dev/create_language.pl
|
Update parrot from version 1.7.0 to 1.8.0.
Update OK'ed by agc@
Pkgsrc changes:
o Replace perl and parrot interpreter references where we can
(one perl module not available at pre-configure time not done)
o Remove patches which are no longer necessary, since they either
came from upstream or have been adopted there
o Update the PLIST to sync with what's being installed
Upstream changes:
- Functionality
+ The FileHandle PMC now exposes the exit code of child process
that was run as pipe.
+ Experimental support for overriding VTABLE invoke in PIR objects
was added.
+ The method 'type' was added to the PackfileAnnotations PMC.
+ The internals of the parrot calling conventions, PCC, were
reworked. All call paths now use a CallSignature object for
passing arguments and return values.
+ The new API-function 'Parrot_ext_call' was added for calling
into C-land.
+ The fixed-size allocator was improved.
+ The files installed by 'make install-dev' are now covered by
'make install' as well.
+ The experimental ops 'fetch' and 'vivify' were added.
+ The -I option to the command 'parrot' now prepends items to
the search path.
+ The Context struct was substituted with auto attributes
(context_auto_attrs branch).
+ Use the osname determined in auto::arch in subsequent configuration
steps (convert_OSNAME branch).
+ Eliminated dependence on Perl 5 '%Config' in auto::format
(auto_format_no_Config branch).
+ MultiSub PMCs now stringify to the name of their first candidate,
instead of the number of candidates.
+ The platform detection at the start of the configuration process
was improved.
+ The 'lineof' method on CodeString objects now precomputes line
number information to be more efficient on variable-width
encoded strings.
+ P6object now supports .WHO and .WHERE methods on protoobjects.
- Compilers
+ A shiny new self-hosting implementation of NQP has been added
in ext/nqp-rx.
- New NQP available as nqp-rx.pbc or parrot-nqp fakecutable.
- NQP includes direct support for grammars and regexes, including
protoregexes.
- NQP has a new PAST-based regex engine (intended to replace PGE).
- Regexes may contain code assertions, parameters, lexical
declarations, and more.
- Double-quoted strings now interpolate scalar variables and closures.
- Subroutine declarations are now lexical by default.
+ PCT
- PAST::Block now supports an 'nsentry' attribute.
- PAST::Var allows 'contextual' scope.
- Attribute bindings now return the bound value.
- Platforms
+ Fixes for the port of Parrot to RTEMS were applied. Yay, first
port to a real time OS!
+ On NetBSD, shared libs are now used.
- Performance
+ Use the the fixed-sized allocator in the Context and the
CallSignature PMC.
+ Many small speed improvements.
- New deprecations
+ MT19937, the Mersenne twisted pseudorandom number generator,
is now hosted on github and will be removed from the Parrot
core. (eligible in 2.1)
+ The 'Parrot_call_*' functions for invoking a sub/method object from C are
deprecated. They are replaced by 'Parrot_ext_call'. (eligible in 2.1)
+ All bitwise VTABLE functions are deprecated. (eligible in 2.1)
+ All bitwise ops will become dynops. (eligible in 2.1)
- Realized deprecations
+ The slice VTABLE entry was removed.
+ The last traces of the 'malloc' garbage collector were removed.
+ Parrot_pcc_constants() was renamed to Parrot_pcc_get_constants().
+ The deprecated functions from the Embedding/Extension interface
were removed.
+ The library YAML/Parser/Syck.pir was removed.
+ The VTABLE function instantiate_str() was removed.
+ Building of parrot_nqp was removed.
- Tests
+ The test coverage of the time-related ops was much improved.
+ New testing functions in Test::More: lives_ok() and dies_ok().
+ The Perl 5 based test scripts t/op/bitwist.t, t/op/comp.t,
t/op/inf_nan.t, t/op/literal.t, t/op/number.t, t/op/sprintf2.t,
and t/op/00ff-dos.t were converted to PIR.
+ The test scripts t/op/annotate.t and t/op/time.t have begun
to be translated from Perl 5 to PIR.
+ In some tests the dependency on %Config from Perl 5 was eliminated.
- Documentation
+ The meaning of 'p' means in NCI function call signatures was clarified.
- Tools
+ The stub for a new language, as created by mk_language_shell.pl,
now relies on the PIR-based tools, which are replacing the Perl
5-based tools.
+ The library Configure.pir was added.
+ The library distutils.pir was added.
- Miscellaneous
+ The mailing list parrot-users and a corresponding google group was created,
http://groups.google.com/group/parrot-users.
+ Many bugfixes, code cleanups, and coding standard fixes.
2009-12-17 15:47:35 +01:00
|
|
|
REPLACE_PERL+= tools/dev/gen_makefile.pl
|
Update to parrot version 4.2.0.
Upstream changes:
- API Changes
+ The signature of getprop was changed from (PMC,String,PMC) to
(PMC, PMC,String) for consistency
- Core
+ Parrot Calling Conventions (pcc) now reuses Continuation PMCs
internally, which reduces GC work by 25% and improves
the fib.pir benchmark by 6%
+ Winxed snapshot updated to 1.6.devel 44a04cfa7b
+ Improved the detection of Clang-ish compilers during configuration
+ Fixed a possible segfault bug when reading packfiles with no
constants or main_sub
+ By default, Parrot has now elevated these GCC warnings to errors
during compile time:
implicit-function-declaration, undef, missing-braces,
nested externs, old-style-definition, strict-prototypes,
+ The OS Dynamic PMC now has separate functions to unlink a file
and remove an empty directory (rmdir)
+ Fix building on Cygwin due to an improperly named DLL file
+ Various small bug fixes pointed out by static and dynamic analysis
tools
- Branches
+ Work on M0 continues now in the m0 branch, which contains both
implementations (currently C and Perl) and specification.
+ Good progress has been made on the threads branch which builds
on the green_threads branch. This gets Parrot much closer to
being able to utilize multiple CPU cores seemlessly. More details
at http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
- Documentation
+ New release manager documentation for parrot.github.com :
http://git.io/parrot-github-guide
- Community
+ Parrot was accepted to Google Summer of Code 2012!
Ideas Page: http://git.io/parrot-gsoc-2012
2012-07-03 15:29:25 +02:00
|
|
|
REPLACE_PERL+= tools/dev/mk_language_shell.in
|
2010-09-16 11:44:17 +02:00
|
|
|
REPLACE_PERL+= tools/dev/pprof2cg.pl
|
Update parrot from version 1.7.0 to 1.8.0.
Update OK'ed by agc@
Pkgsrc changes:
o Replace perl and parrot interpreter references where we can
(one perl module not available at pre-configure time not done)
o Remove patches which are no longer necessary, since they either
came from upstream or have been adopted there
o Update the PLIST to sync with what's being installed
Upstream changes:
- Functionality
+ The FileHandle PMC now exposes the exit code of child process
that was run as pipe.
+ Experimental support for overriding VTABLE invoke in PIR objects
was added.
+ The method 'type' was added to the PackfileAnnotations PMC.
+ The internals of the parrot calling conventions, PCC, were
reworked. All call paths now use a CallSignature object for
passing arguments and return values.
+ The new API-function 'Parrot_ext_call' was added for calling
into C-land.
+ The fixed-size allocator was improved.
+ The files installed by 'make install-dev' are now covered by
'make install' as well.
+ The experimental ops 'fetch' and 'vivify' were added.
+ The -I option to the command 'parrot' now prepends items to
the search path.
+ The Context struct was substituted with auto attributes
(context_auto_attrs branch).
+ Use the osname determined in auto::arch in subsequent configuration
steps (convert_OSNAME branch).
+ Eliminated dependence on Perl 5 '%Config' in auto::format
(auto_format_no_Config branch).
+ MultiSub PMCs now stringify to the name of their first candidate,
instead of the number of candidates.
+ The platform detection at the start of the configuration process
was improved.
+ The 'lineof' method on CodeString objects now precomputes line
number information to be more efficient on variable-width
encoded strings.
+ P6object now supports .WHO and .WHERE methods on protoobjects.
- Compilers
+ A shiny new self-hosting implementation of NQP has been added
in ext/nqp-rx.
- New NQP available as nqp-rx.pbc or parrot-nqp fakecutable.
- NQP includes direct support for grammars and regexes, including
protoregexes.
- NQP has a new PAST-based regex engine (intended to replace PGE).
- Regexes may contain code assertions, parameters, lexical
declarations, and more.
- Double-quoted strings now interpolate scalar variables and closures.
- Subroutine declarations are now lexical by default.
+ PCT
- PAST::Block now supports an 'nsentry' attribute.
- PAST::Var allows 'contextual' scope.
- Attribute bindings now return the bound value.
- Platforms
+ Fixes for the port of Parrot to RTEMS were applied. Yay, first
port to a real time OS!
+ On NetBSD, shared libs are now used.
- Performance
+ Use the the fixed-sized allocator in the Context and the
CallSignature PMC.
+ Many small speed improvements.
- New deprecations
+ MT19937, the Mersenne twisted pseudorandom number generator,
is now hosted on github and will be removed from the Parrot
core. (eligible in 2.1)
+ The 'Parrot_call_*' functions for invoking a sub/method object from C are
deprecated. They are replaced by 'Parrot_ext_call'. (eligible in 2.1)
+ All bitwise VTABLE functions are deprecated. (eligible in 2.1)
+ All bitwise ops will become dynops. (eligible in 2.1)
- Realized deprecations
+ The slice VTABLE entry was removed.
+ The last traces of the 'malloc' garbage collector were removed.
+ Parrot_pcc_constants() was renamed to Parrot_pcc_get_constants().
+ The deprecated functions from the Embedding/Extension interface
were removed.
+ The library YAML/Parser/Syck.pir was removed.
+ The VTABLE function instantiate_str() was removed.
+ Building of parrot_nqp was removed.
- Tests
+ The test coverage of the time-related ops was much improved.
+ New testing functions in Test::More: lives_ok() and dies_ok().
+ The Perl 5 based test scripts t/op/bitwist.t, t/op/comp.t,
t/op/inf_nan.t, t/op/literal.t, t/op/number.t, t/op/sprintf2.t,
and t/op/00ff-dos.t were converted to PIR.
+ The test scripts t/op/annotate.t and t/op/time.t have begun
to be translated from Perl 5 to PIR.
+ In some tests the dependency on %Config from Perl 5 was eliminated.
- Documentation
+ The meaning of 'p' means in NCI function call signatures was clarified.
- Tools
+ The stub for a new language, as created by mk_language_shell.pl,
now relies on the PIR-based tools, which are replacing the Perl
5-based tools.
+ The library Configure.pir was added.
+ The library distutils.pir was added.
- Miscellaneous
+ The mailing list parrot-users and a corresponding google group was created,
http://groups.google.com/group/parrot-users.
+ Many bugfixes, code cleanups, and coding standard fixes.
2009-12-17 15:47:35 +01:00
|
|
|
REPLACE_PERL+= tools/dev/reconfigure.pl
|
|
|
|
|
|
|
|
REPLACE_INTERPRETER+= parrot
|
|
|
|
REPLACE.parrot.old= .*parrot[^[:space:]]*
|
|
|
|
REPLACE.parrot.new= ${PREFIX}/bin/parrot
|
|
|
|
REPLACE_FILES.parrot+= tools/dev/pbc_to_exe.pir
|
|
|
|
|
2011-11-16 15:32:53 +01:00
|
|
|
REPLACE_INTERPRETER+= parrot-nqp
|
|
|
|
REPLACE.parrot-nqp.old= .*parrot-nqp[^[:space:]]*
|
|
|
|
REPLACE.parrot-nqp.new= ${PREFIX}/bin/parrot-nqp
|
|
|
|
REPLACE_FILES.parrot-nqp+= compilers/data_json/JSON.nqp
|
|
|
|
|
|
|
|
REPLACE_INTERPRETER+= nqp
|
|
|
|
REPLACE.nqp.old= .*nqp[^[:space:]]*
|
|
|
|
REPLACE.nqp.new= ${PREFIX}/bin/parrot-nqp
|
|
|
|
REPLACE_FILES.nqp+= runtime/parrot/library/YAML/Tiny.pm
|
|
|
|
|
|
|
|
# These have been reported to parrot, Git tracking issue #201
|
|
|
|
CHECK_WRKREF_SKIP+= bin/ops2c
|
|
|
|
CHECK_WRKREF_SKIP+= bin/parrot
|
|
|
|
CHECK_WRKREF_SKIP+= bin/parrot-nqp
|
|
|
|
CHECK_WRKREF_SKIP+= bin/parrot-prove
|
|
|
|
CHECK_WRKREF_SKIP+= bin/parrot_config
|
|
|
|
CHECK_WRKREF_SKIP+= bin/parrot_nci_thunk_gen
|
|
|
|
CHECK_WRKREF_SKIP+= bin/pbc_merge
|
|
|
|
CHECK_WRKREF_SKIP+= bin/pbc_to_exe
|
|
|
|
CHECK_WRKREF_SKIP+= bin/winxed
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
CHECK_WRKREF_SKIP+= lib/parrot/${PARROT_VERSION}/include/config.fpmc
|
|
|
|
CHECK_WRKREF_SKIP+= lib/parrot/${PARROT_VERSION}/parrot_config.o
|
|
|
|
CHECK_WRKREF_SKIP+= lib/parrot/${PARROT_VERSION}/tools/lib/Parrot/Config/Generated.pm
|
|
|
|
CHECK_WRKREF_SKIP+= src/parrot/${PARROT_VERSION}/config_lib.pir
|
2011-11-16 15:32:53 +01:00
|
|
|
|
2010-02-25 18:59:34 +01:00
|
|
|
# Does relink internally, so allow local rpath entries
|
|
|
|
BUILDLINK_PASSTHRU_RPATHDIRS+= ${WRKSRC}
|
2009-10-21 16:23:13 +02:00
|
|
|
|
Update from version 1.0.0 to 1.1.0 (now that 1.2.0 is about to be released :)
Pkgsrc changes:
o Add LICENSE setting (artistic-2.0)
o Centralize version number setting
o Assume that this supports user-destdir
Upstream changes:
- Core
+ Added op: load_language, find_caller_lex
+ socket IO are back as PMC
+ refactor some PMC: Hash, ManagedStruct
- Compiler
+ PGE
- Allow \x, \c, and \o in enumerated character classes (incl ranges)
- Add initial greedy-only version of ** quantifier
+ PCT
- Add HLL source line bytecode annotations
- Add another dumper format to assist syntax highlighters
- Revise mk_language_shell.pl to updated create_language.pl
- Deprecations
+ Removed ops: gcd, exec, classname, need_finalize, runinterp, substr_r
+ Removed dynamic op: mul
+ Removed .HLL_map directive; use interp's .hll_map() instead
+ Removed PMCs: slice, bound_nci, ref
+ Removed Configure.pl option: --pmc
+ Removed PMC union struct
- Documentation
+ Book
- Reorganization and many improvements & additions
- Tools
+ Add a parrot-fuzzer
- Miscellaneous
+ Improve Debian/Ubuntu package
+ various bugfixes, code cleanups, and coding standard fixes
2009-05-19 23:41:48 +02:00
|
|
|
pre-install:
|
|
|
|
${CHMOD} -R g-w ${WRKSRC}
|
|
|
|
|
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and
raduko * imports).
pkgsrc changes:
* PLIST variable VERSION => PARROT_VERSION
* add PLIST awk rule to replace parrot's version string with
${PARROT_VERSION}
* add a fix for build on MacOS X 10.8
Upstream changes since 4.8.0:
2013-08-20 release 5.7.0
- Build
+ Fixed GH#976 - Cannot load PCRE library during install on gentoo x64.
- Community
+ All three of our GSoC students passed their midterms, and are
on track to complete their Parrot and Perl 6 projects on time.
Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun!
2013-07-16 release 5.6.0
- Build
+ Makefile dependencies are now compatible with VMS make.
- Documentation
+ The main README is now more helpful.
2013-06-18 release 5.5.0
- Build
+ Configure options are now allowed to be quoted.
+ Fixed build on Win32.
+ Updated location of NQP on Win32.
+ Fixed Parrot::Distribution detection.
- Documentation
+ Noted that RESPONSIBLE_PARTIES is mostly out of date.
- Tests
+ Stopped testing native PBC on 64bit LE, due to lack of access to
such machine.
- Release
+ Added tool: make_upload_commands.pl
- Community
+ Parrot has been awarded 3 student slots in Google Summer of Code 2013!
This means that 3 lucky students will be on a paid internship from
Google to work on these accepted proposals:
= Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release"
https://gist.github.com/sa1/5468408
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002
= Pawe�<82> Murias - "A Javascript backend for Rakudo"
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002
= Denis Boyun - "Improve Web UI of App::Parrot::Create"
https://gist.github.com/denisboyun/5472762
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001
+ YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next
generation of Perl implementations.
= Huge Success!
+ MoarVM was unveiled:
https://github.com/MoarVM
+ P2 on Potion was debuted:
http://perl11.org/p2/
2013-05-21 release 5.4.0
- Core
+ Implemented the coth() and acot() math functions.
+ Fixed chomp to only trim a newline when it ends the string. [GH #958]
+ Added readlink() and Parrot_file_readlink(), with tests. [GH #967]
- Build
+ Parrot now detects the CPU model on Linux systems, as well as
detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin.
ARM v7 is also now recognized. [GH #962]
- Documentation
+ Threads examples now have proper POD sections and useful descriptions
with links to references.
+ Added main description for Task PMC.
+ Added descriptions to trig methods in Float PMC.
- Tests
+ Added improved test coverage targets "cover_new" and "fullcover_new".
+ Improved tests for acot(), coth(), acot() math functions.
+ Added tests for options passed to debugger.
+ Updated native PBC test files for string, number, and integer,
which resolved 11 TODOs in the test suite. [GH #959]
+ Fixed test for the auto/arch config step.
- Release process
+ Added message digests to crow.pir.
+ Added in release.json: "release.type" can be "devel" or "supported".
+ Refactored common code to sub in auto_release.pl.
- Community
+ Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA!
http://www.yapcna.org/yn2013/wiki?node=Hackathons
+ Parrot has been accepted to Google Summer of Code 2013!
+ Currently there are two high-quality proposals being worked on:
https://gist.github.com/sa1/5468408 - parrot-libgit2
https://gist.github.com/denisboyun/5472762 - App::Parrot::Create
2013-04-16 release 5.3.0
- Build
+ Files generated by `make cover` are now correctly cleaned by `make`
and ignored by `git`.
- Tests
+ Internal testing of the Configure probe for Fink now works correctly
with the --verbose flag.
+ Tests added for .sort method of ResizableFloatArray and
ResizableIntegerArray. [GH #926], [GH #927]
+ Benchmarks added for .sort methods of various Array objects.
[GH #175]
+ Coverage analysis added for pbc_disassemble.
2013-03-19 release 5.2.0
- Core
+ IO now only syncs buffers for the IO types where syncing makes sense.
= PIO_VF_SYNC_IO flag added
- Build
+ installable_pdump now has the correct rpath (blib corrected to lib).
- Libraries
+ Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact)
- Ecosystem
+ All Parrot tarballs are now symlinked to the 'all' directory,
regardless of their true homes ('devel' or 'stable'), to better
allow for automated downloads.
ftp://ftp.parrot.org/pub/parrot/releases/all/
2013-02-19 release 5.1.0
- Core
+ The .sort() method was added to the FixedFloatArray PMC
+ Improved detection of system memory for machines with >2GB
+ Improved pbc_to_exe support for spacey paths
+ Fixed Parrot_io_readall_s allocating too much string space
- Build
+ Fixed generated MANIFEST files to omit $destdir
- Documentation
- Tests
+ .readall now checks that prior reads are respected.
- Community
+ Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC
2013-01-22 release 5.0.0
- Core
+ Remove duplicate library search path entries, move "." from the beginning to
the end. [GH #368]
+ Install forgotten runtime include files:
cloneflags.pasm
packfile_annotation_keytype.pasm
packfile_segments.pasm
+ Install include/parrot/pbcversion.h with the main package, not devel.
+ Install headers for dynpmc files.
+ Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc,
postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc,
YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc
+ New experimental PARROT_DYNEXT environment variable
+ New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X)
+ Add OS error messages to FileHandle.open() error messages [GH #911]
- Build
+ Generate MANIFEST.generated, cleanup MANIFEST,
removed MANIFEST_configure.generated, add installation of forgotten files
[GH #890]
+ perl Configure.pl now calls make clean if possible
+ Generate datadir/MANIFEST* for all installed files [GH #899]
+ Improved Configure.pl probes for --with-llvm
+ Replace / slashes with \ on windows for all Makefiles automatically.
This improves cygwin interaction, like remote or cronjob smoking on windows.
+ Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641]
- Tools
+ Improved nci_thunk_gen (v0.02): handle void sig, add declaration
+ Fixed nci examples
- Documentation
+ Re-added docs/ops, the generated ops summary and docs/packfile-c.pod
+ Improved pdd10_embedding
+ Document FileHandle.open() exceptions and error messages
- Tests
+ Added t/library/lib_search_path.t
2012-12-18 release 4.11.0
- Core
+ Parrot now supports fast and lightweight OS threads, based on Nat Tucks's
initial GSoC work on green threads and then Stefan Seifert's extension
to true parallel OS threads as hybrid threads.
See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html
and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/
+ New parrot cmdline option --numthreads
+ Export new dynpmc_class_<ClassName> types [GH #870].
+ Changed core_ops library format and ops2c to contain the PBC_COMPAT only,
not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT
cpp definition in include/parrot/oplib/core_ops.h, use only
PARROT_CORE_OPLIB_INIT from config.h
+ Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision
+ Added getprotobyname method to the Socket PMC
- Documentation
+ Marked unused API parameters
+ Install man pages for all binaries
- Languages
+ nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test
- Platforms
+ More compilation fixes on Windows without working mt.exe or ranlib=rem,
enable smoking without git binary.
- Tools
+ Re-enabled pbc_dump -h --header-only
+ Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost
-Wunused-parameters safe.
- Tests
+ failing Pod::Simple pod_todo.t tests are now skipped
+ added nqp-rx tests
+ removed duplicate ext/nqp-rx/t/p6regex tests
+ rewrote and enabled native_pbc tests [GH #394],
renamed native_pbc testfiles
2012-11-21 release 4.10.0
- Core
+ Add PMCNULL check to result_info op
+ Fixed record separator bug on io handles
- Build
+ Add -fpermissive so that nqp builds under gcc 4.7.2
+ Fixed warnings for old ICU 4.4
- Platforms
+ More VMS fixes, but not yet done
- Branches
+ The threads branch is ready to be merged, but nqp needs some changes,
so it will be merged with 4.11.0.
- Examples
+ Parrot mini-web server fixes
2012-10-16 release 4.9.0
- Core
+ Keep encoding information in the imcc optimizer, which fixes the
concat op but probably many more cases with non-ascii encoded
constant strings. [GH #837]
+ Fixed ByteBuffer set_string_native, which became out of sync with
two internal buffers. [GH #835]
+ Preload Configure steps when called with perl -d Configure.pl [GH #833]
+ Strip unneeded config keys from installed config hash. Saves 6360
bytes from every installed executable. [GH #824]
+ Parrot_get_cpu_type returns now "unknown" for all unknown cpu types.
On non-windows it returned before 4.9.0 a null string. [GH #846]
+ Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854]
- Build
+ Improved warnings for clang. [GH #843]
+ Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved
pmc2c compiler, which SHIMs all UNUSED args. [GH #836]
+ Added clang++ support and a new auto::alignof Configure step. [GH #844]
+ Fixed auto::inline for C++ compilers
+ Improved auto::llvm
- Branches
+ The threads branch is almost ready to be merged. Some remaining races
have been fixed. There are only some remaining platforms errors on
darwin/x86.
- Libraries
+ Fixed Mime::Base64: Split long lines at 76 chars. [GH #826]
Support multi-byte codepoints. Use binary encoding,
encoded files are now endian specific [GH #813 + #814],
Added 2nd optional encoding arg to decode_base64().
- Documentation
+ Cleaned up removed parrot cmdline options -D/-O/-v from --help output and
running.pod [GH #838]
- Tools
+ Improved gdb pretty-printing for multi-byte strings
2013-09-13 12:40:59 +02:00
|
|
|
.include "../../lang/parrot/version.mk"
|
Update to 0.4.0, provided by Anders Nor Berle in PR 32448.
New in 0.4.0
- New lexical handling and closure support including better
introspection for caller and outer
- PGE (Parrot Grammar Engine) provides now compilers for P6Rule,
P6Grammar, P5Regexp, and Glob
- ca. 1000 new tests including 800 for Perl5 regexp
- Improved unicode charset and encoding support
- Calling conventions for exception handlers
- Punie (Perl 1) uses TGE (Tree Grammar Engine) to convert from
PGE match objects to AST via two steps of tree transformation grammars
- New languages: amber and lua
- The usual code fixes, cleanup, and improvements, including an overhaul
of the config and test framework
New in 0.3.1
- Variable sized register frames are finished. Each subroutine gets
the amount of registers that it actually needs. No more spilling.
- Vastly improved PGE (Parrot Grammar Engine) including shift-reduce,
precedence-based expression parser and support for matching of
bracketed text delimited by e.g. ()[]{}'"
- uniccode character classification (is_upper ...)
- support for heredoc syntax in assembler
- improved examples, basic JSON support
- debian packaging support
- the usual improvements, bug fixes, and cleanup
- test count exceeds 3000
New in 0.3.0
- New calling conventions implemented: see PDD03 for details
- Merge multiple Parrot bytecode (PBC) files into a singe PBC file
- 'make smoke' target going beta
- bc now supports if statements, comparison ops, prefix inc/dec
- ParTcl adds [lassign], [switch] (partially); [expr] converted to a compiler
- Many exciting doc updates, tests, and bugfixes, too numerous to mention
New in 0.2.3
- Dynamic classes now compile on Windows (including ParTcl)
- New Super PMC allows easy access to superclass methods
- Implement C3 method resolution order (just like Perl6 & Python)
- ParTcl has new PIR-based parser and passes more Tcl tests
- added character class support in Globs to PGE
- added language implementations of unlambda, Lazy-k
- many bugfixes, including GC and memory leaks
- the new calling scheme continued to evolve in branches/leo-ctx5
New in 0.2.2
- new call scheme: docs/pdds/pdd03_calling_conventions.pod
- partial implementation of the new calling conventions
PASM only, don't mix PIR foo() call syntax with the new scheme
- grammar and rule support in PGE - the Parrot Grammar Engine
- TCL passes >10% of the tcl test suite
- the usual bugfixes and improvements
New in 0.2.1
- better HLL support (short names for object attributes, and
.HLL and n_operators pragmas)
- string encoding and charset can now be set independently
- experimental mmap IO layer for slurping files
- distinct debug and trace flag settings
- glob support in PGE
- new character classification opcodes and interfaces
New in 0.2.0
- parrot repository is now under subversion
- MMD (Multi Method Dispatch) enhanced
- new unary and infix opcodes that return new result PMCs
- dynamic scalar PMCs inherit now almost all from Parrot core PMCs
- more unification of PMCs and ParrotObjects
- tailcalls for functions and methods
- PGE (Parrot Grammar Engine) reworked
- Pugs creates Parrot code and Pugs is a registered compiler now
- new languages/lisp
- the usual bug fixes and improvements
New in 0.1.2
- New string handling code. Strings now have charset and encoding
- Parts of a generation garbage collector
- Better Python code, separated in dynclasses
- Parrot Grammar Engine
- Improved test coverage and documentation
New in 0.1.1
Parrot 0.1.1 is an intermediate release with tons of updates and fixes.
- Python support: Parrot runs 4/7 of the pie-thon test suite
- Better OS support: more platforms, compiler, OS functions
- Improved PIR syntax for method calls and <op>= assignment
- Dynamic loading reworked including a "make install" target
- MMD - multi method dispatch for binary vtable methods
- Library improvement and cleanup
- BigInt, Complex, *Array, Slice, Enumerate, None PMC classes
- IA64 and hppa JIT support
- Tons of fixes, improvements, new tests, and documentation updates.
A lot is unfinished and keeps changing. Nethertheless Parrot is stable
and usable at the surface, while internals are moving.
New in 0.1.0
- "Ladies and gentlemen, I give you... objects!"
- Huge documentation overhaul
- More supported platforms, s. PLATFORMS
- Basic thread support for pthread based architectures
- Basic event handling for timers and signals including:
- PASM callbacks for NCI (native C) functions.
- Improved platform configuration
- COW stacks now working, stacks code redone
- Structure handling vastly improved
- Random PMC and rand primitives
- Better subroutine call syntax in PIR
- Make PIR subroutines compliant with pdd03
- Improved profiling (DOD, GC timings)
- Hash code improvements, incl. random key order support
- Experimental freeze/thaw code for some PMC types
- IO improvements for buffered layer and Win32
- String iterators
- String bitwise vtables
- Many new opcodes
- Support for JIT, where malloced memory isn't executable
- Priority DOD scheme for objects that need timely destruction
- Improved byte code loading (e.g. onLoad functions)
- Language updates: forth, Perl6/P6C, m4
- Libraries: Getopt_Long, SDL, Dumper, Sort
- new JAPH examples
- Unified imcc and parrot test handling
- Many new tests (make test reports 1386 tests)
- Numerous bug fixes
New in 0.0.13
- The Big Move: Parrot source and build files rearranged into sub dirs
- Build imcc as parrot
- Objects more finished
- Delegate vtable methods to byte code
- Binary multi-method dispatching
- Isa and does methods for PMCs
- Call byte code from C
- Start of extension interface
- Experimental struct handling
- Catch access to NULL PMCs
- Experimental network socket interface code and opcodes
- IO fixes and improvements
- Dynamic opcode libraries
- Fix-assigned opcode numbers
- Argument flattening for function calls
- More native call interface (NCI) signatures
- Ncurses, postgres, and pcre interface libraries
- Forth language is vastly improved
- BSD and Win32 build improvements
- Many new tests and fixes
New in 0.0.12
- This number intentionally left blank
New in 0.0.11
- Executable output
- Dynamic PMC registration
- Trial exception system
- Beginnings of object system
- Iterators
- Ordered hashes
- I/O system improvements
- References
- Documentation for basic PMC types
- IMCC support of Parrot Calling Conventions
- Runtime loading of chartypes (and other string improvements)
- Conditional breakpoints
- Dramatically accelerated sweeps for finalizable objects
- Small PMCs (PMCs split into core and extensions)
- Loadable bytecode packfiles
- Constant PMCs
- Sub variants that deal with the stack correctly
- Switched runops core
- Line numbers in warnings
- Environment access
- Many documentation cleanups
- Conversion to CPS style!
- BASIC debugger and many other wacky features
- Filename, line number parsing support in IMCC
New in 0.0.10
- IMCC integration
- eval
- some more benchmarking
- cgp core
- optimized math ops
- intersegment branches
- more complete use of PObjs
- beefed up packfiles
- sub/continuation/coroutine fixes
- better NCI (native calling interface)
- many imcc improvements
- jako improvements
New in 0.0.9
- Native function calling interface (Dan)
- Stack/list aggregate rewrite (Leo)
- Scratchpads (Jonathan Sillito)
- Preliminary DotGNU support -- type conversion ops (Gopal V + Leo)
- Buffer/PMC unification (Leo)
- stabs debugging support for JIT (Leo)
- Jako overhaul (Gregor)
- Optional Lea allocator (Leo)
- Parrot sprintf (Brent)
- Miniparrot (Josh)
- PMC Properties (Dan)
- Various JIT improvements (D. Grunblatt + Leo)
- Extensible packfiles (Juergen)
- Restructured PMC hierarchy (Leo)
- Real Scheme (Juergen)
New in 0.0.8
- Several new grammars and a BNF -> perl5 and perl6 converter (Jeff)
- Working Perl6 REs (Sean)
- Keyed Access (Tom Hughes et al)
- New PMCs (Alberto et al)
- Better Documentation
- New COW semantics
- GC acceleration (Mike Lambert)
- Lexical scope (Jonathan Sillito)
- IMCC patches
- JIT for the ARM
New in 0.0.7
- Perl 6 Grammar and Compiler (Sean)
- Subroutines, coroutines, and continuations (Melvin)
- GC improvements (Peter Gibbs, Mike Lambert)
- Global variables (Melvin)
- Intermediate bytecode compiler (Melvin, Angel)
- And much, much more.
New in 0.0.6
- New assembler that support keyed types (Jeff)
- New macro layer, allowing constants (Jeff)
- New Configure.pl (Brent)
- Changes to bytecode format, endian issues resolved (Melvin)
- GC improvements and bug fixes (Peter Gibbs, Mike Lambert)
- JIT compiler rewrite (Jason and Daniel)
- Parrot assembler in Parrot (Daniel)
- Parrot debugger (Daniel)
- BASIC polished, Eliza.bas is new (Clint)
- Cola compiler committed and working, with limited OOP (Melvin)
- Keyed aggregates (Steve Fink)
- Global ops (Melvin)
- Compile-time speedup (Melvin)
- Much documentation
- New PDDs (Dan)
- Contributed tetris and lzw files
- And many more, from the cast of thousands
New in 0.0.5
- Full GC
- Perl Scalar support in PMCs
- Array and Hash types almost ready for prime-time
- Internal support for keyed types
- EMACS editing mode
- New PDDs
- New Language - BASIC
- Regular expression compiler
- More tests
- Many, many bug fixes, enhancements, and speedups
New in 0.0.4
- Arena-based memory allocation system
- Copying GC
- New IO subsystem
- "Predereferencing" mode - ./parrot -P - 22% speedup
- JIT compiler - ./parrot -j
- Parrot now builds warnings-clean on many platforms
- Many more PMC methods implemented
- Regular expression operations
- Added a FAQ
- Basic support for embedding Parrot in other programs
- Warnings support
- Added PDDs to distribution
- Bignum library
- PMC inheritance
- Added an assembly optimizer
- Improved string encoding/type support
- Many more tests
- Source reformatting
- Major refactoring in packfile library
- More Miniperl functionality
- New PMC "clone" operator
- Beginnings of key-based access to PMCs - arrays and hashes
- MOPS comparisons in examples/mops/
New in 0.0.3
- PMCs!
- Perl base scalar types implemented
- A new minilanguage, Scheme
- Much improved documentation
- Register stacks pushing and popping
- User stack pushing, popping and rotating
- Jako updates: subroutines, more example programs, optimizations
- test_prog renamed to 'parrot'
- Added features to the assembler: @ for current location, and global
labels
- Build tweaks for VMS
- Bytecode typing clean-ups
- More platforms: OS X, HPUX, OS/2
- The proliferation of runops cores reduced to one fast and one slow one
- Opcode tracing, bounds checking, profiling
- Vastly improved string support, with separation of encoding and
charset
- Lots more tests
- Multiple interpreter creation support - the beginnings of threading
- Much better resource handling - the beginnings of GC
New in 0.0.2
- Parrot now works on all core platforms
- A large number of tests, in the standard Perl testing framework
- A new minilanguage (Jako) which compiles to Parrot assembly
- Documentation about the assembly language (docs/parrot_assembly.pod)
- Separate modules for assembly (Parrot::Assemble) and bytecode
manipulation (Parrot::PackFile::*, packfile.c)
- Assembler completely rewritten
- Better operand-type guessing in the assembler
- Assembler support for '\n' etc. in string constants
- Code reformatted to match the coding standards
- New ops for register-constant INTEGER comparisons
- Macro expansion in the assembler
- IVs and NVs renamed to more friendly INTVAL and NUMVAL
- Hard-coded pack("") formats removed
- Better handling of floating-point numbers in assembler
- Moved floats to constant table (fixing many alignment issues)
2006-01-03 20:25:06 +01:00
|
|
|
.include "../../textproc/icu/buildlink3.mk"
|
2010-08-17 15:27:51 +02:00
|
|
|
.include "../../devel/gmp/buildlink3.mk"
|
2013-07-15 04:02:17 +02:00
|
|
|
.include "../../mk/readline.buildlink3.mk"
|
2001-09-13 16:18:03 +02:00
|
|
|
.include "../../mk/bsd.pkg.mk"
|