[Date Index] [Thread Index] [Author Index]
Re: A new FrontEnd
I think WR doesn't need to change FrontEnd as much as augment it and start developing other interfaces to work in parallel as an integrated environment. Workbench was an attempt at this, though a bit clunky. If I were going to update FrontEnd, I would add far greater support for generating documents from notebooks. Table of Contents, Index, etc. I would also add ability to "hide code" with a button press. Code offers nothing to non-Mathematica readers. My process is calculate, validate, document around previous work, share. The first two rock. Documenting around and sharing is more effort than it could be. As far as adhoc GUIs, the rest of universe has moved away from text->GUI generation because it is too slow to develop. I think Mathematica would greatly benefit from a Microsoft Visual Studio C# style graphical GUI builder with "callbacks" to an "adjacent" notebook or package. I also hope Mathematica comes up with a way to truly deploy applications so others without the luxury of Mathematica can benefit from applications written in Mathematica. CDF is woefully insufficient for anything more than PDF on steroids. Player has serious promise, but can't be used without uploading files to WR for secret encoding to prevent clever stealing of Mathematica capabilities. I do work that can't be uploaded. I am under growing pressure to migrate Mathematica proven work to C# so it can be shared or at least executed by someone else to free up my time. I would also like to see a "project" interface. It would manage a collection of notebooks, packages, GUIs, etc... I don't think Mathematica can usefully be extended to provide increased functionality via FrontEnd. Nor should it. It would risk losing the benefits of FrontEnd. I think it needs to provide separate applications with tight integration to extend further. Workbench was a nice try. For a project based text editor it pales in comparison to industry leader Visual Studio. I do agree with the example of a separate application being the memory inspector similar to what another system offers. It is very useful to glance at another window and see variable list with dimensions and bytes of memory. Raw data is available by clicking on variable in viewer. It becomes an extremely handy sanity check. It would also be nice to inspect unknown return items like what Plot returns. It can be very handy if cleverly done.