トップページ⇒tech
60コメント17KB

SMALLTALKで煮沸機をデザイン

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2009/08/29(土) 16:28:15
教えて下さい
000212009/08/29(土) 18:06:18
すいません、自決しました
0003デフォルトの名無しさん2009/08/29(土) 20:41:56
合掌
0004デフォルトの名無しさん2009/08/29(土) 22:09:14
ここからRuby対Smalltalkスレ
0005デフォルトの名無しさん2009/08/29(土) 22:28:15
なぜイメージベースばかりもてはやされるのか
ファイルベースのほうがどう考えても使いやすいだろ
0006デフォルトの名無しさん2009/08/30(日) 01:30:38
こういうことが普通に出来るならファイルベースでもいい(反語的に)。

http://sites.google.com/a/smalltalk-users.jp/home/Home/gao-zhi/dai12kaismalltalkbenkyoukai
もともとSmalltalkは強力な永続化機能を持つ
- イメージファイル
 - 生きたオブジェクトを「スナップショット」できる
  - プロセスやGUIもまとめて保存
  - デバッガが起動した途中で保存して、後で再開など普通に行う
0007デフォルトの名無しさん2009/08/30(日) 02:46:16
イラネ

永続化したいときってオブジェクトそのものをするんじゃなくて
データをしたいんじゃん。で、環境を変えて復活させたいんだし。
環境そのものを永続化しても何の意味もないことなんで気付かないかな。
0008名無しさん@そうだ選挙に行こう2009/08/30(日) 03:57:06
まあ君にとっては意味がないかもしれないな。
0009名無しさん@そうだ選挙に行こう2009/08/30(日) 11:45:45
けっきょく自分の未体験の使い方は想像できない。いわんやそのメリットを理解することをや。
0010名無しさん@そうだ選挙に行こう2009/08/30(日) 13:27:51
この場合はメリットもデメリットもはっきりしているから
所謂「ふわふわしたおまけ」とは違うと思うよ。
0011名無しさん@そうだ選挙に行こう2009/08/30(日) 14:26:12
しかし、このプログラマ氏が反対の方向に目を転じた時、彼は自分が見上げているのだということ
に気付かないのだ。彼が目にするのは、変てこりんな言語ばかり。多分、それらは「ほげ」と同じ
くらいパワフルなんだろうけど、どういうわけかふわふわしたおまけがいろいろついているんだ、と思うだろう。
彼にとっては「ほげ」で十分なのだ。何故なら彼は「ほげ」で考えているから。
0012名無しさん@そうだ選挙に行こう2009/08/30(日) 14:36:23
メリットもデメリットも立ち位置で変わるから、やっぱり想定外のことの要不要は論じられないだろう。
0013デフォルトの名無しさん2009/08/30(日) 22:44:17
具体例を上げずにぐだぐだ言っても意味がない。

イメージベースがそんなにすごいなら、多くの言語がイメージベースに
なってるはずだけど現実にはほとんどない。
つまり、学者のおもちゃとしては面白いけど、実際の問題には役立たずということです。
0014デフォルトの名無しさん2009/08/30(日) 22:52:24
Smalltalk だからイメージファイルにしなきゃいけない
という事も無いんでしょ。GNU Smalltalk とかは
イメージファイルじゃなかった気がする。
0015デフォルトの名無しさん2009/08/30(日) 23:58:20
イメージベースがいいのは分かっているけれど、それとは相性が悪いUNIX的なものも捨てがたいっていうだけだろ。
0016デフォルトの名無しさん2009/08/31(月) 00:14:27
UNIXも最近は仮想マシンソフトを介した運用でイメージファイルを使うことが一般的になってきたよね。
Windowsは休止状態でずいぶん前から使っているし。
0017デフォルトの名無しさん2009/08/31(月) 00:51:40
OSの仮想化には再起動という概念があるからかなり違う。
イメージファイルが常に良い訳ではない。
0018デフォルトの名無しさん2009/08/31(月) 01:11:16
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
0019デフォルトの名無しさん2009/08/31(月) 09:15:23
Smalltalkもある種OSの仮想化なんだがJK
OSとして目指すところがUNIX的でないというだけで。
0020デフォルトの名無しさん2009/08/31(月) 09:24:57
そんな機能はいらない。

UNIX的というかファイルベースの環境のほうが圧倒的に多いんだし
OS的なものを作られるよりもネイティブに密接してるファイルベースの方が
圧倒的に便利。
0021デフォルトの名無しさん2009/08/31(月) 10:52:28
このせいもあって、計算機の言語を狭い意味でとらえる人にSmalltalkの特徴を説明するのは難しい。
0022デフォルトの名無しさん2009/08/31(月) 19:36:43
>>19
>Smalltalkもある種OSの仮想化なんだが

出自はそうだとしても、現存するOSに比べると貧弱過ぎる。
プロセスとかファイルとか権限とかで構造化されてないと、
まともに管理も出来ないでしょ。
作った本人も再現出来ない秘伝のソースじゃ困りますぜ。
0023デフォルトの名無しさん2009/08/31(月) 19:58:54
使い込んだ自分のHDDのファイル構成を再現できるほど構造化されたOSが
世の中にどのくらいあるのかと小一時間。
0024デフォルトの名無しさん2009/08/31(月) 20:13:25
そんな底辺の戦いじゃなくてさ…
0025デフォルトの名無しさん2009/08/31(月) 21:13:15
まあ、言っても'70年代においてすら暫定的実装だったものを、そのまま引っ張っているわけだからねー
戦いにもならんだろ。
0026デフォルトの名無しさん2009/08/31(月) 21:55:10
70年代のUNIXだってSmalltalkほど酷くはない
0027デフォルトの名無しさん2009/09/10(木) 19:14:32
Objective-C もBlockが付いてだんだんSmalltalkらしくなってきたね。
0028デフォルトの名無しさん2009/09/10(木) 19:55:45
Objective-C がというよりは C がという感じだけどね。
0029デフォルトの名無しさん2009/09/10(木) 20:22:22
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
0030デフォルトの名無しさん2009/09/10(木) 21:13:20
Blocks はクロージャを返す演算子に ^ を使うセンスに感心した
やっぱりそういう所も繋がってるんだよな
0031デフォルトの名無しさん2009/09/10(木) 23:50:52
それは違う。λ→Λ→^ の連想だ。
Rubyの->がλを押しつぶしたものとして読ませるのと同じセンス。
0032デフォルトの名無しさん2009/09/11(金) 00:12:44
にゃるへそ。Haskell の ¥ と一緒の感じか。
0033デフォルトの名無しさん2009/09/12(土) 00:17:41
そういうこと。Smalltalkのセンスなら{|}を使うだろjk
0034デフォルトの名無しさん2009/09/12(土) 16:58:43
{|}

\{o}/ くぱぁ・・・
0035デフォルトの名無しさん2009/12/12(土) 23:31:49
>>31
ラムダ式は元々ハット記号(正確には文字の上の^)。
文字の上にあるものを横並びにしようとした時に
^→Λ→λという連想があった。

といいつつ、Smalltalkがそこまで知っててやったのかどうかは知らん。
0036デフォルトの名無しさん2009/12/13(日) 11:36:22
前半は31が言わんとしているところまんまだし、後半のSmalltalkの^はλとは関係ない
(そもそもSmalltalk環境でのグリフは↑だった)勘違いだし、亀だし、いいとこないな。
0037デフォルトの名無しさん2010/04/16(金) 10:06:27
Pharo1.0リリースおめ。
0038デフォルトの名無しさん2010/04/20(火) 20:54:36
isqueakがiPhoneで動いた
感動
0039デフォルトの名無しさん2010/12/31(金) 00:34:48
ダイナブックの構想のまんまだよね
タブレットPCでSmalltalkを動かす環境できないかな
0040デフォルトの名無しさん2011/03/03(木) 23:04:04.72
関数型言語の流行らなさと、オブジェクト指向言語のくせに流行らないSmalltalkには
何か共通点があると思う
0041デフォルトの名無しさん2011/03/03(木) 23:32:06.39
Smalltalk が流行らないのは、Syntax が独特すぎるとか、クラスやメソッドの名前が
取っ付きにくいとか、単純に遅いとか、イメージが使い辛いとか、GUI が野暮ったいとか、
ハッカー的文化に乏しくて Smalltalk をハックする人が少ないとか、便利なライブラリが
無いとか、処理系毎の際が大きすぎるとか、色々あると思う。

関数型言語は学問的すぎるのが流行らない理由だと思う。破壊的代入禁止とか、
普通のプログラマにとっては罰ゲームでしかない。
0042デフォルトの名無しさん2011/03/27(日) 04:04:07.08
昔VisualWorksを使ったことがあるが、用意されているドキュメントが糞だった。
これでは利用人口の増加も望めないし、使うことのメリットをまったく感じなかった。

当時の某氏が、マニュアルを読んでは駄目だクラスを個々に解析すべき、と言って
いるとか聞いたときは、ふざけるなそんなもの使ってられるか、と思った。
0043デフォルトの名無しさん2011/03/27(日) 08:58:11.11
>>40
どっちも学習には適してるけど、実用には不向きと言うか。。。

どっちも、プログラミングの学習には向いてるんだよ
良い入門書も出てるし
0044デフォルトの名無しさん2011/03/27(日) 09:13:16.51
>>42
日本じゃまともな入門書がsqueak自由自在しかないので、squeakでsmalltalk入門
終わったら、visualWorksかな
入門さえ終われば、本は要らないのがsmalltalkの良い所

smalltalkの事は、smalltalkに聞くのが一番

関数型言語は、プログラミングに拡張した数学
副作用が無いほど、動かす前から、動く事が保証される
(変な書き方だけど、有る意味それが関数型言語の利点)
0045デフォルトの名無しさん2011/06/18(土) 11:48:13.81
>>41
>GUI が野暮ったいとか、
...
>便利なライブラリが 無い
このへんはAPPLEがObjective-Cを辞めて、Smalltalkに移行すれば解決かな。
 Objective-CみたいにCの中にSmalltalkを埋め込むのではなくて、Smalltalk/X
みたいに、Smalltalkの中にCを埋め込めるようにする。

 クローズになるので、ソースブラウズできる利点はうしなわれるけど。
0046天使 ◆uL5esZLBSE 2011/07/02(土) 14:33:25.13
二度と話かけんなよ
0047天使 ◆uL5esZLBSE 2011/07/04(月) 10:37:22.72
でもお前はゴミなのにねw



ゴミは何いってもゴミ(笑)
0048デフォルトの名無しさん2011/10/20(木) 00:02:09.70
ところて、amber(jtalk)で遊んでる人いない?
0049デフォルトの名無しさん2011/11/19(土) 04:28:07.88
ここもいちおうSmalltalkスレか。w
0050デフォルトの名無しさん2011/11/20(日) 03:01:10.00
PharoかわいいよPharo。
0051デフォルトの名無しさん2011/11/22(火) 12:58:45.06
へえ
0052デフォルトの名無しさん2011/11/22(火) 17:48:18.81
PharoのGUIってマックの真似という感じがするし、以前のもの
みたいな野暮ったさは無くなったよ。
0053デフォルトの名無しさん2011/11/23(水) 23:39:05.30
ていうかSmalltalkとついてるスレはここだけw
0054デフォルトの名無しさん2011/11/23(水) 23:57:03.10
じゃあSmalltalkスレっぽくこういうのも貼っておく。

同じ誕生日の人が二人以上いる確率Pが1/2以上になる人数mを求める
http://okwave.jp/qa/q7144108.html

| P | ((1 to: 365) detect: [:m | (P := 1.0 - (365 - (0 to: m-1) / 365 reduce: #*)) > 0.5]) -> P

Squeak だけど #reduce: を使っているので要 4.2 以降。
0055デフォルトの名無しさん2011/11/24(木) 10:03:49.13
mm:ssという文字列を秒に変換する
http://hibari.2ch.net/test/read.cgi/tech/1317790320/835

('00:', '14:53') asTime asSeconds "=> 893 "

やっぱりこの手の節操の無さでは Squeak か。VisualWorks だと

(Time readFromString: ('00:', '14:53')) asSeconds "=> 893 "

でしょうか。
0056デフォルトの名無しさん2011/11/24(木) 12:34:14.52
>>41
haskellは面倒だからな。だけど、
http://ocaml.jp/%E7%A0%B4%E5%A3%8A%E7%9A%84%E4%BB%A3%E5%85%A5
を見れば分かるように、純粋型じゃなければ、問題なくできる。schemeやlisp
も同じ。

smalltalkもそうだけど、おっしゃるように、CやPascalの子供たちに比べると
違う世界になりすぎて、ついてこれないという事が起きてるんだと思うよ。
リファクタリングで有名な、ファウラーってwikiでみたらsmalltalkerだって
書いてたくらいだし、smalltalkをやってる人が案外背後でこの世界を引っ張っ
てるかもね。それは、lisperやMLerも同じか。
0057デフォルトの名無しさん2011/11/24(木) 12:37:19.41
smalltalkに引きこむとしたら、ルビー屋さんたちにさわらせるのも
いいかもしれないね。他の言語習得者よりsmalltalkに近い部分を持ってるからね。
0058デフォルトの名無しさん2011/11/24(木) 20:26:42.03
やっぱobj cじゃない
つなぎの部分がきたないけど
0059デフォルトの名無しさん2011/11/24(木) 22:10:28.32
Objective-Cって、「Smalltalkラブなジョブズが作ったからSmalltalkっぽい」と聞いたんだが本当だろうか?
0060デフォルトの名無しさん2011/11/24(木) 22:58:15.28
Objective-CがSmalltalkに似ていること自体はジョブズとは関係ないですね。
http://dl.acm.org/citation.cfm?id=948095

ただ、Smalltalkに似たObjective-Cを買い取ったのには少なからず関係があるかもしれません。
実際、NeXTSTEPは彼が1979年にアラン・ケイらの暫定ダイナブックOSとしてのSmalltalk
http://classes.soe.ucsc.edu/cmps112/Spring03/readings/st76figure3.gif
を観たときにGUIだけに目を奪われて、忘れてしまっていたオブジェクト指向(おそらくはケイのOO。
メッセージングを介した動的性)とネットワーク(これはSmalltalkというよりはAltoの機能)を改めて
取り込んで作った製品であると後にジョブズ自身が語っています。

http://americanhistory.si.edu/collections/comphist/sj1.html#soft
■ このスレッドは過去ログ倉庫に格納されています