Dependent Origination

可以有多蠢

Posted on: September 26, 2008

05/02/2006

昨天老板说哎明天就beta了, 你这几个unit tests怎么还没过呢. 昨天看了看, 发现了问题. 但是着急去上pilates的课, 打算今天改. 今天来了发现事情没有想像的简单. 改是可以改的, 问题是qa都test了一遍了, 我才发现问题, 肯定要人家再test一遍, 人家会恨死我的 于是想能不能小patch一下, beta过了再大改, 算下个release的内容好啦. 可是花了一上午, 得出结论, 不行.

好吧, 那也没办法. 但是algorithm很快搞出来了, 偏偏实现起来总是有一个unit test不过. code大概是这个样子的.

caller function

MoveTimeForward(30 Days); ASSERT(GetStatus() == A);

callee function (GetStatus())

TimeStamp a = object.created; TimeStamp b = a;

while (b<now()) b.AddYear(1);

print a.ElapsedDays(), b.ElapsedDays();

这两个ElapsedDays总是打印出一个正数一个负数. 不知哪根筋儿不对了, 我死活觉得是MoveTimeForward的问题. 因为他的实现是改了TimeStamp class的一个static member. 我非得觉得object是在MoveTimeForward之前定义的, 所以a的static function就copy错了.

其实这根本就是nonsense. static function pointer不过是一个address, 自己的地址不会变的, 内容变了而已. 被MoveTimeForward改了之后, calling的时候自然就会call到那个新function去. 跟什么时候copy的有什么关系.

但是不知道怎么回事. 就是死死揪住这个想法不放, 觉得说不定是对的. 蠢就蠢在这里了. 其实有证据证明这个move time forward的mechanism完全是正确的, 比方说在不同的地方打印now()都是正确的move之后的时间. 但是…就是不回头. 在无数的地方打印了无数的东西, 非常desperate, 没有任何逻辑, 做了无数无用功.

直到六点了, 突然发现打印出来的东西里面b是2008年的某个时间. 前面四个小时, 都没有仔细看过自己打印出来的东西 明明是b在循环中被改了吗. 我ffdt. 受不了自己的愚蠢, 下班算了.

其实多好解决的问题. 为什么是负的? b的value是什么, now()的value是什么. 马上就看到问题了. 但是不知道怎么回事儿, 我就没看b的value, 死命和正确的now过不去. 有病啊我.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

September 2008
M T W T F S S
« Dec   Oct »
1234567
891011121314
15161718192021
22232425262728
2930  

Twitter

  • is reflecting on the past three years and reading the article on divided self aptly showing up at the top of my tweeter feed. 5 months ago
  • is having a nice feeling of connecting dots all over the place. they are now illuminating the same point. 6 months ago
  • Style Transfer is fun! TensorFlow rocks! #WTM17 https://t.co/zYP0IFIDfp 8 months ago
  • couldn't get over the jetlag, sleeping during the day from seven to four, for days. 9 months ago
  • is emptying trash and happily discovering the available disk space now ranks at 100G+. 11 months ago

Flickr Photos

%d bloggers like this: