Guido van Rossum | 5552eb7 | 1994-08-05 15:51:00 +0000 | [diff] [blame] | 1 | (-) write a script and add a "Make" rule (perhaps) that changes |
| 2 | #!/usr/local/bin/python to something else in all scripts around. |
| 3 | |
Guido van Rossum | 433c8ad | 1994-08-01 12:07:07 +0000 | [diff] [blame] | 4 | (*) int*int overflow check shouldn't doubles on alpha (cf. John Tromp's mail) |
| 5 | |
| 6 | (*) add signal.alarm() |
| 7 | |
| 8 | (*) when abort()ing because of unexpected exception, print a message |
| 9 | first (Jack) |
| 10 | |
| 11 | ---------------------------------------------------------------------- |
| 12 | (from BUGS1.0.1) |
| 13 | ---------------------------------------------------------------------- |
| 14 | document addpack, urllib, ... |
| 15 | |
| 16 | (*) import.c from JaapV |
| 17 | |
| 18 | document os.exec* |
| 19 | |
| 20 | name sunaudiodevmodule.c is too long |
| 21 | |
| 22 | (*) play with / include SUIT interface |
| 23 | |
| 24 | make regsub.[g]sub() optionally case insensitive |
| 25 | |
| 26 | handle printing of errors in lines containing multiline strings |
| 27 | |
| 28 | ====================================================================== |
| 29 | |
| 30 | (*) ought to use features from autoconf 1.8 |
| 31 | |
| 32 | (*) errors in __repr__() are handled wrong when called from format |
| 33 | |
| 34 | - long(0x80000000) has wrong value! |
| 35 | |
| 36 | - hex(0x80000000) shouldn't have sign (?) |
| 37 | |
| 38 | (*) need way to set buffering at file open time |
| 39 | |
| 40 | (*) need way to force stdout unbuffered |
| 41 | |
| 42 | - document new modules (builtin as well as Lib) |
| 43 | |
| 44 | - restart CVS tree |
| 45 | |
| 46 | (?) build shared libs for SunOS 4.1.3 |
| 47 | |
| 48 | - Mac X... code resources as shared libs? |
| 49 | |
| 50 | (*) X patches from Adrian Phillips |
| 51 | |
| 52 | (*) Jaap's freeze script |
| 53 | |
| 54 | Incorporate with contrib status: |
| 55 | - additions to glmodule by rg3h |
| 56 | (*) Jaap's posixfile module (with locking) |
| 57 | (*) pthreads interface |
| 58 | |
| 59 | Later: |
| 60 | - put the offending object in IOError and posix.error |
| 61 | - make module marshal work with user-defined file-like objects |
| 62 | - built-in help? |
| 63 | - hierarchical module names? |
| 64 | |
| 65 | Big plans: |
| 66 | |
| 67 | - allow separate interpreters (a la Xt's Applocation Contexts, and Tcl) |
| 68 | - great renaming |
| 69 | - complete reflexive nature of the language, e.g. have interfaces et |
| 70 | create any kind of object |
| 71 | (*) GUI interface a la Tk |
| 72 | |
| 73 | |
| 74 | ====================================================================== |
| 75 | For FAQ: |
| 76 | |
| 77 | (*) why don't strings (numbers, tuples, ...) have methods / attributes |
| 78 | |
| 79 | (*) why are strings / numbers / tuples immutable |
| 80 | |
| 81 | why don't list methods return self |
| 82 | |
| 83 | ====================================================================== |
| 84 | PM/TODO list after Egypt (from mailing list): |
| 85 | |
| 86 | make .pyc files executable (how?) |
| 87 | |
| 88 | thread status and improvements (lock stmt; signal/wait) |
| 89 | |
| 90 | optional optimizations |
| 91 | |
| 92 | pthread migration |
| 93 | |
| 94 | (*) test/incorporate new SUIT |
| 95 | |
| 96 | shorten excessively long filenames (sunaudiodevmodule.c) |
| 97 | |
| 98 | (*) default parameter values |
| 99 | |
| 100 | multiple interpreter objects |
| 101 | |
| 102 | (*) import shlib bug (irix5.2) (reload, dlclose) |
| 103 | |
| 104 | (*) addpack.py |
| 105 | |
| 106 | (*) newmodule.c (or other hacks to create new modules, classes, functions |
| 107 | etc. from their components) |
| 108 | |
| 109 | persistency |
| 110 | |
| 111 | new Dbhash.py, dbhash library |
| 112 | |
| 113 | reraise; or raise 3rd param for traceback? |
| 114 | -or- except type, value, tbackobjec |
| 115 | |
| 116 | redesign exceptions from scratch? |
| 117 | |
| 118 | dbm objects miss items(), values() methods |
| 119 | |
| 120 | (*) jar's new profile |
| 121 | |
| 122 | answer q about coerce() |
| 123 | |
| 124 | (*) reconsider pass [expression] ??? -or- don't print non-interactive |
| 125 | exprs -or- option to suppress printing non-None expressions |
| 126 | |
| 127 | (*) should be able to hash code objs (add fns to convert between lists/tuples) |
| 128 | |
| 129 | describe() ? |
| 130 | |
| 131 | distribute demo2 with Holmes |
| 132 | |
| 133 | (*) re-reply on try-continue |
| 134 | |
| 135 | classes are too slow |
| 136 | |
| 137 | add += etc. ? |
| 138 | |
| 139 | optimize tuple = tuple |
| 140 | |
| 141 | allow (a, b) = [1, 2] and [1, 2] = (1, 2) ??? |
| 142 | |
| 143 | wustl is not un the northwest of the US? |
| 144 | |
| 145 | (*) MPW doesn't like \000 in string literals? |
| 146 | |
| 147 | MPW patches, unixemu patches |
| 148 | |
| 149 | prepare tar files with |
| 150 | - mac think projects (*) |
| 151 | - mpw makefiles |
| 152 | - dos makefiles |
| 153 | - mac unixemu lib |
| 154 | |
| 155 | explain rules about == vs. 'is' for strings (* by others on the list) |
| 156 | |
| 157 | (*) bug in ceval.c DELETE_FAST |
| 158 | |
| 159 | (*) possible optimize LOAD_NAME -> LOAD_GLOBAL |
| 160 | |
| 161 | get dos python with suit (inesc) |
| 162 | |
| 163 | (*) docs for try/continue are wrong and unclear |
| 164 | |
| 165 | better hashing fn? |
| 166 | |
| 167 | (*) add improved nested indent to python-mode.el |
| 168 | |
| 169 | (*) add a section to tutorial on "new" features |
| 170 | |
| 171 | rewrite section on formatting in tutorial |
| 172 | |
| 173 | ====================================================================== |
| 174 | TODO-TOO list: |
| 175 | |
| 176 | test for overflow when converting python long to float |
| 177 | |
| 178 | lift restrictions on tuple or list in many cases |
| 179 | |
| 180 | (*) allow long ints with sensible values for getargs "i" |
| 181 | |
| 182 | (*) multiline string literals |
| 183 | |
| 184 | what to do about 64-bit int literals (on 64-bit machines) in .pyc |
| 185 | files? (Currently truncated w/o warning!) |
| 186 | |
| 187 | DOCUMENTATION UPDATE! E.g. ref.tex doesn't describe: |
| 188 | (*) - line joins w/o backslash |
| 189 | (*) - double-quoted strings; \" in strings |
| 190 | - more? |
| 191 | Should double-check all changes with docs! |
| 192 | |
| 193 | (?) Interrupting output still sometimes doesn't call clearerr() properly |
| 194 | |
| 195 | sometimes ghost errors when interrupting during debugging in |
| 196 | 'continue' mode? |
| 197 | |
| 198 | typing a comment to a primary prompt shouldn't issue a secondary prompt |
| 199 | |
| 200 | readline: add hooks to recognize Python syntax and to expand Python |
| 201 | commands and names |
| 202 | |
| 203 | should have absolute pathnames in function objects |
| 204 | |
| 205 | in general check that all the exceptions are modernized and that the |
| 206 | messages aren't giving the same error twice (e.g., stdwinmodule.c!) |
| 207 | |
| 208 | - check read/write allowed for file objects |
| 209 | |
| 210 | - introduce macros to set/inspect errno for syscalls, to support things |
| 211 | like getoserr() |
| 212 | |
| 213 | ====================================================================== |
| 214 | DOS/Windows Python |
| 215 | |
| 216 | (???) command line options? |
| 217 | |
| 218 | (*) os.system() |
| 219 | |
| 220 | (???) interrupts |
| 221 | |
| 222 | (???) wrap |
| 223 | |
| 224 | (*) pc module |
| 225 | |
| 226 | (*) dospath.py |
| 227 | |
| 228 | DOS/Windows Python -- TO DO |
| 229 | |
| 230 | (*) memtest from config.h |
| 231 | |
| 232 | (*) copy sources back |
| 233 | |
| 234 | (*) build DOS version |
| 235 | |
| 236 | (*) distribute 386 version |
| 237 | |
| 238 | (*) Mac 1.0.1 release? |
| 239 | ====================================================================== |