
A Pretty-Printer That Says What It Means - lelf
http://www.davidchristiansen.dk/2014/09/06/pretty-printing-idris/
======
fizixer
I'm thinking along these line but for C language, and how development
experience in it could be enhanced using some combination of smart-editor and
llvm.

I like to call it semantic C programming. Essentially the simplest use case is
that C syntax highlighting would always be 100% accurate if the code is
correct (most current editors used some kind of regexing to parse a language
syntax of highlighting purposes, which is a losing battle IMO). Another use
case is that if I download someone else's C code, I don't have to read it in
their coding conventions; my editor would translate it to my preferred coding
conventions on the fly.

However an llvm-editor-C combo is much more powerful than that (it seems,
though I still have to refine my ideas). Essentially it's the orthogonal
direction where you could take C, compared to taking it towards the OO
enhancement resulting in C++ language.

In this way you could add language features on top of C. For example you could
setup your editor to understand your OO constucts and generate corresponding C
code. But then you could add features to C that even C++ does not have.

Based on my discussion with other people, by this point in the discussion,
lisp starts to get mentioned. And for that reason alone, I wish to learn lisp
properly someday to be able to have a better understanding of this idea.

~~~
woah
Check out [http://sweetjs.org/](http://sweetjs.org/)

