ab28e0090c0290570749498f6809925aee93a43d
[p5sagit/p5-mst-13.2.git] / Todo
1 Tie 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
6
7 Would be nice to have
8         pack "(stuff)*"
9         Contiguous bitfields in pack/unpack
10         lexperl
11         Bundled perl preprocessor
12         Use posix calls internally where possible
13         gettimeofday
14         format BOTTOM
15         -iprefix.
16         -i rename file only when successfully changed
17         All ARGV input should act like <>
18         report HANDLE [formats].
19         support in perlmain to rerun debugger
20         regression tests using __DIE__ hook
21         reference to compiled regexp
22         lexically scoped functions: my sub foo { ... }
23         lvalue functions
24         Full 64 bit support
25
26 Possible pragmas
27         debugger
28         optimize (use less memory, CPU)
29
30 Optimizations
31         constant function cache
32         switch structures
33         eval qw() at compile time
34         foreach (1..1000000)
35         foreach(reverse...)
36         Set KEEP on constant split
37         Cache eval tree (unless lexical outer scope used (mark in &compiling?))
38         rcatmaybe
39         Shrink opcode tables via multiple implementations selected in peep
40         Cache hash value?  (Not a win, according to Guido)
41         Optimize away @_ where possible
42         "one pass" global destruction
43         Optimize sort by { $a <=> $b }
44         Rewrite regexp parser for better integrated optimization
45         LRU cache of regexp: foreach $pat (@pats) { foo() if /$pat/ }
46
47 Vague possibilities
48         ref function in list context
49         data prettyprint function?  (or is it, as I suspect, a lib routine?)
50         make tr/// return histogram in list context?
51         Loop control on do{} et al
52         Explicit switch statements
53         built-in globbing
54         compile to real threaded code
55         structured types
56         autocroak?
57         Modifiable $1 et al
58         substr EXPR,OFFSET,LENGTH,STRING
59