Activity for aphasia

  • Tom 7 Tom 7 committed [r312] on Code

    Add timestamp editing, since I love to lose 1,000 points

  • Tom 7 Tom 7 committed [r311] on Code

    Add basic anti-spam code for old posts

  • Tom 7 Tom 7 committed [r310] on Code

    Add support for new image type and builtins; hex constants in lexer; fix tests to use new database syntax; upgrade mlton

  • Tom 7 Tom 7 committed [r309] on Code

    Add image type, minimal functions for current need

  • Tom 7 Tom 7 committed [r308] on Code

    Update to c++20. Add image internal type (not yet used).

  • Tom 7 Tom 7 committed [r307]

    From answer.aa, return valid xssi header and json so that client doesn't throw an internal exception before discarding the result

  • Tom 7 Tom 7 committed [r306]

    sml-lib should be in ../tom7misc, not installed separately

  • Tom 7 Tom 7 committed [r305]

    cc-lib and escapex should be in ../tom7misc, not installed separately

  • Tom 7 Tom 7 committed [r304]

    Fix pretty bad bug with nul bytes in strings being treated as ending the string (e.g. as an argument to base64). There are more instances to fix, but these were causing data loss in escape (solution uploading), so prioritize that

  • Tom 7 Tom 7 committed [r303]

    ... and, retire the aphasia1 database syntax

  • Tom 7 Tom 7 committed [r302]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r301]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r300]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r299]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r298]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r297]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r296]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r295]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r294]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r293]

    Port db files to new aphasia2 syntax

  • Tom 7 Tom 7 committed [r292]

    New aphasia2 syntax for databases

  • Tom 7 Tom 7 committed [r291]

    Mark done TODO, but add another

  • Tom 7 Tom 7 committed [r290]

    Show giveup thresholds, and make it more permissive for experts. Improve display on games list and add (back?) expert games header

  • Tom 7 Tom 7 committed [r289]

    Add subscription date. Fix bugs with pw vs pass param

  • Tom 7 Tom 7 committed [r288]

    Some optimization of new Not unop

  • Tom 7 Tom 7 committed [r287]

    Implement not unop

  • Tom 7 Tom 7 committed [r286]

    Generate not unop

  • Tom 7 Tom 7 committed [r285]

    Factor out common apps across sumcase arms

  • Tom 7 Tom 7 committed [r284]

    rewrite get_common to be n-ary, so it can be used for sumcase

  • Tom 7 Tom 7 committed [r283]

    Generate join construct. No real optimizations yet. Don't generate sumcase vars if unused. Some cleanup here and there

  • Tom 7 Tom 7 committed [r282]

    Standalone version of render benchmark

  • Tom 7 Tom 7 committed [r281]

    Copy renderbench from weblog

  • Tom 7 Tom 7 committed [r280]

    Support JOIN primitive; some small performance improvements; some more tests

  • Tom 7 Tom 7 committed [r279]

    Store and use lengths for textptr strings. Pass const stuff in stuffproto

  • Tom 7 Tom 7 committed [r278]

    Eliminate tail recursion for andalso/otherwise too

  • Tom 7 Tom 7 committed [r277]

    Require RHS of andalso/otherwise to be unit. Might be possible to relax this again, but very few pieces of code were even using the flexibility

  • Tom 7 Tom 7 committed [r276]

    eliminate tail recursion for andalso/orelse

  • Tom 7 Tom 7 committed [r275]

    Assume print takes string. Clean up and simplify code a bit. Add cycle count to bench (and make this count up, not down)

  • Tom 7 Tom 7 committed [r274]

    Simplifications of app and if. Make print functions monomorphic so we can simplify the implementation

  • Tom 7 Tom 7 committed [r273]

    Avoid print at polymorphic type. Improve regularity of makefiles

  • Tom 7 Tom 7 committed [r272]

    Avoid print at polymorphic type

  • Tom 7 Tom 7 committed [r271]

    Also allow expand_tuples for sumcase (where it will clearly help). Add notes about optimization opportunities

  • Tom 7 Tom 7 committed [r270]

    Added if-factoring optimization pass, simplification of binops

  • Tom 7 Tom 7 committed [r269]

    Fix condition for new-giveup, which was a typo from the aphasia2 port

  • Tom 7 Tom 7 committed [r268]

    Add uncurry optimization. Fix bug with is_next_effect that prevented inlining into case object

  • Tom 7 Tom 7 committed [r267]

    Add tests for insum tuples of different length, if optimizations, uncurry optimizations

  • Tom 7 Tom 7 committed [r266]

    Simplifications of if..then..else

  • Tom 7 Tom 7 committed [r265]

    Expand is_next effect, which pushes benchmark under some threshold where it's not swapping and now fcompletes almost immediately

  • Tom 7 Tom 7 committed [r264]

    Always inline small functions; this helps massively on constructor wrappers

  • Tom 7 Tom 7 committed [r263]

    Add regression test for list-rev optimization issues

  • Tom 7 Tom 7 committed [r262]

    Fixed all_uses tuple expansion optimization; it helps a lot

  • Tom 7 Tom 7 committed [r261]

    New broken optimization; need to do this a different way

  • Tom 7 Tom 7 committed [r260]

    New 'known' optimization; expand others, clean up useless crap

  • Tom 7 Tom 7 committed [r259]

    tail of nil should raise an exception, not return nil. Add tests for this, too

  • Tom 7 Tom 7 committed [r258]

    Add inlining with is_next_effect... even with only a few cases it saves a huge amount

  • Tom 7 Tom 7 committed [r257]

    Add several new optimizations, and clean up superseded old optimizations

  • Tom 7 Tom 7 committed [r256]

    Some more tests that came up while developing new optimizations

  • Tom 7 Tom 7 committed [r255]

    Start rebuilding optimizations with new AST-based aph1 data structure

  • Tom 7 Tom 7 committed [r254]

    Finish aph1, exposing comparison, freevars, subst from ast

  • Tom 7 Tom 7 committed [r253]

    flatten leaves a bit

  • Tom 7 Tom 7 committed [r252]

    Implement aph1 node datatype with AST. (still needs working leaf compare)

  • Tom 7 Tom 7 committed [r251]

    Use 'wizard'-style interface for aph1 datatype (trivial implementation). Didn't port optimizations yet so they are disabled

  • Tom 7 Tom 7 committed [r250]

    DNC: Going to try this a different way

  • Tom 7 Tom 7 committed [r249]

    Debug sorting, add docs

  • Tom 7 Tom 7 committed [r248]

    Add docs for array operations; add array sorting to test (itself barely tested)

  • Tom 7 Tom 7 committed [r247]

    Add long-missing array primitives to aphasia2 compiler (was just using them to implement 'ref'). Reformatted a bunch of files while on the hunt

  • Tom 7 Tom 7 committed [r246]

    Add arraysize ifunc

  • Tom 7 Tom 7 committed [r245]

    This should not be checked in

  • Tom 7 Tom 7 committed [r244]

    Drop unused pattern variables in let expressions too

  • Tom 7 Tom 7 committed [r243]

    Some actual optimizations in bottom-up pass; wildcard unused name/args in lambda

  • Tom 7 Tom 7 committed [r242]

    Add bottomup pass; it's a no-op

  • Tom 7 Tom 7 committed [r241]

    Get rid of Slist in aph1 internal language. Instead we use Let and Seq to avoid invalid representations and only convert to Slist (which still exists in bytecode) when outputting. Should make optimizations easier, although this also disables an existing incorrect optimization (flattening lets could change the meaning of the program by expanding scopes). Still it overall improves the total size of existing aph programs.

  • Tom 7 Tom 7 committed [r240]

    Checkpoint before fixing slist

  • Tom 7 Tom 7 committed [r239]

    Command-line tool to summarize aph file sizes. Change meaning of 'size' param in ReadAph (bytes w/o header)

  • Tom 7 Tom 7 committed [r238]

    DNC: checkpoint, gonna do this another way

  • Tom 7 Tom 7 committed [r237]

    And remove aph.h and the unary - hack for c_str.

  • Tom 7 Tom 7 committed [r236]

    Further reorganize code; make file a complete library about the file format

  • Tom 7 Tom 7 committed [r235]

    At long last, fix the makefile so it actually expresses dependencies correctly and can build with -j

  • Tom 7 Tom 7 committed [r234]

    Just use variable node idx for variable comparison, and hash bucket computation. Doesn't help clist size though

  • Tom 7 Tom 7 committed [r233]

    Just use character pointer to represent variable name; saves ~12mb heap and 10s in bench

  • Tom 7 Tom 7 committed [r232]

    New approach to initializing/looping FCGI

  • Tom 7 Tom 7 committed [r231]

    Use lengths of variables in context list; don't allocate strings. Still has sanity asserts enabled

  • Tom 7 Tom 7 committed [r230]

    Add test module and basic tests for it

  • Tom 7 Tom 7 committed [r229]

    Put space after text pointers in aphasia1 bytecode output. Not using yet

  • Tom 7 Tom 7 committed [r228]

    Make space for text lengths in file format, but not using them yet

  • Tom 7 Tom 7 committed [r227]

    Rename ref/modref to avoid confusion with ref type or modifying references (it is 'module reference')

  • Tom 7 Tom 7 committed [r226]

    Rename this to avoid confusion with the ref type

  • Tom 7 Tom 7 committed [r224]

    Switch to new file format where CASE has a variable node for the case variable instead of a direct text pointer. This makes room for having every text pointer accompanied by its size

  • Tom 7 Tom 7 committed [r225]

    Aphasia 2: Output new file format where CASE has a variable node for the case variable instead of a direct text pointer, per change in interpreter

  • Tom 7 Tom 7 committed [r223]

    Standardize indentation in here before working on it

  • Tom 7 Tom 7 committed [r222]

    Next idea: store text/var lengths with ptrs. Add this to file format; not populating or using it yet

  • Tom 7 Tom 7 committed [r221]

    Experiemnt with flat unordered_map-based contexts. They were terrible

  • Tom 7 Tom 7 committed [r220]

    Make UrlDecodeToAmpersand internal to CGI. This changes the (undocumented and somewhat weird) behavior of the urldecode ifunc, but so be it

  • Tom 7 Tom 7 committed [r219]

    Add more tests; fix bug in UrlDecode

  • Tom 7 Tom 7 committed [r218]

    Move 'stringparse' to cgi; clarify its behavior in test before simplifying it away

  • Tom 7 Tom 7 committed [r217]

    Remove a bunch of node types that are no longer needed, and some externs that have no definitions

  • Tom 7 Tom 7 committed [r216]

    Use switch instead of error-prone array for enum-names

  • Tom 7 Tom 7 committed [r215]

    Remove unnecessary IDENTITY

  • Tom 7 Tom 7 committed [r214]

    Rename context, do some cleanup. Add tests. Don't cat to 'struct X*' in GC, since this could cause us to miss cases where the destructor is not known and thus not called

  • Tom 7 Tom 7 committed [r213]

    Delete IDENTITY which aphasia 2 does not need

1 >