Thread: C++ --> Fun ?

  1. #1
    [](){}(); manasij7479's Avatar
    Join Date
    Feb 2011
    Location
    *nullptr
    Posts
    2,657

    C++ --> Fun ?

    Here is an interesting piece of news:
    [Phoronix] Google Wants To Make C++ More Fun

    I'm slightly sceptical of this.
    Sure it can result in a better IDE (dunno how much better than the current ones ).

    But it would be frightening if something like Visual Basic with a C++ skeleton comes out of this.

    Any clarification ?

    [@You Know Who (s): Posted this on Tech Board by mistake, move to GD if appropriate.]
    Last edited by manasij7479; 06-16-2012 at 03:18 PM.

  2. #2
    Registered User
    Join Date
    Jun 2005
    Posts
    6,815
    I'm sceptical too.

    Better tooling support is a good thing, and a worthy aim, certainly. It can automate activities and processes, which machines can follow better than humans. That can allow the human to spend more time doing things that humans do better than machines, and therefore increase enjoyment. Depending on how that tooling support is designed and implemented, it can also embody the view of one person (or one company in this case) of how development should be done, or what types of development are worth supporting, making it difficult to do things in other ways, hence reducing enjoyment for some developers.

    Fun is a very subjective concept. What is fun for me, is not necessarily fun for you, and vice versa - and there is nothing wrong with that, unless our sense of fun causes harm. The things that contribute to our sense of fun are also not always appropriate to a particular problem solving or task-related setting. That reflects how our brains are wired, our genetics, our experiences, and a bunch of other things that psychologists and other experts are still trying to understand (hopefully with their own sense of fun). Those things will not be changed by any toolchain.
    Right 98% of the time, and don't care about the other 3%.

    If I seem grumpy or unhelpful in reply to you, or tell you you need to demonstrate more effort before you can expect help, it is likely you deserve it. Suck it up, Buttercup, and read this, this, and this before posting again.

  3. #3
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    This is something that needs to be done in MSVS. The C++ side of the IDE is lagging far behind the C# side.

  4. #4
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    O_o

    Better tools is a solid win, but I don't like this "selling the fun" thing.

    It makes them look kind of desperate if you ask me.

    Give a programmer a better tool and he will generally thank you for it; there is no need of pretending that the tool is going to somehow inject entertainment where there may not be any to be had.

    Soma

  5. #5
    Registered User antred's Avatar
    Join Date
    Apr 2012
    Location
    Germany
    Posts
    257
    Besides, making "C++ more fun than Java" (as it says in the PDF) isn't setting the bar very high. Java is about as much fun as sticking a rusty nail into your eye (well, to me anyway).

  6. #6
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Basically, they want the flow of work you have when writing Java in Eclipse (or a similarly advanced IDE) for C++. This means fast renaming and other refactorings. This means a suggestion pop-up that works and doesn't take a second (15 if you just changed some header).

    As much as I like C++ as a language, I hurt every time I move back from Java or C# programming to C++ programming because refactoring (and thus making code prettier) is so much harder.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  7. #7
    Registered User antred's Avatar
    Join Date
    Apr 2012
    Location
    Germany
    Posts
    257
    I think the main reason for slow Intellisense in C++ mode is that C++ as a language is MUCH harder to parse than Java or C#. I'd love to see a more functional Intellisense in Visual Studio but I'm not holding my breath.

  8. #8
    [](){}(); manasij7479's Avatar
    Join Date
    Feb 2011
    Location
    *nullptr
    Posts
    2,657
    Quote Originally Posted by antred View Post
    I think the main reason for slow Intellisense in C++ mode is that C++ as a language is MUCH harder to parse than Java or C#.
    The IDE I use (KDevelop (4.3.1)) does it quite fast even in very large projects (eg: the whole KDE SC)... and I don't even have a very fast machine for it.
    (*Much* better in comparison to Eclipse CDT, but not as configurable...in my opinion.)
    Last edited by manasij7479; 06-18-2012 at 05:37 AM.

  9. #9
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Quote Originally Posted by antred View Post
    I think the main reason for slow Intellisense in C++ mode is that C++ as a language is MUCH harder to parse than Java or C#.
    Not really true. Yes, C++ is more complex than Java or C#, but C# is actually quite complex itself, what with all the context-sensitivity it has.
    No, what really kills C++ parse (and reparse, for the IDE) times is the preprocessor. The preprocessor is the reason why a module system is so hard to create, and lack of a module system is the reason why templates and so much other code is in header files that are textually included, and that in turn means that the compiler has to do way too much work to parse a single file.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  10. #10
    Officially An Architect brewbuck's Avatar
    Join Date
    Mar 2007
    Location
    Portland, OR
    Posts
    7,396
    Yawn.

    Just install Visual Assist-X
    Code:
    //try
    //{
    	if (a) do { f( b); } while(1);
    	else   do { f(!b); } while(1);
    //}

  11. #11
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Too expensive...
    Academic license is too restricted...
    Other than that, it is nice.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  12. #12
    Registered User
    Join Date
    Oct 2006
    Posts
    3,445
    I have had pretty good experience with Qt Creator's code completion popup and re-parsing. I realize that it's a bit specialized, but it actually works very well as a general purpose IDE.

  13. #13
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    VisualAssist is nice once you get it configured not to alter every single color in your IDE.

  14. #14
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Meh. VisualAssist is not powerful enough by far, and pretty slow too. Also, extremely ugly interface. CodeRush is better, but still not where I want it.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  15. #15
    Registered User antred's Avatar
    Join Date
    Apr 2012
    Location
    Germany
    Posts
    257
    Quote Originally Posted by CornedBee View Post
    Not really true [...]
    I concede, as far as the time required for a full parse is concerned. But besides that, there is also the issue of Intellisense being easily confused by some of the more advanced constructs of the C++ language, particularly if you're working with a lot of template voodoo. Many times Intellisense will try for a few seconds to make sense of it and then simply throw in the towel.

Popular pages Recent additions subscribe to a feed