Skip to content
  1. Nov 30, 2023
  2. Nov 29, 2023
  3. Nov 28, 2023
  4. Nov 23, 2023
  5. Nov 20, 2023
    • Carlos Galindo's avatar
      Work-list based and Reps tabular slicing for recursive programs. · 58d95b2c
      Carlos Galindo authored
      - Worklist approach implemented through a Config flag in SummaryTable.
      - Unconstrained and constrained variantes (TabularAlgorithm & ConstrainedTabularAlgorithm). The constrained version features a limit to the size of the stack.
      - Constrained subsumed variant for efficiency (ConstrainedSubsumedTabularAlgorithm).
      - Efficient EdgeList (linked-list) to store edges visited through a traversal.
      - Bump language level to 16.
      - eKnife cli: added switch to use tabular algorithms.
      - Moved benchmarks out of eKnife and BencherTest.
      58d95b2c
  6. Oct 25, 2023
    • Carlos Galindo's avatar
      Benchmarks for non-recursive tabular slicing. · 4d630beb
      Carlos Galindo authored
      - ️️SummaryTable: actual-out node may none or multiple matching formal-out.
      - EDG, SummaryTable: get and clear methods for stats.
      - EKnife, BencherTest: adapted for benchmarks in which running the benchmark alters the graph itself.
      4d630beb
  7. Oct 19, 2023
    • Carlos Galindo's avatar
      Tabular slicing (v1): non-recursive · 830c6df6
      Carlos Galindo authored
      - Move summary settings from EDGFactory to Config.
      - The EDG now contains a SummaryTable, a map which computes summaries on-the-fly.
      - ConstrainedAlgorithm: now looks up summary edges in SummaryTable.
      - Fixed typo in SummaryEdgeGenerator#generateOnlyExternal.
      830c6df6
  8. Jul 27, 2023
  9. Jul 26, 2023
  10. Jul 25, 2023
  11. Jul 24, 2023
    • Carlos Galindo's avatar
      Updated benchmark system · 878d4fad
      Carlos Galindo authored
      - Remember, to run benchmarks you require a "server" process for Erlang (see previous commits).
      - If you output slices, astCounter.erl can be used to count the number of AST nodes in a given program.
      878d4fad
    • Carlos Galindo's avatar
      Full support for records and code printing · ad8763fd
      Carlos Galindo authored
      - Full support for records, with their own access constraints
      - e-Knife can now print Erlang code that contains newly supported data structures (record, bin, try, catch, throw...)
      ad8763fd
  12. Jul 13, 2023
    • Carlos Galindo's avatar
      Benchmarks for JSS Revision 1 (erlsom) · b909e059
      Carlos Galindo authored
      - Basic support for records, bin, float, try, catch
      - Feature to count access constraints traversed
      - Feature to count access constraints present in the graph
      - Bugs fixed:
        - Can handle empty string represented as list `[]`.
        - Can handle other unary operators apart from `-int`.
        - Can handle nested list comprehensions.
      - Now requires a running instance of erlang, use the following command:
      
          erl -pa (pwd)/e-Knife/src/main/resources -name server@localhost -setcookie erlang -noshell
      
      - BencherTest now accepts `-DiterGen=NUM` and `-DiterSlice=NUM` as Java arguments.
      b909e059
  13. Mar 03, 2023
  14. Feb 24, 2023
  15. Feb 23, 2023
Loading