Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

particle (3326)

particle
  (email not shown publicly)
+ -

  Rakudo Perl 6 development release #21 ("Seattl[->] on 2009.09.17 16:54 particle

Submitted by particle on 2009.09.17 16:54
Perl 6
On behalf of the Rakudo development team, I'm pleased to announce
the September 2009 development release of Rakudo Perl #21 "Seattle".
Rakudo is an implementation of Perl 6 on the Parrot Virtual Machine [1].
The tarball for the September 2009 release is available from
http://github.com/rakudo/rakudo/downloads .

Due to the continued rapid pace of Rakudo development and the frequent
addition of new Perl 6 features and bugfixes, we recommend building Rakudo
from the latest source, available from the main repository at github.
More details are available at http://rakudo.org/how-to-get-rakudo.

Rakudo Perl follows a monthly release cycle, with each release code named
after a Perl Mongers group. September 2009 is code named "Seattle" for the
enthusiasm they have shown for Perl 6 during monthly meetings, and the
feedback, encouragement and support given me for the past several years.

Since the 2009-08 release, Rakudo Perl builds from an "installed
Parrot" instead of using Parrot's build tree. This release of Rakudo
requires Parrot 1.6.0. For the latest information on building and
using Rakudo Perl, see the README file section titled "Building and
invoking Rakudo". (Quick note: the "--gen-parrot" option still
automatically downloads and builds Parrot as before, if you prefer
that approach.)

Also, unlike previous versions of Rakudo Perl, the "perl6"
(or "perl6.exe") executables only work when invoked from the
Rakudo root directory until a "make install" is performed.
Running "make install" will install Rakudo and its libraries
into the Parrot installation that was used to build it, and then
the executables will work when invoked from any directory.

Some of the specific major changes and improvements occuring
with this release include:

* Rakudo is now passing 15,497 spectests, an increase of 3,128
    passing tests since the August 2009 release. With this release
    Rakudo is now passing 71.5% of the available spectest suite.

* Rakudo now supports contextual variables.

* Rakudo now supports the rational (Rat) data type.

* Rakudo now supports overloading of many of the builtin operators,
    many of which are now defined in the core setting. Many have
    also been improved to be more faithful to the specification
    with respect to types and coercions.

* Substantially improved support for trait handling. Most of the
    "built-in" traits are now defined in the core setting.

* The %*ENV variable now works properly for modifying the process environment.

Since the Perl 6 specification is still in flux, some deprecated features
have been removed from Rakudo. Prominently among those are:

  * '=$handle' is deprecated in favor of '$handle.get' (one line)
      and '$handle.lines' (all lines).

  * 'int $obj' is deprecated in favor of '$obj.Int'.

The development team thanks all of our contributors and sponsors for
making Rakudo Perl possible. If you would like to contribute,
see http://rakudo.org/how-to-help , ask on the perl6-compiler@perl.org
mailing list, or ask on IRC #perl6 on freenode.

The next release of Rakudo (#22) is scheduled for October 22, 2009.
A list of the other planned release dates and codenames for 2009 is
available in the "docs/release_guide.pod" file. In general, Rakudo
development releases are scheduled to occur two days after each
Parrot monthly release. Parrot releases the third Tuesday of each month.

Have fun!

References:
[1] Parrot, http://parrot.org/
Link To Original Source
Read More 0 comments

+ -

  Parrot 1.6.0, "half-pie" released![->] on 2009.09.15 8:26 particle

Submitted by particle on 2009.09.15 8:26
Parrot
particle writes "On behalf of the Parrot team, I'm proud to announce Parrot 1.6.0
"half-pie." Parrot (http://parrot.org/) is a virtual machine aimed
at running all dynamic languages.

Parrot 1.6.0 is available on Parrot's FTP site, or follow the
download instructions at http://parrot.org/download. For those who would like to
develop on Parrot, or help develop Parrot itself, we recommend using Subversion
on the source code repository to get the latest and best Parrot code.

Parrot 1.6.0 News:
- Functionality
    + Added a fixed-size structure allocator to the Garbage Collector
    + Added a "lazy" mode to the PObj and Fixed-Size memory allocators
    + Added a profiling runcore, which generates Callgrind-compatible output
    + Added lexical subsystem opcodes: find_dynamic_lex, store_dynamic_lex
    + Converted Contexts to garbage-collectable PMC structures
    + Created a new Context API
    + Enhanced the PMC allocator to automatically allocate ATTR structures
- Performance
    + Optimized opcodes to cache the current Context for subsequent lookups
    + Reduced string comparisons in VTABLE_isa
- Maintenance and cleanup
    + Began proper encapsulation of STRING API
    + Unified all PMC destruction functions
    + Unified Continuation PMC and Parrot_cont structure
    + Unified Sub PMC and Parrot_sub structure
    + Removed PMC_EXT structure
    + Removed PMC_Sync from PMC
    + Removed UnionVal from PMC structure
- Bugfix
    + Fixed several stack-walking bugs in Garbage Collector code
    + Fixed bug when copying a NULL STRING, now returns empty STRING struct
- Tests
    + Converted several Perl5 tests to PIR
    + Expanded test coverage of NameSpace PMC
- Compilers
    + Made Parrot Compiler Toolkit available in the base install

Many thanks to all our contributors for making this possible, and our sponsors
for supporting this project. Our next scheduled release is 20 October 2009.

Enjoy!"

Link To Original Source
Read More 0 comments

+ -

  Comment: when? when they opt in. (Score 1) on 2009.07.13 8:52

send out a message to the top 100 cpan module authors, explaining that this module is used by a number of other cpan modules. ask if they'll opt in to receive error reports via email. if they do not opt in, they may track the reports via the web page at the link provided.

also, you may suggest that authors (especially of these modules) write and release a release policy and a support policy to clarify what (if any) structure there is to the module release process and what (if any) support is available by the module author or the community for the module.

~particle

Read More 24 comments
Comments: 24
+ -

  Comment: Postmodern Perl (Score 1) on 2009.01.17 19:02

by particle on 2009.01.17 19:02 (#66919)
Attached to: Modern Perl

Is this really an introduction to a language (Perl 5) that will surely have a declining adoption rate by the time the book is published? Or is it instead intended for current Perl 5 users who wish to learn not with outdated patterns, syntax elements, and libraries, but with a fresh look at the best Perl 5 has to offer? The latter is certainly more likely, and more likely to inform the Perl 6 user-to-be. A book with this angle is better titled "Postmodern Perl", as the approach is in reaction to classic, or "modern" usage of Perl.

Read More 39 comments
Comments: 39
+ -

  Journal: Parrot Developer Summit 2008 Recap on 2008.11.18 16:54

Journal by particle on 2008.11.18 16:54
Parrot

Much of my volunteer time over the past few weeks has been devoted to the organization of Parrot Foundation's first Parrot Developer Summit, which took place this past weekend in Mountain View, CA. Our primary objective was to write a roadmap to the release of Parrot 1.0 and beyond. Secondary objectives included review and discussion on support and release policies, updates on parrot subsystems and milestones, review of Parrot Foundation topics, and knowledge transfer between attendees.

Read More 0 comments

+ -

  Parrot 0.8.0, "Pareto principle" released! on 2008.10.21 18:29 particle

Submitted by particle on 2008.10.21 18:29
Parrot
On behalf of the Parrot team, I'm proud to announce Parrot 0.8.0
"Pareto Principle." Parrot (http://parrotcode.org/) is a virtual machine aimed
at running all dynamic languages.

Parrot 0.8.0 is available via CPAN (soon), or follow the download
instructions at http://parrotcode.org/source.html. For those who would like to develop on
Parrot, or help develop Parrot itself, we recommend using Subversion on
the source code repository to get the latest and best Parrot code.

Parrot 0.8.0 News:
- Implementation
    + float precision expanded to 15 significant digits from 6
    + large integers autopromoted in PIR so as not to lose precision
    + improved precision of complex square root
    + exception handlers can register types of exceptions they catch
- Languages
    + Cardinal (Ruby)
        — implemented gather, take, and yield builtins
        — Range, Time, Math, GC, Kernel classes
        — many more tests
        — added a new committer
    + Markdown : new lightweight markup language
        — start implementation with PCT/NQP
    + partcl (Tcl 8.5.4)
        — Moved to its own repository: http://code.google.com/p/partcl/
    + Rakudo (Perl 6)
        — split() works with regexes
        — implemented Str.comb
        — ord() and chr() builtins
        — improved parsing of literal numbers
        — support for hyphens and dashes in identifiers
        — next() on for-loops
        — fixed floating point constant precision
        — improved namespace handling, closer to STD.pm model
        — support for exporting symbols
- Compilers
    + P6object
        — now generates classes in nested namespaces instead of :: names
        — supports class creation in caller's HLL namespace
    + PCT / PGE
        — now using true nested namespaces instead of :: names
        — cleaned up HLLCompiler interactive prompts and readline mode
        — updated to use typed exception handler registration
        — added initial support for loop control exceptions
    + PIRC
        — fixed Heredoc preprocessor
        — cleaned up Macro preprocessor
        — many code clean-ups, warning fixes and consting
        — updated Makefile for easier compilation
    + IMCC
        — Added .tailcall syntax to replace .return in tailcall context
- Examples
    + pirric (BASIC)
        — an old style line numbered Basic interpreter able to use parrot objects
        — example connecting to mysql via nci
        — example using classes to write and run an embedded Basic program
- Documentation
    + Book
        — Added chapters for PCT, PMCs, and Opcodes/Runcores
        — Expanded and improved formatting in various chapters
        — Renumbered chapters

Many thanks to all our contributors for making this possible, and our sponsors
for supporting this project. Our next scheduled release is 18 Nov 2008.

Enjoy!
Read More 0 comments

+ -

  Parrot 0.6.1 "Bird of Paradise" Released[->] on 2008.04.15 14:59 particle

Submitted by particle on 2008.04.15 14:59
Parrot
Aloha!

On behalf of the Parrot team, I'm proud to announce Parrot 0.6.1
"Bird of Paradise." Parrot (http://parrotcode.org/) is a virtual machine aimed
at running all dynamic languages.

Parrot 0.6.1 can be obtained via CPAN (soon), or follow the
download instructions at http://parrotcode.org/source.html.
For those who would like to develop on Parrot, or help develop
Parrot itself, we recommend using Subversion or SVK on the
source code repository to get the latest and best Parrot code.

Parrot 0.6.1 News:
- Specification
    + drafted pdd29_compiler_tools.pod
    + updated pdd28_character_sets.pod draft
    + updated pdd19_pir.pod draft
- Languages
    + c99: added independent C pre-processor
    + HQ9+: reimplemented with PCT
    + Lua:
        . reimplementation with PCT, using PAST and POST
        . behavior aligned wih 5.1.3
    + Rakudo:
        . implemented basic I/O, including '$*IN', '$*OUT', '$*ERR', 'prefix:='
        . implemented simple typing and runtime type checking
        . added basic multi-method dispatch
        . expanded named argument handling, including Pair and colonpairs
        . added 'Whatever' and 'Capture' classes
        . implemented 'handles' trait verb
        . added 'loop' statement
        . implemented 'given', 'when', 'for', 'while', 'until' statement modifiers
        . implemented Hash methods '.keys' and '.values'
        . fixed bug to get '.WHAT' working correctly
        . initial implementation of 'eval'
- Compilers
    + NQP:
        . created a bootstrapped build, see 'make boot'
        . added 'infix:', 'infix:>=' relational operators
        . added 'postfix:++', 'postfix: — ' operators
    + PCT:
        . added methods specifying default behaviors in PAST, reducing repeated code
        . improved symbol table lookup
    + PGE:
        . removed deprecated code including: P6Regex, P6Grammar, PAST-pm
- Miscellaneous
    + notable speedups during compilation and execution of parrot and HLLs
    + pdb (the parrot debugger) can now catch parrot exceptions
    + better detection of glibc and gettext during configuration
    + various bugfixes, code cleanups, deprecations, and coding standard fixes

Mahalo to all our contributors for making this possible, and our
sponsors for supporting this project.

Enjoy!
Link To Original Source
Read More 0 comments

+ -

  Parrot 0.5.2 Released on 2008.01.15 18:27 particle

Submitted by particle on 2008.01.15 18:27
Parrot
On behalf of the Parrot team, I'm proud to announce Parrot 0.5.2 "P.e. nipalensis." Parrot (http://parrotcode.org/) is a virtual machine aimed at running all dynamic languages.

Parrot 0.5.2 can be obtained via CPAN (soon), or follow the download instructions at http://parrotcode.org/source.html. For those who would like to develop on Parrot, or help develop Parrot itself, we recommend using Subversion or SVK on the source code repository to get the latest and best Parrot code.

Parrot 0.5.2 Highlights:

    * "make perl6" uses the new pbc_to_exe tool to build a Perl 6 executable. It's still a ways from being a finished implementation of Perl 6, but we're working on that. Come join us!

    * Parrot now has a LOLCODE implementation! Not an "enterprise-class" computing language, you say? We don't expect anyone to use it for their next app, but at less than 500 lines of source code (and most of that in a subset of Perl 6), it demonstrates the power of the Parrot Compiler Toolkit. See http://lolcode.com/news/i-haz-a-parrot for more.

Parrot 0.5.2 News:

- Documentation
  + PDD27 (multiple dispatch) — debut of new design
  + Numerous small updates to glossary.pod, etc
- Compiler Toolkit
  + NQP: optional, named, and named/required parameters
  + PIRC: cleanups
  + PAST: "defined-or"
- Languages
  + New mk_language_shell.pl script creates language stubs
  + LOLCODE: new
  + Lua: various
  + Eclectus: start with support for local variables and procedures,
      use SXML as intermediate representation
  + Perl 6: list builtins, compiler directives, command-line options, etc.
  + "make perl6" now builds a Perl 6 executable
  + punie: more builtins, control structures, code refactoring
  + pynie: builtin stubs, more tests
- Implementation
  + New "pbc_to_exe" utility turns bytecode to executables
  + New set_outer method for subs
  + Further configuration refactoring for testability
  + All functions now completely headerized
  + Concurrency: interpreter schedulers
- Deprecations
  + DYNSELF (changes to SELF; SELF to STATICSELF)
  + METHOD (replaced by renaming PCCMETHOD)
  + pmcinfo op (superseded by 'inspect')
  + get_attr, set_attr, and 8 other vtable methods
  + See DEPRECATED.pod for details
- Miscellaneous
  + Many bug fixes
  + Minor speed enhancements with UTF-8 string handling
  + Debian packaging
  + consting, attribute marking, warnings cleanup, memory leaks plugged ...

The next scheduled Parrot release will be five weeks from today, on 19 February 2008.

Thanks to all our contributors for making this possible, and our sponsors for supporting this project.

Enjoy!
Read More 0 comments

+ -

  Parrot 0.4.16 Released on 2007.09.18 17:06 particle

Submitted by particle on 2007.09.18 17:06
Parrot
On behalf of the Parrot team, I'm proud to announce Parrot 0.4.16, "A Farewell to Alex." Parrot (http://parrotcode.org/) is a virtual machine aimed at running all dynamic languages.

Parrot 0.4.16 can be obtained via CPAN (soon), or follow the download instructions at http://parrotcode.org/source.html. For those who would like to develop on Parrot, or help develop Parrot itself, we recommend using Subversion or SVK on the source code repository to get the latest and best Parrot code.

Parrot 0.4.16 News:
- Implementation:
  + Performed code review on every PMC
  + Modified PMC code generation to use Storable, reducing compile times
  + Added a makefile target to generate test coverage data of C sources
- Languages:
  + NQP: added lists, for loops, operators, comparison and multiplicative operators
  + Announced Kea-CL, Kea Common Lisp, an ANSI Common Lisp implementation
      The repository is available at https://rgrjr.dyndns.org/svn/kea-cl/trunk/
- Documentation
  + PDD17 "PMCs" — draft approved, the design is complete
  + Added more PIR tutorials, see examples/tutorial/00_README.pod
- Miscellaneous:
  + Many bugfixes, enhancements, documentation, and coding standard updates
  + Deprecated PMC constants and other crufty syntax, see DEPRECATED.pod
  + Improved icc compiler compatibility for error line reporting

Thanks to all our contributors for making this possible, and our
sponsors for supporting this project.

Enjoy!
~jerry
Read More 0 comments

+ -

  Parrot 0.4.14 Released![->] on 2007.07.17 18:14 particle

Submitted by particle on 2007.07.17 18:14
Parrot
On behalf of the Parrot team, I'm proud to announce Parrot 0.4.14 "Now, with Seat Belts!." Parrot is a virtual machine aimed at running all dynamic languages.

Parrot 0.4.14 can be obtained 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 Subversion or SVK on our source code repository to get the latest and best Parrot code.

Parrot 0.4.14 News:
— Now, with Seat Belts! + added makefile targets for Sun lint, BSD lint, and splint + corrected many errors picked up by these tools + decorated source code with compiler hints, assertions, and attribute macros + automated creation of function declarations to prevent common errors + increased compiler warnings levels + converted more exceptions to a recoverable form — Languages: + updated Lisp, Lua, Perl 6, tcl, regex, Scheme ("Pheme") + Perl 6 now fetches selected tests from pugs, and even passes some + PGE modified to handle {*} action subs for top-down and bottom-up parsers, and to allow grammar subclassing + HLLCompiler now has better exception, eval, and exit support + Introduced PCT, a refactor of HLLCompiler and PAST-pm — Design: + PDD15 "Objects" — details added to 'new' and 'getattribute' opcodes + PDD17 "PMCs" — notes added on instantiation and dynamic extention in PIR — Documentation: + added Parrot-related text from "Perl6 and Parrot Essentials" book, tutorial examples from "Learning PIR" talk, and PDD15 metamodel diagrams — Implementation: + reduced memory footprint when using named registers + implemented overridding of vtable methods by PDD15 classes + improved PDD15 support for 'new', 'instantiate', and others + added makefile targets to ease core and HLL makefile regeneration + updated parrot dubugger, "pdb", to allow loading of commands from file — Misc: + many bugfixes, enhancements, documentation, and coding standard updates

Thanks to all our contributors for making this possible, and our sponsors for supporting this project.

Enjoy!

~particle
Link To Original Source
Read More 0 comments