
Tranquil is a programming language built on top of LLVM & the Obj-C Runtime - barredo
https://github.com/fjolnir/Tranquil#hn
======
kstenerud
Please, no backticks. There are a whole bunch of keyboard layouts that don't
have this.

~~~
fyolnish
How do people with those layouts survive in bash?

~~~
pooriaazimi

        $( command )
    

$() is better than `, because you can nest them (TBH, I probably haven't had a
need for nesting them in the past year or so, but I remember vividly that a
few times I needed it _badly_ and would be lost if I only had `s)

------
moostapha
Just mentioning in case anyone cares, that hacker also released xnomad, which
adds dwm-like window management to OS X. It's a bit buggy, but it works the
vast majority of the time and rarely screws up……it just ignores things more
than I would like and doesn't work well with multiple spaces.

~~~
fyolnish
Are you using the latest release? It should work fine with spaces now.

(Also worth a mention: xnomad is written in tranquil)

------
silkodyssey
There is also eero which has similar goals. <http://eerolanguage.org/>

------
achille
Seeing all these awesome projects makes me slightly depressed, everyone's
building awesome interpreters and compilers, while I'm sitting here just
working on <boring things>.

~~~
sebkomianos
Work on an awesome interpreter or compiler then?

~~~
bitwize
Do you have a steady job? A mortgage? A family?

Watch your spare time for awesome compilers go down the drain when you acquire
one or more of these.

~~~
munificent
> Do you have a steady job? A mortgage? A family?

Yes, I'm a Googler. No mortgage right now but rent is pretty pricey. Yes, a
wife, a toddler, a baby, two dogs, and two cats. Also a one hour commute, each
way.

I also have:

<https://github.com/munificent/>

<http://magpie-lang.org/>

<http://finch.stuffwithstuff.com/>

<http://journal.stuffwithstuff.com/>

You'd be surprised how much you can get done if you just throw half an hour a
day at it.

------
mmariani
Looks very cool, and the source code is neat which is a plus. I always wanted
to make exactly what the OP did, but instead with a pythonic syntax.

~~~
stcredzero
The OP has done most of the work for you.

------
jheriko
This interesting, i am especially impressed by the debugging stuff... however
I contest the assertion of good performance. If you are using the Objective-C
runtime then, in my world, you are dog slow. Sorry.

Anything that stops doing 10,000 nothings from compiling out is dirt to me...
too easy to screw your performance by accident with Objective-C messaging and
objects. (don't get me wrong, I enjoy their enormous power, I'd just like to
only pay for it if I actually need something that dynamic - which is almost
never)

~~~
fyolnish
Must be nice in the world of unfounded assertions.

Tranquil achieves good performance (when compared to other dynamic languages
like ruby or python) by using tagged pointers for numbers & bypassing messages
for arithmetic operators if both operands are tagged; batching allocations for
objects frequently used in the fastpath, and other tricks.

If you compare it with writing straight C ..obviously it's slow. But then so
is anything else.

~~~
jheriko
its perfectly well founded and measurable.

my issue with objective-c and its runtime is the message passing
implementation and the reliance on it - it is incredibly powerful, but the
cost is phenomenal in the contexts i work with - and a common optimisation i
find myself doing is making C++ style calls out of c functions with a 'this'
as the first parameter.

there is no real need for this cost if the compiler could have more
information about use and respected the "don't pay for what you don't need"

~~~
jheriko
(it is good you avoid it for operators etc. - so you must be aware of the
issue and how it can be avoided with a little common sense and work)

