more real-world static analysis results

Thomas Lindgren <>
Mon Oct 25 15:25:12 CEST 2004


--- Luke Gorrie <> wrote:

> I have one vague feature desire but I don't think it
> could be done in
> a non-false-positive way. Suppose I have a module
> containing some
> typos in atoms:
> 
>   -module(foo).
>   -compile(export_all).
> 
>   send(P) -> P ! oaky.
>   recv()  -> receive acknolwedge -> ok end.
> 
> It might be nice to warn that send/1 sends 'oaky'
> but that this atom
> doesn't appear as a constant in any receive (or that
> it doesn't appear
> as a constant anywhere at all), and likewise for
> receiving
> 'acknolwedge'. Of course list_to_atom can introduce
> false positives.

Maybe you should have a look at Sven-Olof Nystrom's
type analyzer, presented at the 2003 Erlang workshop,
and also developed at Uppsala -- probably even within
a 10m radius of dialyzer :-). As I recall, it could
actually analyze concurrent code, but returned types
(including mailbox types) rather than "bug feedback".

<http://user.it.uu.se/~svenolof/SA/>

You're probably the pioneer in doing that, of course.
Good luck! :-)

Best,
Thomas


		
_______________________________
Do you Yahoo!?
Declare Yourself - Register online to vote today!
http://vote.yahoo.com



More information about the erlang-questions mailing list