I'm pretty sick of all high-level languages actually. I even wrote my own functional programming language "Fexl", and I'm sick of it too. Here's a totally general purpose quicksort:<p><pre><code> # (sort keep compare xs) sorts the list xs using the three-way comparison
# function. It keeps duplicates if the keep flag is true, otherwise it
# discards them and returns only the unique entries.
\sort =
(@\sort\keep\compare\xs
xs [] \x\xs
\lo = (filter (\y compare y x T F F) xs)
\hi = (filter (\y compare y x F keep T) xs)
\sort = (sort keep compare)
append (sort lo) [x; sort hi]
)
</code></pre>
I'm tired of all of it. The language I really like is plain old C.<p>To handle arbitrary strings reliably, I can just use this code:<p><a href="https://github.com/chkoreff/Fexl/blob/master/src/str.h" rel="nofollow">https://github.com/chkoreff/Fexl/blob/master/src/str.h</a><p><a href="https://github.com/chkoreff/Fexl/blob/master/src/str.c" rel="nofollow">https://github.com/chkoreff/Fexl/blob/master/src/str.c</a><p>To deal with dynamic allocation, detecting any memory leaks upon program exit, I use this:<p><a href="https://github.com/chkoreff/Fexl/blob/master/src/memory.h" rel="nofollow">https://github.com/chkoreff/Fexl/blob/master/src/memory.h</a><p><a href="https://github.com/chkoreff/Fexl/blob/master/src/memory.c" rel="nofollow">https://github.com/chkoreff/Fexl/blob/master/src/memory.c</a><p>For high-speed buffering of data, one character at a time, I can use this:<p><a href="https://github.com/chkoreff/Fexl/blob/master/src/buf.h" rel="nofollow">https://github.com/chkoreff/Fexl/blob/master/src/buf.h</a><p><a href="https://github.com/chkoreff/Fexl/blob/master/src/buf.c" rel="nofollow">https://github.com/chkoreff/Fexl/blob/master/src/buf.c</a>