What’s the most useless programming language to learn?
Posted by Night-Monkey15@reddit | learnprogramming | View on Reddit | 304 comments
Late last year, I decided to take up programming, and have gotten my feet wet in JavaScript, Python, and C, with plans to attend University in the fall and major in Computer Science, and wanted to challenge myself by learning a useless programming language. Something with almost no practical application.
dkopgerpgdolfg@reddit
Brainfuck is at least close to turing machines, quite directly.
Malbolge on the other hand...
Pancakes1741@reddit
Damnit came here to mention Malbolge and you guys already beat me to it
IhailtavaBanaani@reddit
Malbolge is almost impossible to program on if you actually want to create something. FRACTRAN and Unlambda are slightly more practical..
Trick_Illustrator360@reddit
FRACTRAN is my earlier love. I had forgotten about it
dkopgerpgdolfg@reddit
Yes, that's why I mentioned it...
Trick_Illustrator360@reddit
I love turing machines. How is to close to it?
gainaholic@reddit
Came to say brainfuck. Have my upvote dear colleague
Pancakes1741@reddit
Malboge?
It's named after the eighth circle of hell in Dante's Inferno. Malbolge operates on a ternary virtual machine, utilizes encryption, and incorporates self-altering code, making even basic tasks extremely difficult.
tiikki@reddit
Fortran is almost dead, but it will never die.
SenderShredder@reddit
I'd say Lolcode. Once built a working implementation of A* during an interview. Still no offer and that's why I say they are lying when they tell you which language you complete the interview with doesn't matter.
qrzychu69@reddit
I don't see any body mentioning Rockstar: https://codewithrockstar.com/
It was a joke language, because the guy called Dylan Beatrice wanted to put "rockstar programmer" on his CV
So he created a GitHub repo with some funny specs about a language where you write programs as songs. Them some other weirdo wrote a compiler :D
So now you can become a certified rockstar programmer
It's completely useless, but the cool factor is through the roof :D
makeevolution@reddit
The one you're not passionate in
sarnobat@reddit
The ones you've never heard of
tvmaly@reddit
Prolog, while it may seem useless, I have used it in very unique problems in the industry where no other solution would work. Once you understand it, it expands your mind.
sarnobat@reddit
Agree
me-patrick@reddit
Prolog or Eiffel.
sarnobat@reddit
Sadly true. I like prolog but it's got no commercial future
BionicBeaver3000@reddit
Take your pick:
https://en.wikipedia.org/wiki/Esoteric_programming_language
My personal favorite is Ook!
fasti-au@reddit
They all teach concepts but Visual Basic 6 and early lines from there are no use anymore. X64 killed lots of languages
I_compleat_me@reddit
I regret every minute I spent on Pascal.
fractal_jesus@reddit
Aaaaaaggghh Pascal in school was a huge loss of time but ironic it was the only thing that we learned in our computer class 🙄
Overall-Worth-2047@reddit
I get that! I spent some time with Pascal too, and I’m really glad to have moved on to something more practical and enjoyable!
aplarsen@reddit
I enjoyed it as a starter language in the 1990s but boy if it isn't hideous.
I_compleat_me@reddit
Started a BSCS in '95 (non-trad)... they made us do Borland Pascal. After two semesters the whole program moved over to C++... so I had Intro and Data Structures/Algorthms in Pascal... still have that book... couldn't sell it of course, they wouldn't take it back. Now I write C code for embedded widgets and cpp for utilities etc for them.
iamevpo@reddit
Was it Delphi?
swampwiz@reddit
There is something quite unappealing in Pascal.
harai_tsurikomi_ashi@reddit
Rust
ShrekSouffle@reddit
How useful is Lua? I remember learning this as a kid for roblox studios
Master_Ad1653@reddit
Im a newbie and this is probably a dumb question but what languages are best for media apps
hyperactivebeing@reddit
You mean Android? If yes, Java, Kotlin, Dart.
Master_Ad1653@reddit
What about python & c++ you can add as many as you want, right?
Nc0de@reddit
Clojure comes to my mind. It's a Lisp dialect running on the Java platform, with no real purpose, except obscene salaries in the fields, wherevar it's used.
Icy_Party954@reddit
Thats a good one. Functional and targets the JVM. It will teach you stuff you can use in other languages
Nc0de@reddit
Exactly! I didn't say it's bad, it's just different.
Icy_Party954@reddit
I need to pick it up one day. Its got a cool reputation, I know when I learned JavaScript I picked up a ton of functional programming skills. Closure has the benefit of...I think you can tap into any jvm library...I think which is huge.
Nc0de@reddit
Yes, I didn't say it's bad, it's just different. Maybe the book Structure and Interpretation of Computer Programs (SICP) will be of help. It has several free copies on the Internet. It even has a JavaScript version nowadays.
Overseer190_@reddit
I had to learn Clojure (and handwrite it) in a CS class, extremely fustrating and pointless
cafezinho@reddit
Sounds like you just don't like Clojure. It's not useless.
peterlinddk@reddit
Apart from the esoteric languages, there are some actual, real world languages, with few practical applications (there are some, but they are far between), but still extremely interesting. I'd suggest F#, Elixir or Haskel for a more functional approach - you'll learn to think about programming in a completely different way!
Or Forth, which has next to no built-in operations, but require you to define everything yourself, in a reverse polish stack oriented language! Fun, and also makes you think completely different about programming.
And, as others have suggested, Lisp and Prolog, that again makes you "think different".
All actual languages that have been used for real products, but knowing them has little to no marketable value!
ValentineBlacker@reddit
I get paid actual money to write Elixir! There are dozens of us!
In seriousness it does have a very practical, useful web framework.
Trick_Illustrator360@reddit
what application does it have?
ValentineBlacker@reddit
Well, you could make a web site with it. Among other things.
It's also very useful for any type of async, distributed system.
LetscatYt@reddit
elixir always seemed interesting to me, but so far i couldnt justify the time, sadly "dozens" hits the issue on its nail.
matsa59@reddit
There is many companies that use elixir. We can easily find good company using it.
Most of tech companies are garbage not knowing how things works. Companies that does elixir mostly know what they’re doing and are far better than the average (it’s my opinion)
Also elixir is « new » this mean 90% of the time you’ll work on new project without the big technical debt that grows for years.
I’m programming exclusively in elixir for 6 years now. And I regret none of them, plus I’m pretty sure I’m better in any languages now than 6 years ago. Just because elixir teach me how to write good code
Trick_Illustrator360@reddit
can you give some examples of these companies. I wanna check them out
matsa59@reddit
Examples of better? New? Or just companies using elixir?
There is also new big company in elixir such as Apple. Pepsi and Pinterest used it for a while so I’ll not say they new in elixir.
wademealing@reddit
There are many more than just dozens, nobody shares the secret sauce.
Klightgrove@reddit
Lisp dialects can be found occasionally in tools programming at game studios, but they were more common in the 00s for startups who wanted unique features that other languages didn’t have.
Hackers & Painters By Paul Graham lays out some convincing arguments for using Lisp, so maybe one day I’ll take the leap
novagenesis@reddit
You sorta nailed it. Lisp's claim to fame is how much it trivializes extending the language (since reflection is just a matter of treating your code as linked lists) while being far more production-viable than Forth.
The better languages get, the less you need to extend them. In 2005 I'd pick Lisp over C# because C# lacked a lot of important features. Now, I wonder what macros I'd have to write in CL to get a language that could compete with C#. It's great to write everything in a DSL defined for that thing, but how tuned does it really get before you give up and actually write the thing?
church-rosser@reddit
Lisp's claim to fame is homoiconicity, the ease of DSL creation derives from it's S-exp syntax being more readily homoiconic than any other language. For a Lisp2 like Common Lisp, the macrology that it's homoiconicty allows, coupled with with reader macros and modification of READ's semantics via adjustments to the readtable are what make CL in particular such a powerfully modifiable language.
Not true. The more powerful a language the more you are _able_ to extend them.
You wouldn't, CL isn't in competition with C# any moreso than the inverse. The two languages typically serve different use cases and problem spaces.
take a look at Coalton or Clasp for two wonderful CL DSLs that are all incredibly well tuned and which couldn't be easily created in most other languages and that realistically couldn't have been written as standalone languages separate from Common Lisp (ie you likely couldn't create either Coalton or Clasp without proving Greenspun's 10th).
novagenesis@reddit
That's a word I haven't heard in decades! But yes, you're basically saying what I am a little differently.
I think we're sitting on two different definitions of "powerful". You're not wrong. But neither am I.
I'd love for you to expound on that. I specifically named C# because it is often categorized, like CL, as a "general purpose programming language" and is expected to be pretty good at most things. They just get tehre differently.
I've played around in Clasp before. Coalton is a new one for me. I really enjoy how CL (kinda like Forth) gives you all the tools to build up DSL syntax as long as it tokenizes the same. But that's not the design goal for CL, just how it can be used. The design goal is solving general purpose problems.
I miss college. I replaced
fortune
with an echo of Greenspun's 10th Law on my unix account. I really wanted to become a Common Lisp developer. Ended up being a Perl developer (and moved on since then).church-rosser@reddit
why choose, get both!
I dont know enough about C# to note anything definitive. They seem like fairly different languages to me.
I dont follow, a CL DSL needn't 'tokenize' according to CL semantics, they can be modified extensively and still evaluate without issue.
Not really, the primary design goal of CL ANSI Standard was to unify a number of MacLisp derived Lisp2 dialects to a common interface. This said, it remains quite useful as a general purpose system's programming language.
Trading Perl for CL must've been quite the experience 😁 I'd have moved on too!
novagenesis@reddit
It tries to be a do-everything language. It's actually quite good (as I admit begrudgingly after years of hating on it). But yes, feature-for-feature it's very different from CL.
That's kinda what I meant. If you're defining your own syntax and it's not list-based, CL isn't for you.
I moved on to node.js and absolutely loved it. I never looked back ;)
zeekar@reddit
Writing your own Forth interpreter is a lot of fun. Especially when you realize how much of it you can write in Forth...
LainIwakura@reddit
I know people who have written Elixir / Erlang for money, they're out there (and collecting a nice salary).
StoneMao@reddit
I think there was one created just to demonstrate that it could be done, baled on primate sounds, something like oogh, and awak.
Far_Understanding883@reddit
Visual Basic
Cinci_Socialist@reddit
Prolog is sick. Lisp is also sick, they're not useless but they're uncommonly used, prolog especially.
vaulter2000@reddit
Rockstar
https://codewithrockstar.com
or Ook! (already mentioned in the comments)
Electronic-Syrup-570@reddit
Java
Quirky-Solution-7242@reddit
I would say Scheme is definitely very useless.
1544756405@reddit
Don't learn a useless language. Learn lisp. It will turn your head around.
RealSchon@reddit
I wrote a big ass Python script to compile thousands of LISP commands to draw planviews of transmission lines, saving dozens of hours per project. LISP is definitely not useless.
Trick_Illustrator360@reddit
what was your usecase?
RealSchon@reddit
Creating georeferenced P&P’s of PLS-CADD models for A) importing into GiS and B) construction contractors to bid on once the project goes to IFC.
Basically, making CAD drawings from CAD models.
P-39_Airacobra@reddit
Or Prolog. Having never learned a proper declarative language before, Prolog broke my brain in the very best way
Trick_Illustrator360@reddit
what exactly is a declarative language?
P-39_Airacobra@reddit
There's no exact definition, but the gist is that you tell the computer what to do instead of telling it how to do it (declarative vs imperative). So for example in Prolog you just work on laying out relationships between things, the interpreter will do the work of laying out and testing those relationships for you. It's not like C (imperative) where you describe the exact layout of each data structure, explicitly bind each and every variable, and decide exactly how each algorithm will work in terms of data layout and control flow.
HugoNikanor@reddit
I can't say that I know Prolog, but it definitely is something completely different, and well worth checking out.
mmi777@reddit
Prolog is different indeed but I would never say it is the most useless language to learn. As OP is asking for useless languages in the question. Prolog just might be one of the few languages that opens the door to the future for a programmer.
Trick_Illustrator360@reddit
and might just break your neck
ramack19@reddit
LISP....wow, is that still used? I wrote a few basic LISP scripts for commands in AutoCAD single digit releases a long long time ago, ha.
oil_fish23@reddit
“Don't learn a useless language. Learn lisp.” This startled me into laughing so abruptly I choked
flawed_finch@reddit
I learned Scheme in college and I did an internship at an architecture firm doing electrical / lighting / fire system design for new construction. It turned out that autocad had a built in lisp interpreter that I used to automate all kinds of menial tasks. For example, in a multi-level building, most levels will have the same basic floor design, so I made it so we could just copy one floor’s plan to all the others (think outlets, light switches, etc). All the drafters and senior engineers were so happy I made their lives so much less tedious.
friendly-manspider@reddit
Dude. Similar story. I had a job heavily using AutoCAD and I basically automated my entire job wring scripts in Lisp. It was great. Yeah really different approach for Lisp compared to modern OOP languages.
anki_steve@reddit
Second
New-Leader6336@reddit
Brainfuck for the memes. Haskell for the street cred.
Dry_Development3378@reddit
asm
henke443@reddit
Absolutely not. Literally the most useful language in some ways because it makes you actually understand the fundamentals with which all languages operate on. You can speed up code in any other programming language (if really needed) and you can hack, disassemble and reverse engineer literally anything. It is also pretty much non-negotiable for anything small/embedded enough like robotics or IOT. Assembly is the Most useful language ever.
AlexanderEllis_@reddit
INTERCAL might be it, it's certainly my favorite. It has all sorts of great error messages like
PROGRAMMER IS INSUFFICIENTLY POLITE
for not using PLEASE enough, orRANDOM COMPILER BUG
, which just randomly happens. It even switches around version numbering- v1.26 is between v0.26 and v0.27, for example. There is (as far as I know) literally 0 reason to use this language besides being annoying.metroliker@reddit
Big fan of the `COME FROM` instruction, which is missing from most other languages.
Trick_Illustrator360@reddit
It should be added in all of them.
metroliker@reddit
Would make interop much easier if you COME FROM another language.
AlexanderEllis_@reddit
It really should be standard, I think it's a real missed opportunity to improve readability.
gopiballava@reddit
Sometimes, you do need a GOTO. But very rarely. And it should be clearly commented and described.
Having only COMEFROM available makes you think “Oh, god, do I really need it?”
zeekar@reddit
Since INTERCAL originally didn't have it, clearly you can do without :)
joonazan@reddit
Try IntercalScript for a more modern take that has absolutely nothing to do with INTERCAL.
It makes me angry how good it is even though there is no reason to ever use it for serious purposes.
auroraOnHighSeas@reddit
i love this, thank u for this gem
gopiballava@reddit
You should look at how to do an increment operation in it. As in, to simply add one to a number. It’s amazing.
prof_hobart@reddit
Reminds me of the old Apple C compiler messages like
small_d_disaster@reddit
Those are fantastic error messages
gerbosan@reddit
Rockstar programming language has no use but when those delusional recruiters require a rockstar dev, you will be the man/woman for the job
Trick_Illustrator360@reddit
I did not expect it to be like this hahaah
SueGeek55@reddit
🤣🤣🤣😅 You actually piqued my curiosity and made me look it up!
JasonStonier@reddit
6502 assembly.
United-Syllabub-9914@reddit
I would say COW is probably the most useless language though it’s quite interesting. It doesn’t have very many practical case uses though.
I believe this is the code for “hello world”
MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO Moo Moo MoO MoO MoO Moo OOO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo MoO MoO MoO Moo MOo MOo MOo MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo OOO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO
RinserOfWind@reddit
Here is an interpreter and generator for it. https://gcwizard.net/#/cow
And some others like Brainf**k, Whitespace, Malbolge, usw. are covered too: https://gcwizard.net/#/esotericprogramminglanguages_selection
TaintWaxingOcelots@reddit
Logo
americk0@reddit
Ooh learn Haskell. https://learnyouahaskell.com/
It's a really useless language in the sense that it's way toward the powerful end of the gradient from useful to powerful. You'll probably never write a line of it professionally but it is a great example of a pure functional programming language whose concepts you can apply to a more common, paradigm-agnostic language like Python or JavaScript. I would then recommend learning Functional Core / Imperative Shell as a way to integrate what you learned into real world programming
church-rosser@reddit
Neither Python or Javascript are remotely paradigm agnostic.
americk0@reddit
Pardon any confusion by that comma. I mean to say to a more common and more paradigm-agnostic language like Python or JavaScript. They're both not entirely agnostic about which programming paradigm(s) you follow but are both much more amenable for instance to being used for either OOP or FP or procedural or a mix of those styles than Haskell is to anything that isn't FP
church-rosser@reddit
Comparing Haskell's point free style to either Python or Javascript seems like an exercise in futile comparison, they're just so completely different....
americk0@reddit
Haskell is just a prime example of a pure functional programming language. I'm suggesting using Haskell to learn functional programming concepts and to experience a very different language, then take whichever learnings are applicable back to a more commonly used language like Python or JavaScript. For this purpose, exact syntax isn't the focus but rather the concepts like currying, monads, or declarative style
church-rosser@reddit
If one wants to learn a 'practical' functional style that also accommodates multiple programming paradigms, I'd recommend Common Lisp on SBCL well before I'd recommend Haskell. CL is much closer to Python or ECMAscript than Haskell and does a fine job of communicating most functional programming techniques without the purity and terseness of the Hindley Milner type system and all that seems comes with it.
americk0@reddit
Oh cool that's a good suggestion. Do you have any tutorials or books for common lisp that you'd recommend? I might just drive into that myself
church-rosser@reddit
I'd start here.
americk0@reddit
Thanks!
Tychotesla@reddit
Learn Racket or Common Lisp. And/or Prolog.
All the languages you've tried are part of the same lineage, the same family of programming. Instead of trying for something "useless", you can introduce yourself to two different families of programming. Each will stretch your mind in different beneficial ways, and each are used IRL in some contexts.
rosettacode.com collects different ways languages approach the same problem.
Various ways of writing the fizzbuzz solution in prolog.
And the same for racket.
church-rosser@reddit
Common Lisp 4evah!
Noshoesded@reddit
rosettacode.org?
Tychotesla@reddit
Yeah, thank you, edited.
Noshoesded@reddit
Np. Cool site, thanks for sharing.
rabuf@reddit
I'll second these recommendations.
Prolog, in particular, is very different from what most people are experienced with if they've used primarily procedural languages. Lisp and Racket are different from the listed languages, but more from their metaprogramming abilities (and higher order functions, but Python and JS have those too) and are still more or less procedural languages (or, you can use them as procedural languages without fighting them too much).
With Racket, you also get a true multi-paradigm language platform. It's a "language oriented language" so you can select a particular language (the
#lang ...
at the top of your source file) and get different semantics. This lets you get dynamically typed Racket, or typed Racket. You can have a relational language (similar to, but not quite the same, as Prolog) with miniKanren, and a lot of other options. Racket and Scheme (which Racket derives from) have a lot of good textbooks and learning resources available. Essentials of Programming Languages and the more recent Essentials of Compilation. HTDP and everything its authors have written. The various Schemer and Little books (Little, Seasoned, Reasoned Schemer make a nice trilogy; Little Typer; Little Prover; Little Learner). Every book on Scheme should be executable in Racket with no trouble or a small amount of effort.cvarakmen@reddit
Malborge is not only so confusing, yet one the most useless languages ever
GMarsack@reddit
Sanskrit is pretty useless, from what I’ve been told. :P
church-rosser@reddit
🏆🏆🏆
Comprehensive-Pin667@reddit
If you want a real language (not a joke language) that's really cool but has little to no practical uses, learn Prolog. It's fascinating and I have never seen anyone use it anywhere outside school in my entire life.
Apotrox@reddit
Add Haskell to that. Entirely different style of programming and God do I hate it.
HawkinsT@reddit
I agree, although haskell actually has significant real-world use. Pandoc's a good example.
wademealing@reddit
I keep hearing people talk about pandoc as a good example (which from what i can tell is mostly one guy) is there a decent opensource project in haskell other than pandoc ?
HawkinsT@reddit
Xmonad's another. Those are the two biggest projects I can think of, but I know it's also used on the back end by a number of large companies. For instance, I believe both Tesla and Github use haskell in some capacity.
wademealing@reddit
Thanks for the link, i never considered thinking of looking at the ranking from github.
TheHumanFighter@reddit
Far from useless enough. The paradigms you learn in Haskell actually apply to many modern programming languages. Prolog is basically unrelated to every other programming language currently in commcercial use.
BenjaminGeiger@reddit
The holy trinity of "entirely different style of programming": Prolog, Haskell/Lisp, FORTH.
novagenesis@reddit
I think half the problem is that writing efficient prolog is excessively difficult. As in, much harder than just solving a given problem in any other language.
Prolog teaches a good way to think about your problem set. But a terrible way to solve it.
reallyreallyreason@reddit
While I’ve never used Prolog itself, I have used a database called Datomic. It uses datalog, which is a syntactic subset of prolog, as its query language. You should check it out.
Bobbias@reddit
I'd vote for Malbolge, if we're counting esoteric languages. The language was designed with the express purpose of being as difficult to use as possible, going as far as requiring the source code itself to be encoded in a cypher, making it essentially impossible to read. Beyond that, it uses base 3 arithmetic, and essentially requires to use of self modifying code to accomplish most tasks.
There are very few programs written in it, with the first hello world program appearing 2 years after the language was published. And that code was not written by hand, but instead generated using a beam search algorithm.
If we relax the "uselessness" requirements a bit, and focus more on languages that are simply incredibly different from the ones you've learned, there are a lot of potential candidates.
Prolog is a logic programming language where you basically describe the problem and the compiler finds a program that solves it (assuming it has a solution). This is a very radically different way of writing code compared to the languages you have experience with.
Similarly Rocq (previously Coq) is an interactive theorem prover, where you wrote code that describes mathematical logic modeling something and can find formal mathematical proofs about it. It is possible to write programs and verify their correctness in Rocq as demonstrated by the CompCert C compiler.
Koka is a functional programming language with algebraic effect types, which clearly define what kind of side effects (if any) a function is capable of causing.
Haskell is an extremely powerful functional programming language with an absolute crapton of functionality that can be enabled for all sorts of advanced type level programming. As a bonus, since everyone loves to create custom operators, it's not uncommon for Haskell code to look like symbol soup with a handful of recognizable names mixed in here and there.
[APL](https://en.m.wikipedia.org/wiki/APL_(programming_language)) and other array languages treat everything as arrays and provide a bunch of super basic functions to manipulate them, leading to solving problems in a very different way than you might in other languages. As a bonus, APL specifically uses a bunch of custom symbols, leading to code that looks like this:
This example implements Conway's Game of Life in APL.
You could also try Racket, as another commenter mentioned, or any other Lisp really, as they are different enough from what you're familiar with to require learning to think differently about solving problems.
There are tons more languages in various different paradigms you could try, and they would all be valuable right now. All the languages you;be learned sit within a very tiny corner of the world of programming languages, and offer only the tiniest glimpse into the variety of languages, paradigms, and ways to think about solving various problems.
While I respect that you aren't interested in learning something just because it's "useful", I think putting emphasis on the "uselessness" of a language is not the best way to think about this. Instead you should consider "how different is this language from what I'm familiar with", because the more different and alien a language feels, the harder it will be to learn, but it will also reshape how you think about solving problems.
bdc41@reddit
I was trying to remember APL, glad it made the list. Has to be the worst language I ever learned.
Bobbias@reddit
I actually really like APL (and related languages). It's basically unreadable unless you know the language, and I'm not sure what working with it in a substantial codebase would feel like, but I really enjoy how it makes you think when trying to solve problems.
bdc41@reddit
Your code would be absolutely clear one day and unknowable the next.
rake66@reddit
Upvoting just for APL
Bobbias@reddit
Haha, thanks. I haven't spent enough time to really learn the language, but I do fully intend to one day. Even just learning the bit I do know has made me realize just how different you have to think when programming in APL.
chakrachi@reddit
apply at Google and they’ll let you know
JohnCasey3306@reddit
ActionScript ... The native language of Flash — which has been dead for years now; so it would literally be useless to learn.
Wouter_van_Ooijen@reddit
Why go for a useless language?
You can learn very interesting languages that do (or did) have practical application, like APL, snobol, M4, Forth, lisp.
fess89@reddit
Brainfuck has no practical application at all
Glittering_Sail_3609@reddit
Strangelly thought, it has. Due to its simple syntax it was used recently in abiogenesis studies.
https://arxiv.org/pdf/2406.19108?
DanielCastilla@reddit
Sometimes doom scrolling does yield some gems, thanks for the article.
ha1zum@reddit
Why do people do this to themselves
Express-Coconut-120@reddit
Wild. I was literally thinking about brainfuck the other day and as a dumb thought was trying to figure out how I'd explain what it is to a layperson. I realized there was no way a practical application I could use to paint the picture. Of course, here's one :)
TomWithTime@reddit
If you're studying abiogenesis then a fucked brain is a good start. Reminds me of videos I've seen of evolving neural nets where the first few generations are always useless. Either they can't walk or they can't eat and are just destined to fail. Those emergent programs will probably be the best brain fuck code ever written lol
fess89@reddit
I stand (sit) corrected
wrd83@reddit
Turing machines however have loads of application in theoretical algorithm proofs.
Brainfuck is just a tiring machines implementation
fess89@reddit
For sure, but I guess people don't prove the theorems using Brainfuck directly
spreetin@reddit
It can be pretty fun trying to create small usable programs using only a basic Turing machine. Wouldn't choose brainfuck as my vehicle for this though.
Synthetic5ou1@reddit
Came here for this answer.
Buffsteve24@reddit
Wml?
Error-7-0-7-@reddit
Scratch
IdiotGiraffe0@reddit
Nah honestly as a kid scratch Gabe me the knowledge of how to use code to make something. Yes it doesn't teach you coding but it teaches you structure and helps kids get started making programs without making them memorize what the names of functions and data inputs are.
IhailtavaBanaani@reddit
Some 8-bit assemblers are fun but very impractical in the modern day. The upside is that there are plenty of emulators to run the code and plenty of resources to learn from if you take on something like Zilog Z80 or MOS 6502 assembly languages. Also you learn a ton about CPU architecture and things like how to write algorithms for integer multiplication and division, because they don't have assembly operations even for those pretty basic functions. And you might end up making a Gameboy or a Commodore 64 game in the process.
elemenity@reddit
6502, sort of a spiritual ancestor[1] of modern day ARM, is nice and simple and a great starting point if you want exposure to assembly language.
There are lots of tools available. Additionally, I have a real chip wired up so that people can program one through the browser. You can play with it here: https://chiplab.emulationonline.com/6502/
[1] - https://thechipletter.substack.com/p/the-arm-story-part-1-from-acorns-6e2
IhailtavaBanaani@reddit
Yeah, and it's so simple and exposes the CPU architecture directly to the programmer. Basically the bits in the opcodes just define what the command does. And each command takes exactly one CPU cycle so you can just calculate the processing time based on the number of instructions. There are no caches or branch prediction or anything like that so optimization is really simple. And with something like Commodore 64 all the hardware registers are just memory mapped so they are very simple to use.
In short it has a very low learning curve and it's easy to master, for an assembly language.
FrostyBeav@reddit
When I was in college in the early 90s for electrical engineering, I put off the required embedded programming class until my last term because I didn't care for programming. However, the way the programming was tied directly to the architecture really spoke to me and I really enjoyed the class . My first job included maintaining existing programs written in Microchip PIC assembler.
30 years later, I'm still programming in it. Early on, the C compilers for the PIC were pretty inefficient plus I didn't have time to convert all of the existing programs, so I just stayed with it. Now I have an extensive library of products that would need to be converted and fully tested so it is what it is. I'm kind at a dead end, though, as Microchip stopped support for assembler several years ago. Considering I'm probably retiring in four years, that will be the next person's problem. :)
bravopapa99@reddit
JavaScript.
00PT@reddit
JavaScript’s practical application is basically the whole web.
bravopapa99@reddit
And look at the f* mess that's in. How many frameworks do you really need. Supply chain attacks. is-even.js and is-odd,js, FFS the fact they even exist is a joke.
The barrier to entry is so low that anybody thinks they are a hax0r if they can do JS. It's an abomination. No types, just floats. TypeScript is pointless because there is no RTTI checking.
Keep the downvotes coming.
I refer you to this for my final word in JS:
https://www.destroyallsoftware.com/talks/wat
00PT@reddit
The question isn’t “what’s the worst language?” It’s “what’s the language with the least practical application?”
bravopapa99@reddit
"What’s the most useless programming language to learn?" what post you looking at?
00PT@reddit
They’re the same question. Even bad languages are good to learn if you well be working in them. Also, read the last sentence of this post.
bravopapa99@reddit
I disagree they are the same question.
As for "Something with almost no practical application"... most languages were written FOR a specific reason, or they used to be, maybe not so much these days. So I guess we are taking "esoteric" stuff like whitespace or brainfuck or similar.
Less_General8510@reddit
:(
inbetween-genders@reddit
Someone a few hours ago posted here about their Wordpress site. I asked “cool what language you used to make that since we are in a learn programming sub”. Their reply was “Wordpress”. So there’s that 😆
Haunting-Pop-5660@reddit
Programming in WordPress is how I became fluent in the most beautiful language in the world, Uzbek.
N8theDegener8@reddit
r/languagelearningjerk is leaking
inbetween-genders@reddit
Almost nice! Almost high five!
Haunting-Pop-5660@reddit
YEEEEEZZZZZ
RileyWinchesterMemes@reddit
HolyC.
artificialbutthole@reddit
Fortran, cobol, visual basic, flash, possibly perl
Yes I know there is still a market for these, but it is near death and dying, so why would someone just going into university learn this?
Also, is PHP still alive and well and has a bright future? Or are people moving away from it?
moleman0815@reddit
Try Shakespeare - it's the most useless language i've ever seen and yes it really is a programming language.
It's only good for the simplest math equations or a Hello World one liner, but it's somewhat fun, you write a poem and the result is Hello World after compiling it. :D
I held a lecture once with a colleague at lecture day in our company about the most bizarre computer languages, so ii discovered its existence and other facts most people don't know in the industry. Stuff like that Ada Lovelace was the first inventor of a modern programming language 100 years before the first computers were invented all based on a calculation machine from Charles Babagge which also only existed on paper. She was also the daughter of Lord Byron they guy who is responsible that Mary Shelly wrote Frankenstein.
Okay, i will stopp, sorry but she was a very, very interesting and important person, most people do not know.
AmpzieBoy@reddit
Brainfuck.
It’s just a silly programming language that has 8 commands. These include > < + - . , [ ]
I remeber on my HS programming class, I learned about it, and made a really quick program out of it, nothing insane as it’s hard. But it’s just funny seeing it all written out lmao
DragonfruitGrand5683@reddit
Build a major project instead, one you can add to.
DevOps_Sarhan@reddit
Try Brainfuck or Whitespace, they’re mostly useless but fun challenges with no real practical use
canadian_viking@reddit
Turbo Pascal
tokyoeastside@reddit
Basic; Ruby.
serverhorror@reddit
I'll go with:
Here's a
Hello Wolrd
implementation:``` Say hello.
novagenesis@reddit
My favorite part of whitespace is how terrible it translates to code views. On my old.reddit at least, your whitespace code is being reduced to one space.
serverhorror@reddit
Well ... don't use old :)
serverhorror@reddit
On a more serious note:
Haven't seen a lot of Prolog, although it's still a general purpose language.
MulleDK19@reddit
Malbolge: Designed to be impossible to program in; took years before anyone wrote a working program.
safetymilk@reddit
Will also mention that if you’re in uni and want a leg up on everyone else learning Java and Python, teach yourself SQL. Almost every developer uses this in their career.
IlliterateSquidy@reddit
what uni doesn’t teach sql??
Connect_Potential-25@reddit
Some just test on it, rather than actually teach it.
safetymilk@reddit
Obv they teach it, but not always in the first two years. And in an academic setting you don’t really get to do anything interesting with it
novagenesis@reddit
My college taught database structure and design, where we were expected to teach ourselves SQL to keep up.
Knowing SQL without understeanding RDBMSs is a waste of time IMO.
IlliterateSquidy@reddit
that’s odd. at my uni, sql was literally the first language we learnt
Flimflamsam@reddit
Definitely excellent advice. You don't need to get too deep, but learning the differing types of JOIN is crucial, as well as the LIMIT syntax (so you don't retrieve a fuckton of results when testing queries) as different (R)DBMSs have differing syntaxes.
SQL is very, very useful to know. You may never need to delve deep into it (it can get insanely complicated, and there are concepts like stored procedures, triggers, etc.) but even just the SELECT basics can be incredibly useful.
David_Owens@reddit
I agree SQL is extensively used.
Dragenby@reddit
Visual Basic in 2015. Never used it once. If I need to do something related to my files, I use Python
Flo_one@reddit
If you want to min-max uslessness, go for gulf-of-mexico, formerly dreambird. https://github.com/TodePond/GulfOfMexico
If you want to learn a language that teaches you a lot of out there concepts but is rarely actually used, learn haskell
inconvenient_penguin@reddit
Labview....
quickcat-1064@reddit
Actionscript
Mountain-Papaya5170@reddit
I figure AutoLISP won't get you far outside of AutoCAD
opticcode@reddit
(Lisp is ((the)) best)
Mountain-Papaya5170@reddit
Lots of stupid parentheses!
raevnos@reddit
Lots of Irritating Stupid Parentheses. Get it right.
DFORKZ@reddit
Guile goes with everything
santaclaws_@reddit
Brainfuck: https://en.wikipedia.org/wiki/Brainfuck
And my personal favorites, whitespace: https://en.wikipedia.org/wiki/Whitespace_(programming_language) where no printing or visible characters are used.
And Ook! A programming language for Orangutans: https://cratecode.com/info/ook-language-runtime
PressureConfident928@reddit
And Intercal, a language where you have to be properly polite to the compiler for your code to work properly. At least brainfuck teaches you something about pointer arithmetic and memory management :P
raevnos@reddit
Polite, but not too polite.
serverhorror@reddit
Whitespace is (probably) the only language that supports the only correct indentation:
serverhorror@reddit
Whitespace is (probably) the only language that supports the only correct indentation:
Linestorix@reddit
I've built an interpreter for Brainf*ck years ago. It's fun. Someone (not me!) built a Brainf*ck interpreter in Brainf*ck. If I run this interpreter in my interpreter and feed it a brainf*ck program, it runs that program. It's fun! And slow :-)
SomeRandomFrenchie@reddit
Literally all those that were invented for trolling, like this thing that only works with spaces and tabs, don’t remember the name but peak trolling
Moikle@reddit
Brainfuck
wolverine_76@reddit
ArnoldC
scalyblue@reddit
HolyC which is only usable on TempleOS
I’d also say logo but there’s really not much to learn
CaptainUEFI@reddit
I took PROLOG in university. Ugh, I hated that language.
bdc41@reddit
Made me think of all lists as head and tail.
Neat-Medicine-1140@reddit
brainfuck
CaptainUEFI@reddit
I took PROLOG in university. Ugh, I hated that language.
https://www.reddit.com/r/prolog/comments/952d5v/is_prolog_still_used_today_and_is_it_still_worth/
Boomswamdi@reddit
Visual basic seemed like a complete waste of my time in my first semester of college
MyDogIsDaBest@reddit
Malbolge.
Not only does it have almost no practical application, it has NO practical application.
"Enjoy"
Dubmove@reddit
Visual Basic.
pixeltweaker@reddit
Objective-C. Since replaced with Swift but you could use it on old Macs.
Or you could take a step back and learn NeXTSTEP.
your_fathers_beard@reddit
I worked for a company where the CIO was still maintaining and updating a piece of software written in foxpro...the precursor to visual basic...which hasn't been supported since like 1995 or something. I found that to be pretty worthless, but I guess it worked sort of.
2050_Bobcat@reddit
Logo
crustyBallonKnot@reddit
Ruby on Rails? Haven’t seen that on a job post in the last 3 years or so!
fuwei_reddit@reddit
Tai Chi Programming Language. A programming language in Chinese. You can not only learn programming but also learn Chinese by learning it. https://taichi-lang.cn/
Night-Monkey15@reddit (OP)
I’m actually studying Japanese a little, and now I’m wondering if there’s a similar programming language for Japanese as well. Perfect way to combine my two interests.
FactoryBuilder@reddit
I don't know about most useless out of all of them but the most useless one for me that I know is BASIC. That's 61 years old and I used it to program games on my calculator. I have never seen or heard of it used anywhere else, for anything else. I'm sure older computers still use it but I think its intended use has long since passed.
thehotshotpilot@reddit
Holy C
Dennis_MathsTutor@reddit
None, I say none because I do enough research on the relevance and demand for any skill that I study
Areebaaaa@reddit
Javascript.
Then-Boat8912@reddit
I wonder if RPG is still around. Horrible
nerdspice@reddit
VB Script
thatwombat@reddit
The domain specific language you rode in on and the new applications that don’t use it.
yoloswagrofl@reddit
Lua is not useless but it's also one of those scripting languages that nobody talks about. Try picking that up.
K68bja9oIvz6J2X43DEK@reddit
INTERCAL is the most useless programming languages to learn.
C is the most useful. Learn C. It transforms your thinking. You will probably not use C in your career; however, it teaches you more than other languages can.
CountyExotic@reddit
nobody here to mention brainfuck? https://en.m.wikipedia.org/wiki/Brainfuck
ms4720@reddit
Define useless, what are your metrics?
BasicBroEvan@reddit
F# in the .NET space. Never saw widespread adoption. I’d argue VB has more use in the .NET developer world due to its presence in legacy applications
PangolinMediocre4133@reddit
Llvm IR?
godless_communism@reddit
Visual Basic
swampwiz@reddit
VB was very successful, as it allowed non-programmers to be able to build customized Windows apps. I'm not sure what has taken its place (and no, VB.NET is C#, so it doesn't count).
jeffrey_f@reddit
It used to be the thing
Dr_Beatdown@reddit
How about logo
https://ies.ed.gov/ncee/wwc/Intervention/295
kayne_21@reddit
Hey we learned some of LOGO when I was in elementary school in the 80s!
1010012@reddit
It's still actually used. I had a class on agent based modeling and we used a modern version called NetLogo
https://ccl.northwestern.edu/netlogo/
kayne_21@reddit
That's awesome.
I took calculus 2 last semester, and when we got to parametric equations we actually had a conversation about it. The prof used similar concepts to explain how they worked. I was the only one in my class that had ever even heard of LOGO. Then again, my 47 year old ass was in class with a bunch of 20 somethings.
1010012@reddit
I feel that.
Touched_Beavis@reddit
I still teach it to 11-12 year olds. They absolutely love it
It's a great topic for introducing concepts like subroutines, parameters, recursion etc. in a way that is highly tangible.
kayne_21@reddit
For sure, it was my first exposure with any kind of programming. The next thing we did was learn some BASIC.
FancySpaceGoat@reddit
HyperTalk professionals probably have a hard time getting work these days.
Slight_Scarcity321@reddit
At one time, I was a pretty senior Lingo developer, a HyperTalk-descended language used to script Adobe (nee Macromedia) Director. I also did some web development using LDML, the mark-up language for the Lasso Application Server. Learning a language that's tied to a particular technology is fine for academic pursuits, but don't get locked into this professionally or you'll spend a lot of time working in a bar like I did.
In school, we had a class called Programming Languages, intended to teach various programming paradigms. It covered Ada as the representative for procedural languages, Lisp for functional, Prolog for what they referred to as logical languages, and Smalltalk for object-oriented languages. There may have been one other, but it's been a long time. Not sure if there is a similar course taught in modern curricula. It seems like you could code in these various styles using any of the modern popular languages.
Learning an 8-bit assembly language probably wouldn't be a terrible idea as you'll learn how the metal works without being weighed down by too much complexity. Over on YouTube, Ben Eater has a series where he constructs an 8 bit computer from discrete logic chips.
FancySpaceGoat@reddit
> don't get locked into this professionally or you'll spend a lot of time working in a bar like I did.
Wow. I made that snarky remark very much in a tongue-in-cheek way. I had no idea that I could hit so close to the mark.
That sucks man.
Slight_Scarcity321@reddit
It was a long time ago.
MVanderloo@reddit
i wont call it useless but i think making something reasonably complex in awk would be fun
SueGeek55@reddit
I would say Perl 100%
josephjnk@reddit
“Most useless” is covered by other commenters, so I’ll go with “very impractical but not intentionally esoteric” and say Pure.
Brainfuck and other Turing Tarpit languages are basically puzzles, and don’t really teach you anything about the ideas underlying programming. A lot of commenters are mentioning things like Lisp, Haskell, and Prolog, but these are absolutely practical and useful tools in the right hands and the right contexts.
Pure is somewhere in the middle. It’s based on term rewriting, which is a significantly different computational model than nearly any other language mentioned. I love learning new languages, especially functional ones, but Pure has never made it onto my “to learn” list because it’s just too weird. On the other hand, I can absolutely see how it could be used elegantly, and I think programming with term rewriting could be mind-expanding.
So, if you want something that is actually intended to be programmed in (unlike the esolangs that are designed to be a joke) and you think it would be fun to have bugs in your program result in your program accidentally outputting mangled hunks of its own source code, learn Pure.
Electrical_Hat_680@reddit
Whitespace (not useless) great for something like obfuscating code or hiding it all as whitespace. Might make a good security sort of code base.
Bisexualbadbitch_@reddit
Some small learning utility, especially for youth, but Snap is the graduated version of Scratch, and is a visual “lego style snap-together” language using blocks.
jeffrey_f@reddit
COBOL and FORTRAN for the PC world. However, there is still a market for those if you can program in it and those opportunities are paying extremely well as a paid position between $60 to 100K.
I've seen consulting rates to about $100/hour
kewlness@reddit
I do not know a single person who has ever received a paycheck based on their knowledge of REBOL. It is absolutely a fun little language to play with though but I'm not sure learning it will really advance your skill set.
I would recommend learning a functional language which will turn all the imperative and object oriented skills you have learned on their head. Languages like Erlang, Elixir, Haskell, or Scheme. Prolog is also very interesting to learn (and was the original compiler for Erlang).
I also like procedural languages like Pascal or Ada.
No matter what you learn, try to build something like a Sodoku solver in one of the languages you know and then write it in a functional or procedural language. The paradigm shift is amazing and will make you a better programmer no matter which language you use to earn your paycheck.
Zach_Fox@reddit
Visual Basic
Dom1252@reddit
I wrote a few VB macros in PCOMM at work, and modified several others
It's not the most useful language to know, but it has its uses, especially VBA
rhijlk@reddit
Haskell
connorjpg@reddit
SML.
cgoldberg@reddit
My vote goes to Malbolge:
https://en.wikipedia.org/wiki/Malbolge
MegaMoles@reddit
HolyC, shouts out to Terry Davis!
ChefRoyrdee@reddit
Visual Basic for Applications. It’s got tons and tons of practical applications right now but I could see it being replaced with AI sooner than most things.
_Prestige_Worldwide_@reddit
LOLCODE
HAI 1.2 CAN HAS STDIO? VISIBLE "HAI WORLD!" KTHXBYE
EaterOfCrab@reddit
What is this cursed abomination?
ccrexer@reddit
Fortran
mijnpagina@reddit
Gw-basic
100BottlesOfMilk@reddit
I had a lot of fun with whitespace. It's kind of like assembly, but you can't see anything. It's cool because it's very simple in that there aren't physically many things you can do syntax wise, but you can combine the simple things together to actually do stuff
toopandatofluff@reddit
I learned Standard ML for a functional languages class (we had to pick one and Haskell was already taken) I haven't needed to touch it since.
CapnNuclearAwesome@reddit
piet is as beautiful as it is impractical, which is an impressive achievement on both fronts.
If you want a program you can hang on a wall, piet is the way
angryscientistjunior@reddit
Piet is definitely a contender for one of the most original ways to program :-D
Jason13Official@reddit
The only useless language is the one you have no use for.
TildeMester@reddit
Learn assembly. It’s useless in terms of no one writing assembly in their job, but still it will teach you the most about computers and it’s fun.
usernameplshere@reddit
Whitespace
CareerWest@reddit
Brainfuck
alexandre_gameiro@reddit
OCaml. Just plain stupid...
deftware@reddit
Brainf!@k
POGtastic@reddit
My vote goes to Curry, a superset of Haskell that compiles to Prolog. I took a grad-school elective that was taught by one of its creators. It was a fun class, and I learned a lot about the implementation that was pretty neat. The language itself is completely and utterly useless, though.
Idris is another language that I don't think very many people are using in production.
BenjaminGeiger@reddit
I thought the reason the language was called "Haskell" was because there was already a language called "Curry"?
Also, Idris will break your brain in a good way, even if you never write a single line of production code in it.
POGtastic@reddit
From a history [PDF]:
Round_Raspberry_1999@reddit
If you want to challenge yourself, I suggest you learn assembly.
Check this out: https://www.nand2tetris.org/
ma5ochrist@reddit
Rockstar is useless, but u can write u're a rockstar developer on Your resume
Kelethe@reddit
Malbolge. Not only will it have no practical applications, you probably won't even be able to write a hello world by yourself https://en.m.wikipedia.org/wiki/Malbolge
Zesher_@reddit
Emojicode?
Alduish@reddit
Might be unpopularopinion, if we exclude the troll languages made to not be used (brainfuck etc...), I'd say SQL.
You only use it to debug a database or to write a library to avoid using it.
You always interact with databases using libraries in whatever language your program or API is made.
sq00q@reddit
Do you mean relying on an ORM instead of just using SQL? If so, then this is (very) wrong.
Any application of moderate complexity + database size will run into issues if you rely on ORMs to do your work. Optimizing SQL is way easier than trying to wrangle an ORM into generating something that's performant.
SQL isn't hard to grok, it's just a fundamentally different paradigm than the tradtional programming languages. Just learning the joins, order of execution, group by, CTE, window functions, transactions, how to read query plans will take you a long way. And can be used with any programming language instead of relying on a custom language specific wrapper.
Mission-Landscape-17@reddit
Not true. For many reporting tasks raw sql is the best option available, because every alternative will be unacceptaply slow.
BenjaminGeiger@reddit
One that doesn't either get you a job or teach you something new. Period, end of discussion.
Now, if you're limiting "useless" to "you're probably not going to get a job writing in that language", then I'd go with Rockstar.
Incidentally, my single favorite line of code I've ever read, bar none, was written in Rockstar:
... and it sets the variable "my dreams" to 3.1415926535.
(Honorable mention goes to either Haskell or FORTH.)
TypicallyThomas@reddit
SPL
zxy35@reddit
ALGOL, Fortran the originals:-)
_Atomfinger_@reddit
The most useless language I know is Rego.
It can be extremely useful if you happen to work in a company that uses OPA - which is not that many.
If we take the same genre, I also happen to know Polar, which is again only used in companies that use Oso Cloud. Again, not that many.
Wolfe1@reddit
https://spookylang.com/
Mission-Landscape-17@reddit
Lisp, Prolog, Erlang or Haskle. They are all verytinteresting languages to learn but got very little practical use. In my entire careerei've only ever encoontered one Lisp developer position, and none at all for the others.
Also technically Postscript is Turing complete and it is possible to write software using it.
jameson71@reddit
Maybe brainfuck
AndydeCleyre@reddit
For a language with zero professional presence, Factor is totally wonderful.
cafezinho@reddit
You could program a Turing machine, but you'd drive yourself crazy. It would have no I/O, you'd have to have some finite encoding for each state. Any program that does anything remotely interesting would be difficult to write direct for a Turing machine.
eggs_erroneous@reddit
What about that one that was made entirely from Arnold Schwarzenegger one-liners. Obviously, that's incredibly awesome, but I'm not sure if it's super practical.
GroundedSatellite@reddit
TrumpScript
Serializedrequests@reddit
The list is much longer than the list of useful ones. Best advice is to learn something totally weird that stretches you.
safetymilk@reddit
If you have a lot of time on your hands and up for a challenge, you could write your own interpreted language! We had to do this for an assignment in a programming languages course in uni, so it’s not too unrealistic to accomplish over twelve weeks. We learned ML, Racket, Ruby and Python leading up to this assignment. Some of those are more useful than others, but they kind of give you an understanding of how closures and other language features can be implemented from scratch.
InhumanParadox@reddit
Go old school, learn AppleSoft BASIC. Write an Ultima clone and realize why Garriott ran screaming for Assembly.
Ziomium@reddit
Objective C
Alarming-Estimate-19@reddit
Honk! Honk!
Honk, Honk?
Honk!
dedreanu@reddit
D
Kitchen_Put_3456@reddit
If you don't want to count esoteric languages like brainfuck or whitespace it really depends. I would much rather ask what languages you should learn. And that also depends on what sort of programming you want to learn. Do you want to learn game dev, application dev, web dev or embedded dev. Or something else entirely. C would be pretty useless to web dev and JS would be useless for embedded dev.
Ill_Nectarine7311@reddit
Holy C
Dziadzios@reddit
Whitespace.