I'm glad @arnetheduck started this thread. I appreciate his minimalist leanings 
and the nod to Antoine de Saint-Exupéry.

  * `exceptions` Can't live with'em, can't live without'em. I agree that 
they're questionable, but like @Araq said there's no obviously better 
alternative. I know that in D their implementation is tightly tied with the GC. 
Do they present problems for the GC free Nim we expect to see in the year 2525? 
In the SPARK subset of Ada exception handling is banned, though exceptions can 
be raised. Also, Rust is a different beast than Nim, maybe if Nim had algebraic 
data types we could use Option and Result types and do like Rust. I'd suggest 
leaving them alone for v1.
  * `method` I understand @mratsim's position I think; he'd like some kind of 
dynamic dispatch that is relatively inexpensive but not necessarily method. I 
think that's achievable before v1.
  * `bitsets` No one suggested removing bitsets, just moving them to a library. 
This is analogous to the discussion in D about moving associative arrays from 
the language to a library. This makes sense; if you can't write it so that it's 
efficient and convenient as a library, you can either modify the language so 
that it's possible (the solution I like) or make it a built-in. I believe as 
much as possible should be in libraries. I don't think it matters much whether 
this is fixed now or later, so maybe it is better to wait until after v1. 
@arnetheduck, do you have a reason that they need to go **now**?
  * ` converters` Opinions vary here, I generally agree with the dictum that 
explicit is better than implicit, especially in a language with overloading. 
I'd like them gone.
  * `do` I have no strong feelings one way or the other on this one.
  * `Enums with holes` Good catch @GULPF, I agree, out with v1
  * `{.discardable.}` Another good catch, out with v1


Reply via email to