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 82.6k 82.6k 1111 gold badges137137 silver badges281281 bronze badges
- Software Engineering 1.8k 1.8k 1515 silver badges1717 bronze badges
- Software Recommendations 817 817 44 silver badges3030 bronze badges
- Retrocomputing 738 738 33 silver badges1111 bronze badges
- Code Review 576 576 44 silver badges55 bronze badges
- View network profile →
Top network posts
- 225 Why can't C++ be parsed with a LR(1) parser?
- 197 Is there an alternative for flex/bison that is usable on 8-bit embedded systems?
- 100 lexers vs parsers
- 99 Are GCC and Clang parsers really handwritten?
- 94 Constructing an Abstract Syntax Tree with a list of Tokens
- 90 What is the "FS"/"GS" register intended for?
- 88 Are all languages basically the same?
- View more network posts →