为中华人民共和国成立60周年的献礼

2009年10月1日

今天是中华人民共和国成立60周年,不过我更想用“60th anniversary of communist rule”来称呼这个日子。六十年一个甲子,我的父母经历了整一个甲子,我经历了半个,历史就这样翻过去一页。对于中国四千年的文明史、两千两百年的集权专制史,这薄薄的一页根本不算什么,但对于你、我和这里的大部分读者,这一个甲子的历史是我们的全部。

今天,大大小小的官员们都忙着献礼/献宝/献媚;今天,北京市民出行会很不方便,因为表演给全国全球民众、用于炫富和恐吓的大型武力展示将首先摧毁北京的市政交通;今天的新闻会无比的……“和谐”,画面上全是露出八颗牙的笑容——因为那些笑不出来的,比如前门贫民窟的流民们,早就被驱赶出北京了。而我,如果没什么特殊情况,我目前在陕西省西安市,准备攀登位于现代中国地理中心、号称中国龙脉的秦岭主峰太白山。2230年前,这座至今以那个王国命名的大山见证了中央集权专制制度在中国的诞生;遗憾的是,这种肮脏、野蛮、过时的制度至今没有消亡。

所以下面的文字、下面的视频才会这么让人一肚子感触。无论是民国六年还是党国六十年,这些话都让人刺痛,尽管这大概只是电视剧导演假借孙文之口讽今。所以我也趁着今天赶赶潮流,把这些话作为贡品献给多灾多难的“中华人民共和国”。如果它是一个“人”的话,期待它能听到这些声音,清楚自己是多么的名不副实,挂着共和的羊头,卖着集权的狗肉;期待它能因此产生哪怕是一点点的羞耻心:要么堂堂正正做人,对得起自己的姓名。要么还是自戮,早死早超生的好。

《走向共和》孙中山演讲全文,引用自该帖视频在此(需翻墙

我知道,你们很着急。张勋复辟了,国会又开不成了,我知道。我啊,我急的不是这个,这些日子我想的很多,我们本来是共和国,可怎么一次又一次地出现了封建主义专制主义的东西,这个问题不解决,专制复辟就是必然的。共和国就永远是一个泡影。

共和的观念,是平等、自由、博爱嘛。可民国六年来,我们看到的是什么?各级行政官员都视法律为粪土,民众,仍被奴役着。

民国应该是自由之国!自由是民众天赋的权利!可民国六年来,我们看到的是什么?是只有当权者的自由,权力大的有权力大的自由,权力小的有权力小的自由。民众,没有权力,没有自由。

民国应该是博爱之国!人人为我,我为人人!可民国六年来,我们又看到的是什么?是只有民众对当权者恐惧的爱,而当权者对民众,只有囗头上虚伪的爱。那种真诚真挚的博爱,我们看不到啊。

民国更应该是法制之国!可民国六年来,我们看到的是行政权力一次又一次地肆无忌惮地干涉立法∶你不听话,我就收买你;你不服从,我就逮捕你,甚至暗杀你。立法者成了行政官员随意蹂躏的妓女!

那行政是什么呢?行政应该说是大总统及其一整套文官制度。应该是服务于国民,行共和之政。可民国六年来,我们看到的是什么?是一个打着共和旗帜的家天下,在这个家天下的行政中,我们根本看不到透明的行政程序,更看不到监督之制。那些行政官员,是如何花掉民众的血汗钱,民众不知道,那些行政官员把多少钱揣进了自己的腰包,你们不知道吧,我也不知道。 

你们都知道司法是裁判吧,这个裁判的原则是什么?是一部主权在民的共和国宪法。可民国六年来,我们根本没有看到这么一部宪法嘛!就那部不成熟的《临时约法》,也一次又一次地被强奸。

有人说,不不不,不是一个人,是有一些人说,共和他只是一个称号而已,你孙大炮说的这些大虚幻、太遥远,不符合国情,它就像一个气球,啊,看着很美丽,可一飞上天啊,卟破灭了,我想请问你,难道我们不要共和了吗?难道共和真错了吗?如果不要共和,我们有的就永远是专制,如果我们不要共和,那我们有的就永远是被奴役。如果共和是错的,那自由就是错的,如果共和是错的,那平等就是错的,如果共和是错的,那博爱就是错的吗?我们追求的共和没有错,当然它还不完善,所以我们要一点一滴的去完善它,哪怕为此要付出代价呢!

哦!对了,我今天穿的这身衣服有点古怪是吧,连裁缝都说是很奇怪的。但是我要说这是,这是为了完善共和,你们还觉得奇怪是吗?我要说,这就是共和,这就是共和的衣服。这边,我设计了三颗扣子,共和的理念,就是平等、自由、博爱。这边也有三颗扣子∶民族、民权、民生。

那宪法呢?呵呵呵,我说的不是三权宪法。我发明了个新词,叫五权宪法。这里装的是立法权,这儿装的是行政权,这儿装的是司法权,这三权你们都很熟悉,叫间接民权。

我情有独锺的是直接民权。要让普通的民众都有直接参政议政的权力!一个是考试权,我们中国古代就有考试的传统,后来把科举废除了,当然这对后来大兴新学有好处,可当官就不再考试了,这不好,这就像倒脏水把孩子也倒出去一样啊,民国六年来,在行政上用的是什么人啊,都是袁世凯他北洋的人,至今还如此。所以我们要把考试权还给民众。今后,凡行政用人,一定要经过考试,不管是谁!

还有一个是弹劾权。没地儿装了,不急,不急,装在这儿,弹劾权!为什么要把弹劾权藏在里面呢?因为它是民众的杀手锏,它说不定什么时候就突然杀出来,弹劾你。所以你要战战兢兢的当官,老老实实的为民做事,我想这回有人,更要说我孙文是个疯子,吃饭穿衣都说共和,你孙大炮还会什么?他说的对。我只知道共和这两个字,我这一辈子就认这两个字,共和。

我们有许多志士同仁,为了共和连生命都献出了,我孙文此生啊,没有别的希望,就一个希望,那就是:让共和不仅是一个名词,一句空话,或一个形式,要让它成为我们实实在在的生活方式,让它成为我们牢不可破的信念。

共和是普天之下民众的选择,是世界的潮流,世界潮流浩浩荡荡,顺之者昌,逆之者亡。我孙文相信,我们这个中华民族啊它一定会实现共和的,我坚信这一点!

太监田义@模式口大街

2009年08月22日

今天出去骑车,再次路过模式口大街。偶遇“田义墓 / 中国宦官文化陈列馆”,进去逛了一圈儿,开眼了。

这是个很不错的专题小博物馆。进门之后,右手是中国宦官文化陈列馆:有知名宦官们的简历、宦官制度的来龙去脉,还有一些实物陈列。有细节,比如打着东厂logo的碗、阉割过程的详细文字叙述、蜡像demo、阉割刀实物什么的。呃,很残忍。某房间里摆着一具模式口地区出土的清代干尸,一滴汗。大概是把模式口这小片的文物都搬来了?往前走,进入田义墓墓园,里面有华表,栩栩如生的石雕武士俑、石雕门楣、碑帖……刀工细腻华丽,比如碑亭顶上的蟠龙藻井、石狮子的毛等,非常非常细致,极完好。有某人的图片(之一之二)为证,如此精美细致的明代石雕,还真是第一次见到,保存状况比明孝陵好多了。墓园最里面还有两个墓穴,可以钻到地宫里看,里面棺木随葬当然是没了。不过阴森森,挺凉快的就是。总的来说¥8的门票还是很值的。

当时很奇怪为什么这个墓园能保存得这么好,而且形制方面好像有点越级?(比如好多龙纹、墙裙的花纹和明孝陵一样)查了一下,果然是rpwt。墓主人田义的人品确实很不错,被正史赞过:

引用:互动百科辞条:田义 [1]

……万历三十年(1602年),皇帝突然病倒,急召大臣到仁德门听遗诏。一会儿又单独召见内阁首辅沈一贯,让他在朝房拟好遗诏,废除矿税。然而出人意料的是天还没亮,万历帝突然病好了,后悔要废除矿税,便接二连三地派内使去追回成命。沈一贯认为废除矿税是皇帝遗诏,岂能随便收回。最后因万历催逼过急,沈一贯迫不得已,交出了遗诏。就在万历派人追回成命时,田义正在皇上面前据理力争。神宗愤怒极了,抽出宝刀要砍杀他。田义深知矿税的危害,见皇上抽出宝刀,把生死置之于度外,毫不畏惧地说:“皇上金口玉言,何必出尔反尔!”在田义据理争论时,中使拿着遗诏回来复命。田义愤愤然走出,正好撞上沈一贯。田义气愤地唾骂沈一贯,说他胆小如鼠,不能坚持把弊政废除。由于遗诏被万历皇帝收回,矿税让当时人民又多吃了18年的苦,直到万历四十八年(1620年),这一弊政才废除……

蔡东藩先生在《明史通俗演义》中就矿税一事称赞田义:“不期太监中,亦有此人,其名曰义,可谓不愧。”刘若愚在《酌中志》中称赞他“贞介忠诚,有大臣度……性俭朴寡言,休休有量,人不敢干以私”。

所以万历皇帝厚待田义,不仅“短短的七年中四次高升”,而且被赐“蟒衣玉带”,赏“岁加禄米”,“钦赐坐蟒,许禁地乘马”,“钦赐内府坐橙杌”,奉旨“团营大阅”和“法司录囚”。当时田义最高的官职是司礼监掌印,为正四品官,按制他的俸禄本该是一年288石,而由于皇帝的一而再、再而三的赏赐,到最后“禄米岁增至六百余石”,相当于从二品官的年薪 [2]。他死后万历帝给予他隆重的待遇,赐祭三坛,赏“东园秘器”,令工匠挖地宫埋葬,树享堂碑亭,永久祭祀(这个据说是一品大员的形制)。祠额题为“显德”,更证明其德性高洁 [1]。

到了清代,有十几位太监追随他的气节品行而葬于其墓侧 [3]。康熙年间,太监慈有方捐出私产在田义墓边上建慈祥庵:一来保护田义墓存久远,二来相当于修了一个年老太监的养老院。这位田义的仰慕者后来就葬在田义墓穴的边上 [4]。1949年之后,慈祥庵的前院儿成了幼儿园,后院给封起来了,这些精美的艺术品就这么躲过了历次政治运动,直到1998年重新被文物局接管并开放 [5]。

按一般印象,提起明代的太监(历代的太监),印象似乎总是和弄权、结党、酷刑、心理变态之类联系在一起。魏忠贤、刘瑾、东厂西厂锦衣卫……坏事总是传千里的,完全把田义这样少见的的亮点给压了下去。其实review一下,太监里面的牛人也够多:司马迁、蔡伦、郑和……其共性是距离权力中心近,有机会掌握资源,作大善,或者大恶。但这些人毕竟是少数,看到今天的展览介绍,绝大部分普通太监的人生凄惨:一生当牛作马,稍有不慎就惹来杀身之祸;失掉服役能力后,就被驱逐出宫。所以不少太监晚年以寺庙栖身。据调查,在北京城郊,共有明清时期的太监寺庙20多座 [6],大多分布在西山一线。陵墓就更多了,不仅城外有很多,比如香山碧云寺曾经是魏忠贤的墓,玉泉山附近的“圆明园太监墓”;而且城内也相当多,魏公村、阜成门外什么的。不过绝大部分都在清朝被荡平了。像田义墓/慈祥庵这样的,少之又少。

转回来看模式口大街的地图,这里是京西古道的起点,至今还有很多老房子。除了慈祥庵以外,还有两座寺庙:法海庙、敕赐承恩寺。三座寺庙摆成一个品字形。稍研究了一下,很神奇,这两座寺庙和太监也极有渊源!

最高的一座叫“法海寺”,在半山腰。其卖点据说是壁画。看慈祥庵的时候被提了一句,于是今天下午找上门去,在门口看了一眼。门票太贵没舍得买(看壁画的票要¥120)。回来一查我就疯掉了:此庙为全国重点文物保护单位,壁画在中国美术史的地位之高,天哪!我摘录一段:

引用:互动百科辞条:法海寺明代壁画 [7]

……壁画出自明代宫廷画师之手,绘制十分考究。法海寺《帝释梵天图》(北墙西侧)重大特点是继承了唐宋时期纯粹佛教内容的风格。元代之后的多数壁画在内容上都是佛道掺杂,而法海寺竟然跃出当时的主流,继承了唐宋时期的风格……

……法海寺明代壁画与山西永乐宫元代壁画相比较,法海寺壁画在规模、力度、气势上不如永乐官壁画,而在人物刻画、图案精微多变,多种用金方法等画工技巧方面,法海寺壁画比永乐宫确实成就较高,在壁画制作工艺上也有新的发展。敦煌壁画是中国现存规模最大、内容最丰富的古典文化艺术宝库,但是,敦煌壁画自6世纪发展至清代,连绵不绝,却唯独缺少有明一代的壁画,北京法海寺壁画能够以其精湛的绘画艺术、高超的制作工艺和鲜明的时代特色补充这一缺憾,弥足珍贵。法海寺壁画可与欧洲文艺复兴时期的壁画相媲美,在世界同期壁画中占有突出地位。

这些是壁画照片——之一之二之三之四之五之六之七之八之九——太漂亮了吧!

这座寺院的来历是明英宗的宦官李童被托梦,前后还挺折腾。有兴趣的话可以看看这篇文档

最后,来看看最最诡异的“敕赐承恩寺”。这个寺庙在北京九中对面,目前尚未开放。从外面看,里面很漂亮,古树成荫,建筑颜色很出挑,看得出来形制方面明显比慈祥庵牛x很多。而且挂着“敕赐”开头的招牌,很是吸引人。可惜绕着走了半圈,全上了锁。只好撤退。查了一下资料,好吧,我再次严重的倒了:

引用:百度百科:承恩寺

……寺庙为四进院落,依次为山门殿、天王殿、大雄宝殿及法堂。它和明清两代的皇室都关系密切,清朝的礼亲王前来西山扫墓祭祖都要在承恩寺歇息拜佛……

……天王殿内现存六铺壁画,采用工笔重彩,画工精湛,染料为矿物质染料,衣袖、环佩多为沥粉贴金。乃宫廷画师所作。壁画高2.2米、长18.8米,壁画总面积41.36平方米。东墙绘黄龙、绿龙各一条,西墙绘青龙、白龙各一条。北墙东西两侧绘“放生图”、“放飞图” 各一铺,西边的是放鱼、虾、蟹回归河流,东边的是放鸟回归天空。画上人物共十六人,尺寸比真人略小,两边的人物主角是皇帝和皇后……

引用:舒乙,发现北京 [8]

……庙外边居然有一层厚厚高高的虎皮墙,长方形,将寺庙整体筑成一个”回”字型的大框架,寺庙在里,自身有一圈庙墙,虎皮墙在外,又是一圈,两圈之间有夹道。这很少见……虎皮墙的四角,各有一座碉楼……碉楼四壁的墙都很完整,相当牢固。墙上筑有石窗,是由整块的石材凿成篦状的,起着射箭的箭眼作用。挺奇怪的是,四个碉楼据传说均有地道彼此相通,实际构成一套严谨的军事设施,将寺庙团团围住,教它固若金汤……

……壁画的风格和法海寺的明代壁画的风格几乎完全一致,虽然比法海寺晚70年,但一看就是明代中期的作品,距今已有490多年了。画的手法虽然和法海寺壁画同出一辙,但没有法海寺壁画那么细腻和奢华,略加挥洒反而增加了它的灵动、飘逸和鲜活……

引用:神秘古刹承恩寺,可能是明代特务机构

……历史上承恩寺有“不受香火、不做道场、不开庙”的说法,因此庙门常年紧闭。有人推断,此处可能是明代的特务机构,是东厂西厂的外围重要据点,兼有皇家情报机构的功能。所以除了明代大学士李东阳的《承恩寺记略》外,留下的文献资料几乎为零……

没错,承恩寺也已经升为全国重点文物保护单位了。

我们去的田义墓居然是等级最低的“北京市重点文物保护单位”!如此三朵奇葩,再加上正中心的“中国第四纪冰川遗迹陈列馆”(此为中国北方地区发现的首个第四纪冰川擦痕遗迹),天啊~~~藏在破破烂烂、貌不惊人、被首钢的高炉烟囱半包围的模式口大街~~~天哪!!!天哪!!!

想阅读更多模式口大街的照片和描述,可以看看这篇“对模式口大街的调研”,貌似作者是搞规划调查的。想在线逛模式口大街,请访问以下三维实景图:敕赐承恩寺大门附近田义墓门口。页面载入后稍等,正中的广告结束后会出来一个街景图,点一下,用键盘方向键就可以操作了。

参考资料:

  1. 互动百科辞条,田义
  2. 苗天娥,石景山田义墓主人生平事迹考
  3. wikipedia,田义墓
  4. 石景山信息港,护墓有功的慈有方
  5. 幽谷居士,宦官文化陈列馆漫步。对陈列馆馆藏展品的详细描述。
  6. 百度百科,太监
  7. 互动百科辞条,法海寺明代壁画
  8. 舒乙,发现北京

午夜,在北京坐公交车

2009年07月28日

周一(昨天)晚上从青岛赶回北京,23:06下火车。不幸的是,下车地点是北京南站。此地白天已经是鸟不拉屎,晚上连拉屎的鸟都没有了。由于地处南三环,所以距离远在北四环的我的老巢过于遥远。总觉得在轻装的状态下,花上百十块钱给市内交通太不靠谱。于是在火车上用google搜索了一下….hmhm,貌似北京还是有夜班公交线的。好吧,那么下车作作测试。

以下是折腾的路线图和当时随手打的log。不同颜色标注表示不同的公交车。三环以内的四个主要火车站,基本上被一笔画一样穿起来了:


在较大的地图中查看2008-07-28-午夜,在北京坐公交车
  1. 北京南站站台 > 北京南站南广场公交站 > 北京南站公交站,40分钟,¥0.4
    23:06 火车到达北京南站
    23:25 到达北京南站南广场公交站
    23:30 坐上北京南站临线
    23:40 到达北京南站公交站

  2. 北京南站公交站 > 北京站东公交站,45分钟,¥0.4
    23:40 开始四处打听并寻找203夜班站牌
    23:50 终于找到站牌
    00:00 203夜班北京南站公交站准时发车
    00:25 203夜班到达北京站东公交站

  3. 北京站东公交站 > 海淀黄庄公交站,75分钟,¥0.4
    00:25 开始等待209夜班,其他人已经等了半小时
    00:40 209夜班北京站东公交站发车
    01:40 209夜班到达海淀黄庄公交站(中关村)

  4. 最后一小段Taxi,10分钟,¥10
    01:40 下车后黑Taxi立刻凑上前来,懒得再叫了
    01:50 Taxi到家

于是终于验证了火车上yy出来的“午夜之后消耗一定的时间,总能从北京的任何一个主要火车站以2元以下的代价晃荡到中关村”这个猜想。也见识了北京市政设施的神经质、以面子为本、以用户不友好为核心的设计理念。北京不愧为没有细节的城市,我来一段一段的骂吧:

1. 北京南站

下火车之后我花了20分钟才找到南站公交站——大部分人都是去出租车站的。我发现走错之后,反方向又走太远,走到了没有完工的北出口,然后只好又倒回来。更糟糕的是,由于车站大得出奇,从南到北再折回来这么两趟,20分钟就过去了。是的,没有路标和导向标志,里面仅存的两三个工作人员一问三不知。大伙都是两眼一抹黑跟着人群。北京南站,哎,真是北京“难”站。

南站果然是为了奥运会准备的奇葩。外表当然光鲜,靓丽程度超过国内大部分机场航站楼,足以应付上到胡主席、奥总统,下到居委张大妈、城管李队长的各批检查团。但检查团总是随风而来、随风而去,他们断断不会拿着行李亲身试试换乘通道是不是可以无障碍通行,所以面子好看就行了。至于好不“好用”,根本不在他们的视野之内。类似的还有北京机场T3航站楼,是啊,很大,建筑师们都赞叹说这个建筑太tm牛b太tm漂亮了。但是我背着背包用过一趟之后,就只能开骂:暴走了十几分钟还没走到行李转盘。我kao,搞这么大干嘛?

在国内用过的最好的火车站还是南京站。外观漂亮就不说了,换乘设计之贴心:出站检票口30米外马上就能换地铁;上了地面层,两侧都是公交站;送客层出租车直接就能开到检票口;出口、售票大厅、候车厅垂直投影全都在一个位置,走路最多5分钟。逻辑清晰,想把自己搞晕了都难。设计单位是法国AFEP事务所。南京车站大概是国内首次使用无站台柱雨棚结构的车站。后来新修的大站大多山寨了这个结构,但是没有一个搞到这么好的。北京,就别想了,人家要继续修创纪录的“大….”工程嘞。

2. 北京南站临线

我在火车上查到的夜班线信息说,可以从北京南站坐203夜班到北京站,然后209夜班到中关村,想来倒是很简单对吧。可是从-1层钻出来以后,203夜班那是无影无踪啊。照料电梯的保安同志解说了一下,哦,要坐203,必须先坐“临线”。这条线路的站牌上标着“北京南站 >> 北京南站公交站”,很莫名其妙对吧:我都到了北京南站南出口的公交站了,为啥还要再掏钱前往“北京南站公交站”呢?

原来此北京南站南出口的公交站,非彼“北京南站公交站”也。夜班203路还在3Km之外的那个“北京南站公交站”呢。回来之后google地图一看,哦,这个“北京南站公交站”,原来是紧靠几年之前老北京南站的站址。火车站已经平了,但是公交站的位置是岿然不动的。所以想坐203夜班,必须先坐“临线”,也就是“北京南站南广场公交站”和“北京南站公交站”之间的摆渡车。看官可以在地图最下方的火车图标旁边数次双击地图放大细节,这条公交线在三环的某桥上画联通标志,一圈一圈很可爱对吧?西直门百慕大的风情再现南城了呢!

其实这条公交线的存在本身就是个错误。北京南站和北京站之间的换乘客流,必须莫名其妙的在临线上折腾一圈然后换乘,白白浪费时间和金钱。203夜班为啥不直接在两个火车站之间对开呢?公交换乘设计为啥就这么白痴和官僚呢?这么豪华一个车站,怎么地铁和公交的入口搞得都像是在捉迷藏呢?为啥一个公交乘车指南也看不到呢?

答曰:这是帝都北京,任何人间奇迹都有可能发生。

3. 209夜班

这个车也相当奇葩,我算运气好了,只等了15分钟,旁边有去北京西站乘车的旅客,等了40分钟才到。话说这条线是北京站 – 北京西站 – 北京北站的shuttle bus,晚上下车的旅客很多,换乘的旅客也很多,按说班次应该很密才对是吧。而且客流相当不错,上车以后挤得好像早高峰。可人家才不管嘞,就是不开车,就是让你等。为啥这么混蛋呢?

答曰:贝京欢迎妮!

写完了,考据癖又上来了。于是对各个城市的公交夜宵线状况做了考据。考据的资料来源见下,考据结果如上图所示。果然,北京的公交夜班线状况还不如南京,不过至少比成都好得多。这和我对各城市直观上的生活便利程度基本可以对应起来。如此看来,夜宵线数目,颇可作为一个城市的“用户易用性”的一个另类的度量呢。

参考资料

hello Python world

2009年07月13日

最近在捣鼓Python(名词解释:英文版中文版)。语言简单了就是好,很快就能上手。按惯例新语言总要写个“hello world”祭刀,但是蟒蛇语言的“hello world”过于简单(就一句话:print ‘hello world’),所以总得整点什么有实用价值的来写着玩。

作下面这坨东西的需求是:我想让系统裸体快速启动,这样需要一个脚本把现在自动启动的所有进程都放进去——很像是bat干的事情。只可惜Windows的bat实在太弱,不仅是串行的,而且是阻塞的。只有某一行进程退出之后,才会运行下一行的进程。所以如果想同时启动两个以上进程,根本没戏。下面这段代码可以解决这个问题,一次启动一大堆,然后自己就滚蛋了。如果没心情往下看也没关系,猛击此处下载可执行程序,使用说明在readme.txt里面,拿去用就是。代码在python 2.5.2下编写通过,转换成windows下可独立运行的exe使用了py2exe这个扩展。

程序运行流程是:从命令行参数中读入一个文件名(L41~L44),打开这个文件(L22),将这个文件的每一行读出并取出“//”和”回车”之前的字符串头部(L27),然后把这段字符串作为命令行启动新进程(L15)——简而言之:替代系统的bat文件解释器,附带支持C++的行注释语法。里面有函数、类之类基本语法特性,好懂得很。实际上刚写完的时候只有十几行,全都在__main__里面。我为了玩一下函数调用和面向对象,故意把它拖得又臭又长。

mybat.py
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import subprocess # 井号开头表示注释
import sys # 这三个是加载的其他py文件,类似include。当前这个文件也能被其他py文件加载
import re

# 类定义
class mySubProcess(): # 所有的块级对象(class、def、if、for等等)都用冒号开始,用向后缩进表示包含关系!
    counter = 0 # 所谓的“类变量”,这个类的所有对象持有同一份

    def __init__(self, cmd_string = None): # 对象的构造器(constructor),self是当前对象,支持默认参数
        if cmd_string != None:
            self.cmd_string = cmd_string # 操作对象的私有变量self.cmd_string
            mySubProcess.counter += 1 # 操作类变量

    def run(self):
        subprocess.Popen(self.cmd_string)

    def printSummary(self):
        print 'processed num: %d' %mySubProcess.counter

# 函数定义
def processMybatFile(file_name):
    file_obj = open(file_name, 'r')
    try:
        linetail_pattern = re.compile('\s*\n.*|\s*//.*', re.S) # 正则表达式
        file_lines = file_obj.readlines()
        for line_str in file_lines:
            cmd_str = linetail_pattern.split(line_str.decode('gb2312'))[0].encode('gbk') # 转码
            if len(cmd_str) > 0:
                print '> ' + cmd_str
                a = mySubProcess(cmd_str) # 生成对象
                a.run() # 调用对象
    finally:
        file_obj.close()

    a = mySubProcess() # 使用默认参数生成对象
    a.printSummary()

# 程序入口
if __name__ == '__main__': # 这样写的话,这个块的内容就不会在当前文件被import的时候执行

    if len(sys.argv) == 2:
        cmdfile_name = sys.argv[1:][0]
    else:
        cmdfile_name = 'test.mybat'

    print 'load: ' + cmdfile_name
    processMybatFile(cmdfile_name) # 调用函数

语言本身,总的感觉是有点C++的味道。但是把C++里最晦涩的那坨都扔了。“类变量”比较有特点,用缩进表示block让人厥倒。另外没有变量定义,基本上是变量被赋值的时候决定它的类型,不小心的话,比较容易掉进陷阱。

这个语言很简单,半天时间绝对入门。用它来写写小东西很方便。推荐无聊geek们都来玩玩。


参考资料

Chrome OS?Google真能搞

2009年07月11日

本周最劲爆的业界新闻莫过于本周三(7月8日)Google公开了Google Chrome OS的项目计划(英文原版中文版):这款和M$ Windows在上网本市场直接竞争的轻量级操作系统产品将在今年年底开放源代码,预装Google Chrome OS的上网本将在明年下半年和消费者见面。新OS将基于Linux内核。Google方面宣称这款OS的卖点是:快(数秒内启动完毕)、安全(底层安全架构)、简单(不需要进行硬件配置,界面简洁),其中的大部分应用将基于浏览器(云计算、本地javascript、Flex大行其道)——听上去怎么有点像Ubuntu?

几个月之前,针对Chrome浏览器的野心,我曾经在某处论坛做过如下评价:

chrome(浏览器)根本就是google用来占领用户桌面的操作系统。google的理念是用浏览器搞定一切,所以他迫切需要一个够快的浏览器让他的桌面应用跑得和本地应用程序一样流畅。如果结合google gear的本地存储,能力就更强了(比如google docs的离线撰写)……说白了,google已经对microsoft在浏览器上不断搞小动作而不遵守W3C标准的猥琐行为忍无可忍了。所以可以说,chrome(浏览器)的竞争对手不是firefox也不是ie,而是Windows。这玩意儿就是拉Windows下马的,最终目的是一个让大家在多平台下(Windows / Mac / Linux / 手机)无差别使用google的服务

现在看来这个评价还是偏保守。Google已经不能满足在各个平台上用Google Gear小修小补。为了完善Android没有填满的产品线(Android更多面向手持设备,Chrome OS会跑在“更大”的机器上。微软的操作系统类似,也是一大一小两套产品线),Google终于决定沿着手机、移动上网设备(如MID)、上网本、笔记本、台式机、数字电视机顶盒等市场构成的的漫长战线,向M$发起面对面的全面进攻——而且可以说是以其人之道还治其人之身:十年前M$在操作系统里捆绑IE搞垮了Netscape,十年之后Chrome OS显然会以捆绑Chrome浏览器的方式直接向微软的最重要产品发起挑战。

Google和M$最近真是近身肉搏,6月3日M$推出Bing,把Google弄得很紧张;1个月之后Google宣称要和M$的核心业务展开直接竞争,不知道M$是否感受到了“盛夏的清凉”?水是越来越浑,好热闹。只要消费者买账,中关村的Lenovo们用免费的Chrome OS替换收费的Windows,上网本价格肯定大跌,于是M$也会被迫对Windows调价。反正最后肯定是消费者受益,就等着看好戏吧。

下图是一个挺搞笑的Google的营销链路手绘示意图,Google的小黑手已经染指了两条链路的粗体部分:

  • 信息链路:大脑 > 用户 > 浏览器 > 操作系统 > 电脑硬件 > ISP > 服务器 > Web应用 > 广告信息

  • 现金链路:用户 > 广告代理公司 > Google

传统上Google只在云里干活。现在它也不甘寂寞,离用户们越来越“近”越来越“亲密”了。不都是为了它的广告嘛!注意右下角气急败坏正在跺脚的M$ Monster,嘿嘿。这篇文章回顾了Google和M$之间的恩怨。WSJ记者Jessica E. Vascellaro和Don Clark撰稿。如能翻墙,值得看看。