An esoteric programming language (esolang for short) can be made for many reasons:
- Fun
- Proof of concept
- Learning And many others.
Here are some tips on 1 thing you should and one thing you should not do when making an esolang.
What you SHOULD use
If you are making a language that has commands, you should use string split functions.
String split functions are very useful when creating an esolang. Normally, they are used with some kind of delimiter. That delimiter can be what separates the commands of your esolang.
String split functions exist in many languages and can be used in many different ways. Here are some examples:
- Python
a: str = "string with spaces"
arr: list = a.split(" ")
- JavaScript
const a = "string with spaces";
const arr = a.split(" ");
- Ruby
a = "string with spaces"
arr = a.split(" ")
String split functions exist in many languages and are useful when making an esolang with commands.
What you SHOULDN'T do
I know that this sounds kind of rude but try not to come up with the syntax for the language yourself. There are many websites out there that you can use to get syntax ideas for your esolang. There is esolangs.org, libhunt and even github can be used for esoteric syntax ideas.
Top comments (5)
On another, much smaller note: please tag this post as #esolang or #esoteric. I'm new to this community and I'll be fighting for more esoteric posting, and correct tagging is the first step in my crusade. People must know! This needs to be found!
Short and sweet and right to the point.
I would argue with the second point. You already listed the reasons to create esolangs so I will go over them and explain what I mean.
Fun
If I'm making the language for my own fun then why wouldn't I use my own syntax? That's like half of the fun from making an esolang - coming up with solutions that cannot be found elsewhere. Even if I make an abomination of a language and it's absolutely unusable it's still my language and I had fun making it.
Proof of concept
If I'm making a language as a proof of concept then I usually already know what syntax it will have.
Learning
Making a language with made-up syntax can be a very teaching experience. Finding out where this syntax fails and being forced to look for solutions can teach you much better than just copying an existing syntax.
All good points. I will think about changing it!
Great article!
Thanks!