* Dead code elim: make it the default
* bitsets: No, I agree with the other posters they are super useful. I can
squeeze lots of speed from them without thinking on how to reimplement
bitvector, shifts, masking and all that jazz.
* Exceptions. I think it really depends on the use case. I really don't like
how C and Go must always check the error code or how Rust is plagued with
`unwrap` everywhere. I like function chaining and exceptions allow that. I read
much more code than I write and any solutions that uses error code will break
the program and my reading flow and clutter the intent of the code. Now in lots
of cases you can't throw or are forced to use try/except in lots of places.
* Huge standard library: what is under github/nim-lang is not all part of the
stdlib (for example nim/opencl or nim/sdl2) so not sure what you are talking
about.
* Auto-formatted code: oh yes a clangfmt would be awesome.