summaryrefslogtreecommitdiff
path: root/Todo-5.005
blob: a8831b137076ed8492aa45be278abe4d1a971559 (plain)
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
Multi-threading
    $AUTOLOAD. Hmm.
    consistent semantics for exit/die in threads
    SvREFCNT_dec(curstack) in threadstart() in Thread.xs
    better support for externally created threads
    Thread::Pool
    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
    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
    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
    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 [:foo:] character classes
	([=bar=] and [.zap.] would nice too but there's no API for them)
   approximate matching

Reliable Signals
    alternate runops() for signal despatch
    figure out how to die() in delayed sighandler
    add tests for Thread::Signal

Win32 stuff
    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
    style-check

Miscellaneous
    rename and alter ISA.pm
    magic_setisa should be made to update %FIELDS [???]
    add new modules (Archive::Tar, Compress::Zlib, CPAN::FTP?)
    fix pod2html to generate relative URLs
    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