What have you found for these years?

2008-01-15

又在 cp 來 cp 去

我還 mv 勒
人云亦云到這種程度,我也不知道該說什麼了
不要讓我聽到這些字眼:「cp、宅、olg、...還有些啥一時想不起來」

今天(昨天)大有狂態、焦躁
後期則是咳嗽不已,肚子很撐
是沒什麼因果關係,只是提提

ruby 社群的東西都更新很快,大概會有人吃不消吧,
不過對我來說則是每天都有新鮮事,這樣很好
反之 C++ 步調就實在非常慢,C++ standard committee 大概都很保守吧?
但這可不是說他很弱,而是他嚴謹到一點小細節都不放過

comp.lang.c++.moderated 很久沒看了,我只能說那裡博大精深
c++ 練了這幾年,那邊的東西倒還不見得看得懂 50%
comp.lang.ruby 剛去覺得大概只能看懂 10%, 現在可能超過 90% 吧
要練得精深,其實還是 c++ 東西多得多,困難得多

haskell 就完全是另外一回事了...(默)

well, 我是要說所以 ruby 需要良好的版本控制,以免版本失控
rubygems 提供了個不錯的方法

godfat ~> sudo gem install rubygems-update -v=0.95

灌回舊版...

godfat ~> gem list rubygems-update

*** LOCAL GEMS ***

rubygems-update (1.0.1, 0.9.5)

如何使用呢?

require 'rubygems'
gem 'rubygems-update', '0.9.5'

事實上,這樣只是做版本檢查(大概吧?)

load 'rubygems.rb'

執行這行才把原本的 1.0.1 洗掉成 0.9.5,
接著 rails 1.1.6 確實可以跑了。

其實也不用這樣,把 require_gem 改成 gem,
然後下面再補上一些 require 也可。
gem 'rails', '1.1.6'
require 'active_support'
require 'action_pack'
require 'active_record'

所以看來 require_gem 底下是有一些神奇的 magic,
而 gem 只是單純做版本檢查,然後在下次 require 時幫你選剛剛指定的版本。

我在猜,require_gem 可能會把那個 gem 整個吃起來吧?
所以把 require_gem 單單改成 gem, 會導致很多東西沒 require 到。
這樣很好,gem 單純做版本檢查與控制,比較清楚,不會造成混亂。

fish 很好用,不過還是有不少缺陷。
1. tab completion 有時候實在慢到想殺人
2. tab completion 的 candidates, 有時候有點莫名其妙
3. tab completion 有時候會跳出一堆很煩的訊息
4. command 斷行讓人複製困難

好用之處:
1. tab completion 很強,sub-command, option, 都能 complete
2. 顏色標示太棒了,不存在是紅色,存在是綠色,檔案存在有底線,etc.
3. function 的作法感覺比 bash 更有 programming 味(?存疑)
4. 更明確的 *, (), 等等替換字元
5. 上下的 history 聰明多了,有 last match, 也有吃掉重複的 history
6. 族繁不及備載

我知道我知道,這些 bash 真的要做的話肯定做得到,但我就是不會
反正預設值越好用就越好就對了。有些神經病... 唉。

呃,最近真是語無倫次。不過我想 ruby 確實很快就會碰到名稱衝突的問題。
嗯,但又或許不會那麼嚴重,因為 open source 界是修羅啊,強者併吞弱者,
名稱衝突,弱者是勢必要改名的...。或是該說,眾人會逐漸遺忘原本的名字...

所以當我看到有人提出這種 namespace 的用法時,確實讓我非常冀盼這種功能。
class C; end

namespace :ns1 do
  class C; def greet; puts 'hello'; end; end
end

namespace :ns2 do
  class C; def greet; puts 'hi'; end; end
end

using :ns1
C.new.greet # hello

using :ns2
C.new.greet # hi

...原文好像不是這樣 XD
不過如果是這樣的話,我倒是知道該怎麼實作了...
記得原文的是看了覺得無法以 library 的方式實作,
大概也因此記不起來,想成能用 lib 的做法了。

另外 Ludy::defun 還有不少可修改之處。可玩的東西還很多(廢話)
namespace 的部份,我還要再想想看該怎麼做比較好

8 retries:

jaiyalas said...

cp是甚麼?洗屁?

Lin Jen-Shin (godfat) said...

man cp # XD

Plumm said...

cp 不就是 copy 的意思?? 還有別的??

上一篇打到一半 :QQ

說到 RTS 界近年來衰退, 一些蠻有趣的如 UAW, Rise of Legend 都賣不好, 最近除了上一篇寫到的 Warhammer 40k : Soulstorm 之外, 其實我最近還試了另外一個 RTS, Sun Age. Sun Age, 在這時代還敢出 2D 即時戰略也算不容易的了, 這遊戲雖然想走星海的三族不同, 但是其差異比不上星海, 更不用說像 UAW 這個我覺得三族差異超過星海的遊戲了, 而它的背景, 則是類似 Fallout 式, 人類, 變種人, 和機器族的爭戰. 遊戲模式簡略了一點, 單人劇情之外, 就是多人連線了, 它沒有中央 Server, 還是用 TCP/IP 自己開 Host 給別人連的. 雖然我想再進一步介紹, 不過篇幅有限, 所以細部就不多說了.

再來是最近期待的大亂鬥 X, 竟然又延期了 >.< 真是令人難過, 延到 1 月 31 日了, 雖然差了一個星期...不過還是希望早一點能拿到這個名作.

Lin Jen-Shin (godfat) said...

台灣人最愛的 cost/performance

Sun Age? 仿星海的遊戲滿好奇的,因為其實要改善星海並不是說很容易,恰好 Fallout 的背景我也滿有興趣。

大亂鬥 X, 哪個平台?

Plumm said...

cost/performance 會有一個 / 號 @.@

大亂鬥是 Wii 版的...Fami 通拿到滿分
http://www.enregistrersous.com/images2/143164493620080116062617.jpg

附上遊戲介紹影片:
http://gonintendo.com/?p=33415

Sun Age 下次再介紹 @.@

Lin Jen-Shin (godfat) said...

有人會省略,我也不想講那麼白

噢,大亂鬥我一個也沒玩過,真想玩玩看

jaiyalas said...

我也印象中是看到的是 c/p值 這樣的說法
雖說第一眼看到就大概猜出是甚麼意思
但是覺得沒有去探討的必要
就像那個甚麼OLG一樣,感覺意義不大
與其叫我說c/p值很高
我寧願說"賺翻了!!"(請自行加上我慣用的語氣)
簡潔+俗又有力


你說cp我就只想到copy了呀 XD

Lin Jen-Shin (godfat) said...

重點是越高表示 cost 越高 / performance 越低。對,OLG 應該也加上那個列表。

Post a Comment

Note: Only a member of this blog may post a comment.



All texts are licensed under CC Attribution 3.0