Runtime Compilable C++ menu

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 15 of 17
  1. #1
    adaephon's Avatar Active Member
    Reputation
    76
    Join Date
    May 2009
    Posts
    167
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Runtime Compilable C++

    This was demoed at Game AI Conference in Paris last week and looked pretty awesome there. Thought it might be of interest to some people in this forum: Runtime-Compiled C++: Source Code Now Live!

    It's very much still in early stages, I'm not one of the developers (I haven't even checked out the source yet - just watched their demo) but it looks pretty awesome nonetheless. And its open source on github so that's cool too!

    Runtime Compilable C++
  2. #2
    Terrorblade's Avatar Contributor I spent 5k CC and all I got was this user title
    CoreCoins Purchaser
    Reputation
    153
    Join Date
    Oct 2010
    Posts
    312
    Thanks G/R
    6/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    This would belong in Programming not memory editing.
    Stuff & Things

  3. #3
    adaephon's Avatar Active Member
    Reputation
    76
    Join Date
    May 2009
    Posts
    167
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Posted here due to the particular nature and predilections of people who frequent this area of the forums, and due to its potential applicability in developing and redeploying injected bots/hacks without necessarily having to uninject/restart WoW

  4. #4
    Terrorblade's Avatar Contributor I spent 5k CC and all I got was this user title
    CoreCoins Purchaser
    Reputation
    153
    Join Date
    Oct 2010
    Posts
    312
    Thanks G/R
    6/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Still it has nothing to do with bots and programs for WoW.
    Stuff & Things

  5. #5
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Terrorblade View Post
    Still it has nothing to do with bots and programs for WoW.
    A lot of the things posted in this section has nothing to do with bots and programs for WoW. This section is a lot more alive than the programming sections are though. Get over it.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

  6. #6
    _Mike's Avatar Contributor
    Reputation
    310
    Join Date
    Apr 2008
    Posts
    531
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by adaephon View Post
    This was demoed at Game AI Conference in Paris last week and looked pretty awesome there. Thought it might be of interest to some people in this forum: Runtime-Compiled C++: Source Code Now Live!

    It's very much still in early stages, I'm not one of the developers (I haven't even checked out the source yet - just watched their demo) but it looks pretty awesome nonetheless. And its open source on github so that's cool too!
    Very interesting concept, thanks for linking it.
    Although from reading the blog post I expected to see an embeddable JIT compiler so I was a bit disappointed to find out that it "just" invokes cl.exe for the compilation.
    But still, very cool and interesting project non the less and it might be useful when trying out different things for the reasons you mentioned in post #3

    Originally Posted by MaiN View Post
    A lot of the things posted in this section has nothing to do with bots and programs for WoW. This section is a lot more alive than the programming sections are though. Get over it.
    And to add to this; From what I've seen of the programming section, and I haven't looked that much so I might be wrong about this, most of the people using it wouldn't have the slightest clue wtf this is
    Last edited by _Mike; 06-28-2011 at 05:43 AM.

  7. #7
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1358
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Terrorblade View Post
    This would belong in Programming not memory editing.
    Nope, belongs here. Content like this hits the memory editing demographic far more than it hits the general programming demographic (Note: I obviously only mean in this particular forum). This section isn't strictly about WoW Memory Editing, it's about anything that would be relevant to people in the field of RCE, and by extension, the more 'advanced' programming disciplines.

    P.S. What is it with all the rands trying to police this section lately?

    Originally Posted by adaephon View Post
    This was demoed at Game AI Conference in Paris last week and looked pretty awesome there. Thought it might be of interest to some people in this forum: Runtime-Compiled C++: Source Code Now Live!

    It's very much still in early stages, I'm not one of the developers (I haven't even checked out the source yet - just watched their demo) but it looks pretty awesome nonetheless. And its open source on github so that's cool too!
    Thanks for the link mate.

    Originally Posted by _Mike View Post
    Very interesting concept, thanks for linking it.
    Although from reading the blog post I expected to see an embeddable JIT compiler so I was a bit disappointed to find out that it "just" invokes cl.exe for the compilation.
    But still, very cool and interesting project non the less and it might be useful when trying out different things for the reasons you mentioned in post #3


    And to add to this; From what I've seen of the programming section, and I haven't looked that much so I might be wrong about this, most of the people using it wouldn't have the slightest clue wtf this is
    You'd have to be all sorts of crazy to even attempt to write an unmanaged C++ JIT imo.

    Maybe when Clang/LLVM becomes more mature it will start to become viable?


    Last edited by Cypher; 06-28-2011 at 08:46 AM.

  8. #8
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    This effectively removes all advantages C++ has above other languages and leaves it with it's disadvantages, right?
    Why should anyone use this instead of real bytecode-/jit compiled languages like Python, C#, Java ?

    Templates make C++ horribly slow to compile and without heavy optimization it's performance sucks, unoptimized C++ code runs even slower than 32bit Java does (64bit is way faster).
    Hey, it compiles! Ship it!

  9. #9
    EmilyStrange's Avatar Active Member
    Reputation
    34
    Join Date
    Jul 2009
    Posts
    125
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by flo8464 View Post
    This effectively removes all advantages C++ has above other languages and leaves it with it's disadvantages, right?
    Why should anyone use this instead of real bytecode-/jit compiled languages like Python, C#, Java ?

    Templates make C++ horribly slow to compile and without heavy optimization it's performance sucks, unoptimized C++ code runs even slower than 32bit Java does (64bit is way faster).
    * Reliable citations of non-trivial examples required.

    I cannot tell if you are trolling or are just foolishly uneducated. Let me know how that speed of Java works out for you when stacked up against any comparable C++ program of non-trivial implementation. Looking around I don't see anyone jumping from slow C++ to super-speedy Java for any of their big applications that require execution speed.

    The authors of the run-time compilable C++ "invented" (again) program chaining and dynamic loading that has been around since the earliest days of computing. This solution offers only a little novelty over the original implementations. The technique of compiling C++ on demand has been used on at least two video games I've worked on, though admittedly the run-time compiling was only done in the design tools, not in the game engine itself.

    Originally Posted by Cypher View Post
    You'd have to be all sorts of crazy to even attempt to write an unmanaged C++ JIT imo.
    Crazy... like Cypher?**

    ** Sounded better in my head.
    Last edited by EmilyStrange; 06-28-2011 at 12:48 PM.

  10. #10
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I cannot tell if you are trolling or are just foolishly uneducated. Let me know how that speed of Java works out for you when stacked up against any comparable C++ program of non-trivial implementation. Looking around I don't see anyone jumping from slow C++ to super-speedy Java for any of their big applications that require execution speed.
    Before calling me a troll/uneducated, try the following:

    1. Write code doing some calculations in Java and C++.
    2. Compile the C++ code once with no optimizations ("Debug") and heavy optimization ("Realease").
    3. Run javac to compile the Java code and run it on a 64bit VM.
    4. Benchmark all 3.

    Optimized C++ is much, much faster than Java. I never said anything different. But non-optimized C++ sucks in terms of performance.
    And here lies the problem: You can't do much optimizing because
    1. Heavy optimizing is slow. (No problem if you compile it once, but too slow for dynamic compiling)
    2. You don't have access to the other object files, so you can't optimize like a real C++ compiler does.
    Hey, it compiles! Ship it!

  11. #11
    caytchen's Avatar Contributor
    Reputation
    138
    Join Date
    Apr 2007
    Posts
    162
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I don't think this runtime compiler could get dynamic linking and other stuff that makes seperate programs interact seamlessly right at runtime. And if your eval() code has to be self-contained, its a pointless waste of time. So a cool tech demo, and I'm all for cool tech demos, but rather invent a new Lua with a bit more of Python.

    Also, if your whole argument is that a C++ compiler can do better optimization than a compiler that compiles to an IL with an runtime you are hopelessly wrong. Magic "whole program optimization" can't possibly have all the information a Java Hotspot VM has on your program.
    Last edited by caytchen; 06-28-2011 at 03:41 PM.

  12. #12
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Also, if your whole argument is that a C++ compiler can do better optimization than a compiler that compiles to an IL with an runtime you are hopelessly wrong. Magic "whole program optimization" can't possibly have all the information a Java Hotspot VM has on your program.
    Maybe.
    But most C++ compiler are much more mature than the Java VM in terms of optimization.
    Java can have similar performance like C++, but it won't be faster. (Well, depends on the use of libraries of course, STL iostreams are damn slow)
    I most scenarios C++ will be at least twice as fast.

    Take a look at this: https://days2011.scala-lang.org/site...s3-1-Hundt.pdf
    Hey, it compiles! Ship it!

  13. #13
    _Mike's Avatar Contributor
    Reputation
    310
    Join Date
    Apr 2008
    Posts
    531
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Cypher View Post
    You'd have to be all sorts of crazy to even attempt to write an unmanaged C++ JIT imo.
    I know, but that's also why it would be so cool to actually do it
    It's something I've been wanting to do for a very long time and I have a basic idea on how to do it. But I also know that writing a compiler is an insane task to do on your own and I will probably never finish it, but I'm having fun and learning new stuff while doing it and that's all that matters to me really.

  14. #14
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by _Mike View Post
    I know, but that's also why it would be so cool to actually do it
    It's something I've been wanting to do for a very long time and I have a basic idea on how to do it. But I also know that writing a compiler is an insane task to do on your own and I will probably never finish it, but I'm having fun and learning new stuff while doing it and that's all that matters to me really.
    Well, there is no chance you can write a working C++ compiler alone, many experts had to work many years to get features like templates working.
    You could just modify gcc, why reinvent the wheel when the best compiler out there is open-source.

    But hey, you might try to write a C compiler (boost::spirit might help parsing).
    Hey, it compiles! Ship it!

  15. #15
    EmilyStrange's Avatar Active Member
    Reputation
    34
    Join Date
    Jul 2009
    Posts
    125
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by flo8464 View Post
    Well, there is no chance you can write a working C++ compiler alone
    Any competent compiler writer will crank out a self-hosting C++ compiler inside of six months from scratch, eight months if they have to write their own lexical and syntactic analyser. It may not be the all-singing, all-dancing, fully optimizing compiler that MSVC, GCC or Intel offer but it will be able to compile itself and it will produce reasonably good object code.

    Originally Posted by flo8464 View Post
    You could just modify gcc, why reinvent the wheel when the best compiler out there is open-source.
    "Best" at what exactly? There are many measures of "best" but oddly enough I have never, ever heard a professional software engineer who has shipped actual product who had to use GCC after working with some of the successful commercial compilers ever describe GCC as "best" at anything other than cross-platform compatibility, and then only begrudgingly. I digress; the recommendation that taking an already available compiler with source code and modifying it to do what you need, would be better, and I agree with that, especially for speed of implementation. There is also the fun of writing a compiler, of any description, and if you are a programmer and have never attempted writing a compiler before, I recommend that you do. There is a great satisfaction in the day that your compiler can become self-hosting. The exercise also provides insight in to many techniques and algorithms that as developers we may not encounter on a day to day basis in our professional lives. I think it also aids in reverse engineering other compiled applications too because you acquire a more intimate knowledge of "how a compiler thinks" when turning source code in to object code.

    Originally Posted by flo8464 View Post
    (boost::spirit might help parsing).
    I think I'd have an easier time convincing all the artists on the team to use GIMP and Blender instead of Photoshop and Maya.
    Last edited by EmilyStrange; 06-30-2011 at 11:42 AM. Reason: fixed grammar

Page 1 of 2 12 LastLast

Similar Threads

  1. C compiler
    By Bloodpoisen in forum Community Chat
    Replies: 0
    Last Post: 08-17-2007, 07:23 PM
  2. Alliance Guides AIO - Compiled into PDF's
    By firezip in forum World of Warcraft Guides
    Replies: 4
    Last Post: 06-16-2007, 01:38 PM
  3. Jame's guide compilation (Horde/alliance + some other guides)
    By Snakehead in forum World of Warcraft Guides
    Replies: 6
    Last Post: 05-31-2007, 09:03 AM
  4. Getting hurt compilation
    By Joetherogue in forum Community Chat
    Replies: 0
    Last Post: 05-01-2007, 08:58 PM
  5. old compilation of sigs
    By Demexor in forum Art & Graphic Design
    Replies: 2
    Last Post: 04-29-2007, 10:13 PM
All times are GMT -5. The time now is 06:40 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search