Multi-threading
$AUTOLOAD. Hmm.
- without USE_THREADS, change extern variable for dTHR
consistent semantics for exit/die in threads
SvREFCNT_dec(curstack) in threadstart() in Thread.xs
better support for externally created threads
Thread::Pool
- more Configure support
spot-check globals like statcache and global GVs for thread-safety
Compiler
auto-produce executable
typed lexicals should affect B::CC::load_pad
workarounds to help Win32
- $^C to track compiler/checker status
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
- symbol-space: "pl_" prefix for all global vars
- "Perl_" prefix for all functions
CPP-space: restrict what we export from headers
- stop malloc()/free() pollution unless asked
header-space: move into CORE/perl/
API-space: begin list of things that constitute public api
MULTIPLICITY support
complete work on safe recursive interpreters, C<Perl->new()>
+ revisit extra implicit arg that provides curthread/curinterp context
Configure
- installation layout changes to avoid overwriting old versions
+ make configuring+building away from source directory work (VPATH et al)
+ _r support
+ cross-compilation configuring
+ mmap support
+ POSIX 1003.1 1996 Edition support
+
+Locales
+ locales across packages
+ decimal separator (3,1415927 is Europeanese for an approximation of pi)
+
+Regexen
+ 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
alternate runops() for signal despatch
add tests for Thread::Signal
Win32 stuff
- automate maintenance of most PERL_OBJECT code
get PERL_OBJECT building under gcc
+ get PERL_OBJECT building on non-win32
+ automate generation of 'protected' prototypes for CPerlObj
rename new headers to be consistent with the rest
sort out the spawnvp() mess
work out DLL versioning
- put perlobject in $ARCHNAME so it can coexist with rest
- get PERL_OBJECT building on non-win32?
style-check
Miscellaneous
rename and alter ISA.pm
magic_setisa should be made to update %FIELDS [???]
- be generous in accepting foreign line terminations
- make filenames 8.3 friendly, where feasible
- upgrade to newer versions of all independently maintained modules
- add new modules (Data-Dumper, Storable?)
- test it with large parts of CPAN
+ add new modules (Archive::Tar, Compress::Zlib, CPAN::FTP?)
fix pod2html to generate relative URLs
+ automate testing with large parts of CPAN
-Documentation
+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
- rework INSTALL to reflect changes in installation structure
spot-check all new modules for completeness
better docs for pack()/unpack()
- add perlport.pod
+ reorg tutorials vs. reference sections