12 April 2004, early evening

I ended up going out with Rishi saturday night. He was DJing at Transient Orange’s two year anniversary party. All the acts associated with Transient Orange are really impressive. There is a lot of talent in this city you may never ever hear.
Read the rest of this post. (806 words)
[2] Life | Music
7 April 2004, evening time
I posted my first comment yesterday at Metafilter (well, Metatalk to be exact.)
Ever since Mez got me hooked on metafilter, I wanted an account, if only to say I had one. There is a lot of dumb shit posted on Metafilter that I always feel like replying to as well. At times Metafilter is very US-centric.
Mezan messaged me letting me know that Matt Haughey was finally opening up Metafilter again. There would be 20 new accounts allowed each day. You would be able to apply for an account at 12:00 PM, Pacific time. I had to wait a day to apply.
When 3:00 PM Eastern time rolled around, I logged on to Metafilter, hit refresh a few times and was greeted with a page welcoming me to join Metafilter. To say I rushed to fill out that form would be an understatement. I was so worried someone would sneak in and steal my spot. I typed as fast as I could and hit the submit button.
I had my own Metafilter account. Such a nice feeling.
I tried to login. The name I chose for myself was chungking express, after my favourite movie. I was surprised to find out my username and password didn’t work. I tried again and again with no luck. Confused, I pressed the back button on my browser, trying to find my sign up page.
You know what I typed in my rush? chunking express. I hope if I harass Matt Haughey enough, he’ll change my name.
How do I forget to type a G.
[14] Life | Metafilter
5 April 2004, early evening
Patrick wanted me to post the CS 444 exams I found, incase they got taken down. Here they are: 1986, 1987, 1993, 1994, 2001.
On a scale of 1 to hard, I’d say these exams are hard. I hope the one we have to write tomorrow is easy, but I have my doubts.
Useful information about the SPARC architecture and the assembly language can be found here.
Compilers | Life
5 April 2004, terribly early in the morning
I am amazed at how much of this term I have spent working on, or thinking about, compilers. I have one last thing to worry about in that class, the final exam, which I will write this tuesday. Since handing in the last assignment I have done absolutely nothing useful with my time. I wish I had at least spent some of it reading. The old exams I’ve read over look hard. God damn, when will it end.
Compilers | Life
30 March 2004, late morning
And that is that. We’re done. In a half hour I will have been up for twenty-four hours. I’m tired, but it is raining outside, so i’ve decided to stay in the C&D with patrick.
What can I say? If I had to do it all over again, I probably would have taken Networks. No, I suppose I am joking — a little bit anyway.
Compilers has definitely been an experience.
update: I woke up at 8:30 yesterday, so I could make it to my Marxist Theory class. I got home today at 11:15, just before lunch. (My plan is to take a shower and sleep.) I’ve missed all my classes for today. My last class as an undergraduate should have been STAT 231, instead it will be PSCI 321. I kind of like it that way. I didn’t think about it at all till I started walking home, listening to no surprises by Radiohead.
[3] Compilers | Life
30 March 2004, terribly early in the morning
CS 444 / 644 Assignment Part 3 Due March 30, 2004
Complete your Ada/CS compiler by implementing a code generator and run-time environment for the SUN.
Fuck you too, Cormack.
[1] Compilers | Life
29 March 2004, terribly early in the morning
.file "test/code/simple_assignment.ada"
.global main
main:
save %sp, -96, %sp
sub %sp, 4, %sp
mov 10, %r16
sub %fp, 0, %r17
st %r16, [%r17]
mov 20, %r16
sub %fp, 0, %r17
st %r16, [%r17]
nop
ret
restore
Assembly has never looked so good.
[2] Compilers | Life
28 March 2004, the wee hours
(11:30 pm) I’ve basically spent the entire day at my desk. I woke up late, at 1:00 or so, and started programming again. 10 hours later, I’m still at my desk, and I’m still programming. I wish there was more progress. It seems like things are moving so slowly.
(1:00 am) I am feeling stressed.
(1:40 am) Here is some useful information for those of you who aren’t in CS. A lot of the times when you program in C/C++, you will encounter one of the following two runtime errors:
- Segmentation fault: You are breaking the permissions of the memory pages. Common reasons are: You are writing to read-only memory, including the read-only data or the text (code), You are reading or writing the first page of memory, typically because you are dereferencing the NULL pointer, Your data and stack segments have overlapped, typically because you have recurred too much.
- Bus error: You are breaking the expected memory alignment, typically trying to read or write a word at a non-word-aligned address. 1
Our compiler currently has neither error.
[1] Compilers | Life
27 March 2004, early morning
It’s four in the morning, and I’m just about to go to bed. This is going to be a horrid weekend I think. The compiler does a little bit more then it did yesterday, but we still have so much to do.
Compilers | Life
26 March 2004, mid-afternoon
Well, I have no been to my last fed ever. It wasn’t what I expected, but I think things like that are always a bit of a let down. Too much on my mind I suppose. That said, it was nice seeing so many of my friends out. I need to talk to Gary and see what his opinion of the night was as well. He told some girl he was in first-year pre-op. That was entertaining. He eventually showed her his drivers license. She was shocked I’m sure.
The night ended well.
I’m meeting Kumar and Patrick at school to continue work on our compilers project.
[3] Life
26 March 2004, the wee hours
I’m waiting for Simon and Steph to come over now. We’re going to go to Fed shortly. I don’t know how I feel about going. No one loves Fed Hall more than myself, but all I can think about is my compilers assignment. I think it’ll be a fun night out.
The compiler is still not really doing anything of substance. We’re close to crossing that line when it does do stuff. That’s all I want. I’ll feel much less stressed once I know it’ll compile something, anything.
Shima’s walked to meet Matt and Durshan at the bomber. I’m hoping they decide to go to Fed too.
Life
25 March 2004, lunch time
I slept through my Compilers class today. Cormack has gotten better at lecturing in the past few lectures I’ve been to, but he’s still a bit too rambling for my liking. Nevertheless, I still think he is a very nice professor.
Our compiler is doing a lot more stuff now. I think we have pretty much completed A2 now. We do analysis for almost every part of Ada/CS. There are holes here and there, I think the most obvious two are subtypes and function overloading. Regardless, it’s quite impressive watching it determine that A(1,1)(1).B(1)(1)
is a function that returns an array of records that contain an array of arrays. Well impressive for me anyway.
We have 5 days to get the compiler to make code. I’m hoping we can get it all done. I have faith. We’ll have to wait and see.
[3] Compilers | Life
19 March 2004, terribly early in the morning
I’ve been doing nothing but compilers for the past few days. I’m definitely not as productive as I would like to be, or as I should be; i’m hoping that will change in the next few days.
I had promised Gary I would go to Fed with him this week. So, tonight, Gary, Steph, Simon and I all went out. We saw lots of people at Fed: Patrick, my other compilers partner, Victor, Phoebe and Rick, Ahilan’s friends Monica and Eddie. Even Liz and Sylvia were there.
When we arrived at Fed it was totally empty. I signed in 3 random brown guys, and then waited for Gary to sign in Barbara and her friend. When we walked inside there were 3 other people in the club, the 3 guys I had signed in. By midnight the place was a lot more busy.
As I said, I saw Liz at Fed. As she walked by, I grabbed her and pulled her over my way, which is something I do when I’m out and drinking. Jeff, if you are reading this, be glad, because she turns around and pushes me away. No fuss. No words. Nothing. I had to get her attention again before she realized I wasn’t some random dude looking for some attention. It was a funny scene. I think she may have felt a bit bad, but really she shouldn’t. I should probably tap people on the shoulder to get their attention, as opposed to yanking them over my way. The whole thing reminded me of this joke I had read at Patrick’s site earlier.
The most memorable moment of the night was at the end. Standing on the dance floor with Gary and Simon, some random girl, walking through the crowd, stops and starts starring at me. Now, I was trying to figure out if I knew her or not, but I was quite sure I didn’t. She kept looking at me though, like I should know her. So then I thought, maybe she was one of Ahilan’s friends who thought I was him. I asked if I knew her, and asked her name. Her friend told me her name was Jennifer, before they both stormed off. At this point I was worried I had offended one of Ahilan’s friends, so I told Simon to go look for her. He was more then willing, for reasons I will leave to your imagination. I decided to go look for Gary, who had wandered off by this point.
I come back to the spot we were dancing to find Simon with the two girls. I pulled her over and asked her, “How do I know you?” Her reply, “I don’t know you, stop flirting with me!” Yes, girls can be stupid, but what can you do. I laughed to myself and left Simon to dance with the girl and her friend, while I wandered about.
We left Fed and loitered outside for a bit, talking to people as they left. We saw so many people on their way out. The two girls also left, and Simon and Gary went to talk to them. I sat and chatted with Patrick, well aware that my raw-animal-magnetism would be too much for the girls to bare, that it would result in their confusing my mere presence with some sort of flirting. The girl thought Simon was quite hot, but her friends were quite opposed to her leaving with him. Gary and I left for Mel’s, and told Simon he would get mad props if he could get the girl to Mel’s as well.
Gary and I arrived at Mel’s, and shortly after Simon arrived. The girl, and all her friends, beat Simon to Mel’s by a few minutes.
Life
11 March 2004, the wee hours
You can tell when I’m procrastinating by the number of posts I make to my blog.
One idea I had for an essay topic for my Marxism class was to discuss open-source software and how it may have some sort of relationship with Marxism. The thing is, I don’t think there is anything in particular Marxist about open-source software. People talk about how with open-source software the money is being made by selling services, but this is true with closed source software as well. There is just something slightly different about having access to the actual product for free it seems.
I decided to see if anyone else has said anything on the matter. I think I missed a more interesting point, that this fellow brings up.
[3] Life | Interesting Links
8 March 2004, terribly early in the morning
It’s 2:00 in the morning. I’ve been laying in bed since about 12:30. I don’t know why I can’t sleep. Maybe it was all the coke I drank for dinner. I went out with Shima to meet her friends Mark and Manson for dinner at the Mongolian Grill. The food was quite good, but a bit pricey. I didn’t do the all you can eat thing, as I don’t have much of an appetite, but I did drink 2 or 3 cups of coke. Yum.
I have a CO 351 midterm tomorrow which I hope is easy. I haven’t been putting as much effort as I should be into the class. I hope I do well on this midterm, because my assignment marks in the class aren’t quite good at all.
I will now attempt to sleep again.
Life
2 March 2004, terribly early in the morning
There comes a point when you just have to say, “fuck it.” I am at that point. It isn’t that late just yet, a little past 1:00 in the morning, but a week of this is too much. Hopefully we can make up all the marks we’ll lose on this assignment when we do the next one. The last assignment is worth half of our mark.
I now know that writing a compiler is a lot of hard work.
For those who want to know, this assignment we were asked to do the semantic analysis needed to process a Ada source file. That means we have to make sure the file makes sense. Examples of things needed to be done are ensuring variables are given unique names, that the scoping rules for Ada are followed, that types are created properly, that expressions are valid, that statements are used properly, etc., etc. We also had to implement a better error-recovery strategy in our parser, as we were just terminating when we encountered our first error.
I’d say we did about half the stuff we were supposed to do. Right now our compiler is 36000 lines of code. I think 25000 of that was generated by programs we wrote.
[4] Compilers | Life
1 March 2004, mid-afternoon
The compiler does some things, and doesn’t do others. We have a day to get it to do everything except spit out code. Whether it’ll happen we’ll have to wait an see. There is still some much to do. Patrick, the recent addition to our compiler group, has the acronym IGU next to his MSN name all the time. I asked him what it meant, since I was curious why it was always there next to his name. He told me I would reach a point where I would know what it meant. Kumar told me late last night that it meant “I Give Up”. That made me chuckle.
Compilers | Life
29 February 2004, terribly early in the morning
I left for school at 11:30 at night. Patrick was working on his networks assignment in one of the second floor computer labs, so I thought i’d join him. It is a little depressing, walking to school so late at night and watching people pass you by as they walk in the other direction, heading home. I am reminded of when I was in second year, working at school late at night with Ju-Lian and Annie on CS 241 (the baby compilers course). We used to spend the whole day in the stankest lab the school had. I’m not sure why we liked that lab the best. A year or so ago, the school renovated the lab and turned it into another PC lab. Such a shame. I digress. This second assignment is still a bitch and a half. It’s due tuesday.
Compilers | Life
26 February 2004, terribly early in the morning
I don’t know if hard is the right word, but compilers is definitely not easy. CS 444 is slowly consuming more and more of my time. The worse part is that it seems like I have so little to show for all my effort. Thankfully Patrick, who joined Kumar and I, seems to be infinitely more productive then the both of us.
What’s new with our compiler? Well the one that is working right now is the new and improved error handling. (We use the Burke-Fisher algorithm to catch errors.) You can also perform some very basic analysis of the program.
We have so much left to do it seems. The next few days should be long.
Compilers | Life
23 February 2004, late at night
As I am a student in the Math faculty at Waterloo, I do not get a reading week. Instead, we are given the last two days of what would be the reading week off. I spent the weekend in Waterloo, working on my compilers project. When I wasn’t working on compilers, I was participating in the CS graduate studies open-house.
Friday night, I took some time off to go to Crystal Palace, a Chinese restaurant in Waterloo. I’ve been there before for Dim Sum, which they prepare quite well. Their dinners however are pretty so-so. The meal was free, paid for by the Computer Science department, so I’m not one to complain. I was seated with Professors Jonathan Buss and Chrysanne DiMarco. Although the dinner wasn’t that great, the conversation was informative.
The next morning there were talks held by members from the various research groups at the school. Ju-lian had mentioned that his graphics prof, Kaplan, was a funny guy. I would have to agree. In real life, I think he looks like my cousin Mahi, only white. Well, perhaps not, but they do have the same kind of mannerisms and sense of humor.
After the talks, we were invited to the Grad House for drinks, and the UW Club for dinner. I ate and drank as much as I could.
Life
16 February 2004, lunch time
Reading week begain for Arts students today. So, today I can sleep in, since my only class today is Marxist Theory. Today I can stay at home, and not walk all the way to the psychology building, which is on the other side of the campus. If only I remembered it was reading week—damn it.
Life
6 February 2004, terribly early in the morning
This past wednesday we went to the bomber. Cathy had come up from Toronto and the plan was to party it up that night. I had a Statistics Quiz the next day but I figured, ‘what the hell’. All the girls came out, Doris, Ah-sun, Cathy, Cat, Flora and one of their friends whose name I still don’t know. Gary, Yang and I got there early, and loitered about for a bit, waiting for the girls. There are lots of entertaining tidbits to share, though not on the internet. Gary documented the entire night on his digital camera. I think I have like 117 of his pictures and movies on my laptop now. It was quite the evening I must say. I’ve decided that it is time to switch it up and start going out more often. And the Statistics test was easy, bonus.
Life
3 February 2004, lunch time
I arrive at school to be told the compilers class has been cancelled. Normally I wouldn’t care, but at 8:30 in the morning that is some cold shit. I emailed Kumar telling him not to come to class, printed out our documenatation, gave it to the angry CS secretary, and am now sitting in the computer lab. I’m apparently supposed to read four papers on error recovery and detection when you are parsing. What a dis.
Compilers | Life
3 February 2004, terribly early in the morning
Kumar is putting the final touches on the document we need to submit for compilers. The afternoon was spent hacking together a symbol table that we hope works well enough for the assignment. I’m hoping everything works! For the next assignment we have to do the serious semantic analysis, and the symbol table stuff we did for this assignment will probably be scrapped.
Compilers | Life
2 February 2004, the wee hours
Our assignment is due in two days. We are quite close to completion, though there are still two components we need to get working. First, we need to make a symbol table. This shouldn’t be too difficult, and I think Kumar is almost finished implementing one. The second task, which will be trickier to do, is error recovery. Right now, when an error occurs, the program prints an error message and terminates. Ideally, the behaviour our compiler should exhibit is some sort of recovery strategy that allows it to keep parsing, looking for more errors. I hope we can get everything done in time.
Compilers | Life