Best programming languages for their own sake

What are the best programming languages to learn if you don't care about jobs, hype, community size, etc. but just about the language itself? Languages that make you change the way you think, or languages with great expressive power.

Imo Scheme is a good example of a language that won't necessarily get you a job, but is worth learning nonetheless.

I'm asking because I'm looking for new vistas to explore in language land. I know Java, Haskell, Scheme and Python pretty well and have some experience with PHP, C++, C, JS and Basic.

Other urls found in this thread:


miniKanren; Prolog; Erlang; Scheme; FORTH; OCaml; Assembly; Haskell.

functional programming languages with mathsy type systems.
homoiconic programming languages, specially if they are functional.
logical programming languages.
Some assembly, for the sake of understanding what's going on at the hardware level; that or at least learn C with pointers and memory management. Taking a compilers course is also mind-blowing and serves a similar purpose to learning assembly.

yes yes your question is cool and all but which one would you fug?

I think shell was a qt fairy boy in the full version. so that.

OP here, definately python. I like blonde, I like straight hair, and I think girls who show affection to animals are cute

I already took a compilers course. Best CS class so far, except for AI maybe.

Also, on a related note, are there any languages who are usable (no weird unusable esoteric shit, though that can be fun) but are nonetheless completely different from most other languages? Langs that fill a weird niche or something.



If you like low level shit then get down C and asm. Most languages have an FFI to C and it's fucking everywhere. Maybe start with MIPS asm (less instructions, cleaner syntax) and then move to x86 so you can understand what your compiler shits out. Also Intel x86 exists, so you don't need to use AT&T visual cancer.

Rust (you said ignore community) is really interesting in that it doesn't allow memory unsafe/thread unsafe programs to compile. Yes, this actually works, I couldn't believe it myself at first. The type system is similar to Haskell, algebraic types, monads and shit. Sad it won't replace C++ (coming from a mainly C++ guy) because of legacy crap and Mozilla (commies). Hopefully Google or something will pick it up after Mozilla finally dies.

I can't find the original, only an edit some guy made.
Java, Python, C#, R

Fag. Also according to this image s/he is a pretty big fairy.

You sicken me

What if you do care about jobs? What's the best "real" language to learn in current year? Seems like C++. I already know the basics but pretty much none of the advanced stuff. Learned it in high school and have worked as a code monkey with scripting languages and some C# and a tiny bit of C. So basically I know C with classes and without much if any memory management.

Then put that on my resume and use a dynamic language for interview questions?

Try a bit of Unlambda if you want to round out your resume

x86 Assembly. It probably won't get you a job, but it will certainly help you debloat your system once you get skilled with it.

Ruby just looks immature tbh.

By replacing small programs that make up 0.01% of your system?

I'll be making millions in no time

There are people out there that think this

C is quite obviously the hottest, closely followed by C hash, Python is definitely in the top 3 though, but doesn't compare to C and C hash.
C looks really magestic and like she would be a nice person.
C hash looks book smart, the sort of girl you could chat to and who would actually understand you. Probably doesn't talk much, but that's ok, it's kinda cute.
Python is like C, except not really magestic.

It adds up eventually.

Your pic is dumb OP. Anyone with half a brain wants to fuck C++. But I don't sexualize cartoons because I am not an anime pedophile.


How many programs have you replaced?

4, the one that I saw the biggest benefit from replacing was my fan daemon. It was slight, but noticable.

C++ looks so basic with her print heels though.

Quick newb question; Visual basic being a potato obviously implies that its bad, can you elaborate why?

What's wrong with my opinion?

I don't mean any offense, but you seem like a guy that reads a lot and doesn't really bother to look for pronunciations.

No, I know perfectly well that people call it C sharp, I just don't like 'C sharp' as much as I like 'C hash' mostly because that's how I pronounced it when I read it the first time. There's also the fact that I don't really associate # with 'sharp' because I'm more a programmer than a musician so it just makes more sense in my head.

In that case, my mistake, I misunderstood your intentions.

It's ok, your inference was still right. I do read alot and I don't really look for pronounciations, the only reason I know it's pronounced 'C sharp' is from hearing other people.


It's C-octothorpe. Pronounced cock-to-slurp, because it's a Microsoft technology.

Fucking this.

C is mature and skilled in both body and mind. C would not just be the best choice, it would be the only choice.


I'd fug R and Ruby.

Why on earth would you have sex with Ruby? She probably has a meat grinder for a vagina.

Where are you getting this?



Perl, sh, Lua. JavaScript if you hate yourself.

Ur/web :^)

D programming language

First I was gonna say either JavaScript or ActionScript, but Perl is definitely more my type.

Is she a character from something?

She looks about 10 years too young m8.
Same with Shell, and now that I really look, AS, Scala, C#, and PHP are as well.
Christ what the fuck, why so many lolitrash?

Languages for their own sakes?

Forth, Mercury.
Erlang, Common Lisp.

Books: Thinking Forth, Let Over Lambda.

For Erlang, focus on developing servers without ever taking them down. It has hot code loading and versioned modules. For Mercury, start with writing Haskell in it and seeing how the all the hacky shit goes away.

No language-tans for these though... smart, logical, 21-year-old Mercury is the most dateable, although she might expect more formality from you than the others. If you take ANS Forth on her own, maybe as a child of Forth, then she's 22, not wasteful, fun to talk to - but if you upset her, like most women she may not be willing to spell out your mistakes for you.

Can I just cuddle the python?

I'd fuck Ruby.

Scala is best waifu

it's pretty obvious, fam


functional programming is a meme

your face is a meme

stay butthurt fp fag :^)

Not rly butthurt tho, I have job I can program fp in and I'm more productive in fp, so no real reason to be butthurt.
I'm just sad most of the programmers are unenlightened imperative plebs writing shitty code.

D programming language needs its own cute anime character mascot

descartes best waifu

maybe try a nice language from every category? So at least one lisp, one pure functional, one oop, etc.?

Scheme and haskell would be nice as lisp and pure fp, but I'm not so sure what the best oop would be. Java, C++ and C# all get lots of hate, though especially Java and C++ are the 'purest' oop if any lang can be called that.

No love for Java? She looks so happy. Also, I have a craving for coffee, but I don't feel like getting up.

The fact that she's holding hiding two weapons maces? and looks mischevious as hell. Would not want to stick my penis in that level of crazy.

Found the fag

She's 20 user.

Those are pom-poms I think.

Smalltalk is usually called the purest OO. Java is a hamstrung language and C++ can do almost everything if you don't mind backwards compatible syntax.

I think the handles are too long to be pom-poms

Not when the picture was drawn.

R is love R is life.

The edit version is objectively worse, post the original
I didn't filename mine properly so I can't find it

Visual Basic is a language invented by Microsoft (arguably several languages; VB6 and VB.NET are completely incompatible). Before C#, it was regarded as a shit language for people who were baby ducks for BASIC which they learned in college. After C#, it's currently regarded as a braindamaged and verbose re-skin of C#.

I honestly don't think there has ever been any task for which any version of Visual Basic has ever been the most appropriate language. That's not something I would say about most languages.


yeah, a meme since since 1958.
Literally the second programming language to be invented was a functional one

I have a version with english details.

thx mate

I like Python, but that C++ tan looks like a girl I'd date in real life.

I hate myself and I work with JS




Does your meme-language have XML literals?
Does it have On Error Resume Next?
Didn't think so!

.NET stack

What makes you think a language that pisses off autists would be right for anyone on Holla Forums?

I would say there's something special about R that makes it worth learning:

Operators work with vectors and the whole language is designed with arrays in mind.
It has lazy evaluation, which makes debugging kinda difficult at times.
The calling conventions are pretty neat and out of this world: can combine positional and named arguments (I know other languages can do this now); default parameters can be defined in terms of other parameters, so you can write generic/polymorphic functions just by explaining the relationships between all possible parameters.
It has very good support for functional style: there's a built-in expression for every statement; higher-order functions, function application, etc.
And its syntax doesn't quite belong to the C family, for instance it uses ranges/sequences instead of increment/decrement.

in other words, Haskell, or if you don't mind even more meme languages: coq, or any other language with dependent types and full lambda cube. I think Shen also has dependent types

in other words any classic Lisp (Clojure and Mathematica start to depart from pure homoiconicity with their filthy syntax). Liskell and Shen are good choices if you want both formal type system and homoiconicity in a functional language

Prolog, Mercury, Curry if you are into Haskell

congratulations retard

are you trolling?
do you think exception handling is unique to that crap of a language? Even that page advises you to use TryCatch instead

Her brain may explode.

Coq, Agda and Idris are the main ones. Coq has the biggest user base. Agda is probably inferior to Coq as it lacks proof tactics (never used it, just what I heard). Idris is the newest and has Haskell like syntax (Coq has its own syntax that is unlike any programming language). I would recommend Idris for most people.

I think Shen allows you to create your own deductive system, so it should be able to do Martin-Lof type theory (which is a more common name for Lambda Cube in the field), but I didn't find much information online, and the author is really abrasive and answers all questions with "you need to go and buy my book and read it".

There's no such thing as a tool for every job.

I personally prefer doing the most I can in C, because it's the language I'm more familiar with, and the one that will always give the best performance and the more control over what's happening. However, since I do a variety of things at work, in practice I end up using C the least. I need a lot of ad-hoc scripts to handle files and text, so what I end up using the most is sh, with all the tools you find in a standard Linux box (piping find, grep, sed, cut and xargs is a commonplace operation). Sometimes sh is not enough, specially when I need lists or tables, so I use Python sometimes. I need to generate a lot of fancy plots easily and dynamically, so I use a R a lot (with org-mode). For actual development though, C is always the way to go for me. There are some cases (specially when there are interfaces involved) in which OOP is a good choice, and although you can do OO in C just fine, the abstractions provided by C++ and other languages make the job a whole lot easier, so I sometimes use C++. I can see Lisp or even Prolog as good scripting languages if I ever build something with support for scripts. For web applications I use Django, so Python, though I suppose Ruby would also be fine.

People like to paint C as this seven headed beast, and it can be. But if you were well educated from the start then it should be fine. I.e. if you know how to properly structure your program, if you use sane compiler warnings (-Wall -Wextra -Wconversion is the bare minimum) from the start of your project, if you make sure all your builds are valgrind-friendly from the start, if you use static analysis tools, then C is not only a piece of cake, it's probably safer than other languages due to the amount of tools there are to debug it (because so much bad code has been written in it).

In short, it's good to learn at least one language for each programming paradigm: C, Lisp, Prolog, Java, etc, as well as at least one domain specific language for every area you work with (e.g. Octave, R, etc)

1. Java and C++ should be fatter
2. Where's the functional family?
3. What's this bullship with blood types?

Some Japanese idiot without any degree or practical experience once in the 70s claimed that blood type determines personality and everyone in Japan instantly believed him.

If you want to deal with how computers actually work then C with ASM.

If you want to deal with the beauty of programming learn

Racket has modern and useful libraries but will take you down the rabbit hole of functional languages just the same.

i use python for everything

If you don't care about jobs and want to have some fun, learn Awk, Perl, and shell script (careful; you might get a job anyway).

The 'jobs don't matter' part was too make sure I wouldn't have people tell me to use C# or PHP, that's all

i never shiggyd this hard