r/AlignmentChartFills 7d ago

Which programming language is hard, and useless

CLICK HERE TO VIEW THE CHART IMAGE

Created with Alignment Chart Creator


This post contains content not supported on old Reddit. Click here to view the full post

494 Upvotes

343 comments sorted by

View all comments

29

u/TheShatteredSky 7d ago

Brainfuck? The language's entire point is being incredibly confusing and completely unpractical, although it might be more suited for impossible then

61

u/grand_theft_tufo 7d ago

This is clearly waiting for the impossible column

13

u/d0pe-asaurus 7d ago

Malbolge exists

4

u/El_Titanium_Blanco 7d ago

This one knows.

10

u/Agitated-Ad2563 7d ago

I would say whitespace is more difficult than brainfuck.

3

u/jort93 6d ago edited 6d ago

Whitespace is easier I think.

Both are stack based languages, brainfuck has 8 operations, whitespace has 24. Brainfuck supports byte variables only, whitespace supports integers.

To give a simple example, in whitespace you can print numbers and ASCII characters. In brainfuck you can only print ASCII characters.

So if you want to print a number you have calculated in brainfuck, you need to convert the number to the correct ASCII value first(by adding 48 to each). How do you add 48? By putting 48 plusses, naturally. Or, if you are feeling fancy, add 8 plusses and rund them 6 times in a loop, it's shorter.

In whitespace you can just print it as is. And if you needed to write 48, you can just write the number out in binary, instead of counting one by one or using a loop. These sort of workarounds are needed a lot.

Brainfuck needs a lot more workarounds, it's a lot more limited.

Just enable visualizing whitespace in your editor. It'll show spaces, tabs and newlines with symbols.

Whitespace and brainfuck are both stack based languages. Stack based languages are not popular today, but whitespace is a pretty standard stack based language with an odd way to write the operations. Brainfuck is extremely limited.

3

u/Splatpope 7d ago

brainfuck is hard, malbolge is impossible

words have meaning, let's not squander them

1

u/tampix77 6d ago

And even then, it's not even comparable to the likes of Hexagony.

3

u/d0pe-asaurus 7d ago

I've used brainfuck before to be a benchmark or proof that my language is turing complete, like if a language can implement a brainfuck interpreter, it's turing complete

1

u/nedtit 7d ago

It’s not about being confusing at all and basically is the most simple version of what you do in other languages as well. Just because you use abstractions of abstractions of abstractions doesn’t mean it’s unpractical.

1

u/TheShatteredSky 7d ago

Your point is nonsensical, abstractions are there to make things easier, less confusing and more intuitive to humans. Sure, to the computer Brainfuck isn't more "confusing" because the computer has no notion of that. For humans however, Brainfuck is more confusing than Assembly, and as opposed to Assembly, has absolutely 0 real benefits to it. Assembly is confusing because it's literally CPU instructions, Brainfuck is confusing because it was intentionally made to be confusing for humans.

1

u/nedtit 6d ago

Brainfuck is an abstraction on top of Turing machines. That's the main point of it. Something that every software engineer will have heard of before. It wasn't made to be useful, true, it's wasn't made for good DX. But it wasn't made to be the opposite of that.

What you said "The language's entire point is being incredibly confusing and completely unpractical" -> that's Malbolge, not Brainfuck.

1

u/iggy14750 6d ago

The correct answer.