Io Language ..
[2ch|▼Menu]
38:デフォルトの名無しさん
08/02/09 08:08:10
> つーか何が特徴なの?って物ばっかりだなこの手のは

それは、あなたがバカなだけ

> ++にしてもただの欠陥だし

それは正しい

> 無理矢理処理系の裏技使って解決しました!
> ってまるっきりバカに見える

スマートではないのには同意。
しかし、どの言語にもスマートにできないものはある。
>>37の使っている言語にも苦手な処理はあるだろう?

39:デフォルトの名無しさん
08/02/09 08:23:45
>>37 はスマートにディップスイッチでバイナリを直打ちしている

40:デフォルトの名無しさん
08/02/09 08:24:26
なんだこいつ


41:デフォルトの名無しさん
08/02/09 08:32:58
>>38
これはこれは
別に>>38を名指しでバカって言ったわけじゃないよ
リトマス試験紙にするつもりは無かったのだが

それと、欠陥なら直せば?

42:デフォルトの名無しさん
08/02/09 09:57:51
欠陥ではなくセマンティックスの違いでしょう。
変数を箱のようなものと捉えるか、ラベルのようなものと捉えるか、という。

43:デフォルトの名無しさん
08/02/09 12:52:34
マクロを導入すればいいのに。それで解決する問題だ。

44:デフォルトの名無しさん
08/02/09 13:12:13
>>43
あーそーゆーことね。

45:デフォルトの名無しさん
08/02/09 17:38:49
まー、Ioはマクロがなくてもこれだけできる!みたいなところはある
というかマクロも実装できそうだがどうか

46:デフォルトの名無しさん
08/02/10 15:55:43
っていうか、

>>41
>それと、欠陥なら直せば?

あなたの使ってる言語はすぐ直せるの欠陥?
だいたいの場合、欠陥があったら言語のコアな部分を弄らないといけないと思うんだけど、そうじゃないのが現実なんだろうか...?

small talkの例がでたけど、ioとかこの辺の言語は、その欠陥をなんとかできそうな感じなんだよな。
だからみんな魅力を感じてるんじゃないかと。

47:デフォルトの名無しさん
08/02/10 16:08:46
++関連見てきた。
スレリンク(tech板:559番)

なんかすげー理解が広がリングwww
これ見ると言語実装論みたいのが分かって面白いわ

あと、smalltalkの実装も面白い

48:デフォルトの名無しさん
08/02/19 23:56:58
IoでObjective-Cの文法を導入する試み。

こういう「クレージー」なことができる言語は素晴らしい。
が、日常的に使いたいかどうかはまた別問題である。

URLリンク(www.rubyist.net)

49:デフォルトの名無しさん
08/03/05 08:42:59
Rangeってどうすれば使えるのでしょうか?
何か準備がいるのかな。
Io 20070410
Io> Range

Exception: Object does not respond to 'Range'
---------
Object Range Command Line 2

50:デフォルトの名無しさん
08/03/05 09:11:29
windowsなら、C:\usr\local に置かなきゃ駄目
ってやつ?

51:デフォルトの名無しさん
08/03/05 12:21:31
winバイナリだと正規表現もないのな

52:デフォルトの名無しさん
08/03/05 20:49:16
たしかにwindowsバイナリで、別の場所に入れてました。
c:\usr\local\bin にコピーしてやってみたら使えるようになりました。
どうもありがとう。

Io> 1 to(8) map(v,v**2)
==> list(1, 4, 9, 16, 25, 36, 49, 64)
Io> 1 to(8) map(**2)
==> list(1, 1, 1, 1, 1, 1, 1, 1)
Io> "" asMutable do(65 to(65+25) map(v,append(v)))
==> ABCDEFGHIJKLMNOPQRSTUVWXYZ

53:デフォルトの名無しさん
08/03/22 23:10:19
数値と数値を連結すると文字列じゃなくて数値になるんですね。
Io> 123 .. 456
==> 123456
Io> 123 .. 456 +1
==> 123457
Io> 123 .. 456 /3
==> 123152
Io> 123+456/3
==> 275

54:デフォルトの名無しさん
08/03/23 16:34:50
>>53
type で見てみると Sequence だし
123 .. (456 / 3)
こういうことじゃない?

下のようにするとエラーも出るし。
Io> Number ++ := method(v, self .. v)
==> method(v,
    self .. v
)
Io> 123 ++ 456 / 3            
  Exception: Io Assertion 'operation not valid on non-number encodings'
  ---------
  message '/' in 'Command Line' on line 1        

55:デフォルトの名無しさん
08/03/23 16:59:00
対話モードの結果にダブルクオートが出ないから勘違いしたのかな
何でもかんでもオブジェクトをasStringしてつなぐ模様

56:デフォルトの名無しさん
08/03/23 17:50:07
どうも失礼しました。計算したものが連結されてるだけなんですね。

57:デフォルトの名無しさん
08/04/18 01:11:19
Ioで日本語プログラミング

Io でもおk - はてな使ったら負けだと思っている
URLリンク(d.hatena.ne.jp)

関連ページ

第20回 日本語でおk | WIRED VISION
URLリンク(wiredvision.jp)

Ruby もいいけど Smalltalk でも、おk。 - sumim’s smalltalking-tos
URLリンク(d.hatena.ne.jp)

inforno :: 日本語プログラミング言語Scala
URLリンク(inforno.net)

58:デフォルトの名無しさん
08/04/22 18:47:28
DarwinportsでIoを入れたのですが >>49と同じ状態で詰まっています
どのようにすればいいのでしょうか?

59:デフォルトの名無しさん
08/04/22 23:02:02
>>58
普通に落としてインストールする

60:デフォルトの名無しさん
08/04/27 09:17:59
Io> exit

Exception: while saving history file '$HOME/.io_history', reason: Device not configured
---------
saveHistory Z_CLI..io 42
ReadLine ? Z_CLI..io 42
Call relayStopStatus A2_Object.io 295
CLI saveHistory Z_CLI..io 55
Object exit Command Line 1

こんなのが出て正常に終了できない

61:デフォルトの名無しさん
08/04/27 10:35:17
HOME環境変数は設定されてる?

62:デフォルトの名無しさん
08/04/27 12:35:51
できてます

また起動時に.io_historyがあるとすぐ落ちます

63:デフォルトの名無しさん
08/04/29 22:28:52
インクリメント演算子実装してるが
++numなら簡単だが
num++はむずいな

64:デフォルトの名無しさん
08/04/30 17:25:44
なぜ?

65:デフォルトの名無しさん
08/04/30 20:02:09
前置だとmessage call argAt(0)でnumそのものを取得出来て
そっからメッセージの書き換えでnum = num + 1;っていうメッセージを作れるけど
後置だとすでにnumが評価されていてnumのメッセージそのものを取得できない。

66:65
08/04/30 20:27:07
まあ俺がioに詳しくないだけかもしれんけど

67:デフォルトの名無しさん
08/05/01 19:43:40
> ++num
ああ、その手があったか!

68:デフォルトの名無しさん
08/05/21 03:29:46
Ioではオブジェクトリテラル({a:1,b:2}みたいなやつ)って書けないの?
着想を得たってあがってるNewtonScript、Luaにはあったのに。

69:デフォルトの名無しさん
08/05/26 01:27:36
>>68
演算子や中括弧にもメソッド割り当てられるから簡単にできるよ

70:デフォルトの名無しさん
08/05/26 02:59:45
>>69
中括弧に割り当てるのやめて、まじやめて
昔","演算子で泣かされたの重いだして涙目


71:デフォルトの名無しさん
08/05/26 07:59:19
ホワイトスペースに割り当てられたら最強なのにね

72:デフォルトの名無しさん
08/05/26 08:26:26
>>70
いや引数の数チェックしてやればいいだけの話だし

73:デフォルトの名無しさん
08/05/28 03:38:05
>>69
すげえ、本当に簡単に出来るね。
List,Mapでの[]といい、なんで標準で定義してないんだろう。
{} := method(
obj := Object clone
call message arguments foreach(i,obj doMessage(i setName("setSlot")))
obj
)
{a=1,b=1+1} println

74:デフォルトの名無しさん
08/05/31 04:53:46
多分、>>68-73 みたいなFAQな流れを期待して、
Io sugeeeeとなるというのを想定しているのだろう

75:デフォルトの名無しさん
08/07/05 05:35:52
ほしゅ

76:デフォルトの名無しさん
08/07/30 20:44:36
対話型で初期化処理とかできないの?

77:デフォルトの名無しさん
08/08/04 20:26:33
何をしたいの?

78:デフォルトの名無しさん
08/08/05 08:09:26
対話型インタプリタとエディタを同時に使いたい

イメージ的には、
prolog系でのedit.
haskellの処理系の:editみたいなことがしたい


79:デフォルトの名無しさん
08/10/09 13:58:00
hosyu


最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5330日前に更新/22 KB
担当:undef