Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 82 lines (54 sloc) 2.96 kb
9c6f9fa @sorear Start drafting of v1 message
authored
1 Announce: Niecza Perl 6 v1
2
3 To mark one month since the first announcement of Niecza, to be known
4 retroactively as v0, this is another announcement, to be known as v1.
5 Further announcements will occur at intervals on the last Monday of
6 each month.
7
710b329 @sorear Describe today's changes for v1
authored
8 You have my assurance that the 'v1' tag, available at [1], passes all
9 of the current tests and has a bunch of cool features. What you will
10 not necessarily have is an easy time installing it; Niecza depends on
11 several non-pure-Perl modules from CPAN, which you'll need to set up
12 in order to be able to use Niecza. I recommend trying cpanminus
13 first.
14
9c6f9fa @sorear Start drafting of v1 message
authored
15 Niecza is a Perl 6 compiler project studying questions about the
6c6c686 @sorear Fix some announce typos
authored
16 efficient implementability of Perl 6 features. It currently targets
9c6f9fa @sorear Start drafting of v1 message
authored
17 the Common Language Runtime in the form of Mono.
18
19 List of changes
20
21 * The code generation backend has been rewritten to generate CLR
22 bytecode directly, instead of going through the C# compiler. This is
23 quite a bit faster, and also generates slightly better code (due to
6c6c686 @sorear Fix some announce typos
authored
24 structural restrictions on C# code that spaghetti bytecode lacks).
9c6f9fa @sorear Start drafting of v1 message
authored
25 Also, it means that Niecza no longer depends on a C# compiler after
26 installation.
27
28 * Call graph generation. Set NIECZA_TRACE_CALLS=1 in the environment,
29 then pass the output into perf/call-log-analyze.pl to see what your
30 most used functions are.
31
32 * The included JSYNC interface can now save subclasses of Hash.
33
34 * use v6; is now recognized and ignored.
35
36 * --gen-app is no longer available; it was deeply tied to the C# use.
37
38 * The binder has been redesigned and made data-driven, shrinking DLLs
39 and making signature introspection possible.
40
41 * Regex matches now set $/.
42
710b329 @sorear Describe today's changes for v1
authored
43 * New methods: Cool: split, index, rindex, lines, split, comb improved
44
45 * New operators: &&=, ||=, //=, andthen=
46
47 * New top-level functions: open, print. say returns True on success
48 per spec.
49
50 * pmurias added &skip to Test and fixed escaping of debug clauses.
51
52 * New keywords supported: INIT, require, submethod
53
9c6f9fa @sorear Start drafting of v1 message
authored
54 * Exceptions now propagate out of inner loop contexts correctly (e.g.
55 if a Str overload dies when an object is stringified)
56
57 * Array and hash slices are now supported.
58
59 * Relative array indexing (@foo[*-1]) is now supported.
60
61 * In stack traces, method names now include the class.
62
63 * 'augment' now takes effect at INIT time, not BEGIN. This allows
64 augments to be used in precompiled modules.
65
66 * Bootstrap code is now properly distributed between modules, rather
67 than having all of it bloat MAIN.exe.
68
710b329 @sorear Describe today's changes for v1
authored
69 * @*ARGS works properly with compile-and-run mode.
70
71 * Attribute default values are implemented.
9c6f9fa @sorear Start drafting of v1 message
authored
72
73 * Minor optimizations have been done on: storage of boxed values,
74 autovivification, postcircumfix operators, contextual conversions,
75 zero width assertions, list iteration.
76
77 Getting involved
78
79 Contact sorear in irc.freenode.net #perl6 or via the sender address of
80 this mailing. Also see docs/lhf.txt for a list of things that need to
81 be done in no particular order.
Something went wrong with that request. Please try again.