> will put us ahead of the curve here
Unless it's the same kind of curve Go is judged against (aka the curve of 30 years ago), that's a very tall order. Are you working on something better than a time-traveling debugger?
> imagine DTrace at a program level
so... DTrace?
I should have said DTrace for functional programs
...which Lisp has had since before I was born
How about hashmaps, something like records and other constructs for building large, long lived applications.
I'd kill for hashmaps, some sort of records and strong typing in Mathematica.
Here are your hashmaps:
https://reference.wolfram.com/language/guide/Associations.ht...
Awesome. Is this a new thing? I can't find it in the Mathematica 9 documentation.
So now there's just strong types and something like records left for me for general purpose development.
Yep, they are marked as new here: https://reference.wolfram.com/language/ref/Association.html
Re:Wolfram Language
by statusgraph on Friday November 22, 2013 @09:56PM
(#6785015)
They've existed in a significantly more powerful form as DownValues since Mathematica's release.
what's wrong with just using
obj["a"] = 1;
obj["b"] = 2;
Print[obj["a"]]
or obj = { "a" -> 1, "b" -> 2 };
Print["a" /. obj]
?Because those are really poor substitutes for Associations, though one can make do.
Having real undo sounds great. Also, thanks for fixing plot legends in Version 9. Because of that I now use MMA for publishable figures.
This is good to hear. But problem is that the curve is moving all the time and Mathematica seems to be catching up very slowly.
As for the REPL and general editing, if I were you, I'd quickly go towards LightTable integration — it should be doable, and the effects could be spectacular.
That might work, but it's not clear how all the graphics, image processing, user interface, and dynamic interactivity stuff would work.
Still, would be interesting to try. I have great enthusiasm for what Chris Granger is doing.
...and the ability to actually abort long computations? ;-)
Luckily I have a totally revamped debugging and logging system that will put us ahead of the curve here (imagine DTrace at a program level). Probably a point release of V10.
Same goes with multiple undo and retina support -- we know how embarrassing their absence is, and we've luckily been able to fix these for v10. I've been in design meetings where the multiple undo has bumped several other desirable features off our roadmap.