adamc@1020: ======== adamc@1020: Next adamc@1020: ======== adamc@1020: adamc@1020: - Bug fixes adamc@1020: - Optimization improvements adamc@1020: - Removed a restriction that prevented some RPCs from compiling adamc@1020: - New extra demo: conference1 adamc@1020: adamc@999: ======== adamc@999: 20091012 adamc@999: ======== adamc@999: adamc@999: - Small bug fixes affecting MySQL and SQLite adamc@999: adamc@988: ======== adamc@997: 20091009 adamc@988: ======== adamc@988: adamc@988: - Bug fixes adamc@988: - Improvement to choice of line number to cite in record unification error adamc@988: messages adamc@994: - SELECT DISTINCT adamc@996: - New extra demos: orm1 and versioned1 adamc@988: adamc@985: ======== adamc@985: 20090926 adamc@985: ======== adamc@985: adamc@985: - Reimplemented client-side code generation to use an interpreter, rather than adamc@985: compilation to JavaScript; this avoids common browser flaws: lack of adamc@985: optimization of tail calls and occasional bugs in closure handling. adamc@985: - Bug fixes adamc@985: adamc@968: ======== adamc@968: 20090919 adamc@968: ======== adamc@968: adamc@968: - Bug fixes adamc@968: - Optimization improvements adamc@968: - Expanded grid demo in demo/more: optional columns, sorting, filtering, adamc@968: paging, selecting rows, aggregate row adamc@968: adamc@929: ======== adamc@929: 20090912 adamc@929: ======== adamc@929: adamc@929: - Bug fixes adamc@929: - Optimization improvements adamc@929: - New set of extra demos in demo/more adamc@929: adamc@914: ======== adamc@914: 20090825 adamc@914: ======== adamc@914: adamc@914: - Many bug fixes adamc@914: - Remote procedure calls must be marked with the new 'rpc' function. adamc@914: - Some tweaks to enable usage on OSX (suggested by Paul Snively) adamc@914: adamc@897: ======== adamc@897: 20090718 adamc@897: ======== adamc@897: adamc@897: - New application protocols: CGI and FastCGI adamc@897: - New database backends: MySQL and SQLite adamc@897: - More JavaScript events added to tags in standard library adamc@897: - New manual section on using the foreign function interface (FFI) adamc@897: adamc@852: ======== adamc@852: 20090623 adamc@852: ======== adamc@852: adamc@852: - Many bug fixes adamc@852: - Mutually-recursive datatypes adamc@852: - SML-style pattern-matching syntax for "fun", "fn", and local "val" adamc@852: - Backwards-incompatible change to syntax of formal constructor parameters to adamc@852: value-level functions, to support the previous change adamc@852: - Path map support inspired by SML/NJ CM and MLton ML Basis adamc@852: - Start of some new standard library modules adamc@852: - Some improvements to JavaScript runtime, including better error handling adamc@852: adamc@716: ======== adamc@790: 20090505 adamc@716: ======== adamc@716: adamc@716: - Reimplement constructor class resolution to be more general and Prolog-like adamc@716: - SQL table constraints adamc@770: - URLs adamc@736: - Client-side error handling callbacks adamc@736: - CSS adamc@736: - Signing cookie values cryptographically to thwart cross site request forgery adamc@744: - Blobs and HTTP file upload adamc@752: - SQL outer joins adamc@755: - SQL views adamc@756: - Subforms adamc@768: - C and JavaScript FFI adamc@768: - Path rewriting adamc@716: adamc@702: ======== adamc@702: 20090405 adamc@702: ======== adamc@702: adamc@702: - Asynchronous message-passing and the associated server-side client adamc@702: bookkeeping adamc@702: - Reimplement parts of the client-side runtime system to avoid space leaks adamc@702: - spawn and sleep adamc@702: - Expand the constructor class instance rule format adamc@702: adamc@663: ======== adamc@663: 20090312 adamc@663: ======== adamc@663: adamc@663: - Replace type-level "fold" with "map" adamc@663: - Replace expression-level "fold" with folders, defined in Top and adamc@663: supported by some special compiler inference adamc@663: - Replace guarded constructors with guarded types, introduced only by adamc@663: guarded expression abstraction, and with a new explicit application form adamc@663: - Kind polymorphism adamc@663: - Generalize type classes to constructor classes adamc@663: - Initial compilation of client-side code to JavaScript adamc@663: - Initial support for mixed client- and server-side programming (i.e., "AJAX") adamc@665: - src/coq: Coq formalization of a core Ur-like calculus adamc@663: adamc@506: ======== adamc@561: 20081209 adamc@506: ======== adamc@506: adamc@506: - Optimization: Fusing page writes with calls to recursive functions adamc@523: - Optimization of bottleneck compiler phases adamc@561: - Reference manual adamc@561: - SQL arithmetic operators adamc@506: adamc@504: ======== adamc@504: 20081120 adamc@504: ======== adamc@504: adamc@504: - Fix bug that sometimes led to omission of initial "" in pages adamc@504: - Take advantage of nested functions in some demos adamc@504: - "profile" option that may appear in .urp files, to enable gprof profiling adamc@663: - "-guided-demo" option that works like "-demo" but uses less screen space for adamc@663: prose adamc@504: adamc@467: ======== adamc@497: 20081118 adamc@467: ======== adamc@467: adamc@467: - Nested function definitions adamc@467: - Primitive "time" type adamc@467: - Nullable SQL columns (via "option") adamc@467: - Cookies adamc@663: - Compiler: Specialization of functions to known arguments (especially of adamc@663: function type) adamc@467: adamc@435: ======== adamc@435: 20081028 adamc@435: ======== adamc@435: adamc@435: - Add GCCARGS configure option adamc@435: adamc@433: ======== adamc@433: 20081027 adamc@433: ======== adamc@433: adamc@433: - On missing inputs, print an error message, but don't exit the web server. adamc@434: - Remove need for "() <-" notation. adamc@433: adamc@433: ======== adamc@433: 20081026 adamc@433: ======== adamc@433: adamc@433: - Change 'sed' call to work on OSX. adamc@433: - Avoid including or linking libpq files on apps that don't use SQL.