This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl 5.000
[perl5.git] / Todo
1 Modules needed
2         X/Motif/Tk etc.
3         Curses
4
5 Tie 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
10
11 Would be nice to have
12         Profiler
13         pack "(stuff)*"
14         Contiguous bitfields in pack/unpack
15         lexperl
16         Bundled perl preprocessor
17         Use posix calls internally where possible
18         const variables
19         gettimeofday
20         bytecompiler
21         format BOTTOM
22         $obj->can("method") to probe method inheritance
23         -iprefix.
24         -i rename file only when successfully changed
25         All ARGV input should act like <>
26         Multiple levels of warning
27         .= shouldn't complain about undefined under -w
28         report HANDLE [formats].
29         tie(FILEHANDLE, ...)
30         __DATA__
31         support in perlmain to rerun debugger
32         make 'r' print return value like gdb 'fini'
33
34 Possible pragmas
35         debugger
36         optimize (use less memory, CPU)
37
38 Optimizations
39         constant function cache
40         switch structures
41         foreach(@array)
42         foreach (1..1000000)
43         foreach(reverse...)
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
48         Cache hash value?  (Not a win, according to Guido)
49         Optimize away @_ where possible
50         sfio?
51         "one pass" global destruction
52         Optimize sort by { $a <=> $b }
53         Rewrite regexp parser for better integrated optimization
54
55 Vague possibilities
56         ref function in list context
57         Populate %SIG at startup if appropriate
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
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
70         paren counting in tokener to queue remote expectations
71         autocroak?
72         Modifiable $1 et al
73         substr EXPR,OFFSET,LENGTH,STRING
74         locally capture warnings into an array
75