3 ms·
In many reasonable languages there are no types (or, equivalently, there is a single type) thus it may be perfectly OK to not have a type checker.
by enriquto 6y ago
In many reasonable languages there are no types (or, equivalently, there is a single type) thus it may be perfectly OK to not have a type checker.
- otabdeveloper4 6y agoYou're just delegating the type checking to an ad-hoc runtime. It's always better to check types rigorously and as soon as possible.
- enriquto 6y agoThis is not what I meant. I mean a language such as core matlab/octave, where the only "type" to speak of is the multi-dimensional array of floats.
- BoiledCabbage 6y agoDoes matlab/octave prevent you from performing invalid operations on arrays of different/incompatible ranks/dimensions? If so, then it's doing runtime type checking.
- enriquto 6y agoGood point. Yes, not all operations are defined, and it may result in a runtime error.
- otabdeveloper4 6y agoOctave has strings and they are checked at runtime: octave> strtrim(" hello world ") ans = hello world octave> strtrim([1,2,3,4]) error: strtrim: S argument must be a string or cellstring error: called from strtrim at line 79 column 5
- deleted 6y ago[deleted]
- seanmcdirmid 6y agoThere are strongly (and weakly) dynamically typed languages. Harper’s classification ignores that.