Giter VIP home page Giter VIP logo

ansi-test's People

Contributors

attila-lendvai avatar dkochmanski avatar pfdietz avatar robert-strandh avatar rtoy avatar spaghettisalat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

kpoeck

ansi-test's Issues

Add asd file(s)

The loading scheme for ansi-test has been problematic. I had designed it before asdf, and wanted it to be useful in lisps without asdf. However, I am mostly using it now in lisps that do support asdf. So: add asd files instead of the hacked loading system that's currently there. Separate out rtp and the random tester from other tests. Ultimately, I want to separate the random tester entirely.

Pull information out of the RTP tests and put into more declarative form

The random type prop (rtp) tests encode information about what types are allowed as arguments to built-in functions. This information could be pulled out into a more declarative form, so it could be used elsewhere (for example, when generating random inputs to the compiler it could be used to generate more type-correct code.)

Redesigned random tester

The random tester currently operates by requiring that the generated lisp always be valid (that is, the types of arguments always be permissible when executed). This makes reduction of the forms difficult, as this has to be maintained.

Instead, add a facility where violations can be detected dynamically, so reduced test cases can be seen to be invalid and the reduction discarded. Do this by walking the form and replacing functions with 'safe' versions that manually check constraints and signal an invalid test error if they are violated.

Also, check walk the form and check other constraints. The goal is to make test case reduction be very dumb and aggressive, with bad reductions caught by the checker.

Get the mutation tester reader working with Eclector

The mutation tester has a reader facility that slurps in code from random lisp files. It has to work even with packages that aren't defined (since it's just generating raw material for stuff that looks vaguely like valid lisp). Previously I hacked SBCL to have a parameter that caused it to not throw errors on bad packages, but this is not portable.

Instead, use Eclector and customize it to do something useful on package errors.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.