Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - RetroX

Function Peer Review / Re: Brainstorming
« on: April 05, 2010, 03:53:32 PM »
well, I was avoiding repeating them for float, double, and long double like cmath does.

probably is a bad idea

Announcements / Re: Anaphase
« on: April 05, 2010, 12:42:14 PM »
There are loads of programs with standard APIs.  ...[like] XLib.
Excuse me, I just threw up a little in my mouth.

I wrote the xlib UI for enigma.
It's still a standard API.

Off-Topic / Re: where to learn C++
« on: April 05, 2010, 09:28:03 AM »
You can read over the pointers section of my ENIGMA manual and tell me how to improve.
I always find it weird that people never grasp the concept of pointers first time... simple enough in theory, right?
It's not that they're difficult to understand.  It's that has a terrible way of explaining them.

Announcements / Re: Anaphase
« on: April 05, 2010, 07:50:26 AM »
@MrJackSparrow: The iPod/iPhone is literally running the full version of OS X.  The entire operating system is on there.

No, they are not. IDEs are VERY language dependent.
In C, for instance, you had no namespaces, so all functions were in the global scope. Therefore, pressing Ctrl+Space would put lots of useless junk, and some times omit the things that matter.
In C++, namespaces and classes made this *a bit* better, but it's still essentially the same crap. C++'s #includes are less IDE-friendly than Java's imports.
I still have no clue what the hell that you're talking about.  Saying that "java forces you to sort everything" is really stupid.  It does not matter what language that you use.  You can code in C++ like you code in Java; I don't care.  It'll be a lot more efficient, and will solve your "sorting" issue.  Just change a few key words and then "WOW, IT WORKS."  But really, I don't see why you'd want to do that in Java.  Sacrificing speed for sorting the code is not acceptable, or at least, in my opinion.

At least the API is *consistent*. You rarely need just a single API. And, when you do need two C++ APIs to interop, you've got trouble, because they just don't. No matter what you say, you always need an API unless you're writing a kernel. So C is very good for kernels, but usually sucks for everything else. Everything uses java.lang.String, and java.util.List. Of course, C++ has the C interop thing, so it has an unfair disadvantage due to C strings and arrays(which are computer-friendly but definitively not programmer-friendly).
Stop using these areguments.  You can't say that "Java just happens to be consistent because it's there."  There are loads of programs with standard APIs.  GTK, Qt, and wxwidgets are in that category.  So are WinAPI and XLib.

I can't? Since when? Oh, and "see the above", you can't use any argument that disagrees with me. Why, you may ask? Oh, for no particular reason, but since you can dismiss arguments by just pretending they don't exist I figured I could do the same.'re just trying to prove your point with nothing.  Please give me a legit argument, and I'll gladly listen to you.  I mean it, too; I'd like to know why you like Java and C# so much.

If your program leaks memory everywhere and crashes in unclear and strange ways even after hours of testing and debugging, you're doing it wrong. Slow is better than unstable. Using so little memory is irrelevant when you can't work for two days without running into a non-trivial memory leak.
No, it's not.  There are plenty of debuggers that can be used, and besides, if you do have a memory leak and can't find-out where it could have been, you need to learn how to code correctly.  Memory leaks don't "just happen."

I can quote sources: Can you?
In the above benchmarks, you can see Java can be either faster or slower than C, depending on the cases(depending on problem and compiler/optimization mode). Once again, it's important to remember that Java IS compiled. Its compilation might actually be better than C's.
If you read the whole article, it actually has some reasons about why Java should be faster than C.
Garbage collection may actually be faster than malloc/free for reasons related to the computer's cache.
C: 1.1
Java: 9.0

Yes, the third one is faster.  Big whoop.  I doubt that they were using the same codes for both; they probably just had written it better in Java than in C.  And in the case that you didn't know, Java is written in C.

I've let my computer alone compiling some projects from source(because some people thought open-source didn't need binaries, only source code). In a dual core(with both cores being used), it would still take hours.
Java projects are way faster to compile. This is more noticeable in big projects, but even on small ones I'm starting to notice this.
I think I might be seeing terrible compilation times in my small personal C++ projects because I aggressively use templates, but I did see this problem in big C-only projects, so it can't just be my code.
C compiles slower when people compile the entire thing at once, whereas most of Java's utilities are pre-compiled classes.  That's why you have libraries and object files that you compile for the stuff that is already done.  It's not like you need an entirely different mentality to compile in a different language.

I've seen lots of contradictory benchmarks, but here is the essential parts:
 - Java/C# are not too slow compared to C.
 - Java/C# have consistent APIs. C++ "has no API"(your words).
 - Java/C# are FAR FAR FAR faster than C++ when it comes to *compilation* time.
 - Garbage collection is not a handicap.
 - Java/C# are nice to code in. C is masochism.
 - C may be nice when it works, but it hardly does and it is awful when it doesn't. Java/C# are just as nice when they work, but greatly attempt to prevent things from not working(memory leaks, segfaults, etc.)
Please give me several reliable sources that aren't your opinion and/or something that I can actually try-out, or stop arguing.

And a new argument: Java/C# are safer than C. Running C is a security risk. Buffer overflows security vulnerabilities, for instance, are VERY rare in Java, while very common in C.
[citation needed]

You seem to say that C is "better than Java", but it's not the case.
Java and C#'s are easy to use, fast enough and safer than C. When those things matter, C always loses.
C only seems to win in some particular speed benchmarks(and not all!), really low-level tasks(such as kernels and drivers, which are also possible in C#/Java, by the way, even if rare) and supporting legacy code(huge code bases such as Mozilla, which would be perfectly fine if started in Java/C# from the ground up).
So don't ever say C is always better again. When you have a problem, look at the problem and only then decide the language.
More opinion.  Big whoop.  Please learn how to support an argument.

I mentioned enough cases of why my "liking Java" is justified.
No, you haven't.  If you'd like to PM me or message me on MSN (however, not this week; I have relatives that are coming over later today), then feel free.  But I'm not clogging-up this topic any more.

Besides, Pinta, Tomboy and F-Spot aren't very good, nor are they fast.

You can't argue that Java/C# are faster than C/C++.  For starters, they are both written in C, so, no matter what, the lower-level language will be better.  Secondly, while they are both compiled, they require a separate runtime that's running to run the compiled code.  It can be argued that the speed isn't enough to worry about, but not that it's not there.

Off-Topic / Re: Doctor Who 2010
« on: April 04, 2010, 09:31:46 PM »
...I'm not retep. :(

Off-Topic / Re: Doctor Who 2010
« on: April 04, 2010, 08:05:03 PM »
I rarely watch TV at all, anymore.  Most of the shows are unbearably unfunny.  This is one of the few that I can bear to watch, and it's decent.

Teamwork / Re: Dev Team
« on: April 04, 2010, 06:10:22 PM »
I'm pretty good with GML, know absolutely no C++ whatsoever, but am good with sprites and ideas.
C++ FTW.

I am actually trying to not laugh at this point

Off-Topic / Re: Music?
« on: April 04, 2010, 04:43:29 PM »
I don't generally listen to "band" music.  I generally listen to techno and trance.

And for that record, I don't care who makes the music.  I just prefer to listen to the best songs.

Announcements / Re: Anaphase
« on: April 04, 2010, 04:40:33 PM »
- Better working environments: OO programming and lack of preprocessor makes writing IDEs far easier, and autocompletion is more relevant.
I don't understand how this is a conceivable argument at all.  Object-Oriented programming is, well, in some cases, good, but in other cases, like Java, really bad.  Instantiating classes and creating classes uses memory, which is... well, extremely inefficient at best.  And don't give me any optimization crap, because I know that Java does none of that.  IDEs are language-independent.

- Consistent APIs. In C you have no core library. You have a "standard" library which isn't exactly implemented the same way by everyone and then you need third-party libraries for anything that matters. Sometimes I'm frustrated by lack of library functionality in Java and C#, but this is nowhere as bad as C(++)'s problem.
The point of C++ is that there is no API.  You get to do whatever that you want.  If you want a standard API, you can make one, and tell everyone to use that.  That's essentially what Java and C# are, however, it forces you to use that API.

- Garbage collection. C's static allocation is good when it works, but it's not always enough so you have to use malloc/free eventually, which are pain to handle. C++ added lots of features that make pointers easier to handle, such as T& pointers, but the problems remain. In Java and C#, it *just* works. No memory leaks. C++ wasn't designed for garbage collection, so C++ GCs are always ugly, imperfect and/or inefficient.
See the above.  You can't use the argument that "when things are made in Java, they just 'happen' to be better."

- It just works. No segfaults. In C, you have weird errors. You have to compile again in debug mode, try to reproduce the error and use gdb to have some chance of finding the problem. In Java and C#, you get an exception, which points you to exact file, class, function and line where the error is. When it crashes without warning it is typically because of C parts(JNI/JNA).
See above.  Additionally, debuggers use loads of space, and slow-down the program.  If you want a debugger, make one.  It should not be required.

- Good enough runtime speed. Aside from some GUI slowness which is a library rather than a language problem, Java and C# are fast enough for most purposes. In many cases, they can match C's speed thanks to Just-In-Time compilation(Java and C# are typically *NOT* interpreted languages)
You can't just say that "it's good enough, so, on a good computer, you won't notice the difference."  I've always seen a significant gap in speed between Java and C/C++.
- Compilation of "real projects" takes some minutes, as opposed to several hours in C++.
It's always been the same to me.  Even on older computers.

- Great languages, although C# is technically superior to Java, both are much less frustrating than C++. In Java, I can just write xyz.replaceAll("\n", "\n\t"). The equivalent is much more painful in C, and better but still annoying in C++. Not to mention that regular expressions are available if you need them, without needing to go fetch some weird libraries and check if they work on your compiler.
"I just like Java better."

Off-Topic / Re: where to learn C++
« on: April 04, 2010, 09:26:01 AM »
I'm assuming that you started with Java?

Empty your mind of that completely, and look at, go through the entire list, and start making random stuff like I did.

Announcements / Re: Anaphase
« on: April 04, 2010, 09:24:13 AM »
I still don't understand the point of using Java ever.

It's "cross-platform," but so is C/C++ with wxwidgets. :/

Announcements / Re: Anaphase
« on: April 03, 2010, 09:59:41 PM »
I'm assuming that we'll be able to disable execute_string to cut on file size?

Announcements / Re: Anaphase
« on: April 03, 2010, 07:39:51 PM »
As I said, I'm correcting you.  GNU/Linux.  Tired is not an excuse.

Announcements / Re: New Interests
« on: April 02, 2010, 04:18:26 PM »
Retep, you're not funny.  miky and Ism are.

Announcements / Re: New Interests
« on: April 01, 2010, 06:59:27 PM »
um, yeah; it's a whole lot better than Java and C#

even C++