コレクションの良しあしは言語の生産性に直にかかわってくる。
例えば配列しかないCは最低の言語だ。
コレクションが最高にイケてる言語仕様をみんなで考えよう。
探検
コレクションが最高にイケてる言語を作ろう [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2017/04/07(金) 00:05:23.53ID:FMSUelHn2017/04/24(月) 09:54:40.35ID:RdOcyrB3
>>33
×今週末 → ○明後日
×今週末 → ○明後日
2017/04/24(月) 23:15:32.53ID:iqoCzYpO
カオスすぎんだろsmall talk w
じっくり勉強すれば理に適ってるのか?
じっくり勉強すれば理に適ってるのか?
2017/04/25(火) 08:58:59.48ID:5ILiyJO9
>>35
> カオスすぎ
>>32のコレクションのクラス階層についてでしたら、ほとんどは抽象クラスや特殊用途のクラスなので
とりあえずこちらの図の黒枠のだけを押さえておけばよいかと
http://imgur.com/a/liiNB
OrderedCollectionは要素が追加可能なだけのArrayです
Dictionaryは他言語ではHashとかMapとか呼ぶことがあります
Setは重複を許さない集合
Bagがちょっと特殊ですが要素の数も覚えてくれるSetで他言語ではMultisetと呼ぶものもあります
> カオスすぎ
>>32のコレクションのクラス階層についてでしたら、ほとんどは抽象クラスや特殊用途のクラスなので
とりあえずこちらの図の黒枠のだけを押さえておけばよいかと
http://imgur.com/a/liiNB
OrderedCollectionは要素が追加可能なだけのArrayです
Dictionaryは他言語ではHashとかMapとか呼ぶことがあります
Setは重複を許さない集合
Bagがちょっと特殊ですが要素の数も覚えてくれるSetで他言語ではMultisetと呼ぶものもあります
2017/04/25(火) 09:25:33.87ID:5ILiyJO9
>>36
> 要素の数も覚えてくれるSet
Bagについてはたとえば文字列(仮に 'SMALLTALK')を構成する文字とそれぞれの出現数を多い順に知りたいとき
文字列(やはりコレクション)をBagに変換する(asBag)などして、こんなふうに書くことができます
'SMALLTALK' asBag sortedCounts
"=> {3->$L . 2->$A . 1->$K . 1->$M . 1->$S . 1->$T} "
> 要素の数も覚えてくれるSet
Bagについてはたとえば文字列(仮に 'SMALLTALK')を構成する文字とそれぞれの出現数を多い順に知りたいとき
文字列(やはりコレクション)をBagに変換する(asBag)などして、こんなふうに書くことができます
'SMALLTALK' asBag sortedCounts
"=> {3->$L . 2->$A . 1->$K . 1->$M . 1->$S . 1->$T} "
2017/04/26(水) 23:16:35.99ID:H7jXi739
OrderedCollectionって順序付きコレクションってことだよね?
ツリーならsequenceableというのは若干違和感あるが…
先頭から順にたどれるから間違ってはいないのかな…
ツリーならsequenceableというのは若干違和感あるが…
先頭から順にたどれるから間違ってはいないのかな…
2017/04/26(水) 23:57:14.04ID:yZOF+1hb
>>38
OrderedCollectionはツリーではなく最近の言語にはよくある動的配列の一種です
内部にちょっと大きめの配列を持っていてそれを使って要素の追加や削除、挿入などの機能を模しています
固定長配列からさほど劇的には速度を落とさず使えるのがウリです
OrderedCollectionはツリーではなく最近の言語にはよくある動的配列の一種です
内部にちょっと大きめの配列を持っていてそれを使って要素の追加や削除、挿入などの機能を模しています
固定長配列からさほど劇的には速度を落とさず使えるのがウリです
2017/04/27(木) 00:46:55.31ID:gwcfT8Ye
small talk て速度重視言語なの?
長い歴史の中で必要に迫られたんだろうか?
長い歴史の中で必要に迫られたんだろうか?
2017/04/27(木) 07:01:43.40ID:1+VMbtmi
>>40
Smalltalkは言語のルールや変更不可能な動作中核(VM)部分をできるだけ小さく保って、
GUIやIDEを含む処理系(元々はダイナブック向けの暫定仮想OS)のほとんどを自身で記述するのが方針でした
▼Smalltalkの底を流れる設計思想
http://web.archive.org/web/20041016084842/http://marimpod.homeip.net/chomswiki/24#
そのため、当初から速度は潜在的な課題のひとつでしたが1970年代はAltoやDoradoという10年後のPCのスペックを想定した
「タイムマシン」を金をかけて作ってそこでSmalltalkを動かすことで、柔軟性を損なう最適化を避けるようにしていたようです
▼The Future Doesn't Have to Be Incremental
https://github.com/matthiasn/talk-transcripts/blob/master/Kay_Alan/NonIncrementalFuture.md
https://pbs-h2.twimg.com/media/C6cMkr4U4AAEDoJ.jpg
1980年代にはそういうことはできなくなったので、VMの高速化技術が試行錯誤されました
その成果が90年代のJavaのHotSpotや00年代のJSのV8に転用されています
そんなわけで、すごい高速なコアに頼ってそこそこの速度で動いているというのが現状です
Smalltalkは言語のルールや変更不可能な動作中核(VM)部分をできるだけ小さく保って、
GUIやIDEを含む処理系(元々はダイナブック向けの暫定仮想OS)のほとんどを自身で記述するのが方針でした
▼Smalltalkの底を流れる設計思想
http://web.archive.org/web/20041016084842/http://marimpod.homeip.net/chomswiki/24#
そのため、当初から速度は潜在的な課題のひとつでしたが1970年代はAltoやDoradoという10年後のPCのスペックを想定した
「タイムマシン」を金をかけて作ってそこでSmalltalkを動かすことで、柔軟性を損なう最適化を避けるようにしていたようです
▼The Future Doesn't Have to Be Incremental
https://github.com/matthiasn/talk-transcripts/blob/master/Kay_Alan/NonIncrementalFuture.md
https://pbs-h2.twimg.com/media/C6cMkr4U4AAEDoJ.jpg
1980年代にはそういうことはできなくなったので、VMの高速化技術が試行錯誤されました
その成果が90年代のJavaのHotSpotや00年代のJSのV8に転用されています
そんなわけで、すごい高速なコアに頼ってそこそこの速度で動いているというのが現状です
2017/04/28(金) 21:26:50.07ID:oDhQrrTb
設計思想は素晴らしい。
のかな?
のかな?
43デフォルトの名無しさん
2017/05/05(金) 18:00:36.59ID:oGFFYBoD コレクション使ってて使いづらいと思うことも最近は減ってきたよな
昔より言語が進歩してるんだろか
昔より言語が進歩してるんだろか
44デフォルトの名無しさん
2017/05/05(金) 21:23:00.44ID:Qc8J8Hpx >>43
でもねぇ、世の中にはコレクション操作が使いづらい
退化した最悪な言語が存在する
http://d.hatena.ne.jp/edvakf/20090405/1238885788
元々は手続き型として設計された簡潔な言語だったけど、
オブジェクト指向やら関数型やらを行き当たりばったりに増築し続けたおかげで、
コレクション操作に関する「一貫性」という設計哲学が破綻してしまった例だね
でもねぇ、世の中にはコレクション操作が使いづらい
退化した最悪な言語が存在する
http://d.hatena.ne.jp/edvakf/20090405/1238885788
元々は手続き型として設計された簡潔な言語だったけど、
オブジェクト指向やら関数型やらを行き当たりばったりに増築し続けたおかげで、
コレクション操作に関する「一貫性」という設計哲学が破綻してしまった例だね
45デフォルトの名無しさん
2017/05/05(金) 21:52:01.71ID:Qc8J8Hpx [Ruby]
a.sort().reverse().map{|x| x.to_s}.join('-')
[JavaScript]
a.sort().reverse().map(function(x) { return x.toString() }).join(“-“)
[Python]
'-'.join(map(lambda x: str(x), reversed(sorted(a))))
a.sort().reverse().map{|x| x.to_s}.join('-')
[JavaScript]
a.sort().reverse().map(function(x) { return x.toString() }).join(“-“)
[Python]
'-'.join(map(lambda x: str(x), reversed(sorted(a))))
2017/05/06(土) 00:47:46.27ID:feNHzNcv
[Ruby]
a.sort().reverse().map(&:to_s).join('-')
map{|x| x.to_s}
map(&:to_s)
a.sort().reverse().map(&:to_s).join('-')
map{|x| x.to_s}
map(&:to_s)
2017/05/06(土) 07:38:32.83ID:gBi5/Vqg
[Pharo Smalltalk]
(a sort reverse collect: [:x | x asString]) joinUsing: '-'
(a sort reverse collect: #asString) joinUsing: '-'
(a sort reverse collect: [:x | x asString]) joinUsing: '-'
(a sort reverse collect: #asString) joinUsing: '-'
2017/05/06(土) 17:44:28.43ID:fFyXczFW
パイソン駄目言語なのか〜
一応人気あるらしいが…
ルビィは俺も好き。
一応人気あるらしいが…
ルビィは俺も好き。
2017/05/11(木) 21:34:24.03ID:645iMSZy
C#も文字列結合joinはあんま美しくないかな。
String.Join("-",list)
やっぱRuby最強かな
String.Join("-",list)
やっぱRuby最強かな
2017/05/13(土) 18:41:35.29ID:Jd7eipCz
C#だとString.IsNullOrEmpty(str)とかもあんまり美しくないかな。
便利だし慣れたらそれほど気にならないけど。
便利だし慣れたらそれほど気にならないけど。
2017/05/13(土) 20:15:39.61ID:IutQ3qOG
>>50
どう美しくないの?
どう美しくないの?
2017/05/13(土) 20:16:44.40ID:cg00FUZZ
49 = 50
2017/05/13(土) 21:49:29.63ID:Jd7eipCz
2017/05/13(土) 21:58:59.13ID:U/ufHPaa
>>53
拡張メソッド
拡張メソッド
2017/05/15(月) 19:30:38.67ID:Vq1LD+5r
>>54
なにこれキモイ
なにこれキモイ
2017/05/17(水) 21:13:54.47ID:U14IiR72
>>54
なにこれキモチイイ
なにこれキモチイイ
2017/05/20(土) 20:55:00.46ID:Hvbhp0e0
nullはもっと進化してほしいよね。
現状、nullチェック面倒すぎ。
とくにjava?
現状、nullチェック面倒すぎ。
とくにjava?
5857
2017/05/22(月) 20:50:49.74ID:OyhChPaS 世の中にはnull結合演算子なんてものもあるのか。
59デフォルトの名無しさん
2018/05/23(水) 22:50:11.81ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
0SKW4
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
0SKW4
60デフォルトの名無しさん
2018/07/04(水) 23:18:22.40ID:gFgZc5FG LL7
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 習政権、高市首相への態度硬化 台湾有事発言で連日非難 中国 ★11 [ぐれ★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★3 [蚤の市★]
- 日本損失1.7兆円に修正 中国渡航自粛の影響試算 [蚤の市★]
- 「どうしようもない」 ため息つくアジアの玄関口 中国の訪日自粛で−福岡市 [蚤の市★]
- 「アベノミクス」で投資対象と化したマンション ローンの低金利続き「年収の12倍」借りる20代出現 [蚤の市★]
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 高市周辺、さすがに焦り始めるww「小さな火種が火事になりかけている。早く鎮火しなくてはいけない」 [271912485]
- 【実況】博衣こよりのえちえち朝こよ🧪
- 【高市悲報】神谷「部下が間違えて脱炭素を脱酸素て書いたんですよ😡それ読んだだけなのに挙げ足とるな!小学生か!」 [359965264]
- 中国「高市が頭を下げて謝罪しない限り、絶対に許さない」 [329329848]
- 【超悲報】中国への武力行使、世論調査で「賛成」「どちらかといえば賛成」48.8% 「反対」「どちらかといえば反対」の44.2%を上回る [314039747]
- ほかほかご飯にかけるとうまいもの一覧
