This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
MakeMaker 3.8
[perl5.git] / Todo
CommitLineData
a0d0e21e 1Modules needed
8990e307 2 X/Motif/Tk etc.
a0d0e21e 3 Curses
8990e307
LW
4
5Tie Modules
6 VecArray Implement array using vec()
7 SubstrArray Implement array using substr()
8 VirtualArray Implement array using a file
9 ShiftSplice Defines shift et al in terms of splice method
93a17b20 10
8990e307 11Would be nice to have
463ee0b2
LW
12 Profiler
13 pack "(stuff)*"
85e6fe83 14 Contiguous bitfields in pack/unpack
463ee0b2
LW
15 lexperl
16 Bundled perl preprocessor
8990e307
LW
17 Use posix calls internally where possible
18 const variables
19 gettimeofday
20 bytecompiler
21 format BOTTOM
a0d0e21e 22 $obj->can("method") to probe method inheritance
8990e307 23 -iprefix.
2304df62 24 -i rename file only when successfully changed
8990e307
LW
25 All ARGV input should act like <>
26 Multiple levels of warning
2304df62
AD
27 .= shouldn't complain about undefined under -w
28 report HANDLE [formats].
85e6fe83
LW
29 tie(FILEHANDLE, ...)
30 __DATA__
a0d0e21e
LW
31 support in perlmain to rerun debugger
32 make 'r' print return value like gdb 'fini'
8990e307 33
a0d0e21e 34Possible pragmas
85e6fe83 35 debugger
a0d0e21e 36 optimize (use less memory, CPU)
463ee0b2
LW
37
38Optimizations
a0d0e21e
LW
39 constant function cache
40 switch structures
41 foreach(@array)
42 foreach (1..1000000)
43 foreach(reverse...)
463ee0b2
LW
44 Set KEEP on constant split
45 Cache eval tree (unless lexical outer scope used (mark in &compiling?))
46 rcatmaybe
47 Shrink opcode tables via multiple implementations selected in peep
a0d0e21e 48 Cache hash value? (Not a win, according to Guido)
ed6116ce 49 Optimize away @_ where possible
463ee0b2 50 sfio?
8990e307 51 "one pass" global destruction
2304df62 52 Optimize sort by { $a <=> $b }
a0d0e21e 53 Rewrite regexp parser for better integrated optimization
463ee0b2 54
a0d0e21e 55Vague possibilities
8990e307 56 ref function in list context
ed6116ce 57 Populate %SIG at startup if appropriate
463ee0b2
LW
58 sub mysplice(@, $, $, ...)
59 data prettyprint function? (or is it, as I suspect, a lib routine?)
60 Nested destructors
61 make tr/// return histogram in list context?
62 undef wantarray in void context
463ee0b2
LW
63 Loop control on do{} et al
64 Explicit switch statements
65 perl to C translator
66 multi-thread scheduling
67 built-in globbing
68 compile to real threaded code
69 structured types
8990e307 70 paren counting in tokener to queue remote expectations
85e6fe83 71 autocroak?
a0d0e21e
LW
72 Modifiable $1 et al
73 substr EXPR,OFFSET,LENGTH,STRING
74 locally capture warnings into an array
75