トップ «前の日記(2011-11-23(Wed)) 最新 次の日記(2011-11-29(Tue))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2011-11-26(Sat) よく晴れてる。日向だけは暖かい

論理演算

ググったり打鍵したり。で、なんとか。
Gnu Smalltalk の 3.2.4 では、変数やクラスなどには マルチバイト文字が使えないっぽい。

st> s1 := Set new.
Set ()
st> s2 := Set new.
Set ()
st> s1 add: 'いぬ' ; add: 'さる'; add: 'きじ'.
'きじ'
st> s2 add: 'さる' ; add: 'ぶた'; add: 'かっぱ'.
'かっぱ'
st> s1.
Set ('きじ' 'いぬ' 'さる' )
st> s2.
Set ('かっぱ' 'ぶた' 'さる' )
 
st> s1 inspect.
An instance of Set
  tally: 3
  contents: [
    'きじ'
    'いぬ'
    'さる'
  ]
Set ('きじ' 'いぬ' 'さる' )

and はすぐわかった。
or, xor は "|" などを入れてもダメだったが、別段演算子が 必要なわけでもない。はずだ。

st> s1 & s2.
Set ('さる' )
st> s1 - ((s1 - s2) + (s2 - s1)).
Set ('さる' )
st> s1 + s2.
Set ('かっぱ' 'きじ' 'いぬ' 'ぶた' 'さる' )
st> (s1 - s2) + (s2 - s1).
Set ('かっぱ' 'きじ' 'いぬ' 'ぶた' )

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。