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 - Josh @ Dreamland

Announcements / Re: Anaphase
« on: April 09, 2010, 05:35:33 PM »
"i agree with MJS. i want the meat!"
Working on it.

"would it be posisble to make a syntax highliter for like... say... gedit?"
GEdit does have one... open any header in it.

Also, a code editor wouldn't slow the release much.

Announcements / Re: Anaphase
« on: April 09, 2010, 02:37:48 PM »
Fair enough. The compiler gets priority; I'll tell you when to update.

Announcements / Re: Anaphase
« on: April 09, 2010, 02:32:41 PM »
"You can write a code editor in a day?"
Welcome to not-GML. ;)

"Also, what's so wrong with our code editor anyways?"
Can't drag text, no line numbers,... does tab increase all selected area's indent? *checks* Nope, it replaces selected text with a tab. No semblance of intelligent indentation, for better or for worse. Only highlights parentheses to the right of mouse instead of both sides, left having precedence. Incorrectly highlights multiple aspects of GML, most aspects of C. Doesn't highlight literals of any kind. Inextensible for syntax check purposes, or most other purposes.

Announcements / Re: Anaphase
« on: April 09, 2010, 01:06:49 PM »
Quite a bit. ENIGMA finally stops segfaulting if it fails to load, as Ism just stops calling it if it returns nonzero. LGM will only show ENIGMA if it succeeds.
Also, it now works from platform to platform, right off the bat, provided only that it can find a version of the GCC. If it can't, Ism will ask for it.
I'm not sure about including JNA with the repository; I've no idea on its license (though I can't imagine it would forbid doing so), and Ism didn't include it...

If you check out the SVN and run a game with ENIGMA, right now, it will write all the files needed for compile, but it won't call GCC as I'm swapping out R3's system for Make. Furthermore, I'm swapping out R3's variable initializer for a less dated equivalent; this one will more accurately detect scoping now that we're mostly C++ compliant. The SVN repo will make you declare your variables until I keep track of used, undeclared ones as well as the declared ones. (This will be fixed first, probably).

Ism doesn't yet keep track of whitespace. She'll be working on that. LGM's code editor sucks. I'll be taking an attempt at coding a better one today, I believe.

Issues Help Desk / Re: Map loading
« on: April 07, 2010, 02:37:07 PM »
Waiting for a thread to finish loading something is going to be risky.
I can't think of a good way to do it faster in GML... Threads will have to work for now.

Announcements / Re: Anaphase
« on: April 07, 2010, 07:53:13 AM »
A[100]=0 isn't anything special.

In GM, a map is used for array indexes, as far as I can discern.
A[100] creates a single new node in the map, and does some rearranging to improve lookup time later.

In ENIGMA, A[100] = 0 will in fact /allocate/ an array of that size for you to use, and will set the 100th element to zero.

I was considering adding a var::drop() or array_free(var& x) to take care of that in ENIGMA.
As far as I know, you can't deallocate an array in GM, except temporaries. Which are automatically freed at the end of the code.

Off-Topic / Re: The grand c++ vs everyone else debate
« on: April 07, 2010, 07:50:00 AM »
Ah. Disk size. Now fix my 30 dollar / mo 100 KB / sec internet connection.
Also, I'm sure Australians aren't happy, considering their bandwidth usage is metered. They are capped in speed if they go over a certain limit.

Off-Topic / Re: The grand c++ vs everyone else debate
« on: April 06, 2010, 09:42:03 PM »
Yes, everyone that's done any real C knows that. What I was getting at is that Java likely lacks a way to specify which variables you would like to remain in the registers, as C/C++ does. I find it likely that Java lacks such a flag, seeing that it doesn't even have "unsigned."

Off-Topic / Re: Music?
« on: April 06, 2010, 08:27:00 PM »
You pretty much ARE me, then. I also hate basically all lyrics. Those first two songs... I love them. Ever listen to any OC Remixes?

Off-Topic / Re: The grand c++ vs everyone else debate
« on: April 06, 2010, 08:24:07 PM »
"(such as register allocation)"
I know Java lacks "unsigned," but I figure Java programmers would know about flags such as that and "register," which, as you say, 'allocates' a register. Not in Visual Studio, of course, as Microsoft shares the new philosophy that some day, computers will be able to run Windows 7 and Crisis! By that point in time, a typical programmer won't even need to know what a register is, or deal with nasty, old C++. Unless they intend to program for something other than the PC.

Off-Topic / Re: The grand c++ vs everyone else debate
« on: April 06, 2010, 01:34:07 PM »
I see people comparing the Java-C++ relationship to that of C++-assembly. The difference seems to be that in C++, I can say asm("") to get to a faster language. In Java, you're pretty much stuck with what you have. Getting ENIGMA, as a DLL, to work with LateralGM has been one of the most tedious processes I've ever undergone while programming. The only worse experience was in GML, where I'm never sure if it's an error or if I'm truly missing something (twice out of three it's proven to be the former; the third time was inconclusive). But that's neither here nor there.

I am reasonably certain that everyone in this topic is aware of the concept of JIT compilation. It offers a lot of neat tricks. The problem is, it requires a large runtime that isn't necessarily portable to all systems.

High, high level scripting languages (GML is NOT in this group; GML offers so amazingly little that it isn't funny), I'm talking mostly about Python and Haskell, maybe even Lua (though I'm not aware of the particulars of that language), are relatively easy to embed in a C++-compiled program. By relatively, I mean easily done with a good library. Granted, true interface is difficult, but small-scale embedding is just not that hard to pull off. My best example is JavaScript via V8, hence me considering using it for the interpreter. V8 seamlessly integrates the two languages; I can call JavaScript from C++; the JavaScript can call C++ methods and functions. And it's JIT compiled, which means it has amazing speed relative to regular, interpreted versions.

Announcements / Re: Anaphase
« on: April 05, 2010, 03:11:22 PM »
"Proving all indexes to be in-bounds at compile-time is perfectly possible."
Given a large number of conditions are met, sure.

"C++ is the best PERIOD"
Don't put words in my mouth. C++ is the best for me.

Function Peer Review / Re: Brainstorming
« on: April 05, 2010, 01:10:02 PM »
R1 used templates for parameters for a while. I thought it was a great idea at the time, praised Dylan for it... It's a terrible idea in retrospect.

Off-Topic / Re: where to learn C++
« on: April 05, 2010, 01:05:17 PM »
"It's that has a terrible way of explaining them."
This is what I was thinking. Hopefully using them in ENIGMA breaks down the disoriented feeling you get when working with C++ for the first time. This way, you don't have to cope with the loss of knowledge of all the language's functions.

Announcements / Re: Anaphase
« on: April 05, 2010, 08:42:04 AM »
Thanks for understanding, guys. Does mean a lot.
freezway: I promise. :P