On Tuesday, 4 August 2015 at 19:40:30 UTC, jmh530 wrote:
Wrt static typing, I don't think the issue is about catching
bugs in Matlab. I just haven't had much an issue with mixing up
types in Matlab. I can see the arguments about static typing
and ahead of time compilation for performance, but that's less
important for prototyping. One good thing about dynamic typing
is that it allows for easier manipulation of matrices.
For me, the big win in prototyping comes from the ability to
easily make significant changes to my program. With D, I am able
to give the compiler a bunch of information about the types of
data I'm working with, and the compiler handles all the details
for me, better than a good research assistant. If I change the
function to take different input or return different output, I
don't have to look through 500 lines of code to make sure I'm
keeping everything consistent.
A couple of things that might make D more pleasant for me are:
- I do a lot of simulation-related things, where the inputs and
outputs can change a lot as I figure out how I want to do things,
and
- I use R. R was invented down the hall from C, and AFAICT, the C
and R guys were believers that silent casting and undefined
behavior are the foundation of a good programming language.