4 ms·
I think this post is a bit immature. These things take time. Julia should just keep on striving for excellence and I'm sure it doesn't need me saying so. I've s
by da39a3ee 6y ago
I think this post is a bit immature. These things take time. Julia should just keep on striving for excellence and I'm sure it doesn't need me saying so. I've spent the last decade writing python professionally for web backend software engineering: it is a fantastic language for getting out of your way and allowing you to think and build what you want. And things like pattern matching show that it's still taking significant steps forward. But, languages should be statically typed: modern compilers offer too much benefit to development workflows to turn this down. So you can try to patch typing on to a dynamic language but my impression is that mypy is a hack compared to what was delivered to javascript in the form of typescript.
I suspect that people will eventually swing back towards statically typed languages for the development tooling. Especially as the future needs more programmers and more help for programmers to build things correctly vs the early 21st century era of hackers writing untyped python in vim.
Above comments are mainly aimed at web backend. I'm aware of Python's dominance in data science and machine learning but perhaps ultimately the same will hold true there -- that humanity will ultimately go for solutions that keep developers on the rails more. (Jupyter notebooks are a disaster when it comes to building correct solutions: no encouragement to use version control; out of control invisible global state etc.)
- leephillips 6y agoJulia has its own notebook that solves the issues you mention with Jupyter: https://lwn.net/Articles/835930/ https://lwn.net/Articles/835930/. With Pluto there is no hidden global state, everything is deterministic, and the notebooks are Julia files, so version control is as natural as when writing straight jl programs.