DEV Community

loading...
Cover image for What are your favorite less-common programming languages?

What are your favorite less-common programming languages?

andygeorge profile image Andy George (he/him) ・1 min read

Was having a nostalgic chat with some coworkers recently about programming languages we've used in the past, especially some outside of those that we seem to more talk about, like Python, C, Ruby, Go, Java|Script, HTML, etc etc.

Here are a couple of languages that I have fond memories of that maybe don't fit the current "corporate dev mold":

  • TI-BASIC: As a kid, I dabbled a bit with QBASIC on our first family computer, but I didn't do anything of substance until I got my first graphing calculator in middle school, the TI-80. I wrote some (real bad) tiny text adventures, and then a bunch more fun little things once I upgraded to a TI-89 - it was vastly more powerful AND had a data link so I could code fun little scripts FROM A PC and transfer them to the calculator

  • VBA: Feels like a lot of people have VBA horror stories, all of which are valid, but we should all acknowledge the amount of true, real-world business value wrapped up in VBA. Best part, VBA was #nocode before #nocode was cool. Classic VBA dev flow:

How do I do this??"
Lemme just record this Excel macro and see what VBA it spits out.


So, my question to everyone else:

What are some less-common languages that you hold near and dear to your heart?

Discussion (47)

pic
Editor guide
Collapse
webbureaucrat profile image
webbureaucrat

Elm.

Developing for the browser platform is so difficult because it's all so dynamic and unpredictable. Elm is SO strongly and statically typed that it is literally impossible to get a runtime exception in elm.

It makes development SO fast, because I know that as long as my code compiles, it will probably behave exactly as I expect it will in every major browser.

Collapse
adam_cyclones profile image
Adam Crockett

I am probably going to stir up a give of bees, but can you really trust any technology, that level of trust is dangerous.

Collapse
webbureaucrat profile image
webbureaucrat

I mean it's not like I don't test code before I ship it, if that's what you're asking, but what I mean is that when I do run it I don't end up spending a lot of time debugging.

Thread Thread
adam_cyclones profile image
Adam Crockett

I had the same thoughts about typescript I can relate. Anyways, I'm feeling a bit unwell and maybe have a negative attitude today, excuse me.

Thread Thread
webbureaucrat profile image
webbureaucrat

Oh, I'm sorry! Get to feeling better!

Collapse
cicirello profile image
Vincent A. Cicirello

I'd have to say Scheme. Back in the mid 1990s, I learned functional programming in Scheme in a course on Programming Language Concepts. In the same course, we had a project to implement an interpreter for Scheme. The project was fun. I haven't used it since, but is a nice memory of the Scheme language.

Collapse
neilcodes profile image
Neil

I did the same for my Programming Language Concepts course back in 2013 - scheme is alive and well in this area :)

Collapse
zafarhussain profile image
zafar hussain

I did all my Hacktoberfest PRs in Racket, Scheme's latest incarnation
last year too

Long Live Scheme

Collapse
scroung720 profile image
scroung720 • Edited

Prolog it is extremely powerful and under rated. Every time I see people wanting to do functional programming or programming base on states it reminds me of Prolog. Why is so powerful? because someone had this brilliant idea to take the mathematics language into a programming language. These allowed them to implement proven logic. Very often with most of the languages you need to adapt an idea to the specific language with prolog you can construct mathematics concepts allowing you construct solid programs.

However, I should address that not all kind of mathematics adapt to prolog. It is super useful for constructing collections and working with them based on mathematical induction.

When I was on college I created a program in prolog capable of finding the optimal path between any pair of subway stations in a system with almost 200 subway stations. Obviously the problem was restricted to being the optimal according to the number of hops between stations. I was able to do it in just one line of code I was amazed by the elegance of the language. Even my professor didn't believe that the language was capable of doing that but my program passed all tests. The intention of the professor was to demonstrate that prolog is not a good fit every time lol but I sabotaged the lesson.

Collapse
karjudev profile image
Giacomo Mariani

And you have to see ProbLog that introduces probabilistic programming in this world.

Collapse
scroung720 profile image
scroung720

I didn't know this. This is awesome thank your for sharing I am going to play with it when I have the opportunity.

Collapse
amnemonic profile image
Adam Mnemonic

I somewhat miss older versions of Delphi. I think that today it is impossible to develop application with native gui, no dependencies, small exe size and fast at the same time. Python is great and you can do a lot in it but it fails a little with gui and deployment.

Collapse
daviddalbusco profile image
David Dal Busco

Haha that flashback 👍🤩

Yes agree, it was pretty neat to be able to develop a native GUI so easily but I always had the feeling that the auto-generated code was waaaaay too verbose, so I don't miss it much in that sense 😉

Collapse
amnemonic profile image
Adam Mnemonic

These times programming was lot faster even on slower computers :)

Collapse
magikfingerz profile image
magikfingerz • Edited

Well, if you miss the "old delphi feeling" you should try Lazarus/FreePascal, allows you to make almost the same things like Delphi: lazarus-ide.org/

Collapse
andygeorge profile image
Andy George (he/him) Author

Wow I had completely forgotten about Delphi. I never used it, but I can still see those old Borland book + floppies bundles!

Collapse
ahferroin7 profile image
Austin S. Hemmelgarn

Lua and Elixir both come to mind, though it’s debatable whether they’re ‘less common’ or not (both are not mainstream, but have significant usage in particular areas). Lua because of how lightweight and fast it is (and the fact that it’s one of the first languages I truly ‘learned’ instead of just using), and Elixir largely because of Mix and how it makes so many things that many languages require an IDE or complicated external tooling to work with first class parts of the basic development tooling.

Collapse
papey profile image
Collapse
andygeorge profile image
Andy George (he/him) Author

Agreed, especially on Lua!

Collapse
eljayadobe profile image
Eljay-Adobe

"Less common" is really subjective.

I'd say F# as my favorite functional-first functional programming language, and D programming language as a "better C++ than C++".

If those are too mainstream, then I'd say EZAsm for 68000 - but that's so long ago I only have vague happy memories.

Collapse
andygeorge profile image
Andy George (he/him) Author • Edited

"Less common" is really subjective.

Agree 1000%

D programming language as a "better C++ than C++".

Shit, that sounds great. I need to learn D.

Collapse
eljayadobe profile image
Eljay-Adobe

D overview to get you started. There are 3 compilers available, GCC (gcd), LLVM (ldc, the one I usually use), and from the creators of the language DMD. They're available for most platforms.

Collapse
rahul_ramfort profile image
Rahul

SML - Standard Meta Language

I wouldn’t say this as near and dear to my heart but I definitely loved while I was trying it out. It made me understand programs, the code I write better. Irrespective of our language proficiencies, each one of us has to explore SML to understand the fundamentals of programming language thoroughly.

Moreover, it is fun to write code in a language that doesn't have many in-built/helper functions that the modern languages/frameworks have. You gotta really grind it out to make things happen.

Collapse
fennecdjay profile image
Jérémie Astor

Haskell, which I just used for an mdr implementation, it was really interresting.

lilypond I used a great deal now, for all my work needing western musical notation.

I have been using chuck for a while, I loved it, but a few flaws in it (performance, holes in the types system, no generics or function pointers) lead me to write gwion I use in a few shows and intend to write most if not all my contemporary music with, without a doubt the nearest to my heart 😄

Collapse
itsasine profile image
ItsASine (Kayla)

VBA is the thing I feel like I should know but never toyed with. My math programs only ever required VB, the same class as Comp Sci people could take. In theory, I guess that meant transferable skills, but I haven't run into anything I've needed Excel to do that there wasn't a smarter addon than whatever I'd make (Solver, Jira integration).

Collapse
limarceu profile image
Limarceu

I started with Word VBA automating my office tasks, in the end, I created three full documents which were administrative process and two models to Oficials Documents from a blank. With Modules and forms.
All my font of knowledges was Docs of Word VBA, Stackoverflow and some e-books.
In the end, I earned a new language to speak, when I was working in office like administrative assistent.
Word VBA is my first language programming that leaded me to python and in acctualy Data Science.

Collapse
andygeorge profile image
Andy George (he/him) Author

That's awesome that it lead you elsewhere!

VBA gets a bad rap sometimes, but man it was eye-opening to see how much great stuff you could do, especially when you're in an Office-heavy atmosphere.

Collapse
schmitzel76 profile image
Patrick Schmitz

Had a lot of fun with low level assembler programming on my C64 and Amiga. The use of assembly is a lot less nowadays. I sometimes use some at work on low cost ARM devices, but that is also quite limited, mostly only some kernel glue logic.

Collapse
vlasales profile image
Vlastimil Pospichal

XSLT

A very powerful, fast and at the same time underestimated language that I use in my projects.

Collapse
leob profile image
leob • Edited

LOLCODE :-)

It's the only "esoteric programming language" that I've ever studied in earnest (the only one that was within my grasp really, haha).

en.wikipedia.org/wiki/Esoteric_pro...

Collapse
adam_cyclones profile image
Collapse
winstonpuckett profile image
Winston Puckett

Does Rust still count?

Collapse
pontakornth profile image
pontakornth

Actually Rust is quite popular now but I think it can be counted because it's still relatively new. It's pretty great for building safe application without sacrificing memory control. If there are more complete libraries, its use would increase greatly.

Collapse
mantassidabras profile image
MantasSidabras

Shell. Old, but gold. Everything I automate ends up as a shell script, even though it sometimes calls node or python to get certain data.

Collapse
lakshandev profile image
Lakshan perera

pascal programming, it was my first programming language taught in school

Collapse
0916dhkim profile image
Donghyeon Kim

I had an opportunity to learn Racket a few years ago, and had a very pleasing experience with the language. Racket is user-friendly while not losing its Lisp elegance.

Collapse
ash_grover profile image
Ash G • Edited
  • Fortran - Its still being used at lot of companies.
  • Cobol - Its old I know, but its being used to program mainframe computers.
  • Haskell
  • VB6
Collapse
andygeorge profile image
Andy George (he/him) Author

VB6 makes me shudder a little haha.

Always wanted to learn Fortran/Cobol - like you said, it's amazing how prevalent they still are out there in the real world.

Collapse
jeromek13 profile image
Jérôme Krell

I see great potential in NIM and ZIG but also Dart which is not that "common"

Collapse
sigzero profile image
sigzero

Tcl.

It's different enough that it makes it fun to program in. The surrounding community is one the best as well.

Collapse
andygeorge profile image
Collapse
jdoss profile image
Collapse
dmartinezsarta profile image
Daniel Martínez Sarta

From a Ruby background I started to learn Elixir and it's amazing.

Collapse
paddy3118 profile image
Paddy3118

Awk. Learnt decades ago, I still have need to program in that pattern-action style in other languages such as Python.

Collapse
xantiagoma profile image
Santiago Montoya A.

NASM (Netwide Assembler) I remember It was so much clear than its most-popular alternatives due to the instruction set order.

Collapse
swimburger profile image