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

In a higher-level language, I tend to have a "cat" which is generic-by-default. In a functional language, functions tend to have no side effects. What exactly is the purpose of specialization here, or mutation?

Arguments like this against Lisp tend to invent examples like this which sound reasonable in a Java program but don't exactly make sense in Lisp.

Yes, static type systems can be handy if your program is based on the concept of defining new types and mutating them through new specialized methods. None of the programs I write are like that. That's not the only way to write a program.




In TypeScript I define new types (aliases) and update them without mutation nor methods. It's a pleasure.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: