◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

コレクションが最高にイケてる言語を作ろう [無断転載禁止]©2ch.net ->画像>2枚


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/tech/1491491123/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

1デフォルトの名無しさん
2017/04/07(金) 00:05:23.53ID:FMSUelHn
コレクションの良しあしは言語の生産性に直にかかわってくる。
例えば配列しかないCは最低の言語だ。
コレクションが最高にイケてる言語仕様をみんなで考えよう。
2デフォルトの名無しさん
2017/04/07(金) 00:13:41.62ID:FMSUelHn
例えば空コレクションでMaxとか呼ぶと普通例外だよね?
ヌルオブジェクトパターンとかつかって綺麗に解決できないだろうか。
3デフォルトの名無しさん
2017/04/07(金) 00:14:44.33ID:FMSUelHn
エギソンという言語があってリストとかが色々便利にかける。
こういうのも面白い。

https://www.egison.org/
4デフォルトの名無しさん
2017/04/07(金) 06:47:50.17ID:ZgSaSKBc
>>1
ディクショナリ オブジェクト 配列 セット タプル リストとか既存言語のまとめてみて
言語によって同じものを違う名前で呼んだり紛らわしい
5デフォルトの名無しさん
2017/04/07(金) 21:39:18.48ID:A4pCb4U0
ジェネリクス対応の配列、ディクショナリ、セットがあれば大概の用途で事足りる
と言うことで、ほとんどの言語で問題ない
6デフォルトの名無しさん
2017/04/07(金) 22:57:02.31ID:FMSUelHn
>>4 既存言語って候補はこれくらいか?
まともにやるとクソ大変だが…

wikiのプログラム言語一覧から抜粋
Bash,BASIC,C,C#,C++Caml,Clojure,COBOL,CommonLisp,D
Dart,Delphi,Erlang,Forth,FORTRAN,Go,Haskell,Java,
JavaScript,Julia,Miranda,Objective-C,Pascal,
Perl,PHP,PL/I,PowerShell,Prolog,Python,R,Ruby,Rust,
Scala,Scheme,Smalltalk,Swift,
7デフォルトの名無しさん
2017/04/07(金) 23:02:55.18ID:j5QgAAcl
すまんそれライブラリで良くね?
8デフォルトの名無しさん
2017/04/07(金) 23:23:26.28ID:FMSUelHn
C++だとmapに突っ込むときoperator<とか定義しなきゃいけないけど
そういうのもなるべく言語でデフォルトのものを用意してほしい。
9デフォルトの名無しさん
2017/04/07(金) 23:51:13.53ID:FMSUelHn
C#のSystem.Collections.Generic 名前空間
https://msdn.microsoft.com/ja-jp/library/system.collections.generic(v=vs.110).aspx
10デフォルトの名無しさん
2017/04/07(金) 23:58:40.35ID:jBafhBvv
Smalltalkでさんざんいじられた結果なもんでさ
11デフォルトの名無しさん
2017/04/08(土) 10:39:56.79ID:wG8v5Zr7
C#のLinqとかはコレクションが使いやすくなる良構文だとおもう。
12デフォルトの名無しさん
2017/04/08(土) 19:23:27.58ID:wG8v5Zr7
>>8
haskellのderivingというのがあるが参考になるだろうか
13デフォルトの名無しさん
2017/04/08(土) 20:38:13.43ID:wG8v5Zr7
コレクションに対してそれを表現するリテラルがあると使い勝手がかなり違う。
シリアライズ、デシリアライズなどの機能を有する言語は結構あるが、
あんな感じでそれをそのままリテラルとして書けるようにするというのはどうだろう。
14デフォルトの名無しさん
2017/04/09(日) 22:15:51.86ID:xeKqw9Ld
俺のコレクション見たい?
15デフォルトの名無しさん
2017/04/10(月) 22:29:21.07ID:imUoe1w7
コレクションという観点だと
動的型付けと静的型付けは
どちらに軍配があがるかな
16デフォルトの名無しさん
2017/04/11(火) 21:18:37.12ID:m/oJQzNS
俺は多次元配列は配列の配列があれば要らない派
17デフォルトの名無しさん
2017/04/12(水) 00:58:22.70ID:1JOc28FD
(配列の配列はしばしばジグザグ配列になって演算速度の低下につながるので)ダメです
18デフォルトの名無しさん
2017/04/12(水) 21:49:29.52ID:ymAyZSnB
冪集合や直積も言語でサポートしてほしいな。
19デフォルトの名無しさん
2017/04/13(木) 22:37:17.25ID:S/dW7TnL
>>10
smalltalkがなんの関係があるの?
詳しく
20デフォルトの名無しさん
2017/04/15(土) 00:39:27.42ID:v99qvGb2
既存言語で一番コレクションが使いやすい言語ってなによ?
C#はかなりいいと思うが。
21デフォルトの名無しさん
2017/04/16(日) 12:49:58.72ID:njyBHlwQ
C♯っていうか.NETな。
C♯がすごいんじゃない。.NETがすごいんだよ。
22デフォルトの名無しさん
2017/04/16(日) 15:55:43.93ID:z1TgtbB7
>>19
コレクションクラス(とそのサブクラス群)のネタ元はSmalltalkで培われたものって意味では?
23デフォルトの名無しさん
2017/04/17(月) 18:05:28.45ID:v9quCy+G
配列でありリストであり連想配列でありキューでありスタックであるJavaScriptの配列が最強でイケイケだと思う
24デフォルトの名無しさん
2017/04/17(月) 19:46:53.34ID:4UmS+KBL
javascriptはプログラム組んでてなんかもやっとするw
25デフォルトの名無しさん
2017/04/17(月) 20:17:41.16ID:4UmS+KBL
型の境界線がもやっとしてるよねjavascript
整数と実数の区別とか。
26デフォルトの名無しさん
2017/04/21(金) 22:17:11.63ID:A2U3H+Qf
small talkってやったことないな。
噂は聞くが。
かじってみるかな。
27デフォルトの名無しさん
2017/04/21(金) 22:18:34.05ID:Re4upQlq
>>26
やめとけ時間の無駄だ
28デフォルトの名無しさん
2017/04/21(金) 22:19:18.69ID:A2U3H+Qf
>>27
まじで
29デフォルトの名無しさん
2017/04/22(土) 20:01:03.57ID:MD8NWs/L
>>26
オブジェクト指向言語としての初の試みであって実用性は無いからな
30デフォルトの名無しさん
2017/04/22(土) 20:07:13.82ID:M051jVFH
>>29
Core CLRのソースに含まれててびっくりしたけどね
31デフォルトの名無しさん
2017/04/22(土) 21:03:10.84ID:2QNaIclJ
機能をどっさり削った go でも map だけは特別扱いだからな。
一理はある。
32デフォルトの名無しさん
2017/04/23(日) 12:49:06.59ID:EiQ7XooB
>>26
最近だとPharoというSmalltalk処理系のコミュニティが活発です
国内でもスタートアップに使われたりして話題になっています。(pharo.orgが落ちているみたいなのでキャッシュで失礼)
http://webcache.googleusercontent.com/search?q=cache:bXBcfw6f0PYJ:pharo.org/success/AllStocker

コレクションについては英語が苦手でなければチュートリアル「Pharo by Example」のこちらの章が参考になるかと
https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/Collections/Collections.html
33デフォルトの名無しさん
2017/04/24(月) 09:16:50.97ID:RdOcyrB3
>>26
今週末、ちょうどこんな催しもあります
春のSmalltalk初心者向けのハッカソン | 第99回Smalltalk勉強会
https://smalltalk.connpass.com/event/55260/

もし東京近郊にお住まいでご都合が合えば参加されてみてはいかがでしょう

Smalltalkは独学で試行錯誤するのも(旅先でわざと道を外れて迷ってみる程度の愉しみとしては)悪くないのですが
効率的に何かの学びを得ようとするには、思いの外時間を無駄にすることにもなりお薦めできません
実際に使っていてよく知っている人に疑問をどんどんぶつけて解消してしまうのが一番です
34デフォルトの名無しさん
2017/04/24(月) 09:54:40.35ID:RdOcyrB3
>>33
×今週末 → ○明後日
35デフォルトの名無しさん
2017/04/24(月) 23:15:32.53ID:iqoCzYpO
カオスすぎんだろsmall talk w
じっくり勉強すれば理に適ってるのか?
36デフォルトの名無しさん
2017/04/25(火) 08:58:59.48ID:5ILiyJO9
>>35
> カオスすぎ

>>32のコレクションのクラス階層についてでしたら、ほとんどは抽象クラスや特殊用途のクラスなので
とりあえずこちらの図の黒枠のだけを押さえておけばよいかと
http://imgur.com/a/liiNB

OrderedCollectionは要素が追加可能なだけのArrayです
Dictionaryは他言語ではHashとかMapとか呼ぶことがあります
Setは重複を許さない集合
Bagがちょっと特殊ですが要素の数も覚えてくれるSetで他言語ではMultisetと呼ぶものもあります
37デフォルトの名無しさん
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} "
38デフォルトの名無しさん
2017/04/26(水) 23:16:35.99ID:H7jXi739
OrderedCollectionって順序付きコレクションってことだよね?
ツリーならsequenceableというのは若干違和感あるが…
先頭から順にたどれるから間違ってはいないのかな…
39デフォルトの名無しさん
2017/04/26(水) 23:57:14.04ID:yZOF+1hb
>>38
OrderedCollectionはツリーではなく最近の言語にはよくある動的配列の一種です
内部にちょっと大きめの配列を持っていてそれを使って要素の追加や削除、挿入などの機能を模しています
固定長配列からさほど劇的には速度を落とさず使えるのがウリです
40デフォルトの名無しさん
2017/04/27(木) 00:46:55.31ID:gwcfT8Ye
small talk て速度重視言語なの?
長い歴史の中で必要に迫られたんだろうか?
41デフォルトの名無しさん
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
コレクションが最高にイケてる言語を作ろう [無断転載禁止]©2ch.net	->画像>2枚

1980年代にはそういうことはできなくなったので、VMの高速化技術が試行錯誤されました
その成果が90年代のJavaのHotSpotや00年代のJSのV8に転用されています
そんなわけで、すごい高速なコアに頼ってそこそこの速度で動いているというのが現状です
42デフォルトの名無しさん
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

元々は手続き型として設計された簡潔な言語だったけど、
オブジェクト指向やら関数型やらを行き当たりばったりに増築し続けたおかげで、
コレクション操作に関する「一貫性」という設計哲学が破綻してしまった例だね
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))))
46デフォルトの名無しさん
2017/05/06(土) 00:47:46.27ID:feNHzNcv
[Ruby]
a.sort().reverse().map(&:to_s).join('-')

map{|x| x.to_s}
map(&:to_s)
47デフォルトの名無しさん
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: '-'
48デフォルトの名無しさん
2017/05/06(土) 17:44:28.43ID:fFyXczFW
パイソン駄目言語なのか〜
一応人気あるらしいが…
ルビィは俺も好き。
49デフォルトの名無しさん
2017/05/11(木) 21:34:24.03ID:645iMSZy
C#も文字列結合joinはあんま美しくないかな。
String.Join("-",list)

やっぱRuby最強かな
50デフォルトの名無しさん
2017/05/13(土) 18:41:35.29ID:Jd7eipCz
C#だとString.IsNullOrEmpty(str)とかもあんまり美しくないかな。
便利だし慣れたらそれほど気にならないけど。
51デフォルトの名無しさん
2017/05/13(土) 20:15:39.61ID:IutQ3qOG
>>50
どう美しくないの?
52デフォルトの名無しさん
2017/05/13(土) 20:16:44.40ID:cg00FUZZ
49 = 50
53デフォルトの名無しさん
2017/05/13(土) 21:49:29.63ID:Jd7eipCz
>>51
メソッドチェーンで書きたいじゃんやっぱ。
とはいえ、nullにIsNullOrEmptyなんてメソッド持たせるのは無理だろうから
現状の形でしょうがないとは思う。
54デフォルトの名無しさん
2017/05/13(土) 21:58:59.13ID:U/ufHPaa
>>53
拡張メソッド
55デフォルトの名無しさん
2017/05/15(月) 19:30:38.67ID:Vq1LD+5r
>>54
なにこれキモイ
56デフォルトの名無しさん
2017/05/17(水) 21:13:54.47ID:U14IiR72
>>54
なにこれキモチイイ
57デフォルトの名無しさん
2017/05/20(土) 20:55:00.46ID:Hvbhp0e0
nullはもっと進化してほしいよね。
現状、nullチェック面倒すぎ。
とくにjava?
5857
2017/05/22(月) 20:50:49.74ID:OyhChPaS
世の中にはnull結合演算子なんてものもあるのか。
59デフォルトの名無しさん
2018/05/23(水) 22:50:11.81ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

0SKW4
60デフォルトの名無しさん
2018/07/04(水) 23:18:22.40ID:gFgZc5FG
LL7
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニュース


-curl
lud20250125071130
このスレへの固定リンク: http://5chb.net/r/tech/1491491123/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「コレクションが最高にイケてる言語を作ろう [無断転載禁止]©2ch.net ->画像>2枚 」を見た人も見ています:
★★★★★ お金のコレクションが最高 ★★★★★
椎木里佳さん「hpのノートPCはファッションを選ばないデザインが最高」 女がパソコン選ぶ基準ってこんなんだな
最近ガンアクションが最高にしびれるアニメ無いよね
テンションがブリブリにアガった時に聴くと最高なハロプロ曲教えて
【VITA/PS4】SAOホロウ・リアリゼーションが最高傑作になりそうな件
【PS5】海外レビュー『アンチャーテッド トレジャーハンターコレクション』過去最高の出来栄え
【名器】ZOZOの前澤友作社長、バイオリンの最高傑作「ストラディヴァリウス」をコレクションに追加・発表 1717年製「Hamma」
【競馬】セレクトセール2020 ディープインパクト産駒シーヴ19が5億1000万の1歳セリ史上最高額 落札は“ショウナン”国本氏 [ニーニーφ★]
【最高】メジャーを語ろう!【偉大】
色白。黒髪。前髪パッツンが最高
マンガ史上、最高の見開きってなんだろう?
なろう系最高傑作、ゴブリンスレイヤーに決まる
最高に謎、なろう系ってあれだけ受けてるのになんで小説以外に
ドンキーコング2こそ最高のエレクトロニカ
イオンとセブンが過去最高益 おまえらそんなに何買ってんの
アニメの21エモンが最高傑作だと思うんだがお前らどう思うよ?
【朗報】なろうの最高傑作「無職転生」に決定するwwwwwwwwwwwwwwww
味噌汁って毎日飲んでも飽きないし最高の料理なのではないだろうか。
烈火の炎3type-Rとかいうこれ以降は出ないであろう小当りラッシュ最高機種
ラブライブ!SS史上最高の名作『穂乃果「 汚れた世界」』について語ろう
中国「アイヤー!日中の社会の発展レベルが違いすぎアル!世界最高民族とは日本人のために有る言葉よ!」
【速報】モンハンワールド、歴代最高の初動192万本を記録したとカプコンが発表する
【野球/視聴率】侍ジャパンが快勝のオーストラリア戦、瞬間最高14・4%をマーク★2
歴代最高アイドルBerryz工房とアイドルヲタク最強属性のベリヲタについて語ろう Part.7
【フィギュア】羽生、4回転ループ成功もSP3位から逆転ならず銀 チェンが世界最高得点でV2★2
お前らに今期の俺的最高ヒロインが糞アニメだったあげく作品内人気すら微妙だった気持ちが分かるか?
ワンセブンがブスキャットの惨敗以来の売上記録更新!!オリコン集計変更を考慮すれば史上最高売上を記録か!
【スマホ】サムスンが世界最高級スマホ「Galaxy Note9」発表 Bluetooth対応Sペン附属 大容量メモリー★2
【岐阜・多治見市】最高気温40度超え、暑い町なのに教室にエアコンがないその理由とは…1台200万円 億単位のお金が準備できない★3
バスコレクションについて語ろうぜ
アテニアコレクションについて語ろう Part.2
【最高】ショベルヘッド8【空冷】
高橋愛 久住小春 夏焼雅 出演の札幌コレクションが想像の斜め上を行く地獄現場だったwww
悲報 PS4のAAAタイトル神ゲー デトロイト 早くもバリューセレクションが発売されてしまう!
【アメリカ】「革命の剣」と呼ばれたジョージ・ワシントンが実際に持っていた剣のコレクションが公開中 [10/26]
【芸能】深キョン&香取慎吾“おそろショット”に「最高」の声
PS4ゲーム『Ghost of Tsushima』、韓国で地図入りのコレクターズエディションが発売中止「対馬は韓国領土主張する韓国人への配慮」
【宝石】高級ジュエリーブランド「ブシュロン」のアニマルコレクションが可愛すぎる…しかしお値段はぜんっぜん可愛くない!(写真あり)
新しいプログラム言語作る〜4カ年計画
21世紀最高の言語がついに決定
最高の言語はシェルスクリプト
【GREE】ワールドサッカーコレクション7 海外専用
【使用済み下着】ギャルズコレクション【情報交換】 ©bbspink.com
[名古屋]べっぴんコレクション について ©bbspink.com
【恋愛】ラブラブ彼氏の部屋で見つけた大量の“DVDコレクション”にドン引き!しかも毎日在庫を補充!?破棄もまったく意味なしで[07/06] ©bbspink.com
【ファイトキッズ】コレクションポケット【パカパカ】
コテと名無しのレクリエーション会場
BLUE REFLECTION(ブルー リフレクション)Part21
コジマプロダクションがコナミの嫌がらせで、関東ITS健康保険組合に加入できなかったのは事実だった
【ハーレム】名古屋べっぴんコレクション37【ヘルス】
プリズム◇リコレクション! Part19
なぜ人間は記憶や思い出をコレクションしたがるのか
コテと名無しのレクリエーション会場
地球って宇宙人のコレクションなんじゃ…
【この差って何ですか】NMB「東京ガールズコレクションでライブ」、SKE「下関の競艇場でイベント」【3月31日の仕事対決】
【使用済み下着】ギャルズコレクション 3枚目【情報交換】 ©bbspink.com
大人のオモチャをコレクションしてそうな選手
【話題】リストラで恨みかった? 400ドルで売られていた“パンチラ” 日本財界超大物Oの「盗撮コレクション」海外サイトで転売か[05/31] ©bbspink.com
【FF14】モグモグ★コレクション 4個目
コテと名無しのレクリエーション会場1560
コテと名無しのレクリエーション会場1473
コテと名無しのレクリエーション会場963
【愛媛】洲之内浩二 遺作展&コレクション展 [2017年9月18日〜24日] [無断転載禁止]
サムライスピリッツ ネオジオコレクション ベアナックルW 売上圏外の大爆死wwwwww
10:58:00 up 27 days, 12:01, 0 users, load average: 116.48, 95.32, 89.61

in 0.63275384902954 sec @0.63275384902954@0b7 on 021000