5 ms·
My point wasn't that it can't be done. My point was about usability and what programmers have come to expect from a modern language. I understand that things ge
by acangiano 13y ago
My point wasn't that it can't be done. My point was about usability and what programmers have come to expect from a modern language. I understand that things get trickier when trying to implement arbitrary-precision arithmetic while keeping performance high.
- ihnorton 13y agoDo you have an example of a language with arbitrary-precision overflow by default and comparable performance?
- rdtsc 13y ago> Do you have an example of a language with arbitrary-precision overflow by default and comparable performance? No, but that also means Julia isn't much special then either right? Maybe it is just me but Julia positions itself as a better Python not just a better C, in that position, can you really blame people if they misunderstand and expect same "high level" behavior from it?
- jasonwatkinspdx 13y agoBetter Python in the sense of Python for scientific computing: eg Pandas et all. They aren't targeting all the use cases of Python (for example, I doubt anyone would suggest writing a monit style tool in Julia).
- coldtea 13y ago>No, but that also means Julia isn't much special then either right? That's a really dumb conclusion. It's special in other things it offers (from a better Matlab like language with crazy ass speed to homoiconicy and great FFI). Who said it's only special if it fulfils some specific rainbow-unicorn pipe dream? It also doesn't read the programmer's thought -- so not special in that regard either. >Maybe it is just me but Julia positions itself as a better Python not just a better C, in that position, can you really blame people if they misunderstand and expect same "high level" behavior from it? Lots of people also find Go a "better Python", and Go is like assembly compared to Julia...
- ced 13y agoCommon Lisp with SBCL: (defun double (x) (+ x x)) ; BigInts (or floats, for that matter) (defun double (x) (declare (type fixnum x)) (+ x x)) ; will emit an error if X is more than a long (defun double (x) (declare (type fixnum x) (optimize speed (safety 0))) (the fixnum (+ x x))) ; trusts that everything is a long - basically like C
- reeses 13y agoEvery conformant non-toy Common Lisp implementation?
- RivieraKid 13y agoMy guess is that it would lead to at least 10x slowdown in very maths heavy code. So, considering that the main goal of Julia was performance, it doesn't make any sense. And you can easily convert to arbitrary precision with big(1234).
- coldtea 13y ago>My point wasn't that it can't be done. My point was about usability and what programmers have come to expect from a modern language. Scientific programmers don't expect a behavior different than Julia's from a modern language. >I understand that things get trickier when trying to implement arbitrary-precision arithmetic while keeping performance high. It's not merely "trickier". It's impossible to be fast enough.