hephaestus-compiler-project / hephaestus

A framework for testing compilers' type checkers
https://hephaestus-compiler-project.github.io/
GNU General Public License v3.0
49 stars 10 forks source link

Refactoring of generator #45

Open StefanosChaliasos opened 3 years ago

StefanosChaliasos commented 3 years ago

We should apply a refactoring to the generator to use a table with possibilities instead of random.bool. Specifically, this table should include all supported features. We need that functionality for the following reasons.

  1. For disabling features that a language cannot support in a fine-grained way.
  2. For adding the ability for swarm testing.
  3. It will be helpful for evaluation.
  4. To minimise the effort of implementing a new language to (1) implementing a translator, (2) specifying this table for the new language, (3) specifying built-in types.