ENIGMA Forums

General fluff => Announcements => Topic started by: Josh @ Dreamland on August 11, 2009, 05:01:38 PM

Title: Fresh Topic
Post by: Josh @ Dreamland on August 11, 2009, 05:01:38 PM
That other one wandered off.
Anyway, this is progress:

Code: [Select]
int a = 0 if a = 1 b=2c=3     else d=4 e=5 f='test removal of strings'g="poop"  endorphin = /*removal of comments*/ 6 motherlicker = 7 //or eight
 end break label: goto label awful_code() a=b=c + d  *  e / f do do a = b until c until d if 1if 0else else c()return 0  /*

Parses to

Code: [Select]
int a = 0;
if(a = 1)
  b = 2;
c = 3;
else d = 4;
e = 5;
f = "test removal of strings";
g = "poop";
endorphin = 6;
motherlicker = 7;
end;
break;
label:
goto label;
awful_code();
a = b = c + d * e / f;
do do a = b;
until(c);
until(d);
if(1)
  if(0)
    else;
  else c();
return 0;

And yes, I know the syntax is invalid. The parser doesn't care.
Here's another:

Code: [Select]
long unsigned int a

b = 0
cd = 'str'+"ing"

do
{
a=b-0c=d-1
while a a--
}
while c

do until 0

with a b.c = e
if d exit

Becomes
Code: [Select]
long unsigned int  a;
b = 0;
cd = "string";
do
{
  a = b - 0;
  c = d - 1;
  while(a)
    a --;
}
while(c);
with(a)
  b . c = e;
if(d)
  exit;

Nothing you didn't see in R3. Except else; else and some indenting.
The difference is the mechanism.

Notice the first statement: int a = 0;
In R3, this was done with some sketchy additions to the parser; it wasn't originally planned to support that. But now it's an official part. What's this mean?
This means that additional types, including structures that I know the more intelligent users will grow to love, can be added and used withing EDL.

What's left:
Make begin and end actually work, instead of acting like a statement XD
switch() magic
with() supermagic (I have the perfect plan)
Re-fetching declared variables (five minute job thanks to the parser's system)
Pass struct{} and the like to CFile parser, as those are its forte
Make sure syntax checker supports struct and the like

I dug up the new instance system. (Irony, yes, but I'll take it).


I've been hopping back and forth between Linux and Windows. I want to re-commit all the code to the SVN to make that process easier. Not to mention it'll make things better for me considering my college schedule I've been sorting out over the last couple of days.

(The thing's terrible. It's like Swiss cheese; three hour gaps on a good day ;_; )


Anyway, what else... Future plans for before the release.

Incorporate at least backgrounds, possibly sounds, but I'm not sure.
Make sure there's an updater. This will make releases cost less blood.
Test the new instance system with various options set (there are three things to set with two or three choices each.)
Implement a derivative of the string class specifically for ENIGMA. (this will fix so much, efficiency wise)

...And that's it. I was expecting more, but the list is looking short. I like that.
Title: Re: Fresh Topic
Post by: skarik on August 11, 2009, 07:42:25 PM
First. Lol.

Quote
the list is looking short
wtf. My little bro just asked me to bake him a hot pocket.
Title: Re: Fresh Topic
Post by: RetroX on August 12, 2009, 10:30:34 AM
Does this mean all single quotes are parsed as double quotes?  Does it also change single quotes within double quotes to double?

Will char a='a' or string="string'd" work?
Title: Re: Fresh Topic
Post by: qc.zackf on August 12, 2009, 12:31:05 PM
Cool so YOU can assign types to your variables in EDL. Lol. I asked this same question here (http://enigma-dev.org/forums/index.php?topic=308.15) a few minutes ago.
Title: Re: Fresh Topic
Post by: Game_boy on August 12, 2009, 01:51:50 PM
How are you finding Linux? I don't mean ENIGMA, I mean you using it day-to-day.
Title: Re: Fresh Topic
Post by: Rusky on August 12, 2009, 03:10:25 PM
Pass struct{} and the like to CFile parser, as those are its forte
Make sure syntax checker supports struct and the like
Hahahahaha
Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 12, 2009, 03:41:55 PM
Game_boy:
Linux is all right, once you finally get it working. And that's never an easy task, it should seem.

Rusky--
Laugh all you want. I like the idea of having the work divided up into different parsers that are meant to do different tasks.
And until you can produce a working token tree parser to do everything mine does--which I promise you'll never be able to do, be it because of impatience or lack of skill which other teams have exhibited even with a parser *generator*--I suggest you just drop it.

In other words,
You'll never get a parser to work as well as mine does. Sure, I could easily turn it into a token tree at this point, or probably a regular token list. But it's much simpler to look at this way, and I'm not allocating structures to hold one fucking byte apiece.

And if your concern is efficiency, I'll smack you. Because the slowest parser is still faster than greased lightning, and the syntax checker (which will be used a lot more often) is unbeatable. Takes const char*, allocates NOTHING. Iterates ONCE.

I don't want to hear about the holy grail of easy-to-write parsers that anyone and their sister can screw up anyway. I just don't.

Retro:
The other releases handled strings the same way, don't worry. They must all be "" for C++, but you can use them just like you do in GM and the parser will handle it.
Title: Re: Fresh Topic
Post by: Rusky on August 12, 2009, 05:35:59 PM
Using different parsers is pointless if they're all parsing the same thing.
Also, prepare to be amazed.
Title: Re: Fresh Topic
Post by: qc.zackf on August 12, 2009, 07:22:23 PM
Quote from: Josh @ Dreamland

... And if your concern is efficiency, I'll smack you ...


Ha ha. Funny.

Using multiple parsers to parse the same thing is a little unorthodox.  I don't know too much about parsers so don't smack me if I say something wrong, but why not have one parser that has multiple stages of parsing or does ENIGMA use a global chain of parsers? I guess either way you'll get the same efficiency.
Title: Re: Fresh Topic
Post by: RetroX on August 12, 2009, 08:47:44 PM
Retro:
The other releases handled strings the same way, don't worry. They must all be "" for C++, but you can use them just like you do in GM and the parser will handle it.
You still didn't answer my question about char.  Char won't work with double quotes.

And will using Uint8 and similar types work in the parser?

EDIT: Random question - how far has Luda gotten with Colligma?
Title: Re: Fresh Topic
Post by: score_under on August 13, 2009, 04:24:40 AM
What's left:
Make begin and end actually work, instead of acting like a statement XD
Heck, you can just replace begin with
Code: [Select]
    {(5 chars, 4 spaces and a brace - no memory allocated and no chars shifted around)
and end with
Code: [Select]
  }And it'd work fine :D
Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 13, 2009, 08:38:06 AM
zack--
It has four different pieces, which are basically separate parsers.
One's a syntax checker. It was about 30x faster than Mark's last time I banchmarked.
One's a CFile parser. Its job is to extract definitions from snippets of syntactically correct C++.
One's an expression evaluator. It does mathematics and things that need preprocessed.
This final one is a formatter. Its job is to make sure that even the nastiest GML you can pass it will be syntactically correct C++. It's by far the easiest to write.

Retro--
You can't use '0' to indicate 0x30, if that's what you mean. I might have a setting for that.

Score_under--
That's almost what I did. Instead of allocating things at the beginning, I just write stuff to the same buffer I'm using, since it's 90% removal. When I do that, I'll check if I'm at a begin or end and if so, only write a { or }.


Progress--
I've been trying to get Fedora to work with my graphics card. However, this has only landed me in hell, and I spent basically all of yesterday just trying to fix it. I'll probably give up and either use Ubuntu on my mom's computer, or fix Fedora to work without my card again. -_-
Title: Re: Fresh Topic
Post by: RetroX on August 13, 2009, 01:58:49 PM
What graphics card do you have?  And what do you mean by "not work"?  I might be able to lead you to the right driver for it.
Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 13, 2009, 02:11:51 PM
There's no correct driver
*starts mumbling about the apocalypse*
Title: Re: Fresh Topic
Post by: Game_boy on August 13, 2009, 02:56:18 PM
There's no correct driver

What card? There's always a correct driver.
Title: Re: Fresh Topic
Post by: RetroX on August 13, 2009, 03:53:44 PM
There's no correct driver

What card? There's always a correct driver.
He told me on MSN it was some GeForce

NVIDIA sucks
Title: Re: Fresh Topic
Post by: Game_boy on August 13, 2009, 04:22:25 PM
There's no correct driver

What card? There's always a correct driver.
He told me on MSN it was some GeForce

NVIDIA sucks

Ah. Yeah, for Linux, go AMD. It has an official open driver with full support and open documentation.

Have you tried the Nouveau driver, Josh?

Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 13, 2009, 04:51:32 PM
Tried it? I had to blacklist it. Which fixed nothing. Prime.
Title: Re: Fresh Topic
Post by: RetroX on August 13, 2009, 08:01:48 PM
Ah. Yeah, for Linux, go AMD. It has an official open driver with full support and open documentation.
And also the fact that the hardware is the same or better for 1/5 the price. :P

Seriously, both AMD and Intel's best processors are 64-bit, quad core, 3.2GHz, except Intel's is $1200 and AMD's is $200.  And the AMD one is better and more efficient. :/
Title: Re: Fresh Topic
Post by: Game_boy on August 14, 2009, 04:52:00 AM
Ah. Yeah, for Linux, go AMD. It has an official open driver with full support and open documentation.
And also the fact that the hardware is the same or better for 1/5 the price. :P

Seriously, both AMD and Intel's best processors are 64-bit, quad core, 3.2GHz, except Intel's is $1200 and AMD's is $200.  And the AMD one is better and more efficient. :/

I'm an AMD fan, so I'd love if that were true, but CPU performance is not really related to the clockspeed. AMD's 3.4GHz Phenom II (they increased it by 200MHz yesterday) performs similarly to Intel's 2.66GHz Core i7 or 3.0GHz Core 2 Quad. This problem was reversed a few years ago when a 2.4GHz Athlon 64 performed similarly to a 3.8GHz Pentium 4.

AMD do tend to be better at the price point they're at in both CPU and graphics though. They're not ahead in either market in raw performance terms.
Title: Re: Fresh Topic
Post by: Rusky on August 14, 2009, 06:19:08 PM
Somebody fix the front page please.
Title: Re: Fresh Topic
Post by: RetroX on August 14, 2009, 10:34:43 PM
They're not ahead in either market in raw performance terms.
I don't quite think that's true.  Intel is a massive power burner, and every Intel PC seems to work worse than every AMD PC I've used.  Not to mention that AMD laptops overheat a lot less than Intel.
Title: Re: Fresh Topic
Post by: serprex on August 15, 2009, 01:53:10 PM
Quote
but CPU performance is not really related to the clockspeed
On the contrary, it is directly correlated. There's merely other factors that must be included
Title: Re: Fresh Topic
Post by: Game_boy on August 15, 2009, 04:16:28 PM
Quote
but CPU performance is not really related to the clockspeed
On the contrary, it is directly correlated. There's merely other factors that must be included

Within an architecture, yes. Between them, it's another factor but you can't tell much from it. For example, 1.8GHz C2D > 3.4GHz P4. You have to look at non-synthetic benchmarks.
Title: Re: Fresh Topic
Post by: RetroX on August 15, 2009, 05:22:50 PM
Core2Duo 1.8 GHz is certainly not better than a 3.4 Phenom II.
Title: Re: Fresh Topic
Post by: Rusky on August 15, 2009, 05:24:57 PM
Pentium 4 isn't multi-core. If you compare processors with the same number of cores, it's a lot closer, although other factors do affect it.
Title: Re: Fresh Topic
Post by: RetroX on August 15, 2009, 06:04:55 PM
Pentium 4 isn't multi-core. If you compare processors with the same number of cores, it's a lot closer, although other factors do affect it.
Oh, P4 was Pentium 4.  I thought it meant Phenom Quad. :/

And yeah, multiple cores is having multiple processors, and really, having a 3.4 GHz quad processor is like having a 13.2GHz processor (mostly).
Title: Re: Fresh Topic
Post by: antidote on August 15, 2009, 06:51:35 PM
one word "FLOPS" if you don't know what that means look it up. The clock cycle DOES have something to do with the performance but not as much as it used to, now Floating point ops/second is the standard, with most computer capable of a couple of Teraflops.

Alot of benchmark tools support testing the FLOP/S of your computer (Aquamark being a REALLY good one) and in terms of AMD vs Intel it depends on what your doing. Intel is great for a little bit of gaming and excellent for Devving while AMD is a gaming powerhouse (Although I'm drooling of the i7 right now) and is also good for a little bit Devving.
Title: Re: Fresh Topic
Post by: Game_boy on August 16, 2009, 05:13:01 AM
Pentium 4 isn't multi-core. If you compare processors with the same number of cores, it's a lot closer, although other factors do affect it.

Meant Pentium D. Still think I'm right on that.
Title: Re: Fresh Topic
Post by: death-droid on August 16, 2009, 08:09:25 AM
http://www.cpubenchmark.net/common_cpus.html
Title: Re: Fresh Topic
Post by: RetroX on August 16, 2009, 12:05:22 PM
in terms of AMD vs Intel it depends on what your doing. Intel is great for a little bit of gaming and excellent for Devving while AMD is a gaming powerhouse (Although I'm drooling of the i7 right now) and is also good for a little bit Devving.
AMD is wonderful because it actually is efficient and doesn't overheat as easily, even when overclocked (you still need a good fan, though, but that's it for the most part).  Intel might give you a slight bit more power, but overheats like hell if it gives it to you, and people go nuts over liquid cooling systems and crap just for a tiny bit more power.

I wouldn't be drooling over the i7.

Anyways, let's stop and let Josh talk about his wonderful progress.
Title: Re: Fresh Topic
Post by: score_under on August 16, 2009, 02:27:35 PM
First. Lol.

Quote
the list is looking short
wtf. My little bro just asked me to bake him a hot pocket.

I cringed when I saw "first", I still don't understand your signature, and that post looks like those random hallucinations and meaningless thoughts you get just before you sleep.
Title: Re: Fresh Topic
Post by: antidote on August 16, 2009, 04:03:51 PM
in terms of AMD vs Intel it depends on what your doing. Intel is great for a little bit of gaming and excellent for Devving while AMD is a gaming powerhouse (Although I'm drooling of the i7 right now) and is also good for a little bit Devving.
AMD is wonderful because it actually is efficient and doesn't overheat as easily, even when overclocked (you still need a good fan, though, but that's it for the most part).  Intel might give you a slight bit more power, but overheats like hell if it gives it to you, and people go nuts over liquid cooling systems and crap just for a tiny bit more power.

I wouldn't be drooling over the i7.

Anyways, let's stop and let Josh talk about his wonderful progress.

You obviously didn't understand what I was saying, get your head out of your butt and listen.

1) I love AMD processors, however I understand that they aren't necessarily good for devving
2) I'm willing to set aside my pride and purchase an Intel processor for devving purposes
3) The core i7 is an excellent processor, saying otherwise would be blasphemous.
4) Refer to statement

and yes I agree lets let Josh update this.

Pentium 4 isn't multi-core. If you compare processors with the same number of cores, it's a lot closer, although other factors do affect it.

Meant Pentium D. Still think I'm right on that.


P4 HT, Not physically Multi core however
Title: Re: Fresh Topic
Post by: RetroX on August 16, 2009, 08:08:50 PM
3) The core i7 is an excellent processor, saying otherwise would be blasphemous.
I never said it was bad.  I just said it was not as good as a Phenom II for price/effort reasons.  If you're willing to put out a ton of money and effort just to get a tiny bit better than a Phenom II, then by all means, go for it.

Also, Josh, Fedora working yet?
Title: Re: Fresh Topic
Post by: Game_boy on August 17, 2009, 06:53:45 AM
Look. AMD and Intel are equally good for dev work, don't know where you got otherwise from. They are similar in real power consumption, ignore the wattage ratings as AMD is more conservative. All that matters is price, and performance, of the whole platform (since good AMD mobos are cheaper).

Here is the value chart. As you can see, an AMD system is slightly better value where they are competing, and above that you pay a large premium for faster performance with the i7 line. If you need an i7 for workstation, CPU-intensive tasks then it's worth it; if you game, AMD's are often faster than the i7s and the system price is cheaper.

http://www.techreport.com/articles.x/17402/4

(http://img16.imageshack.us/img16/3791/valuesystem.gif)
Title: Re: Fresh Topic
Post by: RetroX on August 17, 2009, 08:51:24 AM
I've tried several AMD processors, and I've tried Intel, and AMD just seems to work better for me.  Cores only matter if it's optimized for the cores, and it can be optimized for a certain kind of processor as well.  Also, the graphics card can be a serious factor as well on games as well, and the motherboard might affect the graphics a bit as well.  I doubt they all have the same mobo, so it's a biased test.  Get a simple program that does some calculations and returns the time it took and use that as a benchmark; not how fast each computer can play Crysis.

Hey, Josh, so, how is Fedora working out?
Title: Re: Fresh Topic
Post by: score_under on August 17, 2009, 10:38:01 AM
I've tried several AMD processors, and I've tried Intel, and AMD just seems to work better for me.  Cores only matter if it's optimized for the cores, and it can be optimized for a certain kind of processor as well.  Also, the graphics card can be a serious factor as well on games as well, and the motherboard might affect the graphics a bit as well.  I doubt they all have the same mobo, so it's a biased test.  Get a simple program that does some calculations and returns the time it took and use that as a benchmark; not how fast each computer can play Crysis.
You're boring me now. And that takes a lot to achieve.
Title: Re: Fresh Topic
Post by: Game_boy on August 17, 2009, 10:57:44 AM
Get a simple program that does some calculations and returns the time it took and use that as a benchmark; not how fast each computer can play Crysis.

There is such a thing. SuperPI. It calculates pi. And it heavily favours Intel chips, by a huge margin compared to what we see in real-world use. AMD is more ahead in games. If you can't produce numbers to back your position up... I am an AMD fan. I want to see AMD competitive with Intel. But I am completely against unsourced claims on either side.

SO JOSH HOW IS FEDORA
Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 17, 2009, 03:33:36 PM
Fedora isn't working at all, and the more I fight with it the angrier it gets.

I'm gonna reinstall the OS at some point, but for now I'm just working on the parser.
Title: Re: Fresh Topic
Post by: notachair on August 18, 2009, 12:57:12 AM
SO JOSH HOW IS TOP HAT
Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 18, 2009, 07:17:29 AM
I know a certain someone with a top hat fetish.

He also starves bugs to death, though.

Progress:
Parser does everything it used to. Only better, of course, due to extensibility via the CFile parser.
Oh, which means I lied. The parser doesn't support var yet, because var's not a primitive. I'm considering treating it like one, though, so var.whatever never accesses a member of var. Perhaps instead I'll make var's members private, and make sure the parser doesn't abduct any private members.

If you people need something to argue about, I can probably give one of my old controversies that making ENIGMA totally support C has solved... heheheh.
Title: Re: Fresh Topic
Post by: score_under on August 19, 2009, 10:23:59 AM
I know a certain someone with a top hat fetish.
That XKCD character?
He also starves bugs to death, though.
Sign of a good programmer ;)

Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 19, 2009, 10:04:23 PM
Progress:
I'm signed up for all the courses I wanted at the local university.
Also, beginning the cross-communication cycle between the parsers. (Or pieces of parsers).

Storm's abrewin'.

Nothing earth shattering, sorry. Mostly boring things; making sure hex works. Trying nested statements and parentheses. Making sure none of the optimizations and generalizations I make kill anything.

Good thing I like parsers. ^_^
Title: Re: Fresh Topic
Post by: Micah on August 21, 2009, 12:14:18 PM
Quote
Good thing I like parsers. ^_^

Good thing you like fake, hard-coded, inflexible, unreadable, take-forever-to-write parsers.

Seriously, why aren't you using a tree?
Title: Re: Fresh Topic
Post by: RetroX on August 21, 2009, 07:47:11 PM
Seriously, why aren't you using a tree?
Because when you strike the tree with lightning, it falls on your house.
Title: Re: Fresh Topic
Post by: Josh @ Dreamland on August 21, 2009, 08:34:27 PM
Well, hey, if any of you experts want to show me how it's done, feel free. When your parser can outperform mine, I'll use it. It's that simple.

Until then, however, we'll be sticking with what I'm coding.
Title: Re: Fresh Topic
Post by: score_under on August 23, 2009, 07:46:06 PM
Good thing you like fake, hard-coded, inflexible, unreadable, take-forever-to-write parsers.
Okay, let's pick that apart...
Fake? It parses. There's no fake about it, and I can see no possible way for a working parser to be fake.
Hard-coded/Inflexible? How do you make a fully-customizable parser, then? Why would you need to?
Unreadable? You must have never touched a programming language before.
Take-forever-to-write? Josh chooses how long Josh programs.

Good thing I like trolls.
Title: Re: Fresh Topic
Post by: Rusky on August 24, 2009, 08:48:27 AM
It doesn't parse. Parsing means analyzing, and you can only really say that of the CFile parser and maybe the syntax checker. The main translator doesn't understand anything it looks at, it just sticks semicolons in.

It is a lot more hard-coded than if it were based on a grammar. If you look at a parser written using yacc or antlr, you'll see that it's a lot less hard-coded than what Josh is doing. The grammar that his accepts is implicit in the code that's also doing other stuff. With a generator, you see the grammar explicitly and it's much faster and less bug-prone to change things.

Unreadable- compared to an actual grammar definition.
Take-forever-to-write- Yes, Josh chooses, but it will take him longer if he has to manually build a parser for a grammar that he hasn't really written down than if he just writes the grammar and uses a generator to build an LR table. It'll also be more bug-prone because when he makes modifications he's doing it at a lower level.

Good thing we're not trolls.
Title: Re: Fresh Topic
Post by: score_under on August 24, 2009, 01:35:33 PM
Wikipedia says:
In computer science and linguistics, parsing, or, more formally, syntactic analysis, is the process of analyzing a text, made of a sequence of tokens (for example, words), to determine its grammatical structure with respect to a given (more or less) formal grammar.

That's pretty much what it does. Reads through the "tokens" (variables, operators, numbers, etc) and determines the structure - without which it is completely impossible to insert the semicolons.

And by the way, modifications at a lower level does not equal bug-prone. I have proved this many times.
Title: Re: Fresh Topic
Post by: Rusky on August 24, 2009, 01:40:40 PM
It doesn't determine the structure, though. At least most of the time. Usually it just looks for tokens that shouldn't be next to each other.

Modification at a lower level does equal bug-prone. Maybe you're exceptionally good at manually converting higher-level constructs to lower-level representations, but not everyone is, and you are a human, so you're definitely not as good as a computer. A computer is also much faster at it.
Title: Re: Fresh Topic
Post by: score_under on August 24, 2009, 01:42:22 PM
Modification at a lower level does equal bug-prone. Maybe you're exceptionally good at manually converting higher-level constructs to lower-level representations, but not everyone is
I must admit I have had a lot of practice.
Title: Re: Fresh Topic
Post by: Micah on August 26, 2009, 06:52:34 PM
It is a fact that you cannot change, no matter how hard you try, that it is easier, faster and less bug-prone to write or to change a description of a parser containing only the information that will need to be changed, the grammar, than to write or to change code in a parser hard-coded around the grammar.
Title: Re: Fresh Topic
Post by: score_under on August 28, 2009, 01:07:39 PM
it is easier, faster and less bug-prone
Sounds like an insurance ad.
Title: Re: Fresh Topic
Post by: Rusky on August 29, 2009, 05:47:54 PM
I love Geico ads.
Title: Re: Fresh Topic
Post by: score_under on August 30, 2009, 08:19:41 AM
I love Geico ads.
I would probably love them if we had them in England.
Title: Re: Fresh Topic
Post by: RetroX on August 30, 2009, 11:03:31 AM
It doesn't parse. Parsing means analyzing
No; analyzing means analyzing.  Parsing means parsing. (http://en.wikipedia.org/wiki/Parsing)

Aww, I was beaten to it.  EIther way, does Josh's methods use tokens?  Yes.  Does it use a token tree?  No.
Title: Re: Fresh Topic
Post by: Rusky on August 31, 2009, 06:23:30 PM
Quote from: wikipedia
parsing, or, more formally, syntactic analysis, is the process of analyzing a text
Analyzing means parsing; parsing means analyzing.

Either way, we already knew Josh's method didn't use a token syntax tree.
Title: Re: Fresh Topic
Post by: RetroX on August 31, 2009, 08:53:33 PM
It's still tokens.  Just not the kind of tokens you're thinking of.
Title: Re: Fresh Topic
Post by: Rusky on September 01, 2009, 07:36:43 AM
What the heck does that mean? Using tokens has nothing to do with whether or not it's parsing it. Besides, it is the kind of tokens I'm thinking of. variable names are tokens, keywords are tokens, symbols are tokens, etc...
Title: Re: Fresh Topic
Post by: score_under on September 01, 2009, 11:09:08 AM
What the heck does that mean? Using tokens has nothing to do with whether or not it's parsing it. Besides, it is the kind of tokens I'm thinking of. variable names are tokens, keywords are tokens, symbols are tokens, etc...
The kind of tokens you were thinking of were arranged in a tree, not linearly.
Title: Re: Fresh Topic
Post by: RetroX on September 01, 2009, 05:10:54 PM
The kind of tokens you were thinking of were arranged in a tree, not linearly.
^^
Title: Re: Fresh Topic
Post by: Rusky on September 01, 2009, 09:23:14 PM
No, the kind of tokens I'm thinking aren't arranged at all. Tokens. Just plain old tokens, in a stream. That's what I mean when I say tokens. I think we're all doing a little too much presuming what other people are thinking.

I was thinking of a syntax tree for the method of parsing, but that has nothing to do with what kind of tokens I was thinking of.