« March 2008 | Main | May 2008 »

April 22, 2008

Hefe Cubed

Picture 9.jpg
It has been a really long time (10 years) since I didn't have a private office at work. Well there was that short stint with ZMedia where we worked in the back of a converted motel and once we got a real office, Alan Stein decided we needed to work in one room together with only desks so we could keep the "energy flowing". Working in a cube is exactly where I started my engineering career. I didn't think I was going to revisit that part of my career, but I suppose just like the A's, in some ways I am also going through a rebuilding season.

Posted by Hefe at 01:07 PM | Comments (0)

April 14, 2008

How Time Flies

Happy birthday Hefe.

Posted by Hefe at 01:02 PM | Comments (0)

April 06, 2008

The Parser

I've finished the recursive descent parser I was working on. It works really well and I also wrote a variant class that is used to pass and transform all sorts of different data types around in the parser. The parser is written in C++ and handles simple expressions. It does a left to right evaluation so it does a little look ahead to expand expressions and collect terms. It took me about 3 weeks to code from the ground up and I have to admit I was pretty rusty so I don't thing the first week could really count as coding. It was more like stumbling or groping.

I've learned a couple important things in this exercise. One of the most important things was that I can still write pretty complex C++ code. I thought that part of my life was over. I also learned that Microsoft has not been standing still while I was away and I have a lot to learn Although my current position is not coding, I do need to learn more about 64 bit development and Vista UAC.

So my coding contribution to the Master Installer is complete and I can go back to managing the schedule and get the thing delivered.

Here are the details for the language:
The parser handles simple expressions in real using a language similar to C.

x = ((1+func(arg1,arg3)+3)*2)%5

and return the value for x

The expression parser performs left to right evaluation and handles scoping. It also has two levels of operator precedence, but you can alter this using parenthesis.

1 - ! ( )
2 - * / % ^ [L2_TOK]
3 - + - < <= > >= == != && || & | [L1_TOK]

The Language is defined as:
<xpression> --> <term> ( (L1_TOK) <term> )*
<term> --> <factor> ( (L2_TOK) <factor> )*
<factor> --> ID | CONST | '(' <expression> ')' | <function> | '!' <expression>
<function> --> ID '(' <paramlist> ')'
<paramlist> --> (<expression> (','<expression>)*)*

Posted by Hefe at 06:10 PM | Comments (0)

April 02, 2008

Oakland A's 2008 Rebuilding Season

With spring training coming to an end, it seems that the A's have been looking really good. I did not expect all the rebuilding to happen so quickly, but if the A's stay as hot as they were in Arizona, they have a chance at the division. I'm not getting my hopes up, but they might be more interesting to watch than I thought they would be a month ago.

Posted by Hefe at 06:03 PM | Comments (0)