|
From: Adam V. <an...@ro...> - 2002-07-04 18:41:33
|
This list could really use some spark. What kinds of apps are people aiming for? How many pure beginners are here? How many advanced developers? Do we just write freeware? Do you use this compiler exclusively, or others? Throw out some practical topics please. |
|
From: Rob <ro...@us...> - 2002-07-04 19:17:46
|
I've been using Dev-C++ for probably a little over a month, and just completed my first "semester" of C++ at a nearby college, in which they crammed the content of a 15-week term into 4 weeks. We just started the second class yesterday, which will involve a great deal of Windows programming, so the professor requires that we use M$ Visual C++ for the Windows-specific assignments. I've done some OOP in Python and Java, and have distant memories of a Pascal class back in the Spring of 1992. I guess I can call myself an intermediate developer, since I seem to basically understand a lot of the beginner-level material and have even written a few tutorials on different topics. (See my Useless Python website at http://uselesspython.com if you care to find out more about that stuff.) As far as topics go, I guess I can throw out the list of topics I'll be expected to grasp by the beginning of August: Implementation Hiding & Object Execution Function Overloading CONST Objects and Special Functions References & Pointers Operator Overloading & Dynamic Objects Inheritance Polymorphism Templates Rob Andrews http://uselesspython.com Adam Vardy wrote: > This list could really use some spark. What kinds of apps are people aiming for? > > How many pure beginners are here? How many advanced developers? > > Do we just write freeware? Do you use this compiler exclusively, or > others? > > Throw out some practical topics please. > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Caffeinated soap. No kidding. > http://thinkgeek.com/sf > _______________________________________________ > Dev-cpp-users mailing list > Dev...@li... > https://lists.sourceforge.net/lists/listinfo/dev-cpp-users > > -- "Giving the Linus Torvalds Award to the Free Software Foundation is a bit like giving the Han Solo Award to the Rebel Alliance." --Richard Stallman at the 1999 LinuxWorld show |
|
From: Mac R. <re...@no...> - 2002-07-04 19:40:14
|
At 04:11 PM 7/4/02 -0230, Adam Vardy wrote:
>This list could really use some spark. What kinds of apps are people
aiming for?
>
>How many pure beginners are here? How many advanced developers?
>
>Do we just write freeware? Do you use this compiler exclusively, or
>others?
>
>Throw out some practical topics please.
I would consider myself a moderately advanced C++ developer. At least,
it's what I've been doing professionally for the last several years. My
knowledge of STL and BOOST libraries is currently more "book learning" than
practical experience, though I hope to remedy that in the very near future
with some new projects I am working on.
I sought out Dev-C++ in an attempt to find:
1. A Win32 C++ compiler.
2. that handles most language features properly (templates, partial
template specialization, iostreams, stl, etc)
3. that had an IDE -- and I don't consider a text editor with a "Tools"
menu to be an IDE.
4. that had an integrated debugger.
I am not especially interested in the "free, as in beer" aspect of Dev-C++,
though I do appreciate that the developers want to give something to the
world. If I was happy with Dev-C++, and felt that it did everything I
wanted, I would be comfortable paying around $100 for it. My standards are
rather high, however, and when you hear what I want, that $100 is gonna
sound like I'm being a skinflint:
1. Code completion, and not the trivial kind. I am not impressed with
editors that have databases of the Win32 API functions and will tell me
what arguments to pass to them. Visual C++ 6.0 has the closest
functionality that I have ever seen, though I have not worked with
C++Builder lately. And I am unhappy enough with VC6 that I am endeavoring
to develop my own system. I want code completion that understands the
#defines that are active, recognizes my variables as concrete
instantiations of templates, and gives me valid sets of arguments even in
the face of function overloading of templatized member functions of
templatized classes. Basically, if compile time errors are easier to fix
than runtime errors, then "edit time" signature information is better than
compile time signature information. Oh, and it would have to track all of
the #include induced dependencies for files, so that if a header was
modified and then it went back to editing a .cpp file that depended on that
header, the completion would be accurate. This, of course, requires
writing a moderate chunk of a C++ compiler just to support this feature.
At least I don't have to worry about code generation...
2. Serious integrated debugger support. A combination of the capabilities
of Insight, GVD, and DDD. Insight supports most of the views of data that
I like, including (and I consider this a pretty important one) the ability
to expand structures in a tree view. Unfortunately, I loathe the "giant
collection of floating windows" approach to GUI design. I like docking
windows, or at least sub-windows with splitter bars that remember where I
put them. GVD and DDD both bring structured display to the mix. You can
place structures on a graphical display, like boxy nodes, and if it ever
evaluates a pointer and sees that the address matches the address of one of
these structures, it draws an arrow to the box. Makes it really nice for
visualizing list and tree structures. One thing I do not like, at least
about DDD, is how it adds new nodes based on pointer values. When I
double-click on a pointer and the node doesn't already exist, it adds the
node and draws an arrow to it. So far, so good. What I don't like is that
the expression for the new node is based on how I got to it, not to its
actual value. OK, that won't make any sense without an example, so here
goes: Say I have a NODE * pListHead, and I've gotten the node that it
points to displayed in a box. Now I go to that structure and doubleclick
on its pNext field, and it puts in the box, and I repeat the process in the
new box. I now have three nodes with arrows between them. The first box
is based on the expression (*pListHead). The second box is based on the
expression *((*pListHead).Next). The third box is based on the expression
*(*((*pListHead).Next).Next). Now, I try to step through my
DeleteFirstNode() function to make sure it is working. When I get to the
point where I say
pListHead->Next = pListHead->Next->Next;
what I would *PREFER* to see is the arrow (that used to go from the head to
the second box) to change so that it goes from the head to the third box.
However, because the boxes are based on the expressions constructed as I
doubleclicked, what I actually see is *NO CHANGE* to any of the arrows, but
the contents of the second and third boxes change. This is not intuitively
obvious, at all. Worse, and this was the real life example where I first
saw this problem (and also the first time I was trying to use DDD), if you
have a circular doubly-linked list, you might start expanding it from the
head by following Next pointers, then worry that maybe you have a bad link
and start expanding it from the tail by following Prev pointers. When the
two chains finally meet up, everything looks good. But if you modify any
of the linkages, the "sliding contents" problem I described becomes much
stranger.
What I would like to see is that when I expand a pointer to a node that
doesn't exist, the new box would be based on an expression that just
evaluates the memory address. That way, the box on the screen represents a
fixed piece of the heap that I have allocated and am using. Then, when I
modify a pointer, none of the boxes change their contents, and the arrow
shifts to point to a different node on screen, just like it internally
shifted to point to a different chunk of the heap.
I have also used Digital Mars (used to by Symantec C++, for any of you who
might have used that product). It has a nice feature that unfortunately is
not very stable, where it will expand an entire structure and all of the
structures that it points to. So you could start at the root of a tree and
tell it to expand, and it would generate a graph on screen of the entire
tree, one box per node, with all the data fields of the nodes inside the
boxes. Quite nice. Unfortunately, if your structure size is big enough to
need it, it is probably big enough to break the algorithms they use, and it
generates garbage on screen. But I would like to see someone do it
properly...
3. Graphical class hierarchy management. At a minimum, it should allow
creation of classes, attachment of derivation links, changing of derivation
links, easy access from graphical display to member display, and from
member display to source code editing. I would strongly prefer that this
system remain current as source code is edited, rather than requiring a
system recompile.
Those are my biggies. For what it is worth, I have not yet found any
single tool with all of these features. For some of the features, I have
not yet found any tool that supports that single feature. My search has
included professional level commercial tools as well as open source and/or
other free tools. If anyone knows of a tool that seems to fit this bill
that I have overlooked, I would really appreciate a reference link. If
not, well, Colin and Hongli now have some really big feature requests that
will keep them busy for the rest of their lives, should they choose to
accept them...
Actually, I would probably be happy (as in my $100 remark earlier) with
much less than that:
1. The clock skew thing worked out, or worked around. Whatever it takes so
that when I press "Rebuild All" it does whatever it has to do to ensure
that I have a complete and proper build.
2. Structure expansion in the integrated debugger.
3. Watchpoints (as defined by GDB -- ability to say that "if *ANYTHING,
ANYWHERE* modifies this variable, stop the program and show me where it was.")
That's all I can think of at present. Being picky as I am, I'm sure I'd
think of something else, but those are the biggest irritations to me right
now (I am assuming that my inability to use breakpoints is a failure on my
part to set some setting correctly. If, instead, it is a Dev-C++ problem,
then that would obviously be added to the preceding list...)
Dunno if that sparked anything or not, but it is the current state of my
thinking.
Mac
-
_____________________________ /"\
Mac Reiter \ / ASCII Ribbon Campaign
Nomadics, Inc. X Against HTML Mail
re...@no... / \ (To join the campaign, simply use
this in your signature.)
|
|
From: Hongli L. <h....@ch...> - 2002-07-04 20:46:23
|
On Thu, 2002-07-04 at 21:38, Mac Reiter wrote: > I am not especially interested in the "free, as in beer" aspect of Dev-C++, Actually it's "free, as in freedom". |
|
From: Mac R. <re...@no...> - 2002-07-04 21:09:50
|
At 10:51 PM 7/4/02 +0200, Hongli Lai wrote:
>On Thu, 2002-07-04 at 21:38, Mac Reiter wrote:
>> I am not especially interested in the "free, as in beer" aspect of Dev-C++,
>
>Actually it's "free, as in freedom".
My apologies. I did not mean to imply that the "free" aspect of Dev-C++
was limited only to the price. My appreciation of the open-source nature
of Dev-C++ is even greater than my appreciation for its monetarily
uncommitted nature.
I only meant to state what I personally would be willing to pay for an IDE
that met my needs. I also meant to emphasize that I was not looking for
the best "free" IDE, but that I was looking for the best IDE even including
commercial offerings.
My reasoning is that when I have complained about the state of IDEs to
friends/family/coworkers, the usual response is "Well why don't you go buy
a good one instead of limiting yourself to the free ones." And the point I
was trying to make (and failed, obviously), is that money doesn't solve
this problem -- there isn't a "good one" to buy, either...
Anyway, sorry for the confusion. Thank you all -- Colin, Hongli, and
anyone else who has been contributing to the code base -- for your efforts,
and for making your efforts available both in their end product form and in
their source code form. And, of course, thank you for your ongoing efforts
to continually improve the product.
Mac
-
_____________________________ /"\
Mac Reiter \ / ASCII Ribbon Campaign
Nomadics, Inc. X Against HTML Mail
re...@no... / \ (To join the campaign, simply use
this in your signature.)
|
|
From: Teodorescu C. <te...@xt...> - 2002-07-05 09:07:30
|
Adam Vardy wrote: >This list could really use some spark. What kinds of apps are people aiming for? > Depends if you want to know my opinion about dev-c++ i can only say : It' a long way to become professional( sorry but this is my opinion). It needs a lot of stuff to become a usuable c++ IDE it is no extendeble by c++ developers because is written in DELPHI and when i want to add a new future... lets just say i hate pascal like languages so..., Code completion is primitive at this point.Does not reognize Win32 Api . > >How many pure beginners are here? How many advanced developers? > I 'm not an expert in c++ i'm rather an intermediate programer. > >Do we just write freeware? Do you use this compiler exclusively, or >others? > Usualy i write in vc++ and somethimes i need to test some code on other compilers i use dev c++ > >Throw out some practical topics please. > algorithms > > > >------------------------------------------------------- >This sf.net email is sponsored by:ThinkGeek >Caffeinated soap. No kidding. >http://thinkgeek.com/sf >_______________________________________________ >Dev-cpp-users mailing list >Dev...@li... >https://lists.sourceforge.net/lists/listinfo/dev-cpp-users > > |