Skip to content
Snippets Groups Projects
  • Régis Blanc's avatar
    c02f8491
    Testcases for Scala workshop 2013 · c02f8491
    Régis Blanc authored
    The functional ones are taken from previous collections (SAS2011 and
    OOPSLA13 submission for Sorting).
    
    The imperative ones are based on testcases from the VSTTE competition
    and adaptations of functional benchmarks of SAS.  We are not able to
    reproduce all successfull properties of the functional benchmarks,
    especially when the function we are implementating was not originally
    tail recursive. In that case, a non-trivial encoding would be required
    (e.g. using accumulators).
    
    Insertion sort and other sort algorithms are particularly complicated to
    implement with an imperative style. Functions like `insert` need to use
    reversal while reconstructing the list, and need in particular to prove
    that reversing an increasing list yields a decreasing list. We are not
    able to prove that yet.
    
    (Challenging benchmarks currently beyond our reach are in the top-level
    testcases directory, as they are not part of the Scala 2013 submission.)
    c02f8491
    History
    Testcases for Scala workshop 2013
    Régis Blanc authored
    The functional ones are taken from previous collections (SAS2011 and
    OOPSLA13 submission for Sorting).
    
    The imperative ones are based on testcases from the VSTTE competition
    and adaptations of functional benchmarks of SAS.  We are not able to
    reproduce all successfull properties of the functional benchmarks,
    especially when the function we are implementating was not originally
    tail recursive. In that case, a non-trivial encoding would be required
    (e.g. using accumulators).
    
    Insertion sort and other sort algorithms are particularly complicated to
    implement with an imperative style. Functions like `insert` need to use
    reversal while reconstructing the list, and need in particular to prove
    that reversing an increasing list yields a decreasing list. We are not
    able to prove that yet.
    
    (Challenging benchmarks currently beyond our reach are in the top-level
    testcases directory, as they are not part of the Scala 2013 submission.)