The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

.imc file extension

http://xrl.us/jc4u

 IMC vs. PIR
 Two names enter
 One name leaves

 /me giggles
 -- Chip Salzenberg

Deprecated methods

PGE

PGE::P6Regex is now a registered compiler, and should be used like so:

 <@pmichaud> it's easy; instead of  $P0 = find_global "PGE", "p6rule"
   one now does  $P0 = compreg "PGE::P6Regex"

This syntax is also true for PGE::Glob and PGE::P5Regex

Deprecated ops

From http://www.parrotcode.org/docs/ops/var.html, the following ops are deprecated:

store_global
find_global
find_name

There are several variants of some of the above ops; all are deprecated, and are replaced by the ops {set,get}_[hll,root]_global. See also http://www.parrotcode.org/docs/ops/var.html.

Additionally, the following (unimplemented) ops are going to be removed:

adddoes
removedoes
singleton

Deprecated vtable methods

The following vtable methods are deprecated:

void become_parent(PMC* class)
PMC* subclass(PMC* name)
PMC* get_anonymous_subclass()
PMC* new_singleton()

FUTURE changes

Not yet deprecated, but it's recommended to use the new syntax and gradually change the old.

PMC Class name IDs [#41237]

... will require a dot in front

  $P0 = new Integer               => $P0 = new .Integer
Assignment syntax with opcodes [#36283]

When the first argument of an opcode is OUT, then the assignment syntax will be allowed, as it is today.

In any other case (i.e. INOUT, IN), this will become a syntax error. For example:

    $S0 = print
    $P0 = substr 1, 2, "x"

Will have to be:

    print $S0
    substr $P0, 1, 2, "x"