Live data from Hacker News

New IDE: code bubbles

cs.brown.edu

111–120 of 226 posts

Re: New IDE: code bubbles

#111
post #99

Earlier quoted context omitted.

Emacs is a text editor in the same way the space shuttle is a vehicle.

Can your emacs editor construct hyperlinked call graphs showing all callers and callees of a given function? Will this call graph generation remain up to date as I edit files? Can Emacs give me a hyper-linked list of all usages of a given symbol and do it properly(lexical scope, etc.), not just doing a simple symbol search? Can I edit my code in emacs, have a background compiler compile the file on the fly, and also…

[deleted]

Re: New IDE: code bubbles

#112

Earlier quoted context omitted.

The video highlighted an annoying feature of Squeak Smalltalk, where you get tiny little views of individual methods in their own window, which seems like a good idea until you actually try to do something complicated using it. It's pretty to watch though. The cool things there, in my opinion, were the code navigation pieces. Those are the things I actually think work better with tabbed files. In other news, yikes! I…

Those bubbles would have been a nightmare if they didn't relate to each other in such a clean way They have some great grouping features - snapping, colouring, pushing, connections with lines, naming groups.

You get most of the same functionality by saving off Smalltalk images with meaningfully arranged windows. (Yes you can do it with debug sessions too.) But you have to keep track of the relationships yourself. The lines and groupings are genius.

This stuff is awesome. First time I've been this impressed by an IDE outside of Smalltalk, Self, or Symbolics, Lisp.

Re: New IDE: code bubbles

#113
post #9

I feel like the response has been fairly lukewarm, but to me this is some really nice (dare I say game-changing) stuff. Mindmap + IDE = great. Why? I have written in a variety of languages, and my number one complaint, whether it be with eclipse, textmate, vim, emacs, whatever, is the clumsiness of going from one file to another and then back to the original. Further, outside of actual development, when debugging, I…

I think there's some really interesting stuff here that should be leveraged. What I like best is that it really focuses your mind on the task at hand. You don't spend a lot of time looking through large amounts of code just to find a few things. I wouldn't like the UI directly as presented, but there's certainly a starting point there. Really though, don't know what kind of programmer would accept line wrap on code.…

> Really though, don't know what kind of programmer would accept line wrap on code. Urf.

I'd happily accept syntactically- and semantically-aware line wrap, if someone could do it and get it right. Combine that with elastic tabs that actually work, add a standard set of layout rules that gives good results, and provide bullets to shoot anyone who thinks coding standards should be about whether the space goes before or after that `*` when declaring a pointer, and I'm sold. :-)

Re: New IDE: code bubbles

#114
post #61

Earlier quoted context omitted.

I'd like to have a dollar for every time I've seen a NullPointerException on some line that was constructed by someone who loves the list of methods that automagically pops up for the dot operator: foo.bar().baz().qux() ...Grrrrr!

If only there was some combinator for sequencing computations... then you could write: foo >>= bar >>= baz >>= quux and there would never be a NullPointerException, because the >>= function could react appropriately when null was encountered!

Since I don't know haskell, I'll throw out that groovy does this too.

foo?.bar()?.baz?.quux

What other languages have this kind of shortcut?

Re: New IDE: code bubbles

#116
post #103
post #99

Earlier quoted context omitted.

Can your emacs editor construct hyperlinked call graphs showing all callers and callees of a given function? Will this call graph generation remain up to date as I edit files? Can Emacs give me a hyper-linked list of all usages of a given symbol and do it properly(lexical scope, etc.), not just doing a simple symbol search? Can I edit my code in emacs, have a background compiler compile the file on the fly, and also…

Emacs can do whatever you want. If it doesn't, it can be added. In fact, Emacs is an IDE... It's just not a mouse-based IDE. Mouse clicking makes my hands hurt much faster than using the keyboard. I also find it annoying to switch from mouse keyboard, so I don't want a UI that relies on constant mousing.

Respectfully, I think you're avoiding the main point of the post to which you replied.

Good keyboard navigation in an editor is valuable, and many IDEs have poor support for it. On this we can probably all agree.

But as I read it, the grandparent post was about functionality. Modern IDEs have a level of semantic awareness that generic editors like Emacs don't, at least not without a prohibitive amount of effort to implement it. As a text editor, Emacs is very powerful. As a code editor, it lacks support for even basic semantic analysis, which means such tricks as it does have are naive operations based on text matching. In a world where even entry-level IDEs have support for basic refactoring, auto-completion and code navigation, Emacs is the dinosaur that hasn't seen the asteroid yet: awesome raw power but completely unaware of the bigger picture.

Re: New IDE: code bubbles

#118
post #99

Earlier quoted context omitted.

Emacs is a text editor in the same way the space shuttle is a vehicle.

Can your emacs editor construct hyperlinked call graphs showing all callers and callees of a given function? Will this call graph generation remain up to date as I edit files? Can Emacs give me a hyper-linked list of all usages of a given symbol and do it properly(lexical scope, etc.), not just doing a simple symbol search? Can I edit my code in emacs, have a background compiler compile the file on the fly, and also…

> Can your emacs editor construct hyperlinked call graphs showing all callers and callees of a given function? Will this call graph generation remain up to date as I edit files?

Yes. You're looking for Cedet. Can your IDE read my mail?

> Can Emacs give me a hyper-linked list of all usages of a given symbol and do it properly(lexical scope, etc.), not just doing a simple symbol search?

Yes. You're looking for Cedet. Can your IDE integrate with your calendar?

> Can I edit my code in emacs, have a background compiler compile the file on the fly, and also provide error feedback, hilighting the problem lines

Yes. You're looking for `flymake-mode`. Can your IDE email who created the error using version control information?

> How's emacs' refactoring support? Judging by the following stackoverflow post

Stackoverflow gives retarded answers sometimes. The next best suggestion on that page is correct. Cedet is great.

> How's Emacs' keyword completion?

It's fine. You can complete symbols sensitively, and complete filenames or email addresses from anywhere. Having multiple completion systems is very useful. How's your IDE's ability to complete those things?

> Even if you can get Vim or Emacs to do some of the above, it usually isn't as easy to use or as useful as an IDE.

You don't need to be so hostile. Emacs does these things just fine, and has for a long time. Emacs also does my time tracking, outlining, and email. Your IDE won't do any of those things, and you don't expect it to because you think those tasks are best left to other parts of your operating system.

The thing you're missing is that for Emacs users, Emacs is the operating system. I dual boot into Firefox sometimes.

Re: New IDE: code bubbles

#119
Maybe dumb Microsoft MDI concept will stop to haunt us now. Each IDE for last 15 years has same set of functions, and they are vastly insufficient. Shit that happens in your typical program is really much harder to observe then it should be.

Program is interconnected mutating tree. Why the hell we are looking at its latest snapshot through set of flat files showing encoded parts of these trees grouped chaotically?

On the other hand, why anyone who tries to actually show trees forces me to enter 2+(2*5) as five nodes without using my keyboard?

Re: New IDE: code bubbles

#120
post #103

Earlier quoted context omitted.

Emacs can do whatever you want. If it doesn't, it can be added. In fact, Emacs is an IDE... It's just not a mouse-based IDE. Mouse clicking makes my hands hurt much faster than using the keyboard. I also find it annoying to switch from mouse keyboard, so I don't want a UI that relies on constant mousing.

Respectfully, I think you're avoiding the main point of the post to which you replied. Good keyboard navigation in an editor is valuable, and many IDEs have poor support for it. On this we can probably all agree. But as I read it, the grandparent post was about functionality. Modern IDEs have a level of semantic awareness that generic editors like Emacs don't, at least not without a prohibitive amount of effort to im…

The flip side of this is: Emacs was invented around the time I was born, and could be used to edit the languages that were available at the time. It can still be used to edit those languages, as well as the hundreds (thousands?) of languages that exist today. I won't be surprised if it's around in 10 or 20 years more, and still able to edit every language under the sun at that point.

Emacs may have a shallower understanding of languages than an IDE, but the breadth of languages it understands is pretty amazing.

Post reply on HN