On behalf of the Parrot team, I'm proud to announce Parrot 0.8.2
"Feliz Loro." Parrot
is a virtual machine aimed at running all dynamic languages.
Parrot 0.8.2 is available via CPAN
(soon), or follow the download
instructions. For those who would like to develop on Parrot, or help
develop Parrot itself, we recommend using href="http://subversion.tigris.org/">Subversion on
our source code repository to get the latest
and best Parrot code.
Parrot 0.8.2 News:
- Implementation
+ fixed lexical semantics
+ added the 'capture_lex' opcode
+ added automatic resume for nonfatal exceptions
+ added multidispatch cache
+ applied miscellaneous performance improvements, including startup time
+ fixed several bugs and leaks found by Coverity Scan
+ removed race conditions from parallel testing
- Compilers
+ IMCC
- removed undocumented .param int=> syntax
- .line directive now only takes an integer argument
- new .file directive to specify the file name being compiled
+ PCT
- properly handles lexical generation and closure semantics
- uses :subid instead of name lookups to reference PAST::Block nodes
- added PAST::Control node type (exception handlers)
+ PGE
- add support for and assertions
- Match objects use Capture PMC instead of Capture_PIR
+ PIRC
- add macro handling to PASM mode
- disable vanilla register allocation in PASM mode, but do allow optimization
- add tests and bug fixes
- first bits of bytecode generation. No sub calling/returning yet.
- Languages
+ Rakudo
- fixed lexical handling and recursion
- refactored subtypes implementation
- support for quotes with multi-character delimiters
- implemented list slices (Positional role)
- list assignment
- reduction meta operators
- hyper meta operators
- cross meta operators
- more builtin functions
- added Nil type
- basic support for protos
- iterator on filehandle objects
- basic support for exception handlers
- warn
+ Lua
- added complex & mathx libraries
- merged LuaClosure & LuaFunction PMC
+ Pipp
- added support for a return value from user defined functions
- added incomplete implemention of 'require_once'
+ Ecmascript
- parser fixes, parses spidermonkey's top level test/shell.js
- Deprecations
+ PARROT_API is now PARROT_EXPORT
+ PIR
- :lexid is now :subid
- .arg is now .set_arg
- .result is now .get_result
- .yield (in .begin/end_yield) is now .set_yield
- .return (in .begin/end_return) is now .set_return
- .namespace x / .endnamespace x syntax is removed
+ Capture_PIR (runtime/parrot/library/Parrot/Capture_PIR.pir)
Thanks to all our contributors for making this possible, and our sponsors
for supporting this project. Our next release is 20 January 2009.
Enjoy!
4 comments:
I installed it on my Windows XP machine. I want to try Perl6, but making the binary, I get this error:
C:\parrot-0.8.2\bin>pbc_to_exe.exe "C:\parrot-0.8.2\languages\perl6\perl6.pbc"
Unable to open filehandle
current instr.: '_config' pc 6 (library/config.pir:54)
called from Sub 'handle_args' pc 241 (pbc_to_exe.pir:99)
called from Sub 'main' pc 68 (pbc_to_exe.pir:29)
Am I missing something? or are there any other procedure other than this post by chromatic.
ok, I searched and found this.
Solution is to create a batch file instead as follows:
@echo off
rem adjust the path below to suit your environment
set PARROT_ROOTDIR=c:\parrot-0.8.2
%PARROT_ROOTDIR%\bin\parrot.exe %PARROT_ROOTDIR%\languages\perl6\perl6.pbc %*
I saved it as C:\parrot-0.8.2\bin\perl6.cmd
Then I added this to my PATH env variable: C:\parrot-0.8.2\bin\
Now this works:
C:\dev\perl6>perl6 hello.pl
Hello World!
Hurray, now I'm ready to play with perl6. Thanks so much!
I wrote a post about my install experience here: http://samdelacruz.blogspot.com/2008/12/want-to-try-perl6-heres-how-to-get.html
Post a Comment