Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » Next programming language to learn...

This thread is locked; no one can reply to it. rss feed Print
 1   2 
Next programming language to learn...
Peter Hull
Member #1,136
March 2001

Name another language where that exists in a production codebase.

Chris you are full of shit sometimes.
https://docs.microsoft.com/en-us/dotnet/api/system.data.common.dbproviderfactories?view=netframework-4.8

Chris Katko
Member #1,881
January 2002
avatar

And proud of it. 8-)

And your link isn't a triple factory so WTF are you talking about? Or do you just like getting butthurt on other people's behalf? Did you literally just google "C# factory" and think that's what I was talking about when I said TRIPLE factory? No programmer on the entire planet should be defending the idea of a triple factory.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

Erin Maus
Member #7,537
July 2006
avatar

Are you just trying to be funny by overemphasizing Java's flaws or do you seriously hate Java that much? :-/

---
ItsyRealm, a quirky 2D/3D RPG where you fight, skill, and explore in a medieval world with horrors unimaginable.
they / she

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

Chris Katko
Member #1,881
January 2002
avatar

Are you just trying to be funny by overemphasizing Java's flaws or do you seriously hate Java that much? :-/

Java is one of the best corporate languages in existence.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

GullRaDriel
Member #3,861
September 2003
avatar

C.

Because soon everything will be back to C.

All others except ASM are garbage.

>:(

"Code is like shit - it only smells if it is not yours"
Allegro Wiki, full of examples and articles !!

Bob
Free Market Evangelist
September 2000
avatar

Another vote for D.

Here's a presentation on D I gave earlier this year. You'll need to download it to play it.

--
- Bob
[ -- All my signature links are 404 -- ]

Chris Katko
Member #1,881
January 2002
avatar

All others except ASM are garbage.

Does that include asm.js? ;)

Bob: Wow, a presentation by Bob himself! Definitely gonna check it out.

[edit]

There, an embedded mirror (once YouTube finishes encoding):
https://www.youtube.com/watch?v=ViEMowFtn9c

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

Bob
Free Market Evangelist
September 2000
avatar

I'd prefer to avoid a youtube mirror for the time being.

Thanks.

--
- Bob
[ -- All my signature links are 404 -- ]

Chris Katko
Member #1,881
January 2002
avatar

Hokay, i'll take it down.

But only if you say Java is a better language.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

GullRaDriel
Member #3,861
September 2003
avatar

Java is a better language than brainfuck.

"Code is like shit - it only smells if it is not yours"
Allegro Wiki, full of examples and articles !!

bamccaig
Member #7,536
July 2006
avatar

I wasn't able to post originally due to the login issues. >:(

I don't have much to add. My top picks have mostly already been chosen.

I think everybody should learn the basics of Lisp just because of how simple and elegant it is, and how many ways it still does things better than most of the languages we use daily. Alas, for various reasons (probably mostly just fragmentation from everyone creating their own dialect), it is a challenge to be productive in a Lisp so odds are you won't get to use it for real work, but I think it's still well worth learning.

Perl is a very powerful language to know too. Besides being nearly universally available in Unix-like systems, and being a sort of super-shell scripting language with a strong emphasis on text processing, it also comes with a huge library of third party modules available for completing most common tasks (CPAN).. It is being killed these days by the simplicity (and therefore popularity) of Python, but there is still a strong community behind it with some very high paid jobs too if you can get the experience to qualify for them. It is still my go-to for one-liners and the like. People complain about all of the symbols, but they all have a purpose and they're easier to understand than nested pointers in C and we all love those. :-*

Python is a good choice to learn because it's the new normal. It's probably a contender for the most popular language today. It's used by a lot of companies now, and it is being used in all mainstream domains (and plenty of niche domains too). Unfortunately, it's plagued with some design failures. The language itself is pretty basic to learn I think.

The hard part is learning to use popular modules to actually be productive. Though I think that's true of all languages/platforms, but unless you actually do something with it long term you probably won't remember much of it after a while. Use it or lose it. I guess I'm sort of lost the energy to do that anymore. Feels like I'm hovering just above burned out. :-/

Append:

Why did that blow up? Because ~ is a string concat (whereas the two argument version is two separate arguments processed in order). And during finalizer situation, the garbage collector will attempt to allocate to CREATE a new string (the combined one) which explodes. It makes sense in retrospect but nobody said anywhere in any document that said "omg, never do an allocation in a finalizer ALSO STRING CONCAT ALWAYS ALLOCATES."

It was already said, but you either missed it or chose not to address it, but I think it deserves being brought up again. I think you're completely wrong that it "makes sense". I'd argue that it absolutely makes no sense, and reeks of poor design.

As was mentioned, C#, which is also garbage collected, supports destructors without segfaulting from allocating memory from inside of one... Albeit, C# is higher-level so it probably has an easier time working around the inherent limitations of a destructor. I see no reason why you cannot allocate memory during finalization. It could certainly get hairy if the machine/process is out of memory, but that's sort of besides the point. The same is probably true if you can just throw an exception from the finalizer.

At the very least, I think the compiler should be checking for this sort of thing, and either erroring or at least warning you sternly. It looks like the kind of thing that you could easily do without realizing it, and if it's that difficult to even identify the cause of it that's just unacceptable. There may well be reasons that D hasn't fully taken off. :)

It almost seems like at this point they need to give up on D being the C++ killer, and take what they learned from it, and start anew. Maybe, just maybe, they'll be able to get a little closer to perfect and achieve wider adoption.

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

Chris Katko
Member #1,881
January 2002
avatar

I'd like to try Rust but I've heard it's pretty horrifically boilerplate at times because you're CONSTANTLY packing and unpacking values and that Rust forces you into a "one kind of programming mindset, the Rust Way (TM)". So some programs are easy, but many are very hard to "shoehorn" into the Rust Way.

However, it'd be a 100x more supported than D because it has corporate sponsors.

OTOH, almost every Rust programmer I've ever seen, has been a complete a-hole who thinks Rust and Only Rust is the One True Way (TM) and everyone else is a moron for not rewriting 10 million LOC programs in Rust. And doing so will somehow prevent all errors (when buffer overruns are only one type of error).

Still, a-hole users aside, I want to take a look at it to open my mind.

From what I've read, D's generics are a thousand times more powerful than Rust though.

It's all over the place. If I could just use D, with the kinks polished out, it'd be my ideal language for "general programming" (that is, unless I need a more niche language for a niche task). It's the closest to "I enjoy programming" I've ever come across. C# is REALLY nice for writing business programs (SQL, PDF, GUIs, and the like are easy to drop in).

Javascript is neat. But the "everyone is constantly making new frameworks" is a freaking wild west. You have to be "in the zone" to even know what framework is "The obvious choice, omg" because it changes every year. Today's "obvious" choice is going to be "grandpa coders choice" the next year. Angular. React. Reflect. Retract. Relakgosune.ksgnklsdagagd. 2.00. Oh, you don't have 5 years of experience with a framework that came out last year? What are you, an idiot? NO HIRE.

Still back to the beginning, I'm definitely going to try Rust at some point.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

Erin Maus
Member #7,537
July 2006
avatar

My job is automation/orchestration/devop applications made on React / Node / Java.

I haven't had a stressful day at work yet choosing a library or anything. I guess I'm not a good JavaScript developer :-[

---
ItsyRealm, a quirky 2D/3D RPG where you fight, skill, and explore in a medieval world with horrors unimaginable.
they / she

Chris Katko
Member #1,881
January 2002
avatar

Well, I'm glad you said it. ;)

Otherwise I'd have to.

...

;)

[edit]

Bob, your talk was excellent. (*some audio quality issues) You should consider making it public. Unless you've got some sort of NDA issues, I see no quality reason you should be embarrassed by it or anything like that. Well, except that you're not a senior enough of a developer to understand how much better Java is. ;)

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

 1   2 


Go to: