Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I meant C-like syntax. The laundry list of features you mentioned is present in lots of existing mature languages (not C).

I don't understand the need to create something rickety without significant innovation (over any relevant language (e.g. SML, Haskell, Racket) and not just C).



Just to expand on one language, Rust, it possesses semantics that most other languages don't have. The presented problem with Swift would be impossible. As soon as you make the mutable variable, ownership of the object is transferred, and it becomes a compiler error to use the original variable after that. This is backed by the type system, encompassing both mutability and lifetimes, so it isn't a runtime enforcing the lifetime rules.

The more I learn about Rust, the more I realise how similar it is to Haskell. Even the error handling and IO uses monad-like constructions.


You complained about new C-like languages (C-like in syntax) not being any better than C. I mentioned some ways that new C-like languages (C-like in syntax) are much better than C. Now you're complaining that other languages already had those features. I don't contest that. Doesn't change the fact that your first comment was misguided.


You misunderstood my first comment. I meant new C-like-in-syntax have nothing revolutionary semantically across the board. This is a double blow as each new C-like syntax is difficult to master (compared to Lispy languages) and contributes nothing semantically new.


> You misunderstood my first comment. I meant new C-like-in-syntax have nothing revolutionary semantically across the board.

Are you saying that the new features in Swift/Rust/C#/etc. aren't revolutionary? Or that they're not "across the board"? Or that they're not semantic? Which part do you disagree with?

> This is a double blow as each new C-like syntax ... contributes nothing semantically new.

This is demonstrably false. Do you mean that you don't think the new semantics are revolutionary enough? Or "across the board" enough?

Either way I have to disagree with you. Automated memory management is a semantic game changer, and applies nearly everywhere. Same goes for type inference, and optionals. ADTs are huge too. If your argument is that these are not important semantic improvements over C, then IMO you could not be more wrong.


Why do you seem so bent on misunderstanding me? I am not talking about semantic improvements over just C!

E.g,

> Automated memory management is a semantic game changer

That has been there in other languages for decades.

By "across the board," I meant across all languages not just C-like languages.


Ah! That wasn't clear to me from your wording. I think I was especially confused because that means your argument seemingly boils down to "only the first language to have a feature is notable." (And I guess also that C-like languages are hard to learn?) But all languages stand on the soldiers of giants. I don't look down on Haskell simply because other languages had its features first.


Agreed. I am not looking down on Swift. It seems like all the human capital could go into making existing languages more awesome.


Haha...*shoulders


Because programmers in general don't like non-C syntax.




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

Search: