Hello, I have a task to build a simple (Minimal Viable Product) static code analysis tool for Solidity language. Maybe someone could help me and provide with any valuable resource on where to start? For now, it seems that DMS Software Reengineering Toolkit maybe the right choice, but maybe there are better options?
Feb 24, 2018, 7:09 PM
hi, Paulius, I’d like to help you
Feb 24, 2018, 7:16 PM
cool, maybe you know an resources which could help me to start building the tool?
Feb 24, 2018, 7:23 PM
1) do you have any skills? what did you already do?
Feb 24, 2018, 7:24 PM
I have a pretty good understanding of the Solidity language itself, also I have some background in languages such as Java, C#, NodeJS, Software engineering basics and now I am trying to learn as much as possible in the Blockchain field.
I was assigned a task to build a simple static analysis tool for Solidity language (I know there are exsiting solutions already, but I need to build my own one). Currently, I am trying to google for possible ways to implement it and I would like to get some advises from professionals (like you) on where to start, so there would be less time wasted...
I was assigned a task to build a simple static analysis tool for Solidity language (I know there are exsiting solutions already, but I need to build my own one). Currently, I am trying to google for possible ways to implement it and I would like to get some advises from professionals (like you) on where to start, so there would be less time wasted...
Feb 24, 2018, 7:28 PM
do you have math background?
do you know something about theorem proving?
https://en.wikipedia.org/wiki/Automated_proof_checking
https://en.wikipedia.org/wiki/Satisfiability_modulo_theories
Feb 24, 2018, 8:03 PM
yes, of course I am not a maths professor, but I have pretty basic unudersanding from the university courses.
Feb 24, 2018, 8:03 PM
Hi. i'm working on (proprietary) solidity static code analyzer. we can adopt it for your needs if this suits you.
Feb 24, 2018, 8:03 PM
are you planning to open source it? I could take a look and get a basic understading on how to implemend one myself, as the task is not use an existing solution but try to build from scratch.
Feb 24, 2018, 8:06 PM
we are going to open source an old version somewhat later
Feb 24, 2018, 8:15 PM
maybe you could tell me what technologies and programming languages do you use to build a such tool? as far as I see, most of such projects are built with Python...
Feb 24, 2018, 8:20 PM
we use ANTLR to build AST which we analyze
we use java though it's irrelevant
we use java though it's irrelevant
Feb 25, 2018, 10:38 AM