I have been building highly automated software engineering tools and systems software for 45 years (more below).
Oct 2012: The "moderator community" at Meta has convinced me that answers I provide that mention my company's software tools are unwanted (at least by many of them) on Stack Overflow, in spite of the fact that my upvote score per answer averages the same as Jon Skeet's; note moderator deletions of many of my tool answers. Since these tools are what I live and breathe, most of what I have say that is constructive is thus unwanted. So, I expect to respond to further questions at likely a lower rate.
Related to this is the problem of SO moderators closing tool questions in general (what? programming is about using tools!), because "answers are likely to be opinionated". So what? People either like their tools or they don't. And opinions from old hands and smart people are often pretty useful in making a good choice.
If you think, as I do, that Stack Overflow is about providing good answers (in list form or not) regardless of who provides them, you can take up that case in Meta.
I'm a principal at Semantic Designs. Many of my answers point to tools or products of SD, many of which I have a direct role in engineering; its what I know intimately. When I provide such answers, I try to make sure that the answer is relevant to the specific question being asked. YMMV.
Some of tools I have built at SD:
- DMS Software Reengineering Toolkit, a commercial program transformation engine [architect and implementer]. Check out this invited Google Tech talk video on DMS.
- DMS front ends for Ada, VB6, C#, Java, ObjectiveC, PLSQL, FORTRAN, PHP, Python, Natural. [implementer] (DMS also handles full C++14.)
- CloneDR, a leading clone detection tool [architect/implementer]
- PARLANSE (parallel programming language for SMP x86).
Used to implement DMS and CloneDR. [Design of language and implementation of compiler for x86]
A lesson people keep relearning when building program analysis tools is that parsing is nowhere near enough. See my discussion on why I built DMS, to enable Life After Parsing.
idbaxter at semanticdesigns dot com
ACM Member since 1970; Life Member
IEEE Senior Member
AAAI Life Member
Follow me on twitter: @SemanticDesigns
- Stack Overflow 84.8k 84.8k 1414 gold badges147147 silver badges288288 bronze badges
- Software Engineering 1.9k 1.9k 1616 silver badges1717 bronze badges
- Software Recommendations 1.1k 1.1k 55 silver badges3030 bronze badges
- Retrocomputing 838 838 33 silver badges1212 bronze badges
- Meta Stack Exchange 628 628 44 silver badges1212 bronze badges
- View network profile →
Top network posts
- 228 Why can't C++ be parsed with a LR(1) parser?
- 209 Is there an alternative for flex/bison that is usable on 8-bit embedded systems?
- 102 lexers vs parsers
- 101 Are GCC and Clang parsers really handwritten?
- 94 What is the "FS"/"GS" register intended for?
- 93 Constructing an Abstract Syntax Tree with a list of Tokens
- 88 Are all languages basically the same?
- View more network posts →