Sunday, March 30, 2003


Life Lesson #17: Awareness
Know the argument,         if you offer the opinion.

Know the problem, if you offer the solution.
Know the reasons, if you support a cause.
Know the stakes, at all odds.
Know the alternatives, if you dare oppose.
Know your true reasons, even if Doubt daren't impose.
Know :
the  argument,

the problem,
the reasons,
your reasons,
the alternatives,
and the stakes ...
if the choice is yours to make.
Few have followed this.  Few will.

Some talk, some debate,
some struggle, others kill.
But how many ever truly know what purposes they fulfill ?

Friday, March 28, 2003

Still trudgin' away at work I have no time to finish, with no hope of redemption. Today is Friday. The only good news I can appreciate.

Thursday, March 27, 2003

Haha ! I've thought up of another interesting programming language idea ! I'll call it "Curried C" ! ... reminiscent of ML .
Here's the idea: Functions are objects.

structs and unions remain the same ... only they have operator overloading, and returns and parameterization will be C++ style (default arguments, references, etc)

it will support infix functions, infixr functions and priority levels.

it will be even more weakly typed than C. (if possible!)

functions will be objects. you can make new instances of functions (The cool idea is that it'll just be optimized to save and load function states for a given set of variables ... quite reminiscent of C++ and even Javascript :-D ... ),
and will be able to specify variables in 3 ways :
A: local . variables are allocated upon entering the function, and de-allocated upon exiting.
B: static . variables are allocated upon the first time any function of this type is entered, and de-allocated only on exiting the program.
C: member . these variables are static, and remain the same only to the instance of the function they were created in.

It will also contain some of GCC's most excellent tweaks to c++ such as specification of the return object in the function header:
int f(x) :return x
{blah blah x blah}
and it will allow for optional use of brackets under functions (so they can also look like one-line if-statements and such)

Curried C will have a suspend statement similar to Icon's,
as well as anonymous functions, and the ability to declare functions as objects, and finally ... heh heh heh ... I'll include a specific library that'll allow programs to send functions across file descriptors ... I imagine it'll be easier than it seems, at least with Visual Studio.NET ... BUT I'M NOT WRITING THIS JUST for VS.net ... I guess I'll see about making object code in unix ... or maybe just a wrapper translator/compiler and a special library that adds function/object-code-manipulation abilities. Obviously there'd have to be limits, but I'm not worried about them right now ! It's an interesting idea all the same ! :-D

AND NOTHING MORE ! :-D (well , maybe one or two other ideas, but if anything, I'm probably going to toss a few other features OUT !)
However, first things first. I'll make a priority chart of the ideas I have one day, and figure out how the hell I can do all this :-p.
--------
Notepad entry for myself: don't forget to email bilal at email !

Wednesday, March 26, 2003

Life Lesson # 16 : No matter HOW BAD you have it right now, just remember:
There are at least two people in the world right now who have it worse than you ... and at least one of them is managing better than YOU are !
this is one of the things I say to myself to keep me going. =D
Life Lesson #15 : For those of you who like to take 'mental snapshots' of others.
Even if you have the nth degree of analysis of other people - at its best, a mental snapshot is only a picture in time. People change, and NO ONE, not even Hannibal from Silence of the Lambs has that good of an ability to analyze others. As human beings, it is in our nature to automatically and subconsciously search for patterns in social behavior, and it is also a very important ability to have, (I'll post info soon on more than enough publication journals of science that explain this subject in detail) but stereotypes, racism, insults, and downplaying of the accomplishments of other people is not necessarily in our nature -- it's just sick. Often it's simply learned behavior. But I am disgusted by it, and from my own 'mental snapshots' of other people, I'm not the only one. =)
But every so often, *I* even catch myself in such an act. Be responsible for your own thought processes.

Monday, March 24, 2003

Too much homework. Am now forced to redo my Networking assignement in C instead of C++.
I took a week and a half. Now I must take a day.

Current # of days without sleep : 1
Expected : 3

Thursday, March 20, 2003

It's been a few days since my last update.
Two new life lessons to come shortly, involving mental snapshots and dealing with the war. Yes it seems tritely arrogant now, but wait till you read them, eh ?

Umm... in other news :

It seems M2 decided to put his halloween pic into the hotornot website :-D ... I don't know WHY exactly, but hey, check it out =P I think he's affecting the score, no ? ;-)

Something y'all might be interested in. It seems Optimus Prime is going to help fight Iraq ... literally :-D see the details

from m2: [joking mode]This just in: Saddam's body double changes name to Megatron.[/joking mode]

I learned a hellovalot more than I ever wanted to about the way C++ packs unions and structs ... it pissed me off beyond belief, but I finally found out why making a struct with a single character in it was being given the size of 4 freakin' characters.
C++ for different compilers automatically buffers objects of the type strcut or union, with some predefined amount larger than a single character (A single character is one byte in size, whereas 'short' numbers are two bytes, and most other simple types are four bytes.) that's where #pragma pack (X) comes into play : I found out that my C++ compiler was set to #pragma pack (4), thus giving me at LEAST 4 bytes worth for any struct or union I tried to make, even if all I wanted was ONE ... fucking ... byte . I was able to set it to #pragma pack (1) and had no further problems in g++ or in the free Borland C++ 5.5 compiler. This had me soo damn pissed off, by the time I found out how to fix it, I was running around screaming in glee like a madman . Really!

Well. Umm.. right. I guess I'd better get back to my homework, right ?

Friday, March 14, 2003

Hmm... a life lesson is waiting to come out, but the time and energy must be spent elsewhere at the moment. Last day of classes before spring break ! Yay! Now I can finally get to THE OTHER homework I've been putting off :-p ! So much for alcohol, games, and directx ! At any rate, I'm going to take it easy for the next few days.
Yesterday !
I just about finished my CS assignment (was working on the last two problems) when I saw that the teacher had released some extra credit homework for us over spring break ! I just about had a seizure from the multiple waves of relief that broke over my body !
After I was done, I was so damn giddy , it was crazy.
I stopped by Mike & Colin's a few hours later , whereupon Mike and I went to kmart for lunch, aided an elderly woman to her apartment, and brought up that stupid, yet strangely amusing fight club debate again over whether one of us was simply an independent construct of the other's mind. =P Fortunately for our sanities, I have several pictures of us as a reminder that this is just a theoretical debate :-p For the next two hours or so, Colin and I began his 2nd session in learning C++ . Exercise #1. =D

I almost had a nice picture to show off - it didn't work out, but we might try again, today. Mike1 and I went over to one of those "Fire Lane - no parking" signs near kmart, armed with a camera. We intended to take a picture of me sitting atop the sign , ( I would've liked standing, but the damn sign was shaking ... and Mike had this really annoying tendency to want to hold on to it while I was SITTING ON TOP OF IT ... gah.) At any rate, as soon as he attempted to take a good picture, the camera's battery died (it's been having problems time and time again ... grr) So no picture ... I think ... but now I'm looking for a standalone sign somewhere in tucson that has the words "No Loitering" on it =D. That would be the best sign to sit atop for a photo ! I thought about photograph of leaning lazily against the pole atop the arm of a traffic signal, but even though I'm confident in my abilities as a climber, shit still happens, and those traffic light pole arms can get REALLY shaky in the wind -- not to mention I'd hate to start a criminal record simply by trying to make a memorable photo album, since that's just a bit conspicuous and reckless ... depending on where we decide to photograph.

Thursday, March 13, 2003

Finally! I have some free time ! Well not really. I'll add an update later ... goodnight!
CONGRATULATIONS ! ! ! This pretty much sums it up for almost everyone I keep in contact with, at the moment ... I hope the good fortunes continue !

Wow ... it's been quite a loooong day for me. I've been working like crazy (in between goofing off, of course!)
It's been a good day, I suppose. I can't wait till I'm DONE !
I'm doing homework, homework, homework, and more homework ! yeehaw! All because I haven't been willing to compromise my free range of free activity!

Time passes by me,
as I watch lives through my screen
flow as soft, sweet dreams.

I've learned quite a lot about the programming technique known as 'short-circuiting', which involves using the logical AND and OR operators to connect a chain of expressions like a standing row of dominoes: if one falls, so does the next, but if one is not aligned properly, then the chain stops at that domino. It's not hard to understand ... and when mastered, has some interesting applications in programming style/speed. At any rate, once I'm finished with typing up all my homework answers, (I'm taking a break right now) I'll resume work on the simple java-like windows api and directx wrapper classes for C++ I began a few days ago. YES, I'll post details at Sourceforge.net when I have time. No, I'm not full of myself. And yes, I think I can do it. It's not too difficult ... :-( IT'S JUST A MATTER OF TIME! ARRRGH! TIIIME!!!!

Monday, March 10, 2003

Life Lesson # 14: Being able to look back at your life, especially the painful parts, and see how young, unaware, or 'stupid' you were is the same as being able to acknowledge the fact that you've grown, and are still growing.

Still doing homework. Damn, it's late ... early, too. Been talking with an old friend from Seattle (online).

Sunday, March 09, 2003

Current Music: "Deep Black Skys: SuperMarioland Millenium OC Remix" yes. it IS the gameboy tune you're thinking of :-D
I recently bought the Hyperblade VG CD from Bookman's ... the Tucson analog of Half-Price Books. for $3. I love Hyperblade. D/L the update, D/L Abandon Loader, configure the correct cpu type, play the game, puke from motion sickness, then dump the cd into the stereo and listen to the music for hours on end afterwards ... Okay so the music won't stand up to everyone's scrutiny, but it's DAMN catchy, and I love it all the same!
Well well well ... I just installed Google's Toolbar, and it seems the blogger blog-editor has a freakin' monstrously high page rank :-D I guess I shouldn't be that suprised.
It's about 2.6 times larger than mine, anyway .
I'm so bored. I've been working on homework...just not in the right priority order. At any rate, I'll be taking a break from the computer tomorrow. I would've spent a later day doing the same thing if I hadn't today ... I'm *all* about constructive procrastination :-p

2:14 2:54 3:26 am and nothing accomplished except the realization that you can get the size of a custom bitset class down to the # of bits (smallest whole byte-size, anyway) if you chuck out the necessity for using lvalued array subscript notation ... which pretty much NEUTERS the damn thing.

Yes, I've been re-teaching myself C++'s special peculiarites. I've got that networking project due, and I've decided to go with C++, OBVIOUSLY. Heh. After a startlingly brilliant realization which has come idiotically late in my 6 small and pathetic years of programming, I (finally) see that C/C++ already has a freakin' logical xor operator :-) bool(X) ^ bool(Y) :-D The end result computes just the same as though there WAS a logical xor operator! I macro the keyword "xor" to differenciate anyway, though. I'm also re-learning stupid macro tricks, and have added to my custom library the "unless" and "until" keywords :-D and the only thing they do is flip the expressions of "if" and "while". I also figured out some new features to add to (and some to delete from) my own programming language :-D
yes, I DO believe in GOD !!!! just not one that is restriced to Christians, Muslims, or Jews
I had a really weird but cool dream last night :-) ... it all started when ... *sigh* ... when ... s ... sn .... snzzzzz. ..... .zzzzzzzzzz .........

Friday, March 07, 2003

Someone recently alerted me to a potentially interesting job in the northwest doing web-based server-to-client software development in java ... for some reason after looking at my info, they thought I had already finished my degree ! :-( I hope I still get offers after I graduate !

*still busy*

Wednesday, March 05, 2003

CROSS cs 346 #5 off the list !! yeehaw!

Tuesday, March 04, 2003

GRRARAAAAAH! More More More Homework !

EDITED 7:50pm 3/4/03 ... as per request, the links below are a bit more descriptive than my previous statement :-D
(I'm taking a break from programming !)
Math 215
CS 346 #5
CS 346 #6
CS 425 #1 & #2
And finally a nice lil music 101A essay to finish before March 10 !

Sunday, March 02, 2003

Goodbye, Neighbor Rogers.
Too much homework ! GAH!