Slash Boxes
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 ]

autrijus (1505)

  (email not shown publicly)

Journal of autrijus (1505)

Wednesday August 03, 2005
03:50 PM

Day 181 (r6054): Pugs 6.2.9 released during Ingy's OSCON talk!

[ #26072 ]
I am glad to announce Pugs 6.2.9, released during Ingy's OSCON talk:
SIZE = 1439642
SHA1 = efd32419dcddba596044a42564936888a28b3c69

Following last month's plan, this release features a Perl6/PIL to javascript code generator, written in Perl 5, currently passing 64% of the test suite.

We also see the beginning of a code generator from PIL to perl5, and a self-representing Perl 6 object model prototype. The new PIL design and runcore is also progressing nicely, which should give a more robust specification to Perl 6's compile time and runtime semantics.

A live CD is available as usual, courtesy of Ingo Blechschmidt:

Ingy's slides are under the Pugs tree as docs/talks/oscon-apocalypse.spork and online at in HTML.

All in all, it's a lot of fun. Check out the two movies we made for the OSCON talk as well:

Change the ".mp4" to ".swf" or ".wmv" for alternate video formats.


Changes for 6.2.9 (r6050) - Aug 4, 2005

Pugs Internals

  • New build system in inc/PugsBuild
    • Configuration preferences are stored in config.yml
    • Presists across builds, overridable via %*ENV<PUGS_BUILD_OPTS>
  • $CALLER::_ is now again usable in defaults.
  • JavaScript Backend
    • Actively progressing in perl5/PIL2JS
    • Passes 64.00% of the Pugs test suite
  • Perl5 Backend
    • Begun in perl5/PIL-Run
    • Primitive interactive shell as
  • Object MetaModel
    • Perl 5 prototype is mostly self-hosting
    • New C3-based method dispatch algorithm
    • JavaScript version partially completed
    • Java version begun (in very early stages)
  • Pugs Intermediate Language
    • New runcore design begun in src/PIL
    • QuickCheck-based specification tests added
  • Precompilation for arbitrary modules (not enabled by default)

Bundled Modules

  • New Perl 6 modules:
    • MIME::Base64
    • Recurrence
    • Span
  • Additions to libwww-perl:
    • HTTP::Cookies
    • HTTP::Query
    • HTTP::Request::CGI
    • HTTP::Status
    • URI::Escape

Additions to DateTime:

  • DateTime::Set

Test, Examples and Documentations

  • Many new tests and test refactoring, we now have 8100+ tests
  • A number of additions to examples/cookbook
  • Beginning of Rule-based grammars for Perl6 in modules/Grammars
  • SVG generation examples in examples/graphics
  • STATUS document added to the top level to keep track of current progress
  • docs/notes/plan expanded and added macro-related issues
  • examples/algorithms/ implements the newton method with currying
  • examples/network/evalbot.p6 gets safe &print primitive
  • examples/network/seenbot.p6 gets pretty duration printing
  • examples/network/svnbot.p6 supports branch information
  • examples/ppt/cat.p6 added to Perl Power Tools
  • iblech's LUGA talk as Anatomie_eines_Compilers_am_Beispiel_von_Pugs.latex
  • ingy's OSCON talk as oscon-apocalypse.spork

Bug Fixes

  • Fix pair binding for functions expecting pairs as arguments
  • Global destruction is now guaranteed upon program exit
  • Parameter's defaults are now evaluated in its original lexical scope
  • Parser for hash subscripting was globbing whitespaces after it
  • Primitive listops now handles Pairs as regular arguments
  • Various +$foos in sub signatures changed to ?$foo in
  • %h<x>> was misparsed as %h{'x>'}
  • -Inf now stringifies as -Inf, not -Infinity
  • .end and .elems no longer work as scalar methods
  • /a/ ~~ "a" now works the same way as "a" ~~ /a/
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.