Want to learn more about DSLs, parsers, interpreters, compilers and language design?
Yes!
Representing relationships as first-class citizens in an Object-oriented programming language

Representing relationships as first-class citizens in an Object-oriented programming language

As beginners we used to write very large functions and then giant God classes. As we improve our skills, our classes become smaller but more numerous: we get a swarm of small, focuses classes that collaborate to create the final system. In other words we shift the complexity from the relations between the components of a class to the […]

Turin Programming Language for the JVM: building advanced lexers with ANTLR

Turin Programming Language for the JVM: Building Advanced Lexers with ANTLR

As I wrote in my last post, I recently started working on a new programming language named Turin. A working compiler for an initial version of the language is available on GitHub. I am currently improving the language and working on a Maven and an IntelliJ plugins. Here and in the next posts I will go over the […]

Creating a Programming Language for the JVM: the Turin Programming Language

  Because you know, in the end everyone wants to create his own programming language. I have been interested in parsers and languages for a while. I worked with Xtext, Jetbrains MPS, created a few DSLs etc. etc. I also wrote my PhD thesis on this topic but so far I did not get started […]

Walkmod: automatically refactor code to apply code conventions

Walkmod: Automatically Refactor Code to Apply Code Conventions

I am very interested in tools which support the software development process, making automatic the boring bits. One system which permits to go in that direction is Walkmod: a smart tool which can refactor Java projects and enforce code conventions. It is a quite powerful tool and it should ges more and more attention. TL; DR: Tools […]

Busy period: moving to France, starting my freelance business, open-source and stuff

Busy period: moving to France, starting my freelance business, open-source and stuff

This summer was quite busy for me. At the beginning of July I moved from Dublin (Ireland) to Lyon (France) where I started my own business as a freelance Software Engineer. I am becoming quite proficient to switch countries, after having been an expat in Germany (twice) and Ireland. However this time I had the additional […]

Develop DSLs for Eclipse and IntelliJ using Xtext

Develop DSLs for Eclipse and IntelliJ Using Xtext

In this post we are going to see how to develop a simple language. We will aim to get: a parser for the language an editor for IntelliJ. The editor should have syntax highlighting, validation and auto-completion We would also get for free an editor for Eclipse and web editor, but please contain your excitement, we […]

Interview with David Åse from the Spark web framework project

Interview with David Åse from the Spark web framework project

I think that there are a lot of people looking for ways to get involved in Open-Source projects. I thought I could help by collecting a few stories from people who already started giving back to the community. A few weeks ago I talked with Luca Barbato and today I am going to talk with David Åse. How David and I met Recently […]

How to build a symbol solver for Java, in Clojure

How to Build a Symbol Solver for Java, in Clojure

Last week we have seen how to build models of Java code from source and JAR files. Now we want to be able to solve symbols: in practice we want to link the symbol references in our source code to symbol declarations either in Java source files or jar files. This process is called symbol […]

Building models of Java code from source and JAR files

Building Models of Java Code from Source and JAR Files

Recently I spent some time working on effectivejava, which is on its way to reach 300 stars on GitHub (feel free to help reaching the target :D). Effectivejava is a tool to run queries on your Java code. It is based on another project I contribute to, javaparser. Javaparser takes as input Java source code […]

A tutorial on using Sql2o with Spark and other updates

A tutorial on using Sql2o with Spark and other updates

A few weeks ago I wrote a tutorial on getting started with Spark (the Java web framework). A few readers appreciated it and it was linked by the Jetbrains blog, republished by DZone and republished by the new Spark tutorials blog. After that me and David Åse chatted a bit and we decided to work together on […]

Course: Using ANTLR Like A Professional

ANTLR Course Image

A complete video course on parsing and ANTLR, that will teach you how to build parser for everything from programming languages to data formats.
Taught from professionals that build parsers for a living.

Strumenta – Consulting

If you need help designing and developing DSLs, languages, parsers, compilers, interpreters, and editors you can check the services page of the Consulting studio we founded: Strumenta. Strumenta Logo

Blog Categories