# $Id: DEPRECATED.pod 23998 2007-12-17 05:56:31Z coke $ =head1 Deprecation in Parrot This is a list of currently deprecated features of Parrot. Every deprecation has an associated RT ticket. Each item indicates the last release it's guaranteed to appear in. Items marked with a release of ??? are still deprecated, but a firm deadline for their removal has not yet been established. When deprecated items are removed, all usage of the feature in the repository should be updated or removed; including documentation. =head1 PMC syntax =over 4 =item * C [post 0.5.2] The current C syntax will be deleted and the current C syntax will replace it under the name C. See RT #48565. =back =head1 vtable entries =over 4 =item * C [post 0.5.2] See RT #48583. =item * C [post 0.5.2] See RT #48585. =item * C [post 0.5.2] See RT #48577. =item * C [post 0.5.2] See RT #48579. =item * C [post 0.5.2] See RT #48581. =item * C [post 0.5.2] See RT #48571. =item * C [post 0.5.2] See RT #48573. =item * C [post 0.5.2] See RT #48575. =item * C [post 0.5.2] See RT #48567. =item * C [post 0.5.2] See RT #48569. =item * C [post 0.5.1] See RT #42352. =item * C [post 0.5.0] See RT #47011. =item * C [post 0.5.1] See RT #48142. =item * C [post 0.5.1] See RT# 48144. Replaced by C. =back =head1 opcodes =over 4 =item * C, C [post 0.5.1] See RT # 48729. These were already deprecated, but not fully removed. =item * C [post 0.5.1] See RT # 48727. This was already deprecated, but not fully removed. =item * C [post 0.5.1] See RT #48589. =item * C [post 0.5.0] See RT #48016. Replace usage with set_[hll,root]_global variants. =item * C [post 0.5.0] See RT #48018. Replace usage with get_[hll,root]_global variants. =item * C(out PMC, in INT, in STR) [post 0.5.0] See RT #47011. =item * C [post 0.5.0] See RT #48022. =item * C [post 0.5.0] See RT #47972. Future use should use the C opcode. =item * C [post 0.5.0] See RT #47976. =item * C [post 0.5.1] See RT #48010. =item * C [post 0.5.1] See RT #48310. =back =head1 Class Features =over 4 =item * Integer Type IDs [post 0.5.0] See RT #48024. Instead of C<$P0 = new Integer> or <$P0 = new .Integer>, use the following syntax, which works for both PMCs and objects. $P0 = new 'Integer' =item * PMC union struct [post 0.5.0] See RT #48014. This will be removed once all core PMCs have been updated. =back =head1 Exceptions =over 4 =item * Keyed access to exception attributes [post 0.5.1] See RT #48012. Attributes on exception objects will no longer be accessible by integer or string key, use C and C instead. =back =head1 PIR syntax =over 4 =item * C<<.namespace >> syntax [post 0.5.1] See RT #48737. =item * Use of C<::> in identifiers [post 0.5.1] See RT #48735. =item * C<.constant> [post 0.5.1] See RT #48561. This will be replaced with <.macro_const> =item * C<.namespace [ "a" .. "b" ]> [post 0.5.0] See RT #4671. =item * C<.emit> / C<.eom> [post 0.5.1] See RT #47846. Any C<.emit>/C<.eom> blocks should be replaced with Anonymous C<.sub>s =item * Assignment syntax with opcodes [post ???] See RT #36283. When the first argument of an opcode is C, then the assignment syntax will be allowed, as it is today. In any other case (i.e. C, C), 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" =back =head1 Parrot Compiler tools =over 4 =item * pgc.pir [post 0.5.0] See RT #48026. The pgc.pir compiler for P6 grammars (pre-2007 regex syntax) is deprecated. Switch to using the new PGE::Perl6Grammar.pir compiler instead, and the Perl6Regex syntax. =item * PGE::P6Regex [post 0.5.0] See RT #48028. In early 2007 there were a number of changes made to the Perl 6 regular expression syntax (as given by Synopsis 5). The new syntax is implemented via the PGE::Perl6Regex compiler, and the PGE::P6Regex compiler is now deprecated in favor of the new syntax. =item * compilers/PAST-pm [post 0.5.1] See RT #48030. The compiler tools in compilers/PAST-pm/ and runtime/parrot/library/Parrot/HLLCompiler.pir are deprecated in favor of the new versions in the Parrot Compiler Toolkit ( compilers/pct/ ). In particular, the PAST representation in PCT follows the specification given by pdd26 . =back =head1 Misc =over 4 =item * 'v' NCI arg signature [post 0.5.1] See RT #48733. (Been removed for some time; nice warning is going away) =back