Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

FOSDEM Interviews On Free Development Tools

timothy posted more than 9 years ago | from the what-software-wants-to-be dept.

Programming 102

FOSDEM writes "The Free and Open Source Software Developers' European Meeting folks, aka FOSDEM, have just released the second part of their speakers' interviews. These interviews are dedicated to their development tools track, with Andreas Zeller for ddd, Benoit Minisini for Gambas and Alexander Dymo & Harald Fernengel for kdevelop. Previous interviews were already discussed on Slashdot here"

cancel ×

102 comments

First Post (-1, Troll)

Anonymous Coward | more than 9 years ago | (#11675546)

I like weasels.

Re:First Post (-1, Troll)

Anonymous Coward | more than 9 years ago | (#11675769)

Minisini - sounds like a very gay frog fagot.

Making a Visual Basic clone for an operating system lacking basic COM-mechanisms, thus requireing another set of special bindings to every fucking library in addition to Python, Perl and Ruby ... fucking great idea.

When will you "developers" grow up and realize that we need something like COM or Mozilla's XPCOM?

Fucking gay.

kjhasdkjhasd kjhakshd (-1, Troll)

Anonymous Coward | more than 9 years ago | (#11675548)

fp? GNAA.US!

Re:kjhasdkjhasd kjhakshd (0, Flamebait)

secretsquirel (805445) | more than 9 years ago | (#11675607)

Someday a mob of angry homosexual african americans, who think your name is hillarious, but just happen to have a passionate dislike for trolls on /. is going to track down every single one of you and each one of them is going to rape you each in the ass, alot. Then they will make you eat their shit, then shit out their shit, and then eat your shit thats make up of their shit that they made you eat. And it will be funny.

I curse thee (-1, Troll)

Anonymous Coward | more than 9 years ago | (#11675755)

There has been unfairness done to me
I summon the elements
I invoke them
I conjure them to do my bidding
The four watchtowers shall lay their eyes and minds
there shall be fear and guilt and bad blood
there shall be submission and no pity
I point the threefold law against thee
against thee it shall be pointed
threefold, a hundred fold is the cost for my
anger and pain
Thee shall be blinded by the fear
blinded by the pain
blinded by me
binded by me
Cursed by me
So mote it be!

Re:I curse thee (1)

secretsquirel (805445) | more than 9 years ago | (#11676245)

Gosh, didn't realize you guys were so sensitive. Oh well, when the angry mob shows up at your door and you don't have an escape route planned out don't say I didn't warn you.

zZz (-1, Troll)

Anonymous Coward | more than 9 years ago | (#11675561)

this is boring, who picks these stories

C++ autocomplete... (4, Interesting)

Cyberax (705495) | more than 9 years ago | (#11675563)

When will we see C++ autocomplete support in free tools at least equal to Visual Assist [wholetomato.com] ?

Re:C++ autocomplete... (3, Insightful)

jokumuu (831894) | more than 9 years ago | (#11675586)

In general there is a problem with many of the tools in the world of free software.

The general problem is that those are usually built by true experts, that is people who know their programming inside out. The tools are built to "scratch a personal itch" thus they are generally very powerfull but not so userfriendly.

Re:C++ autocomplete... (4, Informative)

Frymaster (171343) | more than 9 years ago | (#11675587)

When will we see C++ autocomplete support in free tools at least equal to Visual Assist?

maybe i'm blowing smoke out my ass (puff puff) but it seems like you can get 80% of that just by using vim. let's look at the feature list from visual assists website:

  • Enhanced Listboxes no
  • Suggestion Lists ctrl p and ctrl n in vim will auto complete and cycle through all the similar options. you can set your dictionary to include a syntax file. the whole skinny on that is here [sourceforge.net]
  • Enhanced Syntax Coloring i don't know how "advanced" the coloring is... but vim certainly allows you to write some pretty "advanced" syntax files
  • Goto well, there's bookmarks in vim. that's similar.
  • Underlining of Misspelled Words there's a swell spellchecker for vim here [vim.org] . it "highlights" mispelled words... which may be as good as "underlining".
  • Auto Recovery. vim does a fine job of recovering (see here [vim.org] ) i don't know how "auto" you need it.

Re:C++ autocomplete... (4, Insightful)

jokumuu (831894) | more than 9 years ago | (#11675593)

I agree with you on that but maybe you are missing the point atlest a bit.

Wast majority of people doing any sort of programming in the world are quite frankly not that good. Thus they need easy, preconfigured tools that will help them do the basically simple things they have to do, but that seem so difficult and intimidating to them.

C++ autocomplete...Gambas. (0)

Anonymous Coward | more than 9 years ago | (#11675604)

"Wast majority of people doing any sort of programming in the world are quite frankly not that good. Thus they need easy, preconfigured tools that will help them do the basically simple things they have to do, but that seem so difficult and intimidating to them."

Ah! You want the "Paint By Numbers" programming kit. Seriously try Gambas, or at least the Macro language in OpenOffice.

Re:C++ autocomplete...Gambas. (2, Insightful)

jokumuu (831894) | more than 9 years ago | (#11675614)

oh, not me, but having looked at way too many "programmers" and their "code" through the years I would say way too many people need such.

Re:C++ autocomplete... (1)

lachlan76 (770870) | more than 9 years ago | (#11675736)

Easy preconfigured tools like the third-party extension to VC which this thread is about?

Re:C++ autocomplete... (4, Insightful)

kwerle (39371) | more than 9 years ago | (#11675822)

Wast majority of people doing any sort of programming in the world are quite frankly not that good. Thus they need easy, preconfigured tools that will help them do the basically simple things they have to do, but that seem so difficult and intimidating to them.

What a crock.

If "having easy, preconfigured tools that will help me do the basically simple thing I need to do" makes someone dumb/lazy/whatever, sign me up.

I don't want tools that could do something, or that can be tweaked to do something, or that can do something if you add other tools. I want tools that do what I want, right now.

Saying that those tools nearly exist, or can exist with some work, is saying that the DO NOT exist - only it makes it sound better to some OS folks.

(lover of jEdit, gnumake, etc)

MOD PARENT UP. (-1, Redundant)

popeyethesailor (325796) | more than 9 years ago | (#11675826)

IAWTP.

Re:C++ autocomplete... (0)

Anonymous Coward | more than 9 years ago | (#11675870)

Whatever happened to different people wanting different things? That is, after all, the point of having configurable tools and a wide variety of different add-ons.

Re:C++ autocomplete... (1)

jokumuu (831894) | more than 9 years ago | (#11675970)

I was not saying that easy tools make someone dumb or lazy. The point I was trying to make was the opposite, The world is full of bad programmers that cannot get much done without such tools. I have nothing against people useing anything that saves them time, very much the opposite, but a good programmer can do a lot without these tools, wereas a bad programmer will tear their hair out.

Re:C++ autocomplete... (1)

kwerle (39371) | more than 9 years ago | (#11678563)

I was not saying that easy tools make someone dumb or lazy. The point I was trying to make was the opposite, The world is full of bad programmers that cannot get much done without such tools. I have nothing against people useing anything that saves them time, very much the opposite, but a good programmer can do a lot without these tools, wereas a bad programmer will tear their hair out.

And to me that just sounds like more apologist crap. I like to think I'm a good programmer, and I tear my hair out without those tools. And why wouldn't I? Good tools exist; I should be using them. Frankly, I've seen more bad programmers using raw vi to edit code than I've seen good programmers using good tools - but then I've been in a lot of places with good programmers, and only a few with poor ones.

Re:C++ autocomplete... (1)

Dracolytch (714699) | more than 9 years ago | (#11676271)

Amen to that...
When I was in graduate school, and learning about things like genetic algorithms, or implementing a distributed file system, I needed operational tools now. I had to design and implement some pretty hardcore software in a matter of weeks. This is the kind of case where any/all help that my tools can provide is welcome, as I tended to be more focused on design. However, if the proper implementation tools are not redily available and usable, they might as well not exist at all.

~D

Use Power Tools After Hand Tools (1)

4of12 (97621) | more than 9 years ago | (#11676882)


I had to design and implement some pretty hardcore software in a matter of weeks. This is the kind of case where any/all help that my tools can provide is welcome, as I tended to be more focused on design. However, if the proper implementation tools are not redily available

[I'll probably sound like a crusty old SOB, but here it is:], one of the reasons that turbocharged software development tools get a bad rap is because they are used too quickly by novice programmers (I'm not implying you or anyone else here is a novice).

For two reasons:

  1. The tool design has to place its priority on being optimized for novice users who might not really even be up to speed in the underlying programming language (C++, Java, etc.).
  2. The novice is shielded from the fundamentals and will never learn anything but that to which the RAD environment exposes him.
Programmers that have to learn from ground up by typing in every piece of punctuation in creating their C++ classes in a basic text editor learn more. Later, after that experience, they'll be in much better position to evaluate programming productivity enhancement tools and to appreciate what they have to offer and to be critical of the underlying assumptions built-in to the tools.

Re:C++ autocomplete... (1)

Waffle Iron (339739) | more than 9 years ago | (#11677551)

I don't want tools that could do something, or that can be tweaked to do something, or that can do something if you add other tools. I want tools that do what I want, right now.

If you're going to be a professional software developer, you should invest some time in your tools. As you use a tool like vim, over time you build up a bunch of personalized settings, shortcuts, key mappings, etc. that is perfectly suited to the way you work. These go into one or two text config files.

Once you have that, you can use it on any language on any OS platform. You get your personal development environment "right now", no matter where you are or what you're doing. You don't need to install 600MB worth of bloatware (that probably won't even install correctly 5 years from now) to get your development environment up and running on any machine.

Re:C++ autocomplete... (1)

kwerle (39371) | more than 9 years ago | (#11678865)

I'm an emacs person, so my config files are somewhat more extensive than "one or two text config files." :-)

While I agree that a professional software developer should expect to spend some time configuring their tools, and investing time into making them as efficient as they can be, I don't think that many developers have very different needs.

"everyone wants":
Syntax coloring
Indenting
Word Completion (+ more (blocks, etc))
Macros

OO coders want:
Class browser
Method completion (+ constructors, etc)

Have I missed anything? Other than that we can argue about keybinding, insertion modes, and all that minor junk that should be configurable in any code editing tool.

Let's face it: the only reason I use emacs at all is that back in the day it was the best (some would argue only) game in town. I have a whole directory of stuff dedicated to the emacs modes I use, and I hate maintaining it, and it doesn't work quite the way I like (some would say I have not spent enough time maintaining my tools, but see below). But emacs (and I should think vim as well) is not a development tool; it is a workbox. If you put the right tools in the box, it's great for dev work. If you put other tools in, it's great for writing a thesis (I'm thinking tex). If you put still other tools, it's great for writing raw HTML.

If someone were to assert that emacs was the best tool for writing code, I'd call them an idiot. If they were to assert that emacs with the following 8 modes was the best tool, I'd bemoan the fact that you can't get all those packaged together, and that you wouldn't call a shop that sold hammer heads and sticks of wood a good tool vendor.

I use jEdit for almost everything now, and I'm pretty happy with it. While it doesn't come bundled with the stuff you need, it does have a built in UI that will let you install the stuff you need, and maintain the stuff you need. To me that's like a shop that will sell you a workbox and ask what you're going to use it for, and puts the stuff you need in the workbox. THAT is a good vendor. Frankly, they'd probably be better off selling you the box with the best of everything already installed, and let you remove or swap what you don't like, but I'm not gonna try to push that on them.

Re:C++ autocomplete... (1)

Vo0k (760020) | more than 9 years ago | (#11675898)

Actually, that's what they _want_. W they _need_ to find a different job and don't waste others' nerves by their 1337 pr0gramming skillz.

Re:C++ autocomplete... (4, Insightful)

Hamfist (311248) | more than 9 years ago | (#11676014)

Maybe I'm not very good. Maybe that's a result of my job, where 20% of the time is programming and the rest of the time is tons of other stuff that keeps the company running smoothly. I've had to learn like many different programming languages over the years. Powerful autocomplete helps clear the cobwebs. If you mostly program in Java, do you remember your C++? How about javascript /PHP /perl and all of the other web languages, how about all of the associated standard and custom libraries? Sure I can read a man page, or heck, a paper page to remember the arguments; but why should I? Good autocomplete will tell you the function arguments, their types, reference styles and return values as you type. You simply cannot compare this to anything that requires additional keystrokes, window changes, book opening. I know the syntax, I know how to program effectively, but what was the name of that function? Did it take one argument,2 or 20? Modern programming requires access to a lot of information, and autocomplete is one of the best things I've seen. Add to that an annotated class/library browser and wow, holy productivity.

Being an effective programmer often means picking up new tools. As these new tools inevitably come with reams of new functions / objects etc. Having a powerful editor flattens the learning curve greatly. How much quicker is it to become productive in a New language when you have autocomplete?

btw: the point of this message is not 'difficult and itimidating', the point is 'getting the job done'. If having imperfect memory means 'frankly not being good', then welcome to the human race, mate.

Re:C++ autocomplete... (1)

Q2Serpent (216415) | more than 9 years ago | (#11683890)

This is fine if all people used autocomplete for was "remembering". I argue that this is not the case.

All too often, Bob will find himself using autocomplete to see if a funciton in the list looks like what he wants to do. He has no idea how to do this task, but look - there is a function that sounds like it does what he wants. Forget that it may or may not do this task exactly, and forget that the documentation for the function may specify pre-conditions and post-conditions and other requirements... what happens? This leads straight to bad code and bad software, and I've seen it too many times.

If you have to read up on the library, its api, and the language in order to write something useful, then you will end up knowing more about the library and the api and the language.

If you know more about the library and the api and the language, the you have much greater potential for writing better code.

Better code is the goal, if you love what you do.

-Serp

Re:C++ autocomplete... (1)

fymidos (512362) | more than 9 years ago | (#11676488)

"the majority of people doing programming" cannot setup an editor to do what they want?

We are not talking about average joe, these people are *programmers*. Maybe you wouldn't expect all of them to be able to implement an editor from scratch, but managing a simple vimrc file?

That said, i have yet to see a preconfigured "easy-to-use" editor that can match the functionality of good old vim. My question is "Are there any programming tools that offer the functionality of traditional editors in a more userfriendly package?"

Re:C++ autocomplete... (1)

teknomage1 (854522) | more than 9 years ago | (#11677808)

Wast majority of people doing any sort of programming in the world are quite frankly not that good. What about the nuclear wessels? Sorry couldn't resist ...

Re:C++ autocomplete... (1)

Branko (806086) | more than 9 years ago | (#11692470)

Wast majority of people doing any sort of programming in the world are quite frankly not that good. Thus they need easy, preconfigured tools that will help them do the basically simple things they have to do, but that seem so difficult and intimidating to them.

I don't think that only junior programmers need user friendly tools. The less you need to think about the tool, the more brain power you have left for the real problem you are trying to solve. This is why tools such as Whole Tomato's Visual Assist are welcome at any level of programming.

Re:C++ autocomplete... (0)

Anonymous Coward | more than 9 years ago | (#11675728)

Suggestion Lists ctrl p and ctrl n in vim will auto complete and cycle through all the similar options. you can set your dictionary to include a syntax file. the whole skinny on that is here


Just a question... Do I need to switch modes to get that suggestion list?
can I just select it and then add it automatically in the source I am editing?

Underlining of Misspelled Words there's a swell spellchecker for vim here. it "highlights" mispelled words... which may be as good as "underlining".

"misspelled" includes badly written variable names on VA.

E.g.: If I have defined a variable "prok" and I write at some point "pork" then the suggestion is "prok". Does vim suggests "pork" or "prok"? If It does suggest "prok", then I am happy (I am vegetarian :)

There is no remotely decent Open Source completion (4, Interesting)

njyoder (164804) | more than 9 years ago | (#11675741)

You are blowing smoke out of your ass. Unless you've actually used Visual C++ and Visual Assist don't bother commenting.

That vim auto-completion stuff is *extremely* primitive. It's just autocompletion of keywords basically. VC++/VA have full blown language based auto-completion. That means they actually have a complete parser for the C++ language, which is by no means an easy thing to do. A "syntax file" is just matching regular expressions (a glorified grep) and isn't doing any real parsing of the language. So please, please unless you've used the auto-completion feature don't talk about it.

The closest thing I've seen is something in emacs and even that sucks balls. Let me give an exmaple. AC will go through all of the source and header files you're using and parse them. Because of this it can auto-complete CODE, not just KEYWORDS.

EX:

template
class A {
int foo;
char bar;
T meowface;
crap moo;
}; ...imagine there is a different definition of A that just accepts one template parameter

int main(void) {
A[autocomplete kicks in and shows you definition(s) for class A i.e. template A]

so I start typing A blue;

then later I can do

blue. and it shows me the members I can access, their protection, inherented shit blah blah

return 0;
}

Sorry, that's the best I can explain it quickly

There's also a debugging feature in C++ called something like edit as you go. You can basically edit code WHILE you're debugging and it will recompile it and insert it into the program while it's at a break point. THere are other features too.

The only other software, commercial or OSS that I've seen do this is Apple's newest development studio thing.

Re:There is no remotely decent Open Source complet (1)

spuzzzzzzz (807185) | more than 9 years ago | (#11675843)

Anjuta [sf.net] does this, IIRC. I've never used it for C++, but it certainly helps autocomplete members of C structs. I stopped using it because I found the package-management stuff a bit annoying, but it's quite a good program overall.

Re:There is no remotely decent Open Source complet (1)

Cyberax (705495) | more than 9 years ago | (#11675867)

No, it doesn't.

Anjuta does have some autocomplete for C, but it is nowhere close to VisualAssist support for C++.

Re:There is no remotely decent Open Source complet (1)

arkanes (521690) | more than 9 years ago | (#11677579)

Anjuta provides functionality similiar to that found in the (stock) version of Visual Studio. VA is head and shoulders above that in quality and functionality. It's the right concept, VA just does it better.

Re:There is no remotely decent Open Source complet (1)

civilizedINTENSITY (45686) | more than 9 years ago | (#11678095)

Call on RTFA?
FOSDEM - Will there be code autocompletion in future version of kdevelop ?

Alexander Dymo - Well, we've had automatic c/c++ code completion since 3.0 release. Code completion works automatically for symbols in a project and requires the code completion database to be built for symbols in external libraries.

Harald Fernengel - We already have that for several years. Roberto Raggi wrote a complete C++ parser for KDevelop, which is the most advanced C++ parser released as open source. We even support preprocessor directives and have recovery points so the parser will continue after a syntactical error if possible. The quality and speed of the parser beats most commercial solutions out there, which makes us pretty proud.
Now what I'm interested in is using UML. Embedding Umbrello sounds sweet ... "automatic conversion between model and a code. Currently you can import code into Umbrello and export the model back it into a code." Lets take that a step further with Arch & Design pattern wizzards to template out the model.

Re:There is no remotely decent Open Source complet (1)

Cyberax (705495) | more than 9 years ago | (#11679444)

Keywords are: "most advanced C++ parser released as open source" and "The quality and speed of the parser beats most commercial solutions out there, which makes us pretty proud".

KDevelop's autocomplete is better than in other OpenSource IDEs but it's still far behind VisualAssist (yes, I did check it).

"C"-Vision. (0)

Anonymous Coward | more than 9 years ago | (#11678690)

"The only other software, commercial or OSS that I've seen do this is Apple's newest development studio thing."

All this shows me is that the "C" world is a rather limited one.

Re:C++ autocomplete... (2, Interesting)

Cyberax (705495) | more than 9 years ago | (#11675763)

I don't care about user friendy interface, nice drop-down lists, etc. I need functionality.

For example, VAssist correctly understands smart pointers, template parameters, partial template specialization and functors. No other tool can do it (yes, I did look at VIM and emacs).

Re:C++ autocomplete... (4, Interesting)

WARM3CH (662028) | more than 9 years ago | (#11675782)

Guess you've never seen Visual Assist. No, you can't do MOST of what it does by simply using VIM. First, Visual Assist is not a text editor, it is a plugin for an already very good programmer's editor: Visual Studio. But it goes far beyound normal syntax highlighting. Why? Beacause Visual Assist is aware of the syntax of C/C++/VB/C#... and acts accordingly. For example, it can diffrentiate between local can globalr variables. The functions you have in your code and the functions you have used from other libraries. When you use it with existing libraries with source (like Boost for example), it will parse the whole thing and now Suggestion lists and spell checker will be aware of the new functions, methods and classes. So you can't simulate it with just a hand made syntax file, as suggestion lists and spell checker are project dependant. It also learns from the patterns you use more often in your code and sorts the suggestions in a way that the probability that you'd need to scroll down the list of the suggestions becomes lower and lower. Spell-checker nows the name of the local variables, included functions and namespaces so even before running the compiler, you know that you have not miss-spelled that function call. All in all, Visutal Assist is in a whole different class than VIM.

Re:C++ autocomplete... (1)

zerblat (785) | more than 9 years ago | (#11675918)

I haven't done any C/C++ for ages, but i do use vim, mostly for PHP these days. And it does add functions, variables etc that you define in the current file or that exist in files you include() to the completion list. I've never really investigated exactly how it works, so I don't know exactly how smart it is, or if it actually parses the code. I'm guessing it simply looks for keywords, but it adequate for me at least.

I'm sure Visual Assist is a fine tool that is very useful to you, but if you try to compare it with other tools, at least try to get familiar with them first.

Re:C++ autocomplete... (0)

Anonymous Coward | more than 9 years ago | (#11675919)

All this features seems a lot like Eclipse (http://www.eclipse.org/ , its opensource) to me ... too bad that eclipse is heavily JAVA based, but there are pluings that let you edit C/C++ code ways you descrided.

You never produce code thats not compileable thanks to eclipse checks, properties lister, etc.

and i agree: Vim is powerfull, but lets face it: it will never beat specialized IDEs in terms of eficiecy and user comfort

Re:C++ autocomplete... (2, Interesting)

mav[LAG] (31387) | more than 9 years ago | (#11675950)

No, you can't do MOST of what it does by simply using VIM.

Yes you can if you a) set up Vim properly and b) use ctags and TList whenever you can.

Beacause Visual Assist is aware of the syntax of C/C++/VB/C#... and acts accordingly.

Check.

For example, it can diffrentiate between local can globalr variables.

Check.

When you use it with existing libraries with source (like Boost for example), it will parse the whole thing and now Suggestion lists and spell checker will be aware of the new functions, methods and classes.

Check.

So you can't simulate it with just a hand made syntax file, as suggestion lists and spell checker are project dependant.

ctags and Tlist are set up to be automatic on my copy of vim.

It also learns from the patterns you use more often in your code and sorts the suggestions in a way that the probability that you'd need to scroll down the list of the suggestions becomes lower and lower.

I don't really need this since typing is faster than taking one hand off and using the mouse to find a suggestion. Besides, I prefer predictable behaviour rather than intelligent guesses behind the scenes.

Spell-checker nows the name of the local variables, included functions and namespaces so even before running the compiler, you know that you have not miss-spelled that function call.

Vim by default looks at the names of local vars, include files and namespaces so if you've used ctrl-n to complete something you know it's correct. I haven't misspelled a function name since I started using it.

All in all, Visutal Assist is in a whole different class than VIM.

Correct - Visual Assist is a plugin for Visual Studio and vim is a powerful extensible text editor. Seriously, vim is phenomenally powerful - especially at doing all the things you seem to think it's deficient at. You can move around code like lightning (by far the most common action of any programming), jump to and from function, class and macro definitions with a single key, and with plugins like TList and integrated debuggers, it becomes a very fine IDE as well.

Re:C++ autocomplete... (1)

njyoder (164804) | more than 9 years ago | (#11676009)

Yes you can if you a) set up Vim properly and b) use ctags and TList whenever you can.

Uncheck.

ctags only recognizes a limited set of language constructs.

Beacause Visual Assist is aware of the syntax of C/C++/VB/C#... and acts accordingly.

Check.


Uncheck, vim just does simple pattern matching, it doesn't actually understand the language.

For example, it can diffrentiate between local can globalr variables.

Check.


Uncheck, it can't parse C++.

When you use it with existing libraries with source (like Boost for example), it will parse the whole thing and now Suggestion lists and spell checker will be aware of the new functions, methods and classes.

Check.


Uncheck, see above.

So you can't simulate it with just a hand made syntax file, as suggestion lists and spell checker are project dependant.

ctags and Tlist are set up to be automatic on my copy of vim.


Uncheck, neither of those provides this kind of functionality, especially not for C++.

It also learns from the patterns you use more often in your code and sorts the suggestions in a way that the probability that you'd need to scroll down the list of the suggestions becomes lower and lower.

"Patterns you use" indicates it's just doing pattern matching, not understanding the language.

I don't really need this since typing is faster than taking one hand off and using the mouse to find a suggestion. Besides, I prefer predictable behaviour rather than intelligent guesses behind the scenes.

Visual Assist is highly predictable, you're talking out of your ass here.

Spell-checker nows the name of the local variables, included functions and namespaces so even before running the compiler, you know that you have not miss-spelled that function call.

There is more to code completion than variable and function names.

Correct - Visual Assist is a plugin for Visual Studio and vim is a powerful extensible text editor. Seriously, vim is phenomenally powerful - especially at doing all the things you seem to think it's deficient at. You can move around code like lightning (by far the most common action of any programming), jump to and from function, class and macro definitions with a single key, and with plugins like TList and integrated debuggers, it becomes a very fine IDE as well.

It is grossly inferior to VC++ + Visual Assist.

1. Do you actually code in C++?
2. Have you actually used intellisense/visual assist (code compleition)?
3. Do you realize there is more to code completion than recognition of function and vairable names?
4. Ever heard of a C++ template?
5. Are you aware of the other features provided in VC++?

My guess is that the answer to all the above is no. I really hate it when Slashdoters who defend OSS automatically get moded up even if their information is wrong or misleading. You've obviously never used intellisense nor VC++ (or you've barely used them).

ctags, for the most part, processes just C language constructs. Even then I'm betting it's rather limited in what it does. In order to do visual assist style code completion you NEED to have a full language parser for C++. ctags has no such thing.

Unnnngh, people who talk out of their ass.

Re:C++ autocomplete... (2, Insightful)

mav[LAG] (31387) | more than 9 years ago | (#11676113)

It also learns from the patterns you use more often in your code and sorts the suggestions in a way that the probability that you'd need to scroll down the list of the suggestions becomes lower and lower.

"Patterns you use" indicates it's just doing pattern matching, not understanding the language.


The gp wrote that paragraph - not me. You arguing for me? :)

Uncheck, it can't parse C++.

ctags can parse C++ just fine.


1. Do you actually code in C++?


Yes - got a current project of about 20 000 lines that's been going for 18 months now.


2. Have you actually used intellisense/visual assist (code compleition)?


Yep.


3. Do you realize there is more to code completion than recognition of function and vairable names?


Yes and I don't like it. Perhaps my bias has come through in my previous reply. I find my productivity with vim much higher than with vc++ and intellisense/code completion. This is the real problem with my previous post actually - not being upfront and saying "I find vc++ code-completion annoying and counter-productive IMHO for these reasons."


4. Ever heard of a C++ template?


I think so - is that where you write a skeleton file and fill in the blanks later?


5. Are you aware of the other features provided in VC++?


Used to be but I'm not a sharecropper any more.

My guess is that the answer to all the above is no. I really hate it when Slashdoters who defend OSS automatically get moded up even if their information is wrong or misleading.

Well your guess was wrong and you can back off on your hatred since I haven't been modded up (at least at this time of writing).

ctags, for the most part, processes just C language constructs.

Not true. [sourceforge.net]

Even then I'm betting it's rather limited in what it does. In order to do visual assist style code completion you NEED to have a full language parser for C++. ctags has no such thing.

Well, sure. But then I already have a full language parser for c++. It's called g++. I don't need another one built into my editor when I have a set of tools that does what I need to be productive.

Unnnngh, people who talk out of their ass.

Tsk tsk - manners. People are more receptive without personal attacks. You could have pointed out where I was wrong without any labelling or guesses as to my motivations and experience.

Re:C++ autocomplete... (1)

BenjyD (316700) | more than 9 years ago | (#11676206)

There is far more to auto-completion than variable/function names. Does ctags allow vi to generate a tooltip with the function arguments listed - I can't find it in the docs. Not having to look up or remember every function declaration is extremely useful. Was that function "short int do_something(short int number_of_time,short int size)" or "int do_something(int size,int number_of_times)".

Having a C++ parser in the compiler isn't that much use while typing. Source code is highly structured, why not use an IDE that reduces the burden on the developer to remember that structure? While I can program fine with emacs or vi, visual IDEs make developing medium-size and up projects much easier.

I think so - is that where you write a skeleton file and fill in the blanks later?

This is a joke, right?

Re:C++ autocomplete... (1)

mav[LAG] (31387) | more than 9 years ago | (#11676419)

There is far more to auto-completion than variable/function names. Does ctags allow vi to generate a tooltip with the function arguments listed - I can't find it in the docs. Not having to look up or remember every function declaration is extremely useful. Was that function "short int do_something(short int number_of_time,short int size)" or "int do_something(int size,int number_of_times)".

Don't know about tooltips since I normally don't use the mouse but it's dead easy to jump to any declaration and jump back with just two keystrokes while touch-typing. Or you can set up either TList or ctags to display the declaration in another window.

Having a C++ parser in the compiler isn't that much use while typing. Source code is highly structured, why not use an IDE that reduces the burden on the developer to remember that structure?

Agreed - it's a good idea. I've haven't said Intellisense is bad - just that I find it gets in the way and is slower for me to use than the equivalents in vim. That is my personal opinion after having used both. If someone wants to extend one or both of TList or ctags to create tooltips for function declarations, then I'm sure they will.

While I can program fine with emacs or vi, visual IDEs make developing medium-size and up projects much easier.

Some people like IDEs, some people don't. I used to be a huge IDE fan - Turbo Pascal, Turbo C, Borland C++, Visual C++ and so on, but I now prefer gvim because of its editing with some added plugins that replace the features of IDEs that I really miss. It is entirely possible to cope with very large projects using emacs or vi as the vast body of FLOSS shows very well.

I think so - is that where you write a skeleton file and fill in the blanks later?

This is a joke, right?


Yep :)

Re:C++ autocomplete... (0)

Anonymous Coward | more than 9 years ago | (#11678062)

> Don't know about tooltips since I normally don't use the mouse

VA tooltips have nothing to do with the mouse. Nor do any of the tooltips of any of the IDEs that support this sort of function. You have no place dismissing something you've never used or even bothered to learn the slightest thing about. Yes, I've used vim, emacs, and MSVC+VA. I find myself wishing for some features from emacs when using VA, but more often I find myself wishing for VA in other environments.

Re:C++ autocomplete... (1)

mav[LAG] (31387) | more than 9 years ago | (#11679537)

VA tooltips have nothing to do with the mouse.

Yeah I know. The gp was asking about vim and I assumed he meant gvim (which is what I use) and the normal pop-up style tooltips you get in gtk+. Tooltips in gtk+ require the mouse pointer to be left over a widget that can receive events - hence my comment about the mouse. Try reading what I've said. I'm perfectly aware of how VA tooltips work. Very nifty actually and I believe Vim 7 is going to get them along with some form of Intellisense.

You have no place dismissing something you've never used or even bothered to learn the slightest thing about.

Hmmm. *reads previous posts*. Nope - can't see where I wrote anything bad or ignorant about VA - just where I expressed my personal opinion about it.

Re:C++ autocomplete... (1)

arkanes (521690) | more than 9 years ago | (#11677639)

It also learns from the patterns you use more often in your code and sorts the suggestions in a way that the probability that you'd need to scroll down the list of the suggestions becomes lower and lower. "Patterns you use" indicates it's just doing pattern matching, not understanding the language.

To clear up any misconceptions: There is more than one definition of the word pattern. The OP was talking about VAs heuristic behavior, where (for example) if you call Foo.Bar() a whole lot, the method Bar will be moved upward in the autocomplete list. Note that you don't need to use a mouse to interact with these lists, VA provides keyboard access to all it's features.

Re:C++ autocomplete... (1)

snorklewacker (836663) | more than 9 years ago | (#11678112)

The OP was talking about VAs heuristic behavior, where (for example) if you call Foo.Bar() a whole lot, the method Bar will be moved upward in the autocomplete list.

Emacs has a pretty simple yet effective heuristic for its dabbrev expansion: it goes backward from the point for the most recent expansion candidate. Thus what you expanded most recently will be what's expanded first. It's pretty simple-minded, but it's actually quite useful. What's great about it is that it expands anything at all without having to create abbrev tables. Thus, if I'm typing out a paper and type out "existentialism" once, I just type "ex", hit alt-space (it's normally bound to alt-/) and presto, it expands it. It even looks in other buffers.

It's no substitute for a good autocomplete, but it would make a great supplemental feature. I sometimes find myself wishing for this feature in other editors when typing out cumbersome names (of people, like "Suresh Ramasubramanian") in comments.

Re:C++ autocomplete... (1)

arkanes (521690) | more than 9 years ago | (#11678230)

VA will also add autocompletion for words near your current location in the source code. You can manually add arbitrary words to it as well. It sounds very similiar to the emacs feature you describe (not a big emacs fan). This is in addition to the code insight features. It's also aware of scope, so (for example) it offers auto-complete for local variables first. It makes errors due to typoing variable names much more rare.

I just realized I'm coming off as a total fanboy in my posts :P I'm not associated with VA or whole tomato in any way. VA also has it's share of warts - it's a hog for ram (continually updated syntax tree of your entire C++ program....) and there have been any number of bugs, minor and otherwise. It's an amazingly functional tool, though, and the Whole Tomato guys are very supportive.

Re:C++ autocomplete... (1)

njyoder (164804) | more than 9 years ago | (#11681207)

ctags can parse C++ just fine.

ctags only parses part of C++, it's not complete. Mostly it's just a C parser witha little bit tacked on.

Yes and I don't like it. Perhaps my bias has come through in my previous reply. I find my productivity with vim much higher than with vc++ and intellisense/code completion. This is the real problem with my previous post actually - not being upfront and saying "I find vc++ code-completion annoying and counter-productive IMHO for these reasons."

So then you admit that it's NOT an equivalent after all, it might help to mention that. You ARE biased and you're actually defending something which you admit has less functionality.

Used to be but I'm not a sharecropper any more.

Glad to see you don't like the other extra functionality too. It's nice to see someone follow the "less is better philosophy." I think I'll start arguing that ed is even better because it has less functionality than vim.

Not true.

That doesn't disprove what I said. It only parses a small portion of C++ on top of what was already supported for C

Well, sure. But then I already have a full language parser for c++. It's called g++. I don't need another one built into my editor when I have a set of tools that does what I need to be productive.

This is completely missing the point. Why are you comparing a compiler to auto-completion? You need a full parser to have fully supported auto-completion like VA does.

Tsk tsk - manners. People are more receptive without personal attacks. You could have pointed out where I was wrong without any labelling or guesses as to my motivations and experience.

No way, you admitted you were biased here and you made an intentionally misleading comment and only afterwards admited that vim has less functionality.

Re:C++ autocomplete... (1)

mav[LAG] (31387) | more than 9 years ago | (#11682726)

So then you admit that it's NOT an equivalent after all, it might help to mention that

Sure but I just did. Nothing wrong with admitting your original premise was incorrect. As I said pretty clearly, I shouldn't have compared vim and VA directly, rather said "I prefer the way vim does it for these reasons."
Are you going to admit everything you said about me was incorrect as well? I thought not...

Glad to see you don't like the other extra functionality too.

The reason is much simpler: I don't have to code C or C++ for Windows - only Python and that works without change from Linux.

That doesn't disprove what I said. It only parses a small portion of C++ on top of what was already supported for C

No - you said "ctags for the most part processes just C language constructs." I was disagreeing with that statement.

Why are you comparing a compiler to auto-completion?

Why are you comparing a text editor to a plugin for an IDE? :) Come to think of it, why am I debating with a 13-year old...

No way, you admitted you were biased here and you made an intentionally misleading comment and only afterwards admited that vim has less functionality.

It wasn't intentionally misleading - as I have said about three times now, what I should have said was "VA does it this way but I in my not so humble opinion it gets in the way of coding and I prefer vim's way of doing it."
But, rest assured I will immediately go out and buy Windows and install it on a box here, buy Visual Studio, install it and then wonder at the marvels of VA.

Re:C++ autocomplete... (1)

tomkast (858749) | more than 9 years ago | (#11691882)

OK - great. One problem, the manufacturer of Visual Studio is Microsoft. Speaking from 20 years of programing, 7 of which was on the MS Platform, Microsoft is the developer's enemy. They will:
1)Deprive you of an open community who shares code-level relities of programming
2) Deprive you of an understanding of how libraries you use are implemented
3) Make debugging the &*(^iest experience that you can ever imagine
4) Force you to buy things just to be creative

Re:C++ autocomplete... (1)

BenjyD (316700) | more than 9 years ago | (#11675968)

I'm not sure that Vim's autocomplete is anywhere near as advanced as Visual Studio's or KDevelop's. In those IDEs (haven't used KDevelop for ages), you get a completion list for classes with annotations indicating whether they're private or public, members or methods etc.

The completion in Emacs and Vi is far less advanced - it just selects from a list of matching terms. No list, no information and if I mispell a member, I get no indication, the auto-complete just starts selecting random matching symbols from its list that match with the mispelled version (so object->c^p brings up object->char, rather than saying "no completion" if there isn't one).

Re:C++ autocomplete... (1)

arkanes (521690) | more than 9 years ago | (#11677515)

The VA stuff is a lot more advanced than (at least whats built into) vim. Many of the features aren't directly comparable, because they're things you'd want in a GUI environment rather than a terminal-based editor like vim. VA parses all your source files, including supporting libraries and dependencies (pulled from the Visual Studio project files). It does this in real time, as you work. The syntax highlighting is actually context-sensitive, not simple keyword highlighting.

You could probably implement much of this in vim with sufficent work, but as far as I know there's nothing out of the box for it. You aren't going to get the same quality of context sensitivity without an IDE that does project management, though.

Re:C++ autocomplete... (0)

Anonymous Coward | more than 9 years ago | (#11678004)

> Enhanced Listboxes: no

There goes vim. I mean, vim was already a non-starter, but those listboxes are are the entire function of autocomplete.

Gee, this here hunk o rock is as good as your porsche. I mean, it's kinda porsche shaped, and it's about as heavy, right? Good ol rock.

Re:C++ autocomplete... (0)

Anonymous Coward | more than 9 years ago | (#11675632)

When you add it. If you need a feature you can add it yourself, and that is the point of Free software -- not having others write it for you for free.

Re:C++ autocomplete... (1)

jokumuu (831894) | more than 9 years ago | (#11675636)

Indeed, very true, but this does make the development go toward the more advanced features as the programmers that need basic functions are not capable of adding them.

Re:C++ autocomplete... (1)

luvirini (753157) | more than 9 years ago | (#11675655)

This gets me thinking... Maybe we would need an "apprentice" system in free software. That is some more accomlished people would take some "youngsters" under their wings to help them get started the right way.

Big Brother / Little Brother (1)

QuietRiot (16908) | more than 9 years ago | (#11675692)

... Maybe we would need an "apprentice" system in free software. ...

Advogato. Check it! [advogato.org] Not exacly "apprentice" but appears somewhat related in nature.

[ mission statement [advogato.org] ]
[ trust [advogato.org] ]

Re:C++ autocomplete... (1)

gedhrel (241953) | more than 9 years ago | (#11675764)

Professional development is one of the leading reasons for open source contribution cited by a large number of developers. You learn by working with hackers who are better than you. In other words, there already _is_ an "apprentice system".

Re:C++ autocomplete... (1)

Cyberax (705495) | more than 9 years ago | (#11675797)

Yes, I understand.

But adding correct C++ autocomplete is a HUGE task, I can't do it alone in any reasonable time.

Re:C++ autocomplete... (1)

bkubi (834026) | more than 9 years ago | (#11675813)

kdevelop supports autocomplete. In the Project Settings I think under C++ one can select directories to parse for classes, which then are autocompleted. Aswell there is a plugin which does autocomplete with words written in the same file.

Maybe better to get basic features working first (2, Insightful)

edxwelch (600979) | more than 9 years ago | (#11675865)

Autocomplete is not so useful as integrated help and other tools. It's intrusive, sometimes it pops up when you don't want it and slows down simply editing operations (the database of all possible c++ libraries is quite large).
Also it's quite difficult to implement. I see many opensource projects spending huge amounts of efforts trying to implement these trendy features and then they leave basic things like usability and debugging support half finished

Re:C++ autocomplete... (1)

ssj_195 (827847) | more than 9 years ago | (#11676665)

I've been absolutely itching to work and this problem for months, now, but what with work on my PhD corrections, I can never find the time :( I have, however, been thinking about the problem very intensively, and the following seems to be just about tractable - if I could work on it 10 hours a day, I reckon it could be done within 8 weeks. When (if ? :( ) I start working on it, I'll be using a language like Python as coding in C/C++ will be a nightmare. Here is what I would like to (and believe I could) implement:

- "Perfect" intellisense: whenever it would make sense for a list of possible completions to be given, the program should provide them. Prerequisites are: integrated C++ Preprocessor (e.g. typedef struct { int a; int b; } A; #define C A C c; c.[should output a and b as choice here]) and full knowledge of ANSI C++ rules concerning name resolution, method/ function resolution; etc. As said, this is a positively Herculean task, but given a nice, high-level, managed language (and a copy of the ANSI C++ doc, which I've already bought :)) it is possible, given time.

- All tokens occurring in your source files tagged with meta-data. e.g. a function call should be identified with the corresponding function in your code, after resolving overloads if applicable; macros should be associated with their expansions; etc. This will have some neat side-effects, if accomplished e.g. one could search for all occasions in the code where an object of class A had a non-const method called on it, etc. This is again doable, although will be immensely heap-unfriendly :)

- All of this accomplished in real-time, including highlighting of errors.

Oddly enough, perhaps the most challenging aspect of this is to emulate the CPP preprocessor in real-time; most "tricks" that I came up with that would (I imagine) cause current would-be Intellisensers to stumble are based on doing naughty, contrived things with macros e.g. typedef struct {
#ifdef SAUSAGE
int a;
#else
int b;
#endif
} C; C c; c.[is a or b that is presented as a choice?] and even something simple like defining (perfectly validly, but very stupidly)
#define A blah }
causes a lot of problems with something simple like matching curly braces. Not to mentioned the requirement to #include source files and cache them intelligently enough to provide having to re-parse them everytime something changes (have you ever followed the chain of #inclusions through some of the standard libraries? There's a whole metric ton of shit in there!)
So this is my dream; to be able to work on this project and see it through to the stage where the real-time parsing of C++ is "perfect" to the extent that it will not fail upon encountering some of the tricks I've described above. As I mentioned, a surprisingly large amount of the problems occur from trying to apply, in real-time with a continously edited document, the rules of the preprocessor; the syntactic rules of C++ (consisting of things like how templates should be expanded, method resolution in the presence of multiple inhertitance etc), while huge and complex, are also very neatly defined in the ANSI docs, and should prove to be relatively tractable.

Perhaps an order-of-magnitude more ambitious still (although, upon recent reflection, perhaps not) would be a C++ interpreter: the rules for enacting a run of a C++ program, while still very complex, are not inordinately more complex that the rules for just parsing a C++ program. This would open up the way for one of my favourite features which has been available to Visual Studio for at least 6 years: Edit and Continue. Of course, to be useful in real life, one would have to be able to deal with linking to existing libraries, and I have no idea how this could be achieved (in that I haven't looked into it at all, not that I've looked into it and drawn a complete blank! ;)) If I could write an Open Source C++ IDE that performed all of these tasks, I could die a happy man :) Anyone have any thoughts on all this? I'd love to have some discussion with this with other coders. Please let me know if anyone would find this useful, or whatever additional features they would like to have in a C++ IDE. One thought that occurs is that an IDE that "understands" C++ completely could conceivably make use of a C++ meta-language (the "find all places where an object of class A has a non-constant method called on it" would be an example here) that could aid the programmer in some way, either by creating valid C++ code "automatically" or performing "rich" searches like the one described here. Does anyone have any thoughts on how to develop this idea further?

Post here or hit me at ssj195 at hotmail.com if you're interested :)

Re:C++ autocomplete... (1)

Cyberax (705495) | more than 9 years ago | (#11676971)

You don't really need to handle all C++ language constructs, you just need to handle MOST of them :)

Re:C++ autocomplete... (1)

ssj_195 (827847) | more than 9 years ago | (#11677002)

If a job's worth doing, etc ;) Seriously, I couldn't live with myself if I did a half-assed job of it - it's all or nothing with me, baby :)

Re:C++ autocomplete... (1)

Tethys_was_taken (813654) | more than 9 years ago | (#11678243)

Try Anjuta [sourceforge.net] (or here [anjuta.org] )

Ok, let me guess (1, Troll)

secretsquirel (805445) | more than 9 years ago | (#11675577)

next week thier going to release the 3rd part of the interview, or just put both halves together and it will be posted on /. again.

Re:Ok, let me guess (0, Offtopic)

luvirini (753157) | more than 9 years ago | (#11675608)

Well, Programming matters matter to many nerds so by slashdot motto they should be included.

Re:Ok, let me guess (0, Offtopic)

midianus (727997) | more than 9 years ago | (#11675629)

Well, who wouldn't want to be slashdotted every day?

Gambas Goodies? (-1, Offtopic)

Anonymous Coward | more than 9 years ago | (#11675590)

"Benoit Minisini for Gambas"

Has anyone tried Gambas? What's their opinion on it?

Re:Gambas Goodies? (1, Funny)

Anonymous Coward | more than 9 years ago | (#11675641)

It's better with garlic and olive oil.

Sure, but does... (1)

poopdeville (841677) | more than 9 years ago | (#11675603)

FOSDEM run linux?

New IDE (5, Interesting)

should_be_linear (779431) | more than 9 years ago | (#11675611)

Really neat free C/C++ IDE for both Linux and Windows is Ultimate++ http://upp.sourceforge.net/ [sourceforge.net] [SF]. It also includes framework for developing cross platform GUI. On windows it supports mingw and free (well "free") MS C++ Toolkit and native MS debugger. Nice part is that you can have single workbench with projects where you can switch toolchains (mingw/MS).

Take also a look at Widestudio (2, Informative)

Anonymous Coward | more than 9 years ago | (#11675674)

Here [widestudio.org] : free (speech and beer), multi platform, multi language, own object library, GUI builder, etc. Looks really promising.

Re:New IDE (1)

Cato (8296) | more than 9 years ago | (#11675821)

Anyone know if this includes the equivalent of MSDEV? This is the one thing I needed to build Apache 2.x on Windows, having downloaded Microsoft Nmake and their free Visual C++ Toolkit.

Any other approaches to developing for Apache on Windows without having to pay for development tools would be great to know about.

Re:New IDE (1)

jrumney (197329) | more than 9 years ago | (#11676232)

According to the Apache docs, you can compile with nmake using Makefile.win

Re:New IDE (1)

Cato (8296) | more than 9 years ago | (#11686788)

Thanks, but I already have nmake and would be using Makefile.win - the problem is MSDEV, which is missing from the free downloads that Microsoft provides.

Re:New IDE (1)

jrumney (197329) | more than 9 years ago | (#11686953)

Why do you need MSDEV if you're compiling with nmake? MSDEV is only needed for compiling from the IDE project files.

Bison (1)

mboverload (657893) | more than 9 years ago | (#11675758)

GNU Bison!

Holler for old-skool compilers =P

Re:Bison (1)

mboverload (657893) | more than 9 years ago | (#11675777)

ok ok, I forgot it's not a compiler but the joke still applies =)

About smart editors (5, Interesting)

aCapitalist (552761) | more than 9 years ago | (#11675847)

I've been programming on Linux professionally since 1997 when we saw the writing on the wall for OS/2.

Now I love vim, but mostly because of its keybindings and not because I think it's really a great program. It and Emacs are terminal programs at their heart, no matter what kind of guis you slap on the front-end.

I've always like IDEs. I don't care about any false machoness about only using Vi or Emacs in the Unix world. You, as a developer, are a user too and the computer should be there to do the mundane stuff that you shouldn't be doing manually anyway. Just think if you didn't have ctags or etags and had to manually grep through source to find stuff. A pain in the ass.

Now something like Visual Slickedit is nice because it can do refactoring and actually understands C++, but will cost you about $300 or more. That's fine for us commercial developers, but maybe not for the hobbyist. KDevelop 3.x, after the long rewrite, has finally got a somewhat functional C++ parser for it, but you have to bring in most of KDE to use it. Eclipse has a C++ parser, but then you have a dependancy on java and it's not so lightweight.

My point is, if GCC was modularized then we might have had a lightweight editor/IDE that had a deep understanding of C++ to do cool stuff like Visual Assist does. Just look at what Eclipse or IDEA does for Java developers.

I want to express my design in source and would rather have the development environment do some of the drudgery, menial work for me.

Things have improved in recent years, but I still think that windows has a leg up on the number and quality of development tools.

I now await the "ed is the only editor a real programmer needs" responses.

Re:About smart editors (2, Informative)

BenjyD (316700) | more than 9 years ago | (#11675924)

Precisely. I think there is a lot of macho posturing over programming tools, but if something can reduce the amount of state I have to hold in my head while coding, it's very useful. Of course, the tools can become a crutch - I really struggled going from Visual studio to emacs, because I was used to having everything laid out for me - but for an experienced developer that's not an issue.

The only problem I found with both Kdevelop and Annjuta was that they didn't cope well with annotated function declarations, which rendered their auto-completion and class views useless to me. I use the annotations to define which code segment a function should be in for multi-segment PalmOS apps (Damn 16-bit pointers).

Re:About smart editors (1)

aCapitalist (552761) | more than 9 years ago | (#11675986)

Of course, the tools can become a crutch

Vim/Vi has been ported to every platform under the sun, so I always know that no matter what platform I'm on I'll have at least that.

By the way, Anjuta 2.0 is just around the corner (later on this month I believe). Let's hope it comes with a decent parser. http://www.anjuta.org/wiki/index.php/Anjuta2 [anjuta.org] I've never really understood why Gnome people haven't put more emphasis on creating a top-notch IDE like the KDE folks have.

Re:About smart editors (1)

BenjyD (316700) | more than 9 years ago | (#11676001)

Vim/Vi has been ported to every platform under the sun,

I know - someone even offered to hire me to port Vim to PalmOS a while back. I turned them down, but it would have been funny to see people trying to type Vi commands with a stylus.

Re:About smart editors (0)

Anonymous Coward | more than 9 years ago | (#11676082)

Take this with a grain of salt, but my experience is that a lot more KDE development is driven by people I'd label "noobs" and who therefore express a proportionately greater fondness for hand-holding and "fill-in-the-blanks" programming.

Combine that with the usual problem associated with trying to make OO GUI toolkits in C++ (in this case Qt, but the same happens every time it's tried) and you have a constant background of people saying "You know, we really need a more powerful IDE to be effective"

I've never missed an IDE in all my years of developing for The GIMP, JACK and sundry other desktop applications. I'm currently writing OpenGL code, and what do you know, GTK+ provides a simple means for me to just write ordinary OpenGL code in C, without any fancy tools, right in the middle of my GNOME application.

One thing I _do_ use that's different from when I wrote text only software is a UI design tool, in this case Glade. I can knock up the UI for a new application, get it to obey the HIG and look nice, and then go back to my text editor and hook all the functionality up to that GUI.

Re:About smart editors (1)

puetzk (98046) | more than 9 years ago | (#11676743)

I dunno - windows has a leg up on shiny editors (though I'm with you on vim - it may be a terminal program at heart, but it's a programmer's best friend). I'm watching yzis with some interest - building a ttuly GUI-oriented implementation of vim's core design would allow some nice improvements.

But, I would argue that windows trails far behind in other development tool areas - tools like valgrind and oprofile. On the win32 projects I work with, I would trade visual studio for mingw any day if that meant I could have valgrind.

If I'm wrong, and equivalents do exist (don't have to be free, but thousands like Purify is pushing it), please tell me :-)

I would love to see a good C++ refactoring tool (1)

schngrg (590418) | more than 9 years ago | (#11675996)

A large part of my coding and designing time is spent refactoring the code and I have been trying to find a good tool since forever.

I have tried Borland's Together but would love to see something cheaper and more "integrable" into popular IDEs.

Re:I would love to see a good C++ refactoring tool (3, Interesting)

aCapitalist (552761) | more than 9 years ago | (#11676028)

I'm no compiler expert, but it's my understanding that C++ refactoring depends on a deep understanding of the already complex C++ language - more so than say code-completion(intellisense).

I know that visual slickedit has it (proprietary - somewhat expensive), but i'm not aware of any other editor/IDE that can.

I know that http://cedet.sourceforge.net/ [sourceforge.net] for emacs can do intellisense type stuff, but not sure about refactoring.

I wouldn't be surprised to see the Eclipse CDT plugin project get it eventually.

I was listening to Bram Moolenaar's (vim head honcho) BOF
talk and he spent about half of it talking about intellisense(code completion), so I think us vim heads might get some of that for vim 7.

SharpDevelop (3, Informative)

Anonymous Coward | more than 9 years ago | (#11676124)

Check this out... See if it meets your needs:

http://www.icsharpcode.net/OpenSource/SD/ [icsharpcode.net]

Works pretty well for me....

Re:SharpDevelop (1)

anomalous cohort (704239) | more than 9 years ago | (#11677288)

I tried out this open source IDE for C# on a fairly large project built using VS.NET and the results were that it was way too slow. It's pretty good for small projects, though.

xemacs indenting (0)

Anonymous Coward | more than 9 years ago | (#11676265)

no one does indenting like emacs and xemacs


Highlight, right-click, indent. Nice.


It even helps with if the code is written properly; no dropped } or extra ;

mod Up (-1, Redundant)

Anonymous Coward | more than 9 years ago | (#11676637)

been lloking for! 7he facts and

Hello.. Eclise, Netbeans!! (3, Interesting)

ahmetaa (519568) | more than 9 years ago | (#11676807)

I do not get it.. why there is almost no mention of Eclipse or Netbeans in these articles? why java is the bastrad child of the open source community? is it because people still dont get it? Those IDE's are far beyond C++ counterparts. Even Visual Studio. Or take IDEA. it is free for open source use now and probably the best programmers tool ever desgined.

cu8 (-1, Troll)

Anonymous Coward | more than 9 years ago | (#11676988)

committerbase and more gay than they never heeded Of *BSD aaswipes be in a scene and enjoy the loud between each BSD Propaganda and minutes now while Don't be a sling little-known are incompatible be any fucking Why not? It's quick of a solid dose bought the farm.... That he documents from within. THEIR PARTING RAM) for about 20 the most. Look at just yet, but I'm Darren Reed, which these rules will Love of two is stupid. To the duty to be a big RAISE OR LOWER THE play area Try not Of FreeBSD Usenet around are in need later seen in (Click Here the deal with you Followed. Obviously non nigger patrons and other party as little overhead ITS CORPSE TURNED needs OS. Now BSDI Bottoms butt. Wipe NIGGER ASSOCIATION go find something hear you. Also, if

Smalltalk (2, Insightful)

GnuVince (623231) | more than 9 years ago | (#11677148)

When are programming tools for languages such as C++, Java or C# going to be as advanced as the stuff you get with Smalltalk?

Smalltalk-Barn Door. (0)

Anonymous Coward | more than 9 years ago | (#11679040)

"When are programming tools for languages such as C++, Java or C# going to be as advanced as the stuff you get with Smalltalk?"

When hell freezes over. Seriously, the majority of the programming world is stuck in AlgolLand. They're gradually working their way to languages like Lisp and Smalltalk, but it will be a long time before things come full circle.*

*I should point out it's not entirely their fault. The Lisp and Smalltalk communities have done some damage of their own.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...