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

I think you're just bad at reading pointfree notation, tbh, which is not a particularly interesting commentary on OCaml or Haskell.

Lots of things lend themselves well to pointfree style, and if you do not see them it is because of your own horizons.

You can write OCaml/Haskell with names like doesFileExist when you need to.




"You can write OCaml/Haskell with names like doesFileExist when you need to."

You can, but it's rarely done in practice. This is a cultural issue more than a language issue. OCaml/Haskell programmers just seem to prefer much shorter, more math-like names than Lisp programmers do.

For me this makes a huge difference when reading through code written by the community. Lisp is just much more immediately understandable than OCaml/Haskell and related languages.

Yes, this is probably my own limitation, and I'd probably be a lot better at it given enough practice. But I just don't need that much practice to understand Lisp, and I can go away from it and come back to it much later without needing a significant refresher in the language either.


Interestingly, I noted I tended to use one letter variables when writing in Ruby, and the longest, most descriptive possible variable's names when writing in C#; And Ruby, I think I have read somewhere, is somewhat close to lisp. There is the readability of the language itself to weight in too, when its easy to see the important stuff, you can name the important stuff with short names. And there is the most important, what are you writing about; Strangely I always remember to myself that the only important goal is to write the slowest, most natural language, and above all, most natural/daily-life/ELI5 Logic. But always end with the logic looking like pure math notation, like if I looked at it not knowing it was me who wrote, would think is unreadable Dark Magic Math, and I end with it having zero Math or CS formal training (only highschool), so maybe it's inescapable.




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

Search: