About React Native

In this blog post I would like to talk about React Native. Before starting: this evening I am going to talk about this topic at the Cococaheads Dresden meetup. If you are more the visual type and you are able to understand German check out the video of the talk here. React Native - Learn one, write anywhere: Build mobile apps with React. This is the official description of the framework and you will get what it means during this post. »

Benjamin Herzog on #react,

Fast feedback using a REPL

In this blog post I would like to write about the REPL which I built to get a fast feedback cycle for my lexer. Before going into the topic, here is a short description of what REPL stands for and what its purpose is. REPL stands for Read-Evaluate-Print-Loop. So in the end it is an endless loop which is waiting for input from the user to evaluate it and print the outcome afterwards. »

Writing a lexer

If you have read last weeks blog post you might also have checked out the repository of my compiler on Github. After deciding which programming language to use and decided on the name for the project I started creating the first fundamental files. One of them is the lexer. Before diving too deep into the topic here is a definition of lexical analysis from Wikipedia: In computer science, lexical analysis is the process of converting a sequence of characters […] into a sequence of tokens […]. »

Starting the challenge

As mentioned in the last blog post I am finally able to start my challenge for this year. In an earlier blog post I thought about some key points that need to be decided before I can finally start. Here is the list with their short answers, the long answer is written below: In which main language will the tools be written? Go Will the language be compiled or interpreted? »

I am done

Today I wrote my last exam for this semester; so I am finally done with this stressful time. It feels like it is getting harder every time to concentrate only on the topics that are necessary to pass every single exam. Especially in this time my head is full of motivation for a lot of different projects but I am forcing myself to not start any of them during the exam period. »

Part 3/3 - It's all about the mapping

All Parts: 1 - 2 - 3 Last week I defined the interface of the Client and its Authenticator. Together with the definition of the endpoints (first part) it is now possible to take a deeper look into the actual network request. But before doing that I need to clarify one important part: the mapping of the response. Mapping JSON (or other transport formats) is a different topic, especially in Swift. »

Part 2/3 - Defining a readable and safe interface

All Parts: 1 - 2 - 3 In the first part I built the foundation for a protocol oriented network abstraction written in Swift. The main focus for the component lies on safety, code quality and a very clean API. Safety is mostly about the rules you define on how the component can be used. In the best scenario the user can not even compile the program if the component is configured wrongly. »

Part 1/3 - Writing a protocol oriented network abstraction in Swift

All Parts: 1 - 2 - 3 Todays topic is very technically. So if you are not interested in programming (or especially in Swift programming), this post might not be for you. This is the first blog post of a short series. Before starting with the structure and the implementation details, I would like to explain how that topic came up. In summer 2014, right after the announcement of Swift, I created a YouTube Channel. »


Since I am currently right before examination period time at my studies, I’d like to take a moment to talk about something I learned during the development of a task for my university. While the task itself was not that exciting, I think the overall principle is very nice! The tool is a framework for developing new programming languages! Its name is Xtext. While I will propably never use it, I like the idea behind it. »

Some Thoughts

This week I want to share some of my thoughts about my new programming language. Or to be a bit more specific: about some technical details for building the toolchain. There are a lot of things that need to be decided which are also very important for the planning process. Here is an overview over some of them: Will the language be compiled or interpreted? What exact features will the language support? »