5 ms·
Except this is bs because modern jit outperforms C and C++ compiled code in some cases. Dynamic types mean the constraints are known later. It doesn’t mean they
by BulgarianIdiot 3y ago
Except this is bs because modern jit outperforms C and C++ compiled code in some cases. Dynamic types mean the constraints are known later. It doesn’t mean they’re never known. And when they’re known you can partially reduce.
- drpixie 3y ago> Dynamic types mean the constraints are known later. Don't you mean, constraints are found when the program throws an unexpected exception and leaves you with a largely meaningless stack dump :) I'd rather have the system tell me "you can't do that" much earlier - at compile time, not run time. I use python quite a bit, but hate the thought of all those never-exercised control paths, which only occur in the most unusual circumstances - and I know silly problems will show up when those paths do get executed :(
- BulgarianIdiot 3y agoWe're discussing performance. Dynamic types do not mean no type errors while you write code. It means the types can be variant at runtime.
- lolinder 3y agoYou latched on to the performance question, but the paragraph you were responding to was much broader. It's reasonable for someone to think you were actually responding to the full paragraph and not one phrase.
- fredrikholm 3y ago> modern jit outperforms C and C++ compiled code in some cases I'd love to see some examples of this. Links?
- lolinder 3y agoEven saying you're correct on performance, that's one point out of four that you've addressed. It's a bit of a stretch to call BS until you've addressed the bugs, refactoring, and legacy code problems.
- xupybd 3y ago> Except this is bs because modern jit outperforms C and C++ compiled code in some cases In "some cases" doesn't mean the statement is bs. Generally jit is slower than compiled code. There are exceptions to every rule, we use generalizations to reason about the world anyway.