1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
Bugs
perl_run() can longjmp out
fix small memory leaks on compile-time failures
Unicode support
finish byte <-> utf8 and localencoding <-> utf8 conversions
make "$bytestr$charstr" do the right conversion
add Unicode::Map equivivalent to core
add support for I/O disciplines
- open(F, "<!crlf!utf16", $file)
- binmode(STDIN, "<!crlf!utf16")?
- a way to set the "system" discipline (binmode("!crlf!utf16") maybe?)
- nice IO::Filter module to push/pop disciplines
eliminate need for "use utf8;"
support C<print v1.2.3>
make C<v123> mean C<chr(123)> (if !exists(&v123))
autoload utf8_heavy.pl's swash routines in swash_init()
Multi-threading
support "use Thread;" under useithreads
add mechanism to:
- create new interpreter in a different thread
- exchange data between interpreters/threads
- share namespaces between interpreters/threads
work out consistent semantics for exit/die in threads
support for externally created threads?
Thread::Pool?
Compiler
auto-produce executable
typed lexicals should affect B::CC::load_pad
workarounds to help Win32
END blocks need saving in compiled output
_AUTOLOAD prodding
fix comppadlist (names in comppad_name can have fake SvCUR
from where newASSIGNOP steals the field)
Namespace cleanup
CPP-space: restrict what we export from headers when !PERL_CORE
header-space: move into CORE/perl/?
API-space: complete the list of things that constitute public api
Configure
make configuring+building away from source directory work (VPATH et al)
_r support
cross-compilation configuring
POSIX 1003.1 1996 Edition support
Locales
deprecate traditional/legacy locales?
figure out how to support Unicode locales
locales across packages?
Regexen
make RE engine thread-safe
POSIX [=bar=] and [.zap.] would nice too but there's no API for them
(=bar= could be done with Unicode, though)
approximate matching
Reliable Signals
custom opcodes
alternate runops() for signal despatch
figure out how to die() in delayed sighandler
make Thread::Signal work under useithreads
Win32 stuff
sort out the spawnvp() mess for system('a','b','c') compatibility
work out DLL versioning
Miscellaneous
add new modules (Archive::Tar, Compress::Zlib, CPAN::FTP?)
replace pod2html with new PodtoHtml? (requires other modules from CPAN)
automate testing with large parts of CPAN
Ongoing
keep filenames 8.3 friendly, where feasible
upgrade to newer versions of all independently maintained modules
comprehensive perldelta.pod
Documentation
describe new age patterns
update perl{guts,call,embed,xs} with additions, changes to API
document Win32 choices
spot-check all new modules for completeness
better docs for pack()/unpack()
reorg tutorials vs. reference sections
|