Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100755 113 lines (58 sloc) 2.346 kB
8f67bea @fglock Perlito version 8.0
authored
1 TODO list for Perlito5
2
c07de6d @fglock Perlito5 - TODO update
authored
3 * basic functionality
4
bb1a87d @fglock Perlito5 - remove "hyper"
authored
5 -- add "map" block
6
7 -- add "grep", "sort"
c07de6d @fglock Perlito5 - TODO update
authored
8
9 -- add regexes
10
c79db3b @fglock Perlito5 - update TODO
authored
11 -- add "local", "our"
12
c07de6d @fglock Perlito5 - TODO update
authored
13
0cc64c5 @fglock Perlito5 - kill perl6-ish "method"
authored
14 * extensibility
15
16 -- add "require"
17
18
8f67bea @fglock Perlito version 8.0
authored
19 * libraries
20
3004b77 @fglock Perlito5 - cleanup, update TODO
authored
21 -- these should probably go into namespace Perlito5X::*
22
23 -- Test
24
8f67bea @fglock Perlito version 8.0
authored
25 -- Data::Dumper
26
27
7b982c3 @fglock Perlito5 - update TODO
authored
28 * Parser
29
465ee11 @fglock Perlito5 - TODO update
authored
30 -- maybe use "prefix + proto" to represent variables, because it is more flexible; remove 'Var'
7b982c3 @fglock Perlito5 - update TODO
authored
31
32 -- use an array to represent names that contain '::', because it is more flexible
33
fde5276 @fglock Perlito5 - update TODO
authored
34 -- implement signatures
35
0464e31 @fglock Perlito5 - use perl5 array/hash in perl5 backend
authored
36 -- check that \(@a) and \@a have different meanings
7b982c3 @fglock Perlito5 - update TODO
authored
37
5bb50dd @fglock Perlito5 - update TODO
authored
38 -- symbol variables like $]
1239f18 @fglock Perlito5 - update docs
authored
39
8f67bea @fglock Perlito version 8.0
authored
40
5bb50dd @fglock Perlito5 - update TODO
authored
41 * Perl5 backend
399a3d2 @fglock Perlito5 - use scalar() instead of .elems()
authored
42
0cc64c5 @fglock Perlito5 - kill perl6-ish "method"
authored
43
8f67bea @fglock Perlito version 8.0
authored
44 * Javascript backend
45
b9c2217 @fglock Perlito5 - update TODO
authored
46 -- array refs break the compiler bootstrap; the problem seems to be an autovivification bug
7b982c3 @fglock Perlito5 - update TODO
authored
47
b9c2217 @fglock Perlito5 - update TODO
authored
48 -- fix autovivification:
49 $ perl -Ilib5 perlito5.pl -Cjs -e ' use strict; my $x = []; push @{ $x->[2][2] }, 10 ' > x && ~/bin/d8 x
50 v__NAMESPACE.push((v_x[2][2]), 10);
51 TypeError: Cannot read property '2' of undefined
52 v__NAMESPACE.push((v_x._array_[2]._array_[2])._array_, 10);
53 TypeError: Cannot read property '_array_' of undefined
54
55 -- wrap CODE.js and Runtime.js in perl code.
56 -- create target-specific versions of the runtime
57 -- add browser, v8, node.js runtimes
58
59 -- move "substr" and others to CORE
5b56e5b @fglock Perlito5 - change javascript calling convention
authored
60
7b982c3 @fglock Perlito5 - update TODO
authored
61 -- bug: negative index in array doesn't work
62
8f67bea @fglock Perlito version 8.0
authored
63 -- bug: packages currently create lexical blocks
64
65 -- bug: "my" variables are block-wide; this doesn't work as expected: my $v = $v
71b0905 @fglock Perlito5 - docs update
authored
66 possible fix: rename variables
8f67bea @fglock Perlito version 8.0
authored
67
68 -- bug: variable aliases create copies instead
69
ce36bd0 @fglock Perlito5 - update TODO
authored
70 -- generate more compact code; maybe use more subroutines instead of inlining;
71 autovivification is probably the most verbose part of the code.
ae7ad72 @fglock Perlito5 - update docs
authored
72
7b982c3 @fglock Perlito5 - update TODO
authored
73 -- in the browser: implement "use" with XMLHttpRequest (what are the security implications?)
4b15a00 @fglock Perlito5 - cleanup parenthesis
authored
74
5bb50dd @fglock Perlito5 - update TODO
authored
75 -- add symbol tables for scalar, array and hash
76
71b0905 @fglock Perlito5 - docs update
authored
77 -- string increment and string ranges
5b56e5b @fglock Perlito5 - change javascript calling convention
authored
78
0cc64c5 @fglock Perlito5 - kill perl6-ish "method"
authored
79
8f67bea @fglock Perlito version 8.0
authored
80 * Python backend
81
82 * Ruby backend
83
84 * Java backend
85
0cc64c5 @fglock Perlito5 - kill perl6-ish "method"
authored
86
87 * Nice to Have
88
c79db3b @fglock Perlito5 - update TODO
authored
89 -- run the "perl" test suite
90
a7ab071 @fglock Perlito5 - add TODO
authored
91 -- wantarray()
92
465ee11 @fglock Perlito5 - TODO update
authored
93 -- import
94
f4910a7 @fglock Perlito5 - TODO update
authored
95 -- require plain perl5 syntax (any perl6 is a syntax error)
1b2eecc @fglock Perlito5 - use @ARGV instead of @*ARGS
authored
96
0cc64c5 @fglock Perlito5 - kill perl6-ish "method"
authored
97 -- run perltidy on the source code
98
71b0905 @fglock Perlito5 - docs update
authored
99 -- proper "use strict" and "use warnings"
1b2eecc @fglock Perlito5 - use @ARGV instead of @*ARGS
authored
100 -- use the same error messages and warnings as 'perl'
101
c79db3b @fglock Perlito5 - update TODO
authored
102 -- __PACKAGE__, __END__
f4910a7 @fglock Perlito5 - TODO update
authored
103
c79db3b @fglock Perlito5 - update TODO
authored
104 -- BEGIN{}, INIT{}, END{}
f4910a7 @fglock Perlito5 - TODO update
authored
105
3004b77 @fglock Perlito5 - cleanup, update TODO
authored
106 -- finish "overload" implementation
107
4b15a00 @fglock Perlito5 - cleanup parenthesis
authored
108 -- source code - remove Perl 6 code such as "token"
71b0905 @fglock Perlito5 - docs update
authored
109 (fixed: This is only loaded if the grammar compiler is needed)
4b15a00 @fglock Perlito5 - cleanup parenthesis
authored
110
5b56e5b @fglock Perlito5 - change javascript calling convention
authored
111 -- here-docs
112
Something went wrong with that request. Please try again.