[Haskell-cafe] static analysis of a C-like language

Olaf Klinke olf at aatal-apotheke.de
Mon Nov 26 20:37:10 UTC 2018


> Hello Olaf,
> 
> to me that sounds as if you want to do an abstract interpretation with a 
> forward collecting semantics that employs non-relational abstract 
> domains for the primitive data types and summarizes the dimensions of 
> arrays.
...
> I would start by writing a simple interpreter for the language to be 
> analyzed. That way you fix messy details before they bite you, e.g. the 
> order in which submodules are loaded and initialized.

I was hoping not having to write an interpreter (because the language author wrote a translation to C++ already), but if that is the way to go, I'll do it. As I understand it, the Haskell semantics should contain just enough substance so that the errors I am after will cause hiccups in the Haskell compiler? That is indeed a compelling approach. 
What this does not address is the question about error reporting:  How could a translation to Haskell preserve information about scope, source position and masking? Can I leverage the ghc API for that? 

Regards,
Olaf


More information about the Haskell-Cafe mailing list