I believe that languages are powerful tools to express ideas and to support reasoning.

I am an expert in designing and engineering complete domain specific languages I can also develop general purpose languages. I am pragmatic and use different approaches in different contexts.

Extensible language families based on Jetbrains MPS

Jetbrains MPS represents the state of the art for projectional language workbenches It permits to create in a matter of days complete languages with rich editors, edit-time error reporting, refactorings commands, code-generation/interpretation, typesystem rules, dataflow analysis and more. Moreover MPS permits also to evolve and combine several languages, defining rich families of complementary languages.

A simple language for calculating values, realized with MPS

Textual languages with rich editor support for multiple platforms

If your context requires pure textual solutions Xtext is the way to go. Using this tool is it possible to generate rich editors for Eclipse, IntelliJ and web browsers (with some limitations). If for some reason you need a more lightweight solution we can consider using simpler parsing generators such as ANTLR.

A simple language for AST transformations, realized with Xtext

How I can help you

Defining specific languages require a customized approach. We could help you with the different phases:

  • analyze your situation and identify the best approach. We help you take the correct direction.
  • design the high-level solution and provide guidance to your team
  • implement the solution: you will get a product ready to use
  • offer training in language engineering techniques

Want to know more?

I know, finding technical help is not the easiest thing.
Hopefully I can be the right person to design and implement your projects.

If not I will try my best to give you the right directions and help you find who can help you.