People of the planet Earth, we have an announcement for you. We’re introducing 2 workshops and 3 new speakers to the conference lineup.
The workshops cost 29 Euro and our sold as separate tickets. They will run on parallel on Saturday, 23rd of September and sadly and are with limited seats. You can purchase a ticket from our homepage, selecting which one you want to attend:
With this out of the way, the workshop themselves:
Creating a Programming Language From Scratch
Have you ever wanted to implement a programming language from scratch? Doing so can be a rewarding and educational experience, and it’s probably much easier than you think. We will guide you through the hoops of creating a small, but neat, programming language.
By the end of the workshop you will be the proud author of a programming language, and will hopefully have a better understanding of how programming languages work. The goal is for you to make a relatively simple language, with the following features:
- A handful of data types (integers, booleans, symbols, and strings)
- Variables (with lexical scoping)
- First class functions
- That nice, homemade quality feeling
The workshop will guide you through the process of creating your language using a hands-on TDD approach. We provide the tests, and all you need to do is to get them to pass, one by one.
We will be following the materials from https://github.com/kvalle/diy-lisp. You will be coding in Python, and the language you create will have a syntax similar to Lisp (mainly to keep the parser as simple as possible). You will have all the explanation you need, and we’ll be there to help you every step of the way.
No experience with creating languages is required. Familiarity with Python is helpful, but is not required either, as the code you’ll need to write is surprisingly straightforward.
Scala is Love
This workshop will be targeted at people who hadn’t yet tried Scala or who just started writing in Scala. Functional background is not necessary as we will not go that deep into functional Scala, rather than just demonstrate the basics. The talk will be best fitted for Haskell or Java developers. We will cover language basics, differences with other languages and how to start developing in Scala efficiently.
We will talk a little bit about Scala basics, for anyone that hadn’t yet tried coding in Scala. Then we’ll do some examples of the OOP and functional parts in Scala implementing some basic structures. We will first create some ordinary classes in order to get a handle on the syntax and demonstrate how to write tests in Scala. If the group is going fast we will then implement the List and/or the Option monads. After that we will make an implementation of a syntax interpolator for reading expressions from string and evaluating them. That way we will demonstrate an advanced language features, and the pattern matching mechanisms in the language.
Last, but not least… we have an offer for you, our deer early adopters. Am I an early adopter, you may ask? Well, if you already have a ticket, you are!
For all of you, that have purchased tickets, before we announced the workshops, we are offering you a free workshop of your choice! 😭 Send us a mail at firstname.lastname@example.org and we’ll take it from there.
Have a great summer, all! ❤️