Hacker News new | past | comments | ask | show | jobs | submit login

I generally understand the sentiment, but your are really comparing apples and trigonometry.



I'd disagree with that. I think coding languages are in a very real sense human languages. They have less history, less literature, less culture, and different uses but they have history, literature, culture, and uses just like any language.


Only if you consider computers to be people. Human languages are for communicating with humans. Programming languages are for communicating with computers.

For example, this week I've been hanging out on a couple of open-source project IRC channels. People aren't talking to each other in Python or Java on those channels.


> Programming languages are for communicating with computers.

Machine code of the lowest level that exist for a particular machine is for communicating with computers. All programming languages at higher levels than that exist to improve communication with humans (many of them of other purposes as well, but all of them, relative to machine code, include communicating with humans as one of their motivating purposes for existing.)

> For example, this week I've been hanging out on a couple of open-source project IRC channels. People aren't talking to each other in Python or Java on those channels.

That may be the case for those channels, but there's lots of places -- even outside of the programs designed to executed, where the source code is definitely used for communicating with humans, particularly future developers on the same code base -- where programming languages are used for human communication. I mean, that's the whole reason that HN has a code context in comments.


Natural language's main purpose is human-to-human communication.

Programming language's main purpose is not.

This is a weird semantic argument, but I think you understand the parent's point.


> Natural language's main purpose is human-to-human communication.

Agreed.

> Programming language's main purpose is not.

For languages other than raw machine code, the main purpose that they exist is human-to-human communication. A constraint that they face is the need to be able to be reducable to machine code to also support human-machine communication, but other than human-to-human communication (including time-shifted one-way communication to the future of the same human that initially created a work), there is no reason for them to exist at all.

> I think you understand the parent's point.

Sure, I understand the point. I'm also explicitly disagreeing with it.


For languages other than raw machine code, the main purpose that they exist is human-to-human communication.

If this were the case, then write-once software would be done in machine code. Instead, the 'constraint' you mention is the main purpose of programming languages.


Programming languages are absolutely for communicating with humans. Source comments are just one trivial proof of that.


Your trivial proof is "this thing that is explicitly not part of the language"? The whole point of comments is to say "these next characters are not part of language -foo-, so don't compile/interpret them".

And if you notice, comments are written in a 'traditional' human language, usually English.


if code wasn't a human language we'd write it in binary, straight to disk.


I can see my belt, but that doesn't mean the purpose of my belt is to be seen. You're twisting my original comment to say something it didn't say.


"Programs must be written for people to read, and only incidentally for machines to execute." --SICP




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: