Commit | Line | Data |
---|---|---|
56d7751a | 1 | Bugs |
56d7751a GS |
2 | fix small memory leaks on compile-time failures |
3 | ||
6dd11d31 | 4 | Unicode support |
d1edabcf GS |
5 | finish byte <-> utf8 and localencoding <-> utf8 conversions |
6 | make substr($bytestr,0,0,$charstr) do the right conversion | |
6dd11d31 GS |
7 | add Unicode::Map equivivalent to core |
8 | add support for I/O disciplines | |
d1edabcf GS |
9 | - a way to specify disciplines when opening things: |
10 | open(F, "<:crlf :utf16", $file) | |
11 | - a way to specify disciplines for an already opened handle: | |
12 | binmode(STDIN, ":slurp :raw") | |
13 | - a way to set default disciplines for all handle constructors: | |
14 | use open IN => ":any", OUT => ":utf8", SYS => ":utf16" | |
6dd11d31 | 15 | eliminate need for "use utf8;" |
6dd11d31 | 16 | autoload utf8_heavy.pl's swash routines in swash_init() |
d1edabcf | 17 | autoload byte.pm when byte:: is seen by the parser |
560a288e | 18 | check uv_to_utf8() calls for buffer overflow |
6dd11d31 | 19 | |
d7d0d977 | 20 | Multi-threading |
6dd11d31 GS |
21 | support "use Thread;" under useithreads |
22 | add mechanism to: | |
23 | - create new interpreter in a different thread | |
24 | - exchange data between interpreters/threads | |
25 | - share namespaces between interpreters/threads | |
26 | work out consistent semantics for exit/die in threads | |
27 | support for externally created threads? | |
28 | Thread::Pool? | |
d7d0d977 MB |
29 | |
30 | Compiler | |
31 | auto-produce executable | |
32 | typed lexicals should affect B::CC::load_pad | |
33 | workarounds to help Win32 | |
d7d0d977 MB |
34 | END blocks need saving in compiled output |
35 | _AUTOLOAD prodding | |
25f62d1c MB |
36 | fix comppadlist (names in comppad_name can have fake SvCUR |
37 | from where newASSIGNOP steals the field) | |
d7d0d977 | 38 | |
5152d7c7 | 39 | Namespace cleanup |
6dd11d31 GS |
40 | CPP-space: restrict what we export from headers when !PERL_CORE |
41 | header-space: move into CORE/perl/? | |
42 | API-space: complete the list of things that constitute public api | |
5152d7c7 | 43 | |
45ebb638 JH |
44 | Configure |
45 | make configuring+building away from source directory work (VPATH et al) | |
46 | _r support | |
47 | cross-compilation configuring | |
2a40f0e3 | 48 | POSIX 1003.1 1996 Edition support |
45ebb638 JH |
49 | |
50 | Locales | |
6dd11d31 GS |
51 | deprecate traditional/legacy locales? |
52 | figure out how to support Unicode locales | |
11eeea96 | 53 | locales across packages? |
45ebb638 JH |
54 | |
55 | Regexen | |
6dd11d31 | 56 | make RE engine thread-safe |
b8c5462f | 57 | POSIX [=bar=] and [.zap.] would nice too but there's no API for them |
19e16c31 | 58 | (=bar= could be done with Unicode, though, see TR about normalization forms) |
45ebb638 JH |
59 | approximate matching |
60 | ||
19e16c31 JH |
61 | Security |
62 | use fchown, fchmod (and futimes?) internally when possible | |
63 | use fchdir(how portable?) | |
64 | ||
5152d7c7 | 65 | Reliable Signals |
54aff467 | 66 | custom opcodes |
5152d7c7 GS |
67 | alternate runops() for signal despatch |
68 | figure out how to die() in delayed sighandler | |
6dd11d31 | 69 | make Thread::Signal work under useithreads |
5152d7c7 GS |
70 | |
71 | Win32 stuff | |
6dd11d31 | 72 | sort out the spawnvp() mess for system('a','b','c') compatibility |
5152d7c7 | 73 | work out DLL versioning |
5152d7c7 GS |
74 | |
75 | Miscellaneous | |
0ff51efc | 76 | add new modules (Archive::Tar, Compress::Zlib, CPAN::FTP?) |
19e16c31 JH |
77 | sub-second sleep? (integrate Time::HiRes?) |
78 | floating point handling: nans, infinities, fp exception masks, etc | |
6dd11d31 | 79 | replace pod2html with new PodtoHtml? (requires other modules from CPAN) |
245ccdfc | 80 | automate testing with large parts of CPAN |
19e16c31 | 81 | Unicode collation? |
245ccdfc GS |
82 | |
83 | Ongoing | |
84 | keep filenames 8.3 friendly, where feasible | |
85 | upgrade to newer versions of all independently maintained modules | |
9cc29783 | 86 | comprehensive perldelta.pod |
5152d7c7 | 87 | |
d7d0d977 | 88 | Documentation |
5152d7c7 GS |
89 | describe new age patterns |
90 | update perl{guts,call,embed,xs} with additions, changes to API | |
91 | document Win32 choices | |
5152d7c7 | 92 | spot-check all new modules for completeness |
11162842 | 93 | better docs for pack()/unpack() |
245ccdfc | 94 | reorg tutorials vs. reference sections |