Article Image
Article Image

Recently I started writing a book on Leanpub. This was a first and, frankly, I had no real idea about what to write about.

Presently I have spend quite some time studying type systems. That includes both formal studies and the Haskell type system. I found that after i began to enjoy increased knowledge about types, I became a much better programmer in languages like JavaScript, Java, and C#.

Furthermore I saw that my ventures into new languages was strictly more successful. It was much easier to learn a new language when I had the ability to boil everything down to the typing concepts.

My thinking and research began. I concluded that the type system is a latent framework for reasoning which is similar across programming languages. After learning types the link between Java interfaces and Haskell type classes was a much more coherent unit.

My initial ventures into types was through a hard path. I spend hours with Pierces books and numerous papers. The lingo is in most cases more confusing than resolving, and it was very hard to link it to any existing knowledge.

Therefor I decided to write a book that explains type theory for the programmer who has a strong foundation in languages such as JavaScript and Java. Programmers who haven’t ventured into Haskell or other functional programming languages, but really want to consider these languages.

The Book

The book is written using the lean methodology. This means that it will be gradually published, and that I am very keen on getting feedback all the time.

I will publish a chapter when it is initially finished for publishing. That is when I am content with the writing, have done copy writing and the chapter is coherent.

A published chapter is not written in stone. This means that I am more than willing to rewrite a chapter when I get good arguments on alternative material.

As for the pricing I have initially decided that the book will cost 5$ pr. chapter. This means that the book will increase in value when more chapters are added. I find this quite fair and it also incentivises to buy the book early on, which gives me more time to finish it.

The Progress

Following is my progress on the book. Even this is not written in stone. So if anybody wants a special chapter, please let me know, and I might change the curriculum of the book.

Chapters Current Status
Introduction Writing
Basic Types Writing
Intermedio - Appling Staging
Polymorphic Types Staging
Existensial Types Staging
Reference Types Staging
Intermedio - Applying Staging
Sub Typing Staging

The book is available on I appreciate any encouragement. That does not have to be of monetary art, but just a word that my work is appreciated.

Blog Logo

Mads Buch



Mads Buch

Technical articles

Back to Overview