The ideal beginner's language

The best *first* language to learn must be simple, as in minimal.

It should force you to learn how memory works to use it. It should be ideally suited to solving trivial problems. It should demand that you inform the compiler what is to be done.

It should offer a clear distinction between data and operations on that data by default.

It should be implemented first on all new hardware. It should be the default fall-back for higher level languages. All other languages should be implemented in it and be able to interface with code written in it.

In terms of use, it should be among the most (if not *the* most) popular.

There should be virtually no end to books, examples, and tutorials on how to implement anything your can imagine in it.

And only when it becomes too painful to bear should it be discarded for whatever suits the new-found preferences of the programmer.

Attached: images (1).jpg (112x112, 4K)

Other urls found in this thread:

play.google.com/store/apps/details?id=org.dyndns.vivi.TinyBASIC3&hl=en_US
frinklang.org/
twitter.com/SFWRedditImages

What you're describing is C, which is a terrible beginner's language.

C is the best beginner language, if you have someone competent teach it to you. It is a simple language, with a minimal set of tools, so you will learn to implement the algorithms yourself instead of importing a pajeet's library. It will teach you a lot about handling memory too. Once you learn C, learning other languages becomes a joke.

Amazing, nearly everything you said was wrong

>. Once you learn C, learning other languages becomes a joke.
The funniest part is that cniles actually, unironically believe this shit.
Good luck learning ML or Haskell or Scheme or Clojure or Erlang with your mad C skills you mega brainlet

>so you will learn to implement the algorithms yourself
Bad lesson to teach beginners. I get the idea of getting them to understand these concepts, but you shouldn’t be reimplementing things for the sake of being an autistic hackerman. In a real business environment, doing that is considered a waste of time and resources that could have been better utilized actually completing projects, objectives, and goals.

>good luck learning all these irrelevant languages that nobody uses after C

These "functional" languages hide their under-the-hood C-like behavior with an elegant notation. They are only usable on very fast hardware that can compensate for programmer ignorance.

Cope

>The "underlying machine works like C" myth
user this hasn't been true since the 90s at the latest.

Beginners who are learning these concepts should be nowhere near a business environment.

"Business environments," although they make money, often have fucking awful computing.

I understand C is an abstraction for a machine that doesn't exist anymore, but doesn't the fact that new machines implement it make it a useful abstraction?

Scheme/Racket

/thread

Do you mean stuff like virtual addresses and whatnot? You can't really go around that anyway

>The best *first* language to learn must be simple, as in minimal.
exactly
that's why the best language is C

use a language that supports what you want to do. i want to make simulations so i'd use C++ in order to fine tune performance.

C has its uses but being good beginner language is not one of them.
Thing is c isnt easy, and even if you know it doesnt mean you are a good programmer, now imagine we teach beginners c, most of them fail and lose interest in programming (instead of learning easy higher level language and picking up c later in the future). Now that there is no one or few people who know c, their value goes up, and employers have no choice (actually they do now, c is dying) but to hire cunts like op. This of course cannot be allowed to happen, Id rather a million pajeets came today than incel like op not getting outsourced.

It's a useful abstraction to be sure, C is still the most reasonable solution for portable systems programming, but that's not the entirety of the domain of programming and a lot of concerns in C are just not relevant to many other fields within programming.

Microarchitectures and even instruction set architectures barely resemble the C abstract machine.

*BTFOs your dinosaur langs*
Nothing personnel

Attached: 530459CF-44FC-4FD4-A404-A1BB97C6B34A.png (600x600, 126K)

But what programming language offers the best fine tuning allowing for best performance out of a machine? Save for assembly of course.
I don't really see a good alternative around C, C++ or fortran

Pascal.

Attached: 6B9D7D4A-A647-4245-BA64-118BD747181C.png (220x220, 4K)

If you needed a junior Java programmer, would you hire one who learned to program in C or one who learned to program in Python?

As I say in C is the best option for portable systems programming. I don't think languages exist yet which comfortably take advantage of modern architectural features, although C compilers do try to implement it.
Even so working under the idealised model of computing that existed when C was invented, there are languages like Forth which operate at a lower level of abstraction. But these tend not to have the ability to build procedural abstractions which are as robust as those in C.
But if you just want to learn about procedural abstractions, learn Scheme because it's perfect for it. There's absolutely no bullshit, it's one of the first things SICP has you did. IMO learning programming using SICP is the best first step because it's utterly agnostic to whatever language you'll be using thereafter and everything you learn is transferrable. Unlike C where you spend a lot of your time learning C-isms.

>This of course cannot be allowed to happen, Id rather a million pajeets came today than incel like op not getting outsourced.
You'd rather have bug plagued slow software because you dislike C programmers as people? That's very professional.

go

What do you think about chicken?

Python is the best beginner language from the standpoint: If you find out programming isn't your thing, you'll at least be able automate bullshit tasks in your other pursuits.

Based and snekpilled

Fuck off nigger I wanna make games

Attached: unnamed (4).png (250x250, 38K)

Python, c programmer is probably an old luddite incel, he most likely cant even work in a team amd hasnt bathed in long time, python programmer is young and trendy, fits well in a team.

The code must work to a minimum standard, thats what is required from devs, bt of course c programmer instead of just doing what hes been told would probably start rewriting entire projects because memory handling was slightly inneficient. No one needs this bs at an actual company.

C or Java.

Beginner's All-purpose Symbolic Instruction Code.
l

BASIC
play.google.com/store/apps/details?id=org.dyndns.vivi.TinyBASIC3&hl=en_US

>They are only usable on very fast hardware
Even I give you this point, what exactly is the problem? I don't use a thinkpad x41 anymore and nobody else does.

start with Aramaic, and build yourself up to modern Finnish

Go is very imperative and low level, its better than scripting languages for systems administration

Julia is very high level for functional data processing. Julia combines all the best features of Python, Ruby and Javascript to be the best overall scripting language. Arrays starting with 1-index is the only thing that puts off people from Julia, but there is really no good reason to use 0-indexing for high level tasks

Frink: frinklang.org/

>The best *first* language to learn must be simple, as in minimal.
RISC assembly
>It should force you to learn how memory works to use it. It should be ideally suited to solving trivial problems. It should demand that you inform the compiler what is to be done.
RISC assembly (compiler=assembler)
>It should offer a clear distinction between data and operations on that data by default.
RISC ASSEMBLY
>It should be implemented first on all new hardware. It should be the default fall-back for higher level languages. All other languages should be implemented in it and be able to interface with code written in it.
RISC FUCKING ASSEMBLY
>In terms of use, it should be among the most (if not *the* most) popular.
RISC ASSEMBLY REEEEE
>There should be virtually no end to books, examples, and tutorials on how to implement anything your can imagine in it.
ITS FUCKING RISC ASSEMBLYYYY
>And only when it becomes too painful to bear should it be discarded for whatever suits the new-found preferences of the programmer.
YES ITS FUCKING
RISC
ASS
E
M
B
L
Y

Attached: images.jpg (275x183, 16K)

RISC is comfy as fuck.
Endless registers, a very minimal set of instructions (as the name of the shit implies), easy to understand conditional execution.
I had a blast programming for the ARM7TDMI

This has to be the most ignorant post I've read on Jow Forums in months.

t. never popped the hood of a Lisp machine

can someone please tell me what makes C so hard for beginners? First and only pure programming class I took in my EE degree was C and it seemed pretty straightforward? The only things that can be confusing at first are pointers and dynamic memory.. but I mean it's nothing Crazy? Not trying to be a cunt, I'm not too smart or good at programming either. I just read that C is hard from ppl on the internet and I worry if my prof just taught us the wrong shit or something. He was pretty anal about good practices and drawing memory diagrams tho.

You have to be able to play around with a programming language to learn it.
Many people think they can just memorize the programming language and this will make em be able to use it automagically.

Common Lisp
Also all popular languages are invariably shit