taint.c fix for VMS
[p5sagit/p5-mst-13.2.git] / Todo
CommitLineData
8990e307 1Tie Modules
2 VecArray Implement array using vec()
3 SubstrArray Implement array using substr()
4 VirtualArray Implement array using a file
5 ShiftSplice Defines shift et al in terms of splice method
93a17b20 6
8990e307 7Would be nice to have
463ee0b2 8 pack "(stuff)*"
85e6fe83 9 Contiguous bitfields in pack/unpack
463ee0b2 10 lexperl
11 Bundled perl preprocessor
8990e307 12 Use posix calls internally where possible
8990e307 13 gettimeofday
8990e307 14 format BOTTOM
8990e307 15 -iprefix.
2304df62 16 -i rename file only when successfully changed
8990e307 17 All ARGV input should act like <>
2304df62 18 report HANDLE [formats].
a0d0e21e 19 support in perlmain to rerun debugger
aa00cc68 20 regression tests using __DIE__ hook
21 reference to compiled regexp
22 lexically scoped functions: my sub foo { ... }
23 lvalue functions
7b8d334a 24 regression/sanity tests for suidperl
6ee623d5 25 Full 64 bit support (i.e. "long long")
91f9d9ae 26 Generalise Errno way of extracting cpp symbols and use that in Errno and Fcntl (ExtUtils::CppSymbol?)
8990e307 27
a0d0e21e 28Possible pragmas
85e6fe83 29 debugger
a0d0e21e 30 optimize (use less memory, CPU)
463ee0b2 31
32Optimizations
a0d0e21e 33 constant function cache
34 switch structures
4633a7c4 35 eval qw() at compile time
a0d0e21e 36 foreach(reverse...)
463ee0b2 37 Set KEEP on constant split
38 Cache eval tree (unless lexical outer scope used (mark in &compiling?))
39 rcatmaybe
40 Shrink opcode tables via multiple implementations selected in peep
a0d0e21e 41 Cache hash value? (Not a win, according to Guido)
ed6116ce 42 Optimize away @_ where possible
8990e307 43 "one pass" global destruction
2304df62 44 Optimize sort by { $a <=> $b }
a0d0e21e 45 Rewrite regexp parser for better integrated optimization
aa00cc68 46 LRU cache of regexp: foreach $pat (@pats) { foo() if /$pat/ }
463ee0b2 47
a0d0e21e 48Vague possibilities
8990e307 49 ref function in list context
463ee0b2 50 make tr/// return histogram in list context?
463ee0b2 51 Loop control on do{} et al
52 Explicit switch statements
463ee0b2 53 built-in globbing
54 compile to real threaded code
55 structured types
85e6fe83 56 autocroak?
a0d0e21e 57 Modifiable $1 et al
a0d0e21e 58