* docs/project/release_manager_guide.pod:
[parrot.git] / NEWS
blob671cd9af4e28a653a478d5723125871137ef1f7f
1 # $Id$
3 New in 0.5.2
4 - "make perl6" now builds a Perl 6 executable
5 - Documentation
6   + New multiple dispatch PDD (PDD27).
7   + Numerous small updates to glossary.pod, etc
8 - Compilers
9   + NQP: optional, named, and named/required parameters
10   + PIRC: cleanups
11   + PAST: "defined-or"
12 - Languages
13   + New mk_language_shell.pl script creates language stubs
14   + lolcode: new
15   + Lua: various
16   + Eclectus: start with support for local variables and procedures,
17     use SXML as intermediate representation
18   + Perl 6: list ops, compiler directives, command-line options, etc.
19   + punie: more ops, control structures, code refactoring
20 - Implementation
21   + New "pbc_to_exe" utility turns bytecode to executables
22   + New set_outer method for subs
23   + Further configuration refactoring for testability
24   + All functions now completely headerized
25   + Concurrency: interpreter schedulers
26 - Deprecations
27   + DYNSELF (changes to SELF; SELF to STATICSELF)
28   + METHOD (replaced by renaming PCCMETHOD)
29   + pmcinfo op (superseded by 'inspect')
30   + get_attr, set_attr, and 8 other vtable methods
31   + See DEPRECATED.pod for details
32 - Miscellaneous
33   + Many bug fixes
34   + Minor speed enhancements with UTF-8 string handling
35   + Debian packaging
36   + consting, attribute marking, warnings cleanup, memory leaks plugged ...
38 New in 0.5.1
39 - Documentation
40   + PDD19 (PIR) - reflect state on the ground; incorporate old IMCC docs
41   + PDD25 (Concurrency) - launch out of draft
42   + Improve documentation of deprecated parrot features.
43 - Compilers
44   + PCT: Parrot Compiler Toolkit redesigned and updated
45   + NQP: major updates, including support for namespaces,
46     module/class declarations, methods
47   + IMCC: remove .sym as alias for .local. Remove .pcc_
48     prefix for calling directives (.pcc_begin became .begin_call).
49   + PIRC: creates an AST during the parse.
50   + PGE: more updates to match S05 syntax.
51 - Languages
52   + perl6: re-implemented using PCT and NQP, new object subsystem
53   + abc: re-implemented using PCT and NQP
54   + eclectus: initial implementation
55   + plumhead: add PCT variant
56   + punie: re-implemented using PCT and NQP, extended to handle subroutines
57     Happy 20th Birthday, Perl!
58   + pynie: re-implemented using PCT and NQP
59   + PIR: start conversion to NQP (under construction)
60 - Implementation
61   + new opcodes: 'die', 'addhandler', 'copy'
62   + Initial implementation of Concurrency PDD
63   + Add 'arity' method to Sub and NCI PMCs
64 - Miscellaneous
65   + Bug cleanup
66   + consting, attribute marking, warnings cleanup, memory leaks, GC...
67   + dead code removal (includes some defunct languages)
69 New in 0.5.0
70 - Implementation
71   + PDD15 (OO) branch merged with trunk; this release contains a working,
72     tested implementation of the latest OO model
73   + Added pop_eh/push_eh_p/count_eh opcodes
74   + Add --runcore command line option
75   + Add gcdebug runcore to help track down GC bugs
76   + minor improvements to IA-32 JIT
77 - Documentation
78   + PDD19 (PIR): updates to macros, .pcc* directives
79   + PDD25 (Concurrency): updated
80   + PDD26 (AST):  draft approved
81   + PDD23 (Exceptions): draft approved
82   + Copyright cleanups
83 - Languages/Compilers
84   + languages/APL: minor updates, PDD15 conformance
85   + languages/dotnet: minor updates
86   + languages/lua: minor updates, PDD15 conformance
87   + languages/lisp: minor updates
88   + languages/perl6: minor updates, PDD15 conformance
89   + languages/plumhead: minor updates
90   + languages/punie: minor updates, PDD15 conformance
91   + languages/nqp: minor updates
92   + languages/scheme: many updates, PDD15 conformance, improved tests, use
93     PMCs instead of primitive registers to represent values
94   + languages/tcl: bugfixes, PDD15 conformance
95   + languages/WMLScript: minor updates
96   + compilers/pirc: updates from PDD19, PDD06
97   + compilers/pct: minor updates, PDD15 conformance
98   + compilers/pge: PDD15 conformance
99   + compilers/tge: PDD15 conformance
100 - Configuration
101   + Improve test coverage
102   + Improve reporting when a step fails; allow abort on failure
103 - Miscellaneous
104   + More coding standard conformance, tests, cleanup, speedups,
105     warnings cleanup
106   + Bug cleanup, esp. GC bugs
107   + Eliminate .imc extension (use .pir)
108   + Simplify some core config steps to not allow interactive prompting
109 - Removed
110   + clear_eh opcode
112 New in 0.4.17
113 - Implementation
114  + Bug fixes (including Coverity IDs 20, 22, 30, 119-122, 124-126, 129-131)
115    Also various GC, memory, and segfault issues
116  + Fix & reenable CGP core
117  + Parrot's -r flag now works again (compile to and execute bytecode)
118  + Updates to pmc2c & PIR syntaxes
119  + Fix Complex PMC
120  + Minor performance improvements, especially in PGE
121 - Documentation
122  + PDD02 "Vtables" - superceded by PDD17
123  + PDD06 "PASM" - minor updates
124  + PDD17 "PMC" - add VTABLE syntax, update core PMC struct, restore UnionVal
125  + PDD19 "PIR" - early review started
126  + PDD21 "Namespaces" - cleanup
127  + PDD24 "Events" - draft approved
128  + PDD25 "Concurrency" - minor updates
129  + PDD26 "AST" - draft version begun
130  + PIR tutorials updated
131 - Languages/Compilers
132  + Make scheme work with the current calling conventions, other major work.
133  + Updates to m4, lua, compilers/pirc, languages/PIR, dotnet, tcl
134 - Miscellaneous:
135  + make -j functional again
136  + Code cleanup (refactoring, optimizations)
138 New in 0.4.16
139 - Implementation:
140  + Performed code review on every PMC
141  + Modified PMC code generation to use Storable, reducing compile times
142  + Added a makefile target to generate test coverage data of C sources
143 - Languages:
144  + NQP: added lists, for loops, operators, comparison and multiplicative operators
145  + Announced Kea-CL, Kea Common Lisp, an ANSI Common Lisp implementation
146    The repository is available at https://rgrjr.dyndns.org/svn/kea-cl/trunk/
147 - Documentation
148  + PDD17 "PMCs" - draft approved, the design is complete
149  + Added more PIR tutorials, see examples/tutorial/00_README.pod
150 - Miscellaneous:
151  + Many bugfixes, enhancements, documentation, and coding standard updates
152  + Deprecated PMC constants and other crufty syntax, see DEPRECATED.pod
153  + Improved icc compiler compatibility for error line reporting
155 New in 0.4.15
156 - Implementation:
157  + Lots of code review, many bugs fixed
158  + Many more code cleanups and compiler warning levels
159  + Started a new jit engine for 64-bit processors
160  + Refactored configure process, with tests and new diagnostic options
161  + Added new CodeString PMC for dynamic generation of PIR code
162  + More pdd15 support for object metamodel.
163 - Languages:
164  + Added NQP ("Not Quite Perl"), a very lightweight Perl 6-like language
165  + Significant improvements and refactors to PCT (Parrot Compiler Toolkit)
166  + perl6 passes more spec tests
167  + Lua works now with a PGE/TGE/PAST-pm based compiler, lives in one pbc,
168    and the interpreter has same behavior as original.
169 - Documentation
170  + Added a committers' HOWTO
171  + More PIR tutorial examples
172  + Added PAUSE guide
174 New in 0.4.14
175 - Now, with Seat Belts!
176  + added makefile targets for Sun lint, BSD lint, and splint
177  + corrected many errors picked up by these tools
178  + decorated source code with compiler hints, assertions, and attribute macros
179  + automated creation of function declarations to prevent common errors
180  + increased compiler warnings levels
181  + converted more exceptions to a recoverable form
182 - Languages:
183  + updated Lisp, Lua, Perl 6, tcl, regex, Scheme ("Pheme")
184  + Perl 6 now fetches selected tests from pugs, and even passes some
185  + PGE modified to handle {*} action subs for top-down and bottom-up parsers,
186    and to allow grammar subclassing
187  + HLLCompiler now has better exception, eval, and exit support
188  + Introduced PCT, a refactor of HLLCompiler and PAST-pm
189 - Design:
190  + PDD15 "Objects" - details added to 'new' and 'getattribute' opcodes
191  + PDD17 "PMCs" - notes added on instantiation and dynamic extention in PIR
192 - Documentation:
193  + added Parrot-related text from "Perl 6 and Parrot Essentials" book,
194    tutorial examples from "Learning PIR" talk, and PDD15 metamodel diagrams
195 - Implementation:
196  + reduced memory footprint when using named registers
197  + implemented overridding of vtable methods by PDD15 classes
198  + improved PDD15 support for 'new', 'instantiate', and others
199  + added makefile targets to ease core and HLL makefile regeneration
200  + updated parrot dubugger, "pdb", to allow loading of commands from file
201 - Misc:
202  + many bugfixes, enhancements, documentation, and coding standard updates
204 New in 0.4.13
205 - Languages:
206  + Updated Lisp, Lua, PHP ("Plumhead"), Python ("Pynie"), ABC,
207    WMLScript, and Tcl ("ParTcl").
208  + Perl 6 passes all of the sanity tests.
209  + PGE supports latest Perl 6 grammar syntax. Perl 6, Python
210    ("Pynie"), and ABC parsers updated to match.
211  + Updated PHP ("Plumhead") to Antlr 3.0.
212  + Lua added the beginnings of a PGE/TGE based compiler (not yet
213    replacing the Perl/Yapp compiler).
214  + Lisp updated for current features, added a test suite.
215 - Core Implementation:
216  + Filled in features and backward compatibility for PDD 15 objects.
217    New object metamodel passes 85% of old test suite.
218  + GCC API symbols are visible externally only when explicitly exported.
219  + Added generated GCC compiler attributes to increase warnings, and
220    cleaned up resulting warnings.
221  + Code cleanup efforts and fixed memory leaks by the cage cleaners,
222    resulting in notable speed increases.
223 - Misc:
224  + Updated Parrot distribution to Artistic License 2.0, from dual
225    Artistic 1/GPL license.
226  + SDL examples brought up-to-date with current features.
228 New in 0.4.12
229 - Build:
230  + even more refactorings and improvements in configuration system
231  + improved tests and documentation for configuration system
232 - Languages:
233  + Updated abc, PHP ("Plumhead"), Lua, Tcl
234  + Reclaimed Lisp
235 - Design:
236  + new PMC PDD draft partially completed
237 - Implementation:
238  + continued implementation of PDD 15 (Objects)
239  + minor garbage collector and memory management improvements
240  + several memory leaks resolved
241  + extended support for compilers other than GCC
242  + improved C++ compiler compatibility
243  + enhanced support for Solaris, non-MSVC Win32, and other platforms
245 New in 0.4.11
247 - Compilers:
248  + IMCC: added documentation for C-based Parrot Calling Conventions,
249    refactorings and bug fixes
250  + PGE: new perl6regex front end reflecting recent S05 syntax changes
251  + PIRC: new prototype PIR parser
252 - Languages:
253  + Updated Lua, PHP ("Plumhead"), BASIC, pynie
254  + Lua implements environment
255 - Design:
256  + PDD15 "Objects" - details added, and draft approved
257 - Documentation:
258  + Added guidelines for PMC documentation
259 - Implementation:
260  + PDD15 implementation is largely complete, including role-based composition,
261    introspection, and C3 method resolution order
262  + new Exporter PMC for importing globals between namespaces
263  + new string utilities for radix conversion
264  + PCCINVOKE and Parrot_PCCINVOKE allow calling using the full Parrot Calling
265    Conventions from PMCs and C code respectively
266 - Build:
267  + Refactorings and improvements in test coverage for 'Configure.pl'
268 - Misc:
269  + many bugfixes, enhancements, and code cleanup
270  + added example subversion config file
271  + extended support for gcc, icc, and other compilers
272  + extended support for Solaris and other platforms
275 New in 0.4.10
277 - Compilers:
278  + IMCC: Parrot calling conventions now available between two C PMCs (PMINVOKE)
279  + PGE: Match object improvements
280  + smop: added Attribute and Class PMCs
281  + HLLCompiler: improvements for interactive mode
282 - PAST:
283  + extended binding to a list of variables
284 - Languages:
285  + Updated Lua, PHP ("Plumhead"), Tcl ("ParTcl"), Ruby ("Cardinal")
286  + Update PIR, regex, Zcode
287  + New language: Pynie - a Python compiler for Parrot
288  + Lua implements require and many other ops, improved regex support
289  + Remove parakeet
290 - Design:
291  + PDD01 "Overview" - updated architecture and platform information
292  + PDD15 "Objects" - details on roles, objects, and classes added
293  + PDD22 "I/O" - added async ops and Status PMC details
294 - Documentation:
295  + Added guides for Metacommitter, Relase Manager, and Cage Cleaner roles
296 - Implementation:
297  + Object, Class, Role, and Attribute PMC implementation has begun
298  + Perl 5 module "Parrot::Embed" now compiles and links on all platforms
299 - Build:
300  + Major improvements in test coverage for 'ops2c.pl'
301 - Misc:
302  + New utility: Crow, a template processor
303  + New library module: Config/JSON for reading/writing JSON files
304  + many bugfixes, enhancements, and coding standard updates, code cleanup
306 New in 0.4.9
308 - Compilers:
309    + IMCC: Parrot calling conventions now available in C PMCs, allowing
310      named, optional, slurpy, and flat parameter passing
311    + PGE: extended support for Perl 5 Regexes
312    + smop: prototype object model implementation
313    + hllcompiler: refactored to run a configurable set of compilation stages
314 - PAST:
315    + redesigned assign/binding to support Perl 6 binding semantics
316 - Languages:
317    + Updated Lua, PHP ("Plumhead"), Tcl ("ParTcl"), perl6, perl5
318    + New language: PIR - a PGE-based implementation of Parrot PIR
319    + perl6 now supports binding (':=') and 'join'
320    + lua generates tail calls, and supports its own regex flavor (PGE-based)
321    + Pheme still works, huzzah!
322 - Design:
323    + PDD21 "Objects" - rewritten
324    + PDD22 "I/O" - updated and 'TODO' tests added
325 - Documentation:
326    + Interface stability classification standards approved
327    + Roles and Responsibilities documented approved
328    + Official 'drafts' directory created (was 'clip')
329 - Implementation:
330    + More NameSpace and OS PMC methods implemented
331    + Parrot executable fullname and basename now available in PIR/PASM code
332    + new 'chomp' library function
333 - Build:
334    + Major improvements in test coverage for 'ops2pm.pl'
335 - Misc:
336    + many bugfixes, enhancements, and coding standard updates
337    + extended support for Sun Workshop Compilers
338    + Parrot now builds on PocketPC platform
340 New in 0.4.8
342 - Compilers:
343    + HLLCompiler: added tracing options, modified api
344    + PGE & TGE bugfixes and updates
345 - PAST:
346    + added global and lexical variable support
347    + added looping constructs, arrays, hashes
348 - Languages:
349    + Updated PHP ("Plumhead"), Tcl ("ParTcl"),
350      forth, perl6, lua, abc, APL, WMLScript, punie
351    + ParTcl is passing > 24.9% of Tcl cvs-latest test suite
352    + perl6 now supports hashes, arrays, method calls, arity-based
353      multisubs, quoted terms, ranges (non-lazy), try blocks, $!
354 - Design:
355    + PDD01 "Overview" - updated
356    + PDD22 "I/O" - rewritten and approved
357 - Test Suite:
358    + Converted Perl 5 Regex tests to PIR, with notable speedup
359    + Added tests for opcodes, compilers, languages, and coding standards
360 - Build:
361    + Major improvements in test coverage for 'pmc2c.pl'
362 - Misc:
363    + many bugfixes, enhancements, and coding standard updates
364    + extended support for non-core platforms including Cygwin, Tru64
366 New in 0.4.7
368 - New languages: PHP ("Plumhead"), Forth
369 - Updated languages: Ruby ("Cardinal"), Tcl, Lua
370 - Remove old Python implementation from Parrot repository; the new Python
371   language code is hosted at http://pirate.tangentcode.com
372 - Compilers:
373    + PGE updated with more expressions, latest changes to S05
374    + new Perl 6 grammar compiler
375 - Integration:
376    + Perl 5 module "Parrot::Embed" allows easy embedding of a Parrot
377      runtime into a Perl 5 program
378 - PIR:
379    + new :init pragma for subs that must run before the main function
380    + new :vtable pragma to identify subs that override PMC vtable methods,
381      eliminating the need for special subroutine names
382    + PIR parser/compiler does not stop on first syntax error
383    + Vanilla register allocator ("register alligator") greatly improves
384      performance compiling large functions
385    + Eliminated limit on number of PIR macros
386 - PMCs:
387    + hash lookups return null instead of None for missing keys
388 - Design:
389    + PDD13 "Bytecode files: format and manipulation" - new
390    + PDD10 "Embedding" - new
391    + PDD25 "Concurrency" - rewritten
392    + PDD15 "Objects" - new section on redesign requirements
393    + PDD07 "Coding standards" - significant updates and automated tests
394 - Test Suite:
395    + Many many more new tests
396 - Build Process:
397    + autoconf compatible install options
398 - Misc:
399    + Namespace refinements
400    + Coroutine improvements
401    + An impressive swarm of other bugfixes and enhancements
403 New in 0.4.6
405 - New languages: Ruby ("Cardinal"), Javascript ("ecmascript")
406 - Updated languages: Tcl, dotnet, bc, Pheme, Punie, WMLScript
407 - Updated compilers: PGE, TGE
408 - IMCC updates:
409    + ".loadlib" directive expresses dependencies
410    + ".namespace" with no parameter goes to HLL root
411    + lexer is reentrant (reentrant grammar in progress)
412 - Namespace improvements:
413    + new suite of opcodes to access namespaces and globals
414      ("find_global" and "store_global" will be phased out)
415    + namespace '' no longer means HLL root
416 - Design document updates:
417     namespaces (pdd23), basic types (pdd17), embedding
418 - Updated tool requirements for developers:
419     flex 2.5.33, bison 2.1, perl 5.6.1
420 - New to-do list for people new to Parrot:
421     cage/todo.pod
422 - The usual plethora of bugfixes and enhancements
424 New in 0.4.5
426 - unicode subroutine names
427 - hierarchical class names finished including MMD support
428 - new dotnet CLI to PIR translator
429 - improved TGE code and compiler
430 - APL: vector handling
431 - new STM branch in the svn repository
432 - the usual bugfixes and enhancements
434 New in 0.4.4
436 - hierarchical class names
437 - APL compiler
438   - under development
439   - understands simple vector ops, strings
440   - demonstrates use of Unicode in Parrot
441 - pgc, a compiler for rules and operator precedence parsers
442 - Major redesign and improvements for PGE
443   - compilers understand named parameter options
444   - :ratchet option implemented to support non-backtracking quantifiers
445 - TGE (tree grammar engine) for tree transformations
446   - tgc, tree grammar compiler
447 - perl6 compiler
448   - support for many operators, lexical scalars, regex matches
449 - new pheme (Parrot scheme) compiler
451 New in 0.4.3
453 - namespaces partially implemented
454 - rulec, Perl 6 rule compiler
455 - PGE improvements including return values for closure
456 - parts of a Perl 6 parser based on PGE
457 - complex trigonometric methods
458 - type of Sub PMC is now overridable by HLL
459 - NetBSD support
460 - many bug fixes and improvements
462 New in 0.4.2
464 - improved PPC and x86 JIT support including JIT compilation
465   of very simple PASM/PIR subroutines
466 - preliminary libreadline support
467 - better trace and debug features
468 - pkgconfig support
469 - META.yml to support proper indexing on CPAN
470 - new opcode: hcf (in "my_ops" in dynamic op library)
471 - new File pmc for file specific ops (is_dir, is_file, copy, rename...)
472 - named arguments and parameters (both :named("") and => syntaxes)
473 - ongoing config improvements
474 - tons of bug fixes and other small improvements - too much to list all
476 New in 0.4.1
478 - Installation: 'make install' is using standard locations now
479   (/usr/local is the default --prefix)
480 - Produce static and shared libraries on some systems
481 - Configure system rearragement
482 - OS pmc started (mkdir,cd,cwd,rm,umask,stat)
483 - Shootout examples
484 - Test files are now testable with 'prove'
485 - Smoke (and smokej) outputs progress
486 - PIR supports: I = A < B (>,<=,>=,==,!=)
487 - Add support for octal number constants
488 - partcl updates:
489   - almost finish [string]; start [file]
490   - add build tool for generating inline'd tcl builtins from templates.
491 - Jako updates: NCI, subroutines, global variables and constants all work.
492   (Gregor)
494 New in 0.4.0
496 - New lexical handling and closure support including better
497   introspection for caller and outer
498 - PGE (Parrot Grammar Engine) provides now compilers for P6Rule,
499   P6Grammar, P5Regexp, and Glob
500 - ca. 1000 new tests including 800 for Perl5 regexp
501 - Improved unicode charset and encoding support
502 - Calling conventions for exception handlers
503 - Punie (Perl 1) uses TGE (Tree Grammar Engine) to convert from
504   PGE match objects to AST via two steps of tree transformation grammars
505 - New languages: amber and lua
506 - The usual code fixes, cleanup, and improvements, including an overhaul
507   of the config and test framework
509 New in 0.3.1
511 - Variable sized register frames are finished. Each subroutine gets
512   the amount of registers that it actually needs. No more spilling.
513 - Vastly improved PGE (Parrot Grammar Engine) including shift-reduce,
514   precedence-based expression parser and support for matching of
515   bracketed text delimited by e.g. ()[]{}'"
516 - uniccode character classification (is_upper ...)
517 - support for heredoc syntax in assembler
518 - improved examples, basic JSON support
519 - debian packaging support
520 - the usual improvements, bug fixes, and cleanup
521 - test count exceeds 3000
523 New in 0.3.0
525 - New calling conventions implemented: see PDD03 for details
526 - Merge multiple Parrot bytecode (PBC) files into a singe PBC file
527 - 'make smoke' target going beta
528 - bc now supports if statements, comparison ops, prefix inc/dec
529 - ParTcl adds [lassign], [switch] (partially); [expr] converted to a compiler
530 - Many exciting doc updates, tests, and bugfixes, too numerous to mention
532 New in 0.2.3
534 - Dynamic classes now compile on Windows (including ParTcl)
535 - New Super PMC allows easy access to superclass methods
536 - Implement C3 method resolution order (just like Perl 6 & Python)
537 - ParTcl has new PIR-based parser and passes more Tcl tests
538 - added character class support in Globs to PGE
539 - added language implementations of unlambda, Lazy-k
540 - many bugfixes, including GC and memory leaks
541 - the new calling scheme continued to evolve in branches/leo-ctx5
543 New in 0.2.2
545 - new call scheme: docs/pdds/pdd03_calling_conventions.pod
546 - partial implementation of the new calling conventions
547   PASM only, don't mix PIR foo() call syntax with the new scheme
548 - grammar and rule support in PGE - the Parrot Grammar Engine
549 - TCL passes >10% of the tcl test suite
550 - the usual bugfixes and improvements
552 New in 0.2.1
554 - better HLL support (short names for object attributes, and
555   .HLL and n_operators pragmas)
556 - string encoding and charset can now be set independently
557 - experimental mmap IO layer for slurping files
558 - distinct debug and trace flag settings
559 - glob support in PGE
560 - new character classification opcodes and interfaces
562 New in 0.2.0
564 - parrot repository is now under subversion
565 - MMD (Multi Method Dispatch) enhanced
566 - new unary and infix opcodes that return new result PMCs
567 - dynamic scalar PMCs inherit now almost all from Parrot core PMCs
568 - more unification of PMCs and ParrotObjects
569 - tailcalls for functions and methods
570 - PGE (Parrot Grammar Engine) reworked
571 - Pugs creates Parrot code and Pugs is a registered compiler now
572 - new languages/lisp
573 - the usual bug fixes and improvements
575 New in 0.1.2
577 - New string handling code. Strings now have charset and encoding
578 - Parts of a generation garbage collector
579 - Better Python code, separated in dynclasses
580 - Parrot Grammar Engine
581 - Improved test coverage and documentation
583 New in 0.1.1
585 Parrot 0.1.1 is an intermediate release with tons of updates and fixes.
586  - Python support: Parrot runs 4/7 of the pie-thon test suite
587  - Better OS support: more platforms, compiler, OS functions
588  - Improved PIR syntax for method calls and <op>= assignment
589  - Dynamic loading reworked including a "make install" target
590  - MMD - multi method dispatch for binary vtable methods
591  - Library improvement and cleanup
592  - BigInt, Complex, *Array, Slice, Enumerate, None PMC classes
593  - IA64 and hppa JIT support
594  - Tons of fixes, improvements, new tests, and documentation updates.
595 A lot is unfinished and keeps changing. Nethertheless Parrot is stable
596 and usable at the surface, while internals are moving.
598 New in 0.1.0
599  - "Ladies and gentlemen, I give you... objects!"
600  - Huge documentation overhaul
601  - More supported platforms, s. PLATFORMS
602  - Basic thread support for pthread based architectures
603  - Basic event handling for timers and signals including:
604  - PASM callbacks for NCI (native C) functions.
605  - Improved platform configuration
606  - COW stacks now working, stacks code redone
607  - Structure handling vastly improved
608  - Random PMC and rand primitives
609  - Better subroutine call syntax in PIR
610  - Make PIR subroutines compliant with pdd03
611  - Improved profiling (DOD, GC timings)
612  - Hash code improvements, incl. random key order support
613  - Experimental freeze/thaw code for some PMC types
614  - IO improvements for buffered layer and Win32
615  - String iterators
616  - String bitwise vtables
617  - Many new opcodes
618  - Support for JIT, where malloced memory isn't executable
619  - Priority DOD scheme for objects that need timely destruction
620  - Improved byte code loading (e.g. onLoad functions)
621  - Language updates: forth, Perl 6/P6C, m4
622  - Libraries: Getopt_Long, SDL, Dumper, Sort
623  - new JAPH examples
624  - Unified imcc and parrot test handling
625  - Many new tests (make test reports 1386 tests)
626  - Numerous bug fixes
628 New in 0.0.13
629  - The Big Move: Parrot source and build files rearranged into sub dirs
630  - Build imcc as parrot
631  - Objects more finished
632  - Delegate vtable methods to byte code
633  - Binary multi-method dispatching
634  - Isa and does methods for PMCs
635  - Call byte code from C
636  - Start of extension interface
637  - Experimental struct handling
638  - Catch access to NULL PMCs
639  - Experimental network socket interface code and opcodes
640  - IO fixes and improvements
641  - Dynamic opcode libraries
642  - Fix-assigned opcode numbers
643  - Argument flattening for function calls
644  - More native call interface (NCI) signatures
645  - Ncurses, postgres, and pcre interface libraries
646  - Forth language is vastly improved
647  - BSD and Win32 build improvements
648  - Many new tests and fixes
650 New in 0.0.12
651  - This number intentionally left blank
653 New in 0.0.11
654  - Executable output
655  - Dynamic PMC registration
656  - Trial exception system
657  - Beginnings of object system
658  - Iterators
659  - Ordered hashes
660  - I/O system improvements
661  - References
662  - Documentation for basic PMC types
663  - IMCC support of Parrot Calling Conventions
664  - Runtime loading of chartypes (and other string improvements)
665  - Conditional breakpoints
666  - Dramatically accelerated sweeps for finalizable objects
667  - Small PMCs (PMCs split into core and extensions)
668  - Loadable bytecode packfiles
669  - Constant PMCs
670  - Sub variants that deal with the stack correctly
671  - Switched runops core
672  - Line numbers in warnings
673  - Environment access
674  - Many documentation cleanups
675  - Conversion to CPS style!
676  - BASIC debugger and many other wacky features
677  - Filename, line number parsing support in IMCC
679 New in 0.0.10
680  - IMCC integration
681  - eval
682  - some more benchmarking
683  - cgp core
684  - optimized math ops
685  - intersegment branches
686  - more complete use of PObjs
687  - beefed up packfiles
688  - sub/continuation/coroutine fixes
689  - better NCI (native calling interface)
690  - many imcc improvements
691  - jako improvements
693 New in 0.0.9
695 - Native function calling interface (Dan)
696 - Stack/list aggregate rewrite (Leo)
697 - Scratchpads (Jonathan Sillito)
698 - Preliminary DotGNU support -- type conversion ops (Gopal V + Leo)
699 - Buffer/PMC unification (Leo)
700 - stabs debugging support for JIT (Leo)
701 - Jako overhaul (Gregor)
702 - Optional Lea allocator (Leo)
703 - Parrot sprintf (Brent)
704 - Miniparrot (Josh)
705 - PMC Properties (Dan)
706 - Various JIT improvements (D. Grunblatt + Leo)
707 - Extensible packfiles (Juergen)
708 - Restructured PMC hierarchy (Leo)
709 - Real Scheme (Juergen)
711 New in 0.0.8
713 - Several new grammars and a BNF -> perl5 and perl6 converter (Jeff)
714 - Working Perl 6 REs (Sean)
715 - Keyed Access (Tom Hughes et al)
716 - New PMCs (Alberto et al)
717 - Better Documentation
718 - New COW semantics
719 - GC acceleration (Mike Lambert)
720 - Lexical scope (Jonathan Sillito)
721 - IMCC patches
722 - JIT for the ARM
724 New in 0.0.7
726 - Perl 6 Grammar and Compiler (Sean)
727 - Subroutines, coroutines, and continuations (Melvin)
728 - GC improvements (Peter Gibbs, Mike Lambert)
729 - Global variables (Melvin)
730 - Intermediate bytecode compiler (Melvin, Angel)
731 - And much, much more.
733 New in 0.0.6
735 - New assembler that support keyed types (Jeff)
736 - New macro layer, allowing constants (Jeff)
737 - New Configure.pl (Brent)
738 - Changes to bytecode format, endian issues resolved (Melvin)
739 - GC improvements and bug fixes (Peter Gibbs, Mike Lambert)
740 - JIT compiler rewrite (Jason and Daniel)
741 - Parrot assembler in Parrot (Daniel)
742 - Parrot debugger (Daniel)
743 - BASIC polished, Eliza.bas is new (Clint)
744 - Cola compiler committed and working, with limited OOP (Melvin)
745 - Keyed aggregates (Steve Fink)
746 - Global ops (Melvin)
747 - Compile-time speedup (Melvin)
748 - Much documentation
749 - New PDDs (Dan)
750 - Contributed tetris and lzw files
751 - And many more, from the cast of thousands
753 New in 0.0.5
755 - Full GC
756 - Perl Scalar support in PMCs
757 - Array and Hash types almost ready for prime-time
758 - Internal support for keyed types
759 - EMACS editing mode
760 - New PDDs
761 - New Language - BASIC
762 - Regular expression compiler
763 - More tests
764 - Many, many bug fixes, enhancements, and speedups
766 New in 0.0.4
768 - Arena-based memory allocation system
769 - Copying GC
770 - New IO subsystem
771 - "Predereferencing" mode - ./parrot -P - 22% speedup
772 - JIT compiler - ./parrot -j
773 - Parrot now builds warnings-clean on many platforms
774 - Many more PMC methods implemented
775 - Regular expression operations
776 - Added a FAQ
777 - Basic support for embedding Parrot in other programs
778 - Warnings support
779 - Added PDDs to distribution
780 - Bignum library
782 - PMC inheritance
783 - Added an assembly optimizer
784 - Improved string encoding/type support
785 - Many more tests
786 - Source reformatting
787 - Major refactoring in packfile library
788 - More Miniperl functionality
789 - New PMC "clone" operator
790 - Beginnings of key-based access to PMCs - arrays and hashes
791 - MOPS comparisons in examples/mops/
793 New in 0.0.3
795 - PMCs!
796 - Perl base scalar types implemented
797 - A new minilanguage, Scheme
798 - Much improved documentation
799 - Register stacks pushing and popping
800 - User stack pushing, popping and rotating
801 - Jako updates: subroutines, more example programs, optimizations
802 - test_prog renamed to 'parrot'
804 - Added features to the assembler: @ for current location, and global
805   labels
806 - Build tweaks for VMS
807 - Bytecode typing clean-ups
808 - More platforms: OS X, HPUX, OS/2
809 - The proliferation of runops cores reduced to one fast and one slow one
810 - Opcode tracing, bounds checking, profiling
811 - Vastly improved string support, with separation of encoding and
812   charset
813 - Lots more tests
814 - Multiple interpreter creation support - the beginnings of threading
815 - Much better resource handling - the beginnings of GC
817 New in 0.0.2
819 - Parrot now works on all core platforms
820 - A large number of tests, in the standard Perl testing framework
821 - A new minilanguage (Jako) which compiles to Parrot assembly
822 - Documentation about the assembly language (docs/parrot_assembly.pod)
824 - Separate modules for assembly (Parrot::Assemble) and bytecode
825   manipulation (Parrot::PackFile::*, packfile.c)
826 - Assembler completely rewritten
827 - Better operand-type guessing in the assembler
828 - Assembler support for '\n' etc. in string constants
829 - Code reformatted to match the coding standards
830 - New ops for register-constant INTEGER comparisons
831 - Macro expansion in the assembler
832 - IVs and NVs renamed to more friendly INTVAL and NUMVAL
833 - Hard-coded pack("") formats removed
834 - Better handling of floating-point numbers in assembler
835 - Moved floats to constant table (fixing many alignment issues)