

The Bootstrapped Compiler and the Damage Done - Baustin
http://tratt.net/laurie/blog/entries/the_bootstrapped_compiler_and_the_damage_done

======
captainmuon
> First, we understand how to design compilers better than any other type of
> program.

Well, the author is speaking only for himself :-) I think most typical
programmers understand other types of programs better than compilers.

But great post, I agree a lot. Just like professional politicians are
overrepresented in parliaments, compiler experts are overrepresented in
language design. Most programs I've written belong to one of three categories:

\- Number crunching \- GUI to display and edit data \- Web app (HTML + JS
frontend to a database)

The classical languages for these kind of apps are Fortran (nowadays C++),
Visual Basic o_O, and PHP. I don't have to tell you how each of these suck for
various reasons. But each language has special features that make writing
specific kinds of applications nicer.

VB for example had a tight integration of the GUI designer, syntax sugar for
accessing COM components, and so on. It had a `with` keyword that let you set
lots of properties on GUI elements easily:

    
    
        With form1
            .Title = "Hello World"
            .Width = 640
            .Height = 480
            With .btnOK
                .Font.Bold = True
                ' ...
            End With
        End With
    

I'm not saying it was a great language... But one day I'd really like to
design my own language, tailored to the kind of problems I have to solve. The
result might look less like Haskell, and more like The Homer [1], but it would
let me get stuff done without thinking to much about it.

[1]
[http://simpsons.wikia.com/wiki/The_Homer](http://simpsons.wikia.com/wiki/The_Homer)

~~~
swah
Maybe Lisp and Forth are in the other extreme? The designer thought "I shall
let my users be as powerful as myself".

