/
ChangeLog
280 lines (205 loc) · 7.09 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
- changed namespace from Perlito to Perlito6
0.047 2016-07-28
- hide "Main" class from CPAN
0.046 2016-05-07
- hide "JavaScript" class from CPAN
0.045 2011-10-28
- fixed Makefile.PL
0.044 2011-10-26
- fixed META.yml
0.043 2011-10-26
- fixed META.yml (thanks Aevar)
- fix warnings in the runtime for Perl 5.12
0.042 2011-04-28
- cosmetic changes (generated code is a bit more readable)
0.041 2011-04-20
- updated to Perlito 8.0
0.040 2011-04-05
- statement modifiers and minor fixes in Perlito
0.039 2010-09-03
- fix hash composer, assignment
0.038 2010-09-02
- perlito shell uses Term::ReadLine
0.037 2010-09-01
- added "perlito" command-line compiler and shell
0.035 2010-09-01
- moved compiler modules to "Perlito" namespace
- fixed range operator
0.034 2010-08-31
- documentation fix
- clean up perl5 warnings
0.033 2010-08-30
- new v6.pm module loader.
Written by Pawel Murias (pmurias++)
- "v6-perlito" now loads the Perlito compiler
Removed features:
- "v6-alpha" (Pugs::Compiler::Perl6) no longer supported
- "-e" command-line option no longer supported
0.032 2008-08-01
- pi, Inf, NaN
- more operators
- IO fixes
0.031 2008-07-30
- updated skipped tests
0.030 2008-07-29
- more operators
0.029 2008-07-28
- updated skipped tests
0.028 2008-07-27
- all(), any(), true(), not()
- improved smartmatching, given/when
0.027 2008-07-25
- more unicode tests are skipped
0.026 2008-07-25
- requires Pugs::Compiler::Rule 0.34 - better unicode support across perl distros
0.025 2008-07-24
- more tests
- several unicode tests are skipped, from cpan-testers feedback (I can't reproduce these failures - fglock)
0.024 2008-07-23
- many more tests added; the bigger tests are now split into smaller files
0.023 2008-07-21
- requires perl 5.8.6
0.022 2008-07-20
- implemented string interpolations \x[99] and \c[FOUR TEARDROP-SPOKED ASTERISK]
- fixed interpolated block in string
- q()
- updated test list in MANIFEST
0.021 2008-07-12
- fixed Test.pm compilation (added 'abs' function)
- Makefile.PL adds 'use v6-alpha' to standard tests
0.020 2007-08-26
- added Module::CompileV6 to MANIFEST (fixes broken CPAN distro)
- fixed warnings when using v6.pm from the command line with pipes
0.019 2007-08-25
- grammar - added prefix:<|>
- added: proto token rx { ... }
- fixed signature parsing
- added: Module::CompileV6
- fixed unicode << ... >> parsing
- allow [ ... ] as regex delimiter
- minor fix in quoted string parser
- Moose requires that attributes have an 'is ro' declaration; noticed by kolibrie++
- @_ is now aliased to the list of positional arguments
- bare 'Str' is an object
- added syntax: 'term.meth: list'
- added syntax: 'meth(term: list)'
- requires Sub::Multi 0.003
0.018 2007-05-09
- renamed distro from 'v6-alpha' to 'v6' for proper CPAN indexing
0.017 2007-05-08
- fixed Makefile.PL
0.016 2006-12-14
- command-line switch -B can be set to alternate backends.
The default is '-Bperl5:Pugs::Emitter::Perl6::Perl5'.
'-Bperl5' also invokes the default backend.
- command-line switch -G can be set to alternate grammar frontends.
The default is '-Gperl5:Pugs::Grammar::Perl6'
- implemented grammar and emitter backends for YAML
Perl6->YAML + YAML->Perl5 now works
- added a version banner - perl lib/v6.pm -v
- eval() in caller's context
[devel only]
- moved Perl5 emitter to a separate module
- implemented $$/
- implemented :c and :g switches in rules:
' my $content = "xyz"; while $content ~~ m:c/<alpha>/ { say $/ } '
x \n y \n z \n
- implemented '$x.yaml' and 'eval( $x, :lang<yaml> )'
0.015 2006-09-14
- improved command-line interface, does not require using v6.pm as a
script.
- MANIFEST only includes passing tests
- reuse Rule and Pod grammar from Pugs::Compiler::Rule
- These grammars are now implemented using v6.pm.
- The Rule grammar is subclassed, in order to callback P6 parser to
compile closures.
- improved quoted text parsing
- gradually replace Text::Balanced with plain rules
- Term::substitution() and rx_body() are the last remaining places.
- experimental implementation of compile-time objects
- lib/Pugs/Emitter/Perl6/Perl5/
- not merged yet - see misc/pX/fglock
0.014 2006-08-21
- optimized CPU usage (2x less) and RAM usage (3x less)
- implemented given/when/default/break/continue
- state variables
- implemented additional Array and Hash methods
- $?PUGS_BACKEND returns 'BACKEND_PERL5'
- implemented @*INC, $?OS, $?COMPILER, $?VERSION
- implemented statement terminator block
- fixed scientific notation
- fixed '{}' (empty hash)
- %hash = ( { a => 1 }, { b => 2 } ) works
- 'my' works inside '//' and 'err'
- optimized match object insideout in Pugs::Compiler::Rule
- optimized operator-precedence parser (Parse::Yapp) initialization
0.013 2006-08-09
- includes precompiled v6 modules: Perl6Prelude.pm, Test.pm
- new grammatical categories: 'quote', 'statement_modifier'
0.012 2006-08-08
- faster compilation due to improved grammatical categories dispatching
and lazy rule compilation
- 'statement_control' grammatical category implemented
0.011 2006-07-24
- basic regex parsing and matching
- grammar/rule parsing
- support := with Data::Bind::bind_op2
- basic hash support
- class name barewords are allowed. Str and Bool in Prelude
- implement $?POSITION and $?CALLER::POSITION.
- 788 tests pass
0.010 2006-07-17
- better support for array and hash syntax; - clkao++
'sub' declarations are terms:
@b.map(sub ($x, $y) { $x + $y })
- 'loop' - clkao++
- fixed HACKING file formatting - snowstalker++
- fixed docs on 'use v6-alpha' - dduncan++
- 538 tests pass
0.009 2006-07-14
- reduce operators: say [*] 1..5
- 499 tests pass
0.008 2006-07-14
- 'use perl5:CGI'
- chain operators
- fixed precedence table
0.007 2006-07-12
- added HACKING file
- added Pugs::Runtime::Perl6Prelude
- added t/Test.pm
-- unmodified copy of pugs ext/Test/lib/Test.pm
- parsing is now done one statement at a time
-- this cuts memory needs by half while compiling Test.pm
- use v5; ... use v6;
-- inlines perl 5 code
- named enums
- bool::True, bool::False, true()
- unless, while
- setting $ENV{V6DUMPAST} can now be used for debugging the syntax tree
0.006 2006-07-06
- we now no longer use Parse::Yapp
- all expression parsing is done with Perl 6 grammar
- regex/token/rule declarations in Perl 6 are parsed
- uses Moose 0.10 for Perl 6 classes and objects
- squash warnings
0.005 2006-07-05
- all sanity tests, up and includes Test.pm from Pugs test suite, now passes
- uses Data::Bind for calling convention
- 'expr unless/if expr;'
0.003 - 0.004
- "Changed everything to make Test.pm compile"
- grammar rewrite; now uses Parse::Yapp for expressions only
0.002 2006-06-28
- added REQUIREMENTS section in v6.pm pod
-- see http://rt.cpan.org/Public/Bug/Display.html?id=20152
- uses Moose.pm as the runtime for classes
-- implemented 'module' and 'class'
-- very basic support for 'has', 'method', and parameter list
-- Makefile.PL recommends 'Moose'
- properly parses pod
-- added t/01-pod.t
- more operators
-- added a default '.perl' implementation, which calls perl5 Dumper()
- v6.pm no longer searches in development lib directories
0.001 2006-06-26
- initial CPAN release