X



Smalltalk総合 Squeak Pharo
0260デフォルトの名無しさん
垢版 |
2015/02/14(土) 21:20:15.48ID:Z9ZmRxLI
>>251
> オブジェクトの全能性
たしかにC++のクラスが抽象データ型の延長なのに対して
Smalltalkではより能動性とか主体性を持たせようとしてますね

C++だとメモリ管理とかとあわせてクラスの管理をいろいろ
プログラマが抱え込まないといけないからストレスになる

Smalltalkはブラウザ関係もふくめて
メッセージングに任せられる部分が多いので
ストレスが軽減されていると感じます

C++(とVS)は多機能で高性能なんだけど
それだけプログラマの負担も大きくて
Smalltalkはそれよりさらに高性能というよりかは
使用者が使いやすい方向を目指してる感じ
0263デフォルトの名無しさん
垢版 |
2015/02/15(日) 15:56:50.97ID:6aDKSPw5
>>255
マイケルジャクソンの物真似
0264デフォルトの名無しさん
垢版 |
2015/02/16(月) 01:03:07.94ID:HauqtKo6
>>238
GNU Smalltalkだと定数の演算とかは糞真面目に計算せずに、
翻訳時にすませてるっぽいよ。
この辺も最適化の過程でMessage送信が必要かどうか判断してるんじゃない?

>>239
原則Message送信であってif文の構文糖じゃないからね。
最適化はあくまでもオマケ。
最適化し辛い構文があってもMessage送信の原則は守る必要があるんでしょ。
0265デフォルトの名無しさん
垢版 |
2015/02/16(月) 01:10:51.90ID:HauqtKo6
>>251
Squeak以外は使わないの?
VisualWorksとかPharoとかは、補完するSelectorを結構絞り込んでくれるから便利よ。
VisualWorksはCincom本社の海外サイトで個人情報入れなきゃなんないのが面倒だけど。
0267デフォルトの名無しさん
垢版 |
2015/02/16(月) 11:16:01.67ID:XP4TAyIw
>>264
> GNU Smalltalkだと定数の演算とかは糞真面目に計算せずに、
> 翻訳時にすませてるっぽいよ。

それは分かりましたが、それを踏まえてもなお

>> 237
> 自作ClassのObjectに対してはMessage送信省略しないお陰で、
> 数値計算に自作ClassのObjectをツッコむことができるんだよね。

が出てきた理由がまだよくわかりません。

なぜあえてこの例が必要だったのか(Squeak の話をしているときになぜあえて GNU Smalltalk か?
非リテラルオブジェクトではなくなぜあえて自作クラスなのか? さらになぜあえて nil を継承したのか?)、
それぞれによって、どんな理解が進むのかについて少々かみ砕いての解説をお願いできますか?
0269デフォルトの名無しさん
垢版 |
2015/02/17(火) 22:00:01.91ID:qlRtFPhT
>>267

1. SqueakではなくGNU Smalltalkを例に出した理由
 Squeak限定じゃなくSmalltalk一般の話かと思いまして
 処理系について意識してませんでした。すみません。

2. 数値計算の最適化を上げた理由
 Message送信が最適化で省略されない場合の利点を
 説明するつもりで書きました。
 #ifTrue:ifFalse:で有用な例を示さなかったのは
 すぐ有用な用途が浮かばなかったからです。

3. なぜ既存のClassではなく自作Classを例に使ったか
 最適化が適用されない既存のClassが
 思いつかなかったからです。
 SqueakやPharo基準で考えれば、
 自作じゃなくてもCollection系で良かったですね。
 レスを書いた時は思いつきませんでした。

4. なぜnilを継承したか
 Objectを継承すると、ObjectがMethodを実装しているMessageを
 #doesNotUnderstand:で委譲できなくなるためです。
 SqueakではProtoObjectを使いますが、
 GNU SmalltalkやVisualWorksではnilを使います。

5. 何について理解が深まるか
 最適化はオマケなので、最適化されるMessageだからと言って
 必ず最適化される訳ではないし、
 最適化によって自作ClassのObjectを渡すと
 動かなかったりするわけではない
 という事が理解いただければと考えています。
 
0270デフォルトの名無しさん
垢版 |
2015/02/17(火) 23:17:58.58ID:1fkLZx/i
>>269
なるほど、よくわかりました。
丁寧な説明をありがとうございます。

1. の早合点はさておき、
はじめから 5. のような簡易な説明を添えていただけていたなら
私ども読み手も視野を広げやすくなるので、今後もご助言を
いただけるのでしたら、ご一考いただければさいわいです。
0273デフォルトの名無しさん
垢版 |
2015/02/18(水) 00:28:25.04ID:UZdA10Ut
fileURLは使ったことあるけどまさかのhttpもstreamで取れるとは思わなかった
読み込めなかった時のSignalの扱いはわからんがちょっと考えてみるか・・

| aURL aStream aList aLine |

aURL := URL fromString:'http://anago.2ch.net/moeplus/'.
aStream := aURL readStream lineEndAuto. "withEncoding:#shiftjisは通らない"
aList := OrderedCollection new.

[ aStream atEnd] whileFalse:[ aLine := aStream upTo:(Character cr ).
aList add:( aLine asByteArray asStringEncoding:#shiftjis ) ].

aList inspect.
0274デフォルトの名無しさん
垢版 |
2015/02/18(水) 01:47:28.06ID:QTgMdBtY
GNU SmalltalkにSmalltalkのVM上で
Javaを動かすPackage、その名もJavaがあった。
.jarを読み込んでくれず.classを取り出さないとダメだったり、
Java7には対応してなかったりと微妙な出来だけど、
JavaのClassが完全にSmalltalkのClassとして取り込まれてる所が面白い。
他にも誰が使ったことある人いる?
0276デフォルトの名無しさん
垢版 |
2015/02/18(水) 09:22:33.83ID:wdCl3CCW
>>264
興味があって調べてみたのですが、GNU Smalltalk で定数同士演算(たとえば + 演算)で
メッセージ送信が省略されているのかが ideone.com の処理系では確認できませんでした。
「翻訳時」を「コンパイル時」、つまり「バイトコード変換時」と読み取ったのですが
バイトコードレベルで省略されているという話ではないのでしょうか?
メッセージ送信が省略されていることの確認の方法を教えていただければさいわいです。

UndefinedObject extend [
 plusLit [^3+4]
 plusNonLit [^3 + OrderedCollection new]
]

(UndefinedObject >> #plusLit) inspect printNl
"=>
[1] source code line number 2
[3] push 3
[5] push 4
send 1 args message #+
[7] return stack top "

(UndefinedObject >> #plusNonLit) inspect printNl
"=>
[1] source code line number 3
[3] push 3
[5] push Global Variable {Smalltalk.OrderedCollection}
[7] send 0 args message #new
[9] send 1 args message #+
[11] return stack top "

http://ideone.com/zWMggc
0278デフォルトの名無しさん
垢版 |
2015/02/18(水) 12:57:09.98ID:wdCl3CCW
>>277
ありがとうございます。

>>264 の「翻訳時にすませてる」を、3+4 を 7 にする!? と勘違いしていました。
#+ などは特殊なバイトコードを使用し、そうした特殊なバイトコードでは引数の組み合わせ次第で
レシーバー(この場合 3)へのメッセージ送信は行なわない、ということですね。

別件ですが、メソッドにコードされたプリミティブが #perfom: 等でコールされたときのためとは
知りませんでした。

そうすると、3 + 4 時は VM 内の + 関数で処理され、
3 + OrderedCollection new 時は + 〜 (バイトコード的には + )が 3 に送られて
そこでプリミティブ記述により改めて VM 内の + 関数がコールされ
それが失敗してフォールバックコード(たとえば ^super + aNumber)が実行される、
という理解で合っていますか?
0279デフォルトの名無しさん
垢版 |
2015/02/18(水) 18:55:49.75ID:wdCl3CCW
>>278
> 3 + 4 時は…

自己レスです。(Squeak で、かつ旧 VM でですが)どうなっているか調べてみたら、
VM 内でプリミティブとしてコールされる + 関数(Squeak の場合 primitiveAdd )と
バイトコード実行時にコールされる + 関数(同、bytecodePrimAdd )は別物なんですね。

通常は bytecodePrimAdd がコールされ、整数/整数とかでなければメッセージを送信、
#perform: などで呼んだ場合は primitiveAdd がコールされ、それが失敗すると
プリミティブに続いて記述してあるフォールバックコードが実行されるというカラクリでした。
0280デフォルトの名無しさん
垢版 |
2015/02/19(木) 11:17:57.25ID:H2Raaanq
似たようなことに興味を持つ人もいるかもしれないので参考まで。

http://askoh.com/mwiki/images/b/be/InterpreterSimulator.zip

>>279 を調べるときに使った Squeak の処理系です。
インタープリターシミュレーターが同梱されているので解凍、Squeak 3.9 仮想イメージ向けの VM を
用意して起動(Simulator.image の方)後、ワークスペースの式を評価することで動かせてお手軽です。

http://vm-dev.squeakfoundation.narkive.com/vxckeGXt/simulate-3-4-with-interpretersimulator

にもありますが、bytecodePrimAdd ではなく primitiveAdd のほうに self halt を仕掛けるのが
ミソのようです。(bytecodePrimAdd は当然ですがしょっちゅう呼ばれるので…)
0282デフォルトの名無しさん
垢版 |
2015/03/21(土) 21:33:43.04ID:UWDIX5zE
>>184
>SqueakだとWindowsの.exe作る方法もあったと思うけど
ちょっと前の話だけど
これをずっと探してて見つけられなかった

Visual Worksならできるっていうのは分かったけど
SqueakでWindowsの実行ファイル作る方法は見つけられなかった

いや実際にSqueakでexeを吐いてるけどって人いる?
Think different? by 2ch.net/bbspink.com
0283デフォルトの名無しさん
垢版 |
2015/03/21(土) 22:21:51.58ID:Xtizjndc
今Windowsの環境ないから確認できないけど
http://d.hatena.ne.jp/propella/20050925/p1
こことか、リンクのとことか。やったのだいぶ前だけど。
0284デフォルトの名無しさん
垢版 |
2015/03/21(土) 22:32:55.41ID:UWDIX5zE
>>283
できた! サンクス!

エントリ自体は前に見たことあるけど
ウゴモーフとか興味なかったから
流し読みしてしまって見落としてた
0285デフォルトの名無しさん
垢版 |
2015/03/21(土) 23:32:01.16ID:UWDIX5zE
exe化はできたけど
もうひとつやりたいことがあるんだ

リリースしたアプリをユーザがいじっておかしくしないように
ハローとか開発環境の部分を隠蔽することってできる?
0286283=184
垢版 |
2015/03/22(日) 01:37:55.28ID:VhQjMmyl
http://wiki.squeak.org/squeak/518
ここのcs.gzをDLして、解凍してできたcsをinstall。
Workspaceで
Preferences disableProgrammerFacilities
をdo it したら、警告ウィンドウ出るのでYes、保存する新しいimage名を指定。
保存したimageを起動すると、望みの動作になってるはず。
0287デフォルトの名無しさん
垢版 |
2015/03/22(日) 02:18:58.81ID:G0/vVT9E
>>286
おおすばらしい! ありがとう!

まだメニューが残ってたりするけど
これでだいぶ普通のアプリっぽくなった


できないと勝手に思いこんでたけど
同じところでつまづいた人多そう

Smalltalkそのものは大変すばらしいので
日本語情報さえあればもっと広まるのに
0288デフォルトの名無しさん
垢版 |
2015/03/22(日) 02:57:43.39ID:G0/vVT9E
ああ試してたらメニューバーも消せたわ
ワールドメニューがちょっと残るけど
ほとんど普通のアプリと変わらない
0289286
垢版 |
2015/03/22(日) 07:07:35.62ID:VhQjMmyl
>288
>ワールドメニューがちょっと残るけど
中ボタンで出るyellowButtonMenuのことかなぁ
PreferenceのSearch preferences forでgeneralizedYellowButtonMenuを検索して表示して
enableをオフにしたら出なくなるけど
0290デフォルトの名無しさん
垢版 |
2015/03/22(日) 08:47:01.02ID:G0/vVT9E
>>289
できた! 何度も世話を焼かせてしまってすまない

これでタイトルバーにねずみのアイコンがある以外は
普通のWinアプリと同じ何もないところまで来たんだけど……

だけどメニューバーも黄ボタンメニューも
ほかのワークスペースとかもなくした状態で
どうやってイメージ保存してexe書き出しすればいいんだろう?

なんか一休さんのびょうぶから虎を追い出せ
みたいなとんち状態になってきた
0291286
垢版 |
2015/03/22(日) 11:20:56.62ID:VhQjMmyl
>>290
>>これでタイトルバーにねずみのアイコンがある以外は
>>普通のWinアプリと同じ何もないところまで来たんだけど……
Preferenceの Show world main docking bar のenable のオフでバーごと非表示にならない?
Windows持ってないから状態わからないけど

最後のとんち状態は そうだね...解決策はありそうだけど
0292デフォルトの名無しさん
垢版 |
2015/03/22(日) 18:17:51.03ID:G0/vVT9E
>>291
>オフでバーごと非表示にならない?
ねずみアイコンが2つあって
メニューバーのほうはまるごと消せるけど
タイトルバーのほうは残る

それでデバッグ項目みたいのが残る
Winしか持ってないから
他OSとの違いは分からないが

でもライセンス的にMITだから
Squeakを使ってること自体は
どこかで教えないといけないので
これでもいいよ
0293183,282
垢版 |
2015/03/22(日) 18:21:50.40ID:G0/vVT9E
>>291
exe書き出しのとんちのほうは
アイディアが色々あるので試してみる

超初心者だから時間かかるだろうけど
他言語の経験はあるから
少しずつ調べながらやってみる

最後は自分で何とかしたいと思う
長々と付き合わせてしまって申し訳なかった
0294286
垢版 |
2015/03/22(日) 19:25:44.81ID:VhQjMmyl
>>293
こちらこそ久々にいろいろやってみて、いろんな機能を知って面白かった
0295デフォルトの名無しさん
垢版 |
2015/03/23(月) 05:44:59.29ID:9+S6Qh9p
>>256
>SqueakのCトランスレータが結構使える
一行レスだから見逃してしまってたけど
今スレ見返してたらすごい面白そう

VMの埋め込みとかで触れないのかと思ってた
普通にワークスペースから使えるものなの?

クラス名とか検索するための単語なにか教えて
0296デフォルトの名無しさん
垢版 |
2015/03/23(月) 22:16:08.94ID:9+S6Qh9p
>>295
レスが付かないから自分でザッと調べてみたけど

>>256
で言うCトランスレータというのは
Slangで書くVMプラグイン機構のことかな?
(それとも別の何かがあるなら誰か教えて欲しい)

プラグインはしばしば他言語でそうするように
DLLみたいなC/C++で書くものという先入観があったから
逆方向でトランスレータとしても使えるのは面白いと思った

ただCのソース単体で取り出して
他でコンパイルできるのかとか
まだ詳しく調べてないけど
0297デフォルトの名無しさん
垢版 |
2015/03/24(火) 20:05:29.21ID:cN0vYmrU
>>296
現実的にはslangは単純な整数とか整数の配列の計算くらいにしか使えない
行列とかベクトルの計算とか、その程度が限界

プラグインは普通にcで書くという先入観で正しいと思う
0298デフォルトの名無しさん
垢版 |
2015/03/24(火) 21:14:29.75ID:ZdrU8eOQ
>>297
あーそうなんだ、thx

Cと自由に行き来できたら便利だと思ったけど
計算で速度稼ぐとか、実用に耐える範囲は限定的か

まあ制約が多くても
使えるだけでありがたいけど
0299デフォルトの名無しさん
垢版 |
2015/07/02(木) 08:23:13.10ID:37HIrXjo
下記サイトにオブジェクトの定義が書かれています。

オブジェクト指向プログラミングとは何か?
http://eed3si9n.com/node/145

オブジェクトとは何か?

他のオブジェクトへの参照を保持し、事前にリストアップされたメッセージを受信することができ、
他のオブジェクトや自分自身にメッセージを送信することができるアトムで、他には何もしない。
メッセージは名前とオブジェクトへの参照のリストから構成される。

アトムの意味がよくわからないのですが、すみませんがご教示お願いします。
0300デフォルトの名無しさん
垢版 |
2015/07/02(木) 11:31:18.87ID:AO3svzPO
>>299
メッセージを事前にリストアップしないといけないとか、オブジェクトがアトムであるとかは
この人の思い込みや勝手な言い換えなので原文(をもう少しマシに訳したサイト)を
当たられることをお薦めします。

http://d.hatena.ne.jp/katzchang/20080807/p2

私が考えるOOPはメッセージング、状態処理のローカルでの保有・保護・隠蔽、
そして全ての物に対する強力な遅延束縛、これだけだ。これはSmalltalkとLISP
だけが実現できている。他のシステムでも可能かもしれないが、私は知らない。
0301デフォルトの名無しさん
垢版 |
2015/07/02(木) 14:19:08.77ID:gyn5Kcjz
>>299
たぶんアトムはLispの用語から取ってるんじゃないかな?

でも定義してる中で(一般には)未知の新用語を出すって
筋の良い定義じゃないよね

>>300の原文でも言ってないし

事前にリストアップってのも静的型付けの発想で
遅延束縛を重視するSmalltalkの発想から離れてる

アランケイのアイディアと混ぜないで
自分で一から言い直したほうが良い気はする
0302デフォルトの名無しさん
垢版 |
2015/07/03(金) 08:40:10.68ID:W3KOnD9Z
>>300-301
レス、ありがとうございます。

アラン・ケイによる正確なオブジェクト定義の提示ありがとうございます。
Lispのアトムを検索して、これ以上分解できない基本データだと理解しました。
0303デフォルトの名無しさん
垢版 |
2015/10/02(金) 11:30:24.22ID:njwjZuA3
>>302
そこで言ってるアトムは分解出来る機能の集合体なのだから
これ以上分解できない基本データではないな
単に個体とかでいいんじゃね
0304デフォルトの名無しさん
垢版 |
2015/10/02(金) 19:47:13.01ID:ADth776D
ぜんぜん関係ないけどおれアラン・ケイが来日したときサインもらった
いいだろう
0305デフォルトの名無しさん
垢版 |
2015/10/02(金) 22:04:37.04ID:q16UoAhR
ひさしぶりにスレが動いたから
オレもついでに言うけど

Smalltalkやってる人がもともと少ないんだけど
とくに日本でPharoやってる人ぜんぜんいないな

言語(処理系)は良さそうなんだけど
日本語情報が少なすぎてどうしようもない
0306デフォルトの名無しさん
垢版 |
2016/04/10(日) 02:03:06.43ID:WTOWAaLY
age
0308デフォルトの名無しさん
垢版 |
2016/04/20(水) 16:32:04.67ID:a8lJ1Bzf
>>240
Code Browser じゃあダメなん?
ttp://tibleiz.net/code-browser/
0309デフォルトの名無しさん
垢版 |
2016/04/20(水) 18:21:54.24ID:UfNx2Znx
>>308
おお〜サンクス! こういうのがあるんだ
代替になるか分からないけど触ってみる
0310デフォルトの名無しさん
垢版 |
2016/08/18(木) 11:53:48.53ID:E7RCG0CR
スタートアップ界の異端児!産業機器 x IT x SmalltalkのSORABITO株式会社
…人材採用のプロ・高野秀敏氏が厳選「いま最も旬なベンチャー」
https://news.thepedia.co/article/1068/

日本でクックパッドがRubyを広めたように、日本も海外も含めて「SmalltalkといえばSORABITO」となるとおもしろい
0311デフォルトの名無しさん
垢版 |
2016/08/19(金) 08:00:44.26ID:aUETciWG
>>310
>Smalltalkの場合は最も覚えることが少ない言語
言語仕様だけならそうだけど
ライブラリまで含めたら
最も覚えることが多い言語になりそうだけどなー

まあプロトタイプはSmalltalkで
ライブラリ必要な部分はRuby
って分担ならわりと妥当だと思うけど
0313デフォルトの名無しさん
垢版 |
2016/08/21(日) 08:33:13.32ID:itlBfDe6
Sakuraエディタでコード書いてPharoのファイルブラウザから読み込ませてたんだけど、直接書けるって教えてくれよ
0314デフォルトの名無しさん
垢版 |
2016/08/21(日) 10:15:04.20ID:ggpv6L0L
>>313
ああ、そうですよね。すみません。
とりあえず、Pharo by Example でも読んで考え方に慣れてください。
https://ci.inria.fr/pharo-contribution/view/Books/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/UpdatedPharoByExample.pdf

英語がちょっと苦手という向きには古いPharo1.1向けですが有志による日本語版もあります。
http://www.smalltalk-users.jp/Home/docs

対応する処理系はこちらから入手可能です。
http://pharobyexample.org/image/PBE-OneClick-1.1.app.zip

展開するだけでインストール可能なはずです(pharo.exeで起動)。

でも慣れたエディタがあるなら、まずはそこからコピペというのもそう悪くないやり方だと個人的には思います。
Smalltalkの組み込みのエディタ機能はおいおい学んで、気に入ればカスタマイズも含めて使えばよいので。
0317デフォルトの名無しさん
垢版 |
2016/08/28(日) 02:31:34.26ID:PB1bnZje
MacでSqueak5.1の右上にある検索使うとvmが落ちてしまう
0318デフォルトの名無しさん
垢版 |
2016/08/28(日) 20:33:20.07ID:zcu6Rkdc
Squeak5.1、日本語フォントの設定ができん!
0319デフォルトの名無しさん
垢版 |
2016/08/28(日) 21:59:54.11ID:wqvuI2DW
>>318
Apps → Font Importer → 日本語フォントを右クリック → Link Font → Close
これでリンクしたフォントが appearance... → system fonts... 等のフォント選択の一覧に現われない?
0321318
垢版 |
2016/09/01(木) 17:17:29.87ID:u9gr6W2c
>>320
MacでOsakaフォントをLinkしようとしたら、
クリックした瞬間にいくつかMorphが壊れて
Emergency Evaluatorが出てきたよ…
0324デフォルトの名無しさん
垢版 |
2016/09/03(土) 14:57:33.27ID:/kP4iCQF
舌足らずか、自由自在のPDF落としたんですが、Squeak最新のバージョンで
本の内容を同じように試すことは出来ますか?だいぶ違ってます?
0327デフォルトの名無しさん
垢版 |
2016/09/03(土) 18:32:59.01ID:87bD/C1F
Smalltalkは変わったツールや習慣、考え方がよく出てくるのですが
無理に通常の言語での習慣や考え方に翻訳して咀嚼しようとすると
(やればできなくもないですが、いろいろ無理を生じますし)
学習コストが無駄にかかるわりに、誤った結論に達しがちなので
疑問なことは自力解決にこだわらずにどんどん訊いてください。
0329デフォルトの名無しさん
垢版 |
2016/09/18(日) 11:22:38.12ID:LHERV0LA
第92回Smalltalk勉強会
http://www.smalltalk-users.jp/Home/gao-zhi/dai92kaismalltalkbenkyoukai

9月のSmalltalk勉強会の日程が決まりました。下記の要領で行います。

日時: 2016/9/23(金) 19:00-21:00 (2時間程度)

場所: SORABITO株式会社 東京都中央区日本橋茅場町1丁目9番2号 第一稲村ビル8階

今回は8/22-26にかけてチェコで行われたESUG 2016の報告会です。

ViennaTalkを引き連れ日本から参加されたSRAの小田(@tomooda)さんによるお話です。

Smalltalkのカンファレンスの中では最も歴史があり、かつ盛り上がるのがESUGです。
最新のSmalltalk動向に触れる良い機会でしょう。
0333デフォルトの名無しさん
垢版 |
2016/09/21(水) 14:38:41.20ID:7yARBfoR
Squeak/Pharo系のアプリは全滅か?
0334デフォルトの名無しさん
垢版 |
2016/09/21(水) 20:37:30.04ID:GpzxBfpM
>>332
それじゃないな。クリーンインストールしたほうがいいのかも。画面真っ白で何もできない
0336デフォルトの名無しさん
垢版 |
2016/09/23(金) 18:09:02.45ID:cQNYWAur
64bitのイメージと最新vmでならsierraで動いた
32bitのやつは動いたけどすぐ落ちて使えなかった
0340デフォルトの名無しさん
垢版 |
2016/10/28(金) 10:05:37.68ID:zLimfAXR
Simulating a Xerox Alto with the ContrAlto simulator: games and Smalltalk
http://www.righto.com/2016/10/simulating-xerox-alto-with-contralto.html

To start up Smalltalk,
download st80.dsk. Load the disk image into ContrAlto, reset, and then run "resume small.boot".
(A second Smalltalk disk is xmsmall.zip; "resume xmsmall.boot" starts Smalltalk from this disk.)

https://github.com/livingcomputermuseum/ContrAlto/tree/master/Contralto
ContrAlto will run on any Windows PC running Windows Vista or later, with version
4.5.3 or later of the .NET Framework installed.
0344デフォルトの名無しさん
垢版 |
2017/03/09(木) 12:58:33.85ID:3bYiHHP6
pharo5でprintItを調べたくてRubSmalltalkEditorとSmalltalkEditorのprintItにself haltを書き込んで
書き込んで、ワークスペースでprintItしてもデバッガーが起動しないんだけどなんでだろ?
そもそもhalt書き込んでる場所が間違ってるんかな
0345デフォルトの名無しさん
垢版 |
2017/03/09(木) 14:10:36.65ID:BFR+GBdm
手元のイメージではWorkspaceのprintItはRubSmalltalkEditorのprintItにhaltで止まるが。
実はPlayground?
034729
垢版 |
2017/03/12(日) 00:43:54.04ID:AHF9JHq9
lisp系言語の「純lisp」に相当するような、
チューリング等価な最小のsmalltalk命令セットって
どのようなものなのでしょうか?
0348デフォルトの名無しさん
垢版 |
2017/03/12(日) 07:17:32.17ID:vU9+ZemV
そういうときってバイトコードインタープリターではなく
本当に純粋にSmalltalk式の評価系を考えるのでしょうか?
034929
垢版 |
2017/03/12(日) 14:27:30.98ID:pYc0weDt
あ、そっちの線は考えていませんでした。
smalltalkが実際にどう実装されてるかは抜きにして、
最小限、どの命令(?)があれば、
チューリング等価な計算力を持つかという、意味でした。
0350デフォルトの名無しさん
垢版 |
2017/03/12(日) 15:40:58.27ID:eGKUfyZ5
クラスで言えばIntegerとBooleanとBlockClosureがあれば、
逐次、繰り返し、条件分岐ができるけど、
全くSmalltalkらしくない悪寒
0351デフォルトの名無しさん
垢版 |
2017/03/19(日) 08:53:42.65ID:SqiEvO7U
今時なウェブ開発をSmalltalkでやってみる | 第98回Smalltalk勉強会
https://smalltalk.connpass.com/event/53492/

「Smalltalkってまだ生きているの?」とそんな悲しいことを
質問されたりするので、Pharo Smalltalkで今時なウェブ開発をする
方法について話します。 ESUG 2015で入賞したPharoJSや
Enterprise Pharo本に掲載されているライブラリなどPharo Smalltalk
でウェブ開発をする方法を話したいと思います。
時間があればSeaside等の伝統的な開発方法も紹介します。

日時
2017/3/31(金) 19:00-21:00

場所
SORABITO株式会社 東京都中央区日本橋茅場町1丁目9番2号 第一稲村ビル8階
0352デフォルトの名無しさん
垢版 |
2017/04/01(土) 10:32:11.46ID:T6xyxJc4
開発者に嫌われているプログラミング言語トップ25 | マイナビニュース
http://news.mynavi.jp/news/2017/03/30/133/

fossBytesに3月28日(米国時間)に掲載された記事
「Which Are The Most Loved and Most Hated Programming Languages|2017」が、
Stack Overflow Developer Survey 2017の調査結果を引き合いに出し、
開発者に愛されているプログラミング言語と嫌われているプログラミング言語の
トップ25を伝えた。愛されているプログラミング言語1位はRustで、
これにSmalltalkとTypescript、Swift、Goが続いている。
0353デフォルトの名無しさん
垢版 |
2017/04/01(土) 16:51:02.24ID:eZPxn7hQ
>>352
そこで挙がっている言語は普及しているから
無理やり使わされる(から嫌い)という要因が大きそう

一方Smalltalkは好きな奴しか残っていないイメージ
0355デフォルトの名無しさん
垢版 |
2017/04/02(日) 12:04:02.82ID:j7pqXAos
嫌いと公言できるほど使いこなせないからかな

もっともちょっと使えるようになったからって
知ったかでこういうFUDはやめてほしい
https://medium.com/@zerobase/プログラミング言語の選択とソフトウェア企業の競争優位性に関する本当のところ-smalltalk-clojure-lisp-7378602ac468
Smalltalker の給料が一見高く見えますが、そうではなくて、
このグラフが示してるのはSmalltalkerの高齢化です。
いっときSmalltalkをやっていた、ぼくの実感にも合います。

だいたいコイツ「やっていた」とか言ってても、あれがないこれがないって文句ばっかりで
何かを生み出す気ゼロ。調査だけで終わってろくすっぽ使えてないだろ…
おめーなんかより若い人のほうがよっぽどパワーを引き出しているよ
0356デフォルトの名無しさん
垢版 |
2017/04/02(日) 17:42:09.19ID:U8kt+FV8
Lispは嫌いだけどやってる
最近関数型が偉いみたいな風潮あるから
それ自体も嘘だと思ってるけど
レスを投稿する


ニューススポーツなんでも実況