Hazel is a live functional programming environment that allows for typechecking, manipulation, and running of incomplete programs. Traditional programming languages do not provide feedback on incomplete programs, leading to gaps in service from tools like code completion. Hazel introduces a principled approach by modeling incomplete programs as programs with holes, representing missing or erroneous parts. Every incomplete program in Hazel is both statically and dynamically well-defined, supporting research in programming and programming education. Hazel is developed by the Future of Programming Lab at the University of Michigan and is open source. For more information or to contribute, contact team lead Cyrus Omar.
https://hazel.org/