4 ms·
nice. i can see myself using this for django projects (a bubble for the urls.py, another for the view and another for the template)
by matrixownsyou 17y ago
nice. i can see myself using this for django projects (a bubble for the urls.py, another for the view and another for the template)
- guelo 17y agoI'm thinking this won't work so well for dynamic languages. The demo video is using a Java project.
- jrockway 17y agoBecause not declaring the type of variables makes code not work with bubbles?
- guelo 17y agoThe demo is relying heavily on code navigation features that are only available to static language IDEs such as "Open Declaration", "Find All References", code completion, navigating object hierarchies, code outlines, inline docs, and other fancy code traversal techniques.
- mulander 17y agoTake a look at Squeak. The Smalltalk folks have been doing this for a long time with the GUI utilities. SLIME is another dynamic environment that knows and can tell You much about itself.
- jrockway 17y agoThis information comes from actually running the code. Not that this is a bad thing, though. People seem really afraid of having the code they just wrote be executed, but I think this is an unfounded fear. And, as SLIME shows, you get great information from running the code; much better than mere static analysis.
- nitrogen 17y agoI was about to ask, "Why don't they just run the code, and provide something like reverse debugging or VM state snapshots to explore different code paths?" but it seems that's already been covered.
- jrockway 17y agoThese things are possible in dynamic languages with static analysis, it's just not as easy. (Oh, and if you write code that's unreadable, then the static analysis fails. But most people don't do that.)
- guelo 17y agoThen where are the Python/Ruby/PHP/Perl IDEs with these features?
- jrockway 17y agoIt's hard, and people are lazy. Getting this information out of Java is Really Really Easy, so it's been done. Personally, I have all the pieces together for doing this with Perl, but I have not put it together into anything coherent because it's largely useless. An occasionally-updated tags table is really all I need, so I can't get motivated to make "Eclipse for Perl". Maybe someone else that sees the value in these tools will do it. Let me know what information you're interested in, and I will show you how to implement it.
- utku_karatas2 17y agoFor Python Netbeans/WingIDE/PyCharm do this good enough.
- lispm 17y agoJust use Lisp, here LispWorks, http://www.lispworks.com/ http://www.lispworks.com/ . http://lispm.dyndns.org/lisp/pics/lw6who-calls.png http://lispm.dyndns.org/lisp/pics/lw6who-calls.png http://lispm.dyndns.org/lisp/pics/lw6gf.png http://lispm.dyndns.org/lisp/pics/lw6gf.png http://lispm.dyndns.org/lisp/pics/lw6subclasses.png http://lispm.dyndns.org/lisp/pics/lw6subclasses.png http://lispm.dyndns.org/lisp/pics/lw6system.png http://lispm.dyndns.org/lisp/pics/lw6system.png and many more...
- huherto 17y agoI think that because not having typing information makes it more difficult for the IDE to help you out.
- geocar 17y agoSlime makes a lot of this navigation possible; I don't think dynamicness has anything to do with it. It seems like what would be hard is dot-oriented method invocation ala python and ruby. There's been some work at figuring that out using static code analysis, but it's a lot less ready.
- lispm 17y agoGet any of the better Lisp or Smalltalk environments - they will do all that and more.
- utku_karatas2 17y agoYour wish might come true (author of pfaide(pfaide.com) here). I'm so intrigued by the idea I wanna drop everything at hand and take a grab at this ;)