annotate CHANGELOG @ 1287:5137b0537c92

Polymorphic variants
author Adam Chlipala <adam@chlipala.net>
date Thu, 19 Aug 2010 17:28:52 -0400
parents 7d0254d15b21
children 41484478a32d
rev   line source
adam@1287 1 ========
adam@1287 2 Next
adam@1287 3 ========
adam@1287 4
adam@1287 5 - Polymorphic variants (see Basis.variant)
adam@1287 6 - (* *) and <!-- --> comments in XML
adam@1287 7
adamc@1259 8 ========
adamc@1273 9 20100603
adamc@1259 10 ========
adamc@1259 11
adamc@1259 12 - Changed URL escaping convention, to avoid confusing proxies.
adamc@1259 13 The new convention is like the normal one, but with '.' instead of '%'.
adamc@1261 14 - Changed JavaScript compilation of recursive functions to use thunks.
adamc@1261 15 This change avoids most costs of functions not referenced on particular
adamc@1261 16 pages, reducing loading time dramatically.
adamc@1273 17 - Support HTTP caching of application-specific JavaScript code
adamc@1273 18 - Bug fixes
adamc@1259 19
adamc@1255 20 ========
adamc@1255 21 20100506
adamc@1255 22 ========
adamc@1255 23
adamc@1255 24 - New experimental checker for information flow and access control policies
adamc@1255 25 (See demo at http://www.impredicative.com/ur/scdv/)
adamc@1255 26
adamc@1197 27 ========
adamc@1197 28 20100401
adamc@1197 29 ========
adamc@1197 30
adamc@1197 31 - Subquery expressions and FROM items
adamc@1197 32 - Low-level support for SELECT with no FROM clause
adamc@1197 33 - Fixes for DBMS-portability of relational operators
adamc@1197 34
adamc@1183 35 ========
adamc@1190 36 20100325
adamc@1183 37 ========
adamc@1183 38
adamc@1188 39 - -verbose flag
adamc@1188 40 - COUNT(col) SQL aggregate function
adamc@1188 41 - 'benignEffectful' and 'safeGet' .urp commands
adamc@1188 42 - Remove Basis.getRequestHeader, since it can be used to circumvent cookie
adamc@1188 43 security
adamc@1190 44 - Rename Top.foldR*X to map*X
adamc@1188 45 - Bug fixes and optimization improvements
adamc@1183 46
adamc@1166 47 ========
adamc@1166 48 20100213
adamc@1166 49 ========
adamc@1166 50
adamc@1166 51 - Improvements to 'configure'; should now fail if any uncommon but required
adamc@1166 52 package is missing
adamc@1166 53 - Other fixes to configuration, build system, and C code portability
adamc@1166 54 - sigfile .urp directive & -sigfile command-line option
adamc@1166 55 - .urp files with no directives no longer need to begin with blank lines.
adamc@1166 56 - Other bug fixes
adamc@1166 57
adamc@1137 58 ========
adamc@1137 59 20100130
adamc@1137 60 ========
adamc@1137 61
adamc@1137 62 - Conversion to an Automake-based build system, for greater portability in
adamc@1137 63 building shared libraries
adamc@1137 64 - -path and -root command-line flags
adamc@1137 65 - Exported page handling functions (i.e., those page-generating functions
adamc@1137 66 appearing in the main module's signature) may now take any number of
adamc@1137 67 arguments, including 0.
adamc@1137 68
adamc@1123 69 ========
adamc@1123 70 20100112
adamc@1123 71 ========
adamc@1123 72
adamc@1123 73 - Basis.serialized type family, for storing more types in the database
adamc@1123 74 - Basis.textBlob, for building blobs from strings
adamc@1123 75 - Basis.debug function, for server-side debug printing
adamc@1123 76 - Bug fixes & optimization improvements
adamc@1123 77
adamc@1065 78 ========
adamc@1103 79 20091230
adamc@1065 80 ========
adamc@1065 81
adamc@1093 82 - Automatic insertion of implicit arguments in more positions
adamc@1065 83 - Reifying expressions as URLs and redirecting to them explicitly
adamc@1070 84 - More syntactic sugar for SQL
adamc@1070 85 - Typing of SQL queries no longer exposes which tables were used in joins but
adamc@1070 86 had none of their fields projected
adamc@1075 87 - Tasks
adamc@1095 88 - Dynamic linking of the runtime system
adamc@1077 89 - Optimization improvements
adamc@1103 90 - Bug fixes
adamc@1065 91
adamc@1050 92 ========
adamc@1056 93 20091203
adamc@1050 94 ========
adamc@1050 95
adamc@1050 96 - Extended cookie interface (breaks backward compatibility for 'setCookie')
adamc@1050 97 - Bug fixes
adamc@1056 98 - Extended UTF-8 characters in HTML
adamc@1050 99
adamc@1043 100 ========
adamc@1043 101 20091124
adamc@1043 102 ========
adamc@1043 103
adamc@1043 104 - Improved Internet Explorer compatibility
adamc@1043 105
adamc@1020 106 ========
adamc@1033 107 20091108
adamc@1020 108 ========
adamc@1020 109
adamc@1020 110 - Bug fixes
adamc@1020 111 - Optimization improvements
adamc@1021 112 - Removed a restriction that prevented some RPCs and calls to sleep or recv
adamc@1021 113 from compiling
adamc@1020 114
adamc@999 115 ========
adamc@999 116 20091012
adamc@999 117 ========
adamc@999 118
adamc@999 119 - Small bug fixes affecting MySQL and SQLite
adamc@999 120
adamc@988 121 ========
adamc@997 122 20091009
adamc@988 123 ========
adamc@988 124
adamc@988 125 - Bug fixes
adamc@988 126 - Improvement to choice of line number to cite in record unification error
adamc@988 127 messages
adamc@994 128 - SELECT DISTINCT
adamc@996 129 - New extra demos: orm1 and versioned1
adamc@988 130
adamc@985 131 ========
adamc@985 132 20090926
adamc@985 133 ========
adamc@985 134
adamc@985 135 - Reimplemented client-side code generation to use an interpreter, rather than
adamc@985 136 compilation to JavaScript; this avoids common browser flaws: lack of
adamc@985 137 optimization of tail calls and occasional bugs in closure handling.
adamc@985 138 - Bug fixes
adamc@985 139
adamc@968 140 ========
adamc@968 141 20090919
adamc@968 142 ========
adamc@968 143
adamc@968 144 - Bug fixes
adamc@968 145 - Optimization improvements
adamc@968 146 - Expanded grid demo in demo/more: optional columns, sorting, filtering,
adamc@968 147 paging, selecting rows, aggregate row
adamc@968 148
adamc@929 149 ========
adamc@929 150 20090912
adamc@929 151 ========
adamc@929 152
adamc@929 153 - Bug fixes
adamc@929 154 - Optimization improvements
adamc@929 155 - New set of extra demos in demo/more
adamc@929 156
adamc@914 157 ========
adamc@914 158 20090825
adamc@914 159 ========
adamc@914 160
adamc@914 161 - Many bug fixes
adamc@914 162 - Remote procedure calls must be marked with the new 'rpc' function.
adamc@914 163 - Some tweaks to enable usage on OSX (suggested by Paul Snively)
adamc@914 164
adamc@897 165 ========
adamc@897 166 20090718
adamc@897 167 ========
adamc@897 168
adamc@897 169 - New application protocols: CGI and FastCGI
adamc@897 170 - New database backends: MySQL and SQLite
adamc@897 171 - More JavaScript events added to tags in standard library
adamc@897 172 - New manual section on using the foreign function interface (FFI)
adamc@897 173
adamc@852 174 ========
adamc@852 175 20090623
adamc@852 176 ========
adamc@852 177
adamc@852 178 - Many bug fixes
adamc@852 179 - Mutually-recursive datatypes
adamc@852 180 - SML-style pattern-matching syntax for "fun", "fn", and local "val"
adamc@852 181 - Backwards-incompatible change to syntax of formal constructor parameters to
adamc@852 182 value-level functions, to support the previous change
adamc@852 183 - Path map support inspired by SML/NJ CM and MLton ML Basis
adamc@852 184 - Start of some new standard library modules
adamc@852 185 - Some improvements to JavaScript runtime, including better error handling
adamc@852 186
adamc@716 187 ========
adamc@790 188 20090505
adamc@716 189 ========
adamc@716 190
adamc@716 191 - Reimplement constructor class resolution to be more general and Prolog-like
adamc@716 192 - SQL table constraints
adamc@770 193 - URLs
adamc@736 194 - Client-side error handling callbacks
adamc@736 195 - CSS
adamc@736 196 - Signing cookie values cryptographically to thwart cross site request forgery
adamc@744 197 - Blobs and HTTP file upload
adamc@752 198 - SQL outer joins
adamc@755 199 - SQL views
adamc@756 200 - Subforms
adamc@768 201 - C and JavaScript FFI
adamc@768 202 - Path rewriting
adamc@716 203
adamc@702 204 ========
adamc@702 205 20090405
adamc@702 206 ========
adamc@702 207
adamc@702 208 - Asynchronous message-passing and the associated server-side client
adamc@702 209 bookkeeping
adamc@702 210 - Reimplement parts of the client-side runtime system to avoid space leaks
adamc@702 211 - spawn and sleep
adamc@702 212 - Expand the constructor class instance rule format
adamc@702 213
adamc@663 214 ========
adamc@663 215 20090312
adamc@663 216 ========
adamc@663 217
adamc@663 218 - Replace type-level "fold" with "map"
adamc@663 219 - Replace expression-level "fold" with folders, defined in Top and
adamc@663 220 supported by some special compiler inference
adamc@663 221 - Replace guarded constructors with guarded types, introduced only by
adamc@663 222 guarded expression abstraction, and with a new explicit application form
adamc@663 223 - Kind polymorphism
adamc@663 224 - Generalize type classes to constructor classes
adamc@663 225 - Initial compilation of client-side code to JavaScript
adamc@663 226 - Initial support for mixed client- and server-side programming (i.e., "AJAX")
adamc@665 227 - src/coq: Coq formalization of a core Ur-like calculus
adamc@663 228
adamc@506 229 ========
adamc@561 230 20081209
adamc@506 231 ========
adamc@506 232
adamc@506 233 - Optimization: Fusing page writes with calls to recursive functions
adamc@523 234 - Optimization of bottleneck compiler phases
adamc@561 235 - Reference manual
adamc@561 236 - SQL arithmetic operators
adamc@506 237
adamc@504 238 ========
adamc@504 239 20081120
adamc@504 240 ========
adamc@504 241
adamc@504 242 - Fix bug that sometimes led to omission of initial "<html>" in pages
adamc@504 243 - Take advantage of nested functions in some demos
adamc@504 244 - "profile" option that may appear in .urp files, to enable gprof profiling
adamc@663 245 - "-guided-demo" option that works like "-demo" but uses less screen space for
adamc@663 246 prose
adamc@504 247
adamc@467 248 ========
adamc@497 249 20081118
adamc@467 250 ========
adamc@467 251
adamc@467 252 - Nested function definitions
adamc@467 253 - Primitive "time" type
adamc@467 254 - Nullable SQL columns (via "option")
adamc@467 255 - Cookies
adamc@663 256 - Compiler: Specialization of functions to known arguments (especially of
adamc@663 257 function type)
adamc@467 258
adamc@435 259 ========
adamc@435 260 20081028
adamc@435 261 ========
adamc@435 262
adamc@435 263 - Add GCCARGS configure option
adamc@435 264
adamc@433 265 ========
adamc@433 266 20081027
adamc@433 267 ========
adamc@433 268
adamc@433 269 - On missing inputs, print an error message, but don't exit the web server.
adamc@434 270 - Remove need for "() <-" notation.
adamc@433 271
adamc@433 272 ========
adamc@433 273 20081026
adamc@433 274 ========
adamc@433 275
adamc@433 276 - Change 'sed' call to work on OSX.
adamc@433 277 - Avoid including or linking libpq files on apps that don't use SQL.