Speed is important in Ocaml, which is why it does integer overflowing without throwing an exception. It would really be bad if you check bounds for every arithmetic operation.
Does it do bound checking on vectors? Because it would be bad if you check bounds for every vector operation.
The compiler should have a flag to disable both array and integer overflow checks.
I really don't like or see the dire need for macros. Which is why I said kill yourself.
You don't like.
Fine, he wants it. Can you have dynamically scoped variables and lexical scoping in the same language? I really don't know. If you can't have both, then it's stupid to complain about it.
You can, they're called, well, dynamic variables (or special variables in CL, or parameters in Scheme)
See:
defvar,
defparameter in CL,
parameters in Scheme,
http://okmij.org/ftp/ML/dynvar.ml for any language with multi-prompt delimited continuations.
This would be convenient. But he wanted automatic fromInt, fromFloat, etc which is ridiculous.
Isn't that exactly what Haskell does?
What does this even mean?
That's the description of the calling convention,
I think.
Ocaml doesn't have it and it's slow.
How? It's statically typed, I'm sure it could compile to the right operation, skipping checks, in most cases just by looking at the types.
The semantics of functional stuff and mutable stuff should be clearly separated in a functional language. Else it's just bad style.
I have to agree.
It's a persistent data structure. What do you want? Why would you expect every data structure to be mutable. It's just stupid.
I know, but you what you said was ``it's functional, so it must be immutable''.