lxhome/orgs/essays/rational-and-a-name.org

54 lines
2.6 KiB
Org Mode
Raw Permalink Normal View History

#+SETUPFILE: ../../config.org
#+TAGS: Serene Languages
#+CATEGORY: Engineering
#+DATE: 2019-12-01
#+TITLE: Rational and a name
2021-02-17 11:32:25 +00:00
#+DESC: The rational behind Serene
*This post is a draft and I'll finish it gradually*
As I mentioned in [[./my-new-programming-language.org][My new programming language]], I'm creating a new programming language.
I'll try to pick up good points of different programming languages and avoid the cons
of them. One of the most important aspects of any project is to have a rational for it.
It's what I learned from [[http://clojure.org][Clojure]]'s culture. Rationals are a big deal in any clojure
developers world. As fan I'd like to start my new programming language by writing down
the rational of what I'm trying to achieve.
* Rational (Take 1) and goals :Languages:Serene:
So far, the main reason to create a new language for me is to *learn more and
educate myself*. But it doesn't mean that I'm aiming for a toy language. I want
to create a general purpose language that solves some problems. Here is a list of
reasons that made me consider the idea of creating a new language (in no specific order):
** Lisp is superior
I think the world needs more and more dialects of Lisp. It's the second oldest
programming language in the world and as far as I know the oldest one that is
still active. **Lisp** is elegant and amazing, but unfortunately not so many
programmers know about it. Even most of the those people who heard the name
are distracted by the "parenthesis". But they're missing the fact that there
is a good reason for all those parenthesis. Lisp is the simplest language I
know, its programs are written in its own datatypes. How simple is that???
You might hear that [[https://twobithistory.org/2018/10/14/lisp.html][God has created the universe in Lisp]].
Lisp is amazing and I consider a programmer who has understood *the Lisp way*, the
[[https://twitter.com/lxsameer/status/1172220581992980480][luckiest]].
I'd my new language to be Lisp, because just being a Lisp brings a huge deal to the
table.
** Simplicity
** FP is the future
** Development process
** Better core development
** Built-in Concurrency and parallelism
* A Name
If you're a programmer, I'm pretty sure that you already experienced the terror
of trying to find a name for your project. Frankly, It's even hard to find a good
name for your variable.
After about 10 days of searching finally my wife came up with a good name. *Serene*.
Calm and peaceful. I like it. It's simple and beautiful with a great meaning.
I can't wait to start working on it. :P