This is not a how-to post; rather it is a post that describes technical concepts behind the implementation of the Ballerina programming language.
When we started developing the language, we were newbies in language development. We had to research everything from scratch. In fact, we took leave for two weeks and studied compiler theory first :)