[M3devel] Enumeration or subrange value out of range
Jay K
jay.krell at cornell.edu
Tue Nov 30 04:43:26 CET 2010
> Let them rot in C hell.
It's really not a bad place.
Modula-3 is good:
optional safety, optional unsafety
ie: optional garbage collection, restrictions on taking address of locals, range checks on arrays
better interface/implementation separation, such as to allow much faster compilation
single inheritance object-orientation is nice, but I'd prefer for the safety
to be optional (untraced objects) and multiple-inheritance
generics are good, but not as good as C++ templates
sets are kind of nice
optionally indexing arrays by enums is kind of nice
open arrays are kind of nice (relates to safety)
Very small language definition is good, but I'd still like e.g. operator overloading, at least with a "fixed"
interface as I described T +(T,T), never T1 +(T2, T3) for example.
But I don't see why not providing these types is so good.
I can see that maybe it is partly/all library instead of language.
As well, as so much code is C, C++, or even Java and C#, it is what the hardware supports well.
i.e. 8 bit, 16 bit, 32 bit operations are efficient, and 64 bit are also sometimes
- Jay
More information about the M3devel
mailing list