Hacker News new | ask | show | jobs
by golemiprague 1391 days ago
I think the simple grammar makes it harder, it is like assembler has simple syntax comparing to java but it doesn't make it easier to read or write.
1 comments

You're mistaking simplicity and lack of capabilities.

If a grammar is too limited that it leaves things unsaid and thus ambiguous (well, I can't say that's not a thing in Japanese - it is, sometimes) then yes, it can make things harder because one gotta very carefully watch out for the context to be able to comprehend what's going on.

But if grammar is just simple - e.g. if there are no or almost no irregular verbs (Japanese has only two), or no concept of grammatical gender (so you simply don't have to care about anything related to your nouns and can indicate gender using an extra word if that starts to matter), it's probably just fine. I mean you're not losing anything in that case.

Considering your example (even though I don't think it's a good idea to compare machine and human languages in general) - many assembly languages do NOT exactly map to the actual machine code. Say, many assembly languages remove the concept of argument size which can be compared to a grammatical gender (your operands are your nouns and instruction is a verb). Let's say we're talking classic x86. In Intel syntax you can write "MOV AX, 0" and "MOV EAX, 0" but bytecode would be different - 66B80000 vs B800000000, the assembly had lost the 0x66 operand-size override prefix. There is AT&T syntax that has distinct "MOVW" and "MOVL", but the point is that it's a potentially unnecessary complication that proves to be not needed as everything is pretty much obvious without it.

I understand that simple is better than easy in many cases, that's the whole idea of lisp like languages, but I am not sure it is true for languages, especially for comprehension. Because things sound the same and there is no distinction it makes it hard for listening or even reading comprehension. Many time it is much easier to quickly decipher what a javascript function is doing than lisp because the lisp simplicity doesn't give you those immediate anchors to look at, it all looks the same.