次世代言語議論スレ[Go Rust Kotlin Scala]第4世代 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/04/20(木) 04:43:27.12ID:mNwXvrXv
いざ、語ろうぞ。

スレタイ超過のため、一部省略。
Go, Erlang, Kotlin, etcもウェルカム。
Haskellは協議により次世代失格になりました

前スレ
次世代言語議論スレ[Go Rust Haskell Scala]第3世代
http://echo.2ch.net/test/read.cgi/tech/1488608741/
125
垢版 |
2017/04/26(水) 16:06:30.69ID:aLqmc7M7
>>123
まぁ、恐ろしいほどに無意識に使ってるスペースなんて記号も英語ベースだしな。
コアダンプが漢詩のように見える事もあるけど。

>>124
あれはあれで、リストをああいう形で実現した時点で割と言語としては完成してた。冗長だけど。
126デフォルトの名無しさん
垢版 |
2017/04/26(水) 21:50:24.12ID:SZlYFMhx
>>98
>それが企業に好感持たれてる現実。

Hello world すら Syntax Error になってしまう(>>95)ほどの壊滅的な
後方互換性切り捨てを強行してなお旧バージョンのサポート打ち切りなんて、
常識的な企業倫理からはありえないだろ
そんな対応を指して「好感」という言葉は冷酷な皮肉でしかない

あるいは、過去に Hello world がバージョンアップで動かなくなったメジャー言語が存在するの?

print が文なのか関数なのかという言語とライブラリ設計における根源的な決定、
言い換えると入出力処理は構文で実現すべきなのか(すなわち文)、それとも
ライブラリで提供すべきなのか(すなわち関数または手続き)という言語設計の哲学、
そんな初歩的な判断すらできない人物によって行き当たりばったりに設計されたのが
Python だろ
127デフォルトの名無しさん
垢版 |
2017/04/26(水) 22:30:36.25ID:SZlYFMhx
>>120
$ irb1.9
irb(main):001:0> "abc".each { |x| p x }
NoMethodError: undefined method `each' for "abc":String
from (irb):1
from /usr/bin/irb:12:in `<main>'

うん、確かに実行時エラーになった
では、ここで呪文を唱えてみよう

irb(main):002:0> class String; alias :each :each_char; end
=> nil
irb(main):003:0> "abc".each { |x| p x }
"a"
"b"
"c"
=> "abc"
irb(main):004:0>

あれ、おかしいなあ、Ruby 1.9 の String クラスなのに、Ruby 1.8 と同じく
配列と同じように扱えるようになったぞ、しかも元のコードは一切改変されていない
いったいどうなってるんだあ…
128
垢版 |
2017/04/26(水) 23:16:03.93ID:WASTpqE2
メソッド生やしてしまえる事自体がオブジェクト指向でも何でもない気持ち悪さ。
2017/04/27(木) 00:01:25.31ID:GJNrvvrA
Open Class だろ。モンキーパッチ
2017/04/27(木) 00:31:22.08ID:1+VMbtmi
>>128
その理屈だとSmalltalkはオブジェクト指向じゃなくてなんだったんだ?
131デフォルトの名無しさん
垢版 |
2017/04/27(木) 00:39:07.48ID:NvHKpotz
Stringは定数ではなくグローバル変数のように改変される
全ての関数をクラスという箱に入れた結果全てが事実上のグローバル変数になった
132デフォルトの名無しさん
垢版 |
2017/04/27(木) 00:55:55.98ID:jbk1ehAe
>>131
見方によってはそう(グローバル変数)なんだよね。
スコープは狭い方が良い。
正直オープクラスはイマイチと思うのだが、でもjavascript はそのおかげでpolyfillとかできるんだよな。
133
垢版 |
2017/04/27(木) 01:20:41.99ID:S1ERYEjc
>>130
Smalltalkはレシーバだろ
2017/04/27(木) 02:05:35.72ID:XheCn2mn
>>133
記法の問題ってこと?
2017/04/27(木) 07:23:11.77ID:1+VMbtmi
>>134
ビヤーネ・ストラウストラップらの抽象データ型のOOP(カプセル化、継承、多態性)と
アラン・ケイの遅延結合徹底のOOP(オブジェクトにメッセージを送る)は別物だって事をいいたいのかな
2017/04/27(木) 07:38:57.38ID:0Df9bF2U
Smalltalkがウンコ過ぎて世間からそっぽ向かれて死滅したんだから
後追いのRubyも死滅するのは歴史が証明している
137
垢版 |
2017/04/27(木) 08:15:10.34ID:YQ2WW8c/
>>135
そう。パッシングの口でしかない。
2017/04/27(木) 08:28:33.27ID:/s/zy9NN
まさか、rubyがADT拡張としてのOOPLだと思ってる?
2017/04/27(木) 08:44:30.71ID:N3r3uYtr
>>136
死滅したとか記憶から消し去りたいロートルがいる一方でスタートアップで勝負をかける奇特な人もいる
http://pharo.org/success/AllStocker
スタートアップ界の異端児!産業機器 x IT x SmalltalkのSORABITO株式会社
https://thepedia.co/article/1068/

Smalltalkのとらえ方は人それぞれやね
2017/04/27(木) 08:58:08.10ID:/s/zy9NN
Smalltalkはうんこすぎて死滅したと2ちゃんでクダ巻いてるだけの爺さんを横目に、
今日もSmalltalkが世界の海上コンテナ輸送の30%を捌いているわけだが。
2017/04/27(木) 09:17:39.03ID:N3r3uYtr
>>140
OOCLのことを言っているんなら、あれってJavaに置き換えられたんじゃないの?

Who uses Smalltalk? : programming - Reddit
https://www.reddit.com/r/programming/comments/3wv7ik/who_uses_smalltalk/cxzzhkp/
2017/04/27(木) 09:25:15.12ID:wBdpEusi
>>140
もしかしてOOCLのこと言ってんの?
とっくにそんなシェア無くなって、今年に入って買収の噂が出るくらい落ちぶれてるぞ
2017/04/27(木) 10:07:04.57ID:Cz6WFEXA
爺さん批判してる奴の知識が爺さんだったか
2017/04/27(木) 10:10:47.76ID:sNquU9cU
Smalltalkがどうこう以前にファンやアンチがうんこすぎてわらた
2017/04/27(木) 10:12:00.41ID:/ppzzK1q
Smalltalk信者とHaskell信者はよく似てる
2017/04/27(木) 12:35:13.63ID:/s/zy9NN
>>141
よく読め。再実装されたのはUIだけだ。あほか?
147デフォルトの名無しさん
垢版 |
2017/04/27(木) 13:02:15.04ID:jfFmbm9g
>>146
なんでとても素晴らしいsmalltalkで再実装されなかったの?
148デフォルトの名無しさん
垢版 |
2017/04/27(木) 13:17:16.51ID:+ggBtOYn
おそらく同じ言語で再実装するとeachをeach_charに変えたくなるから
そんなことするなら言語ごと変えた方が良い
2017/04/27(木) 14:09:11.99ID:Yjb8fh0C
>>147
Smalltalk は開発環境含めてあまりにオールインワン過ぎるから。
2017/04/27(木) 17:05:36.01ID:sNquU9cU
>>146
そんなどーでもいいことより30%シェア撤回マダー
2017/04/27(木) 20:07:13.14ID:PwOPvcNg
どーでもいいな、クソくだらねえ。
2017/04/27(木) 20:28:54.10ID:zXLo9cW8
もう死んでる言語を追い詰めても仕方ないよな
死体蹴りは良くない
153デフォルトの名無しさん
垢版 |
2017/04/27(木) 22:14:26.81ID:McKGSVbG
もう風化してて蹴るものもないと思ったのに
154デフォルトの名無しさん
垢版 |
2017/04/27(木) 22:36:43.95ID:+ggBtOYn
風化すればまた再発明される
過去に同じことがあったと口で言っても証拠が残ってなければ同じことが繰り返される
2017/04/27(木) 23:26:29.59ID:Yjb8fh0C
死んだ言語の死んだ理由ってのは新しい言語の糞機能アピールよりかは勉強にはなる。
2017/04/28(金) 08:28:08.68ID:WPyfQjET
死んだ言語ねえ…
死んでるのはおめーの脳みそだろ?

http://pharo.org/success
2017/04/28(金) 08:55:25.45ID:j+L8+G8p
SmallTalkガイジって一番ガイジだった頃のエンジニアガイジとちょっと似てるな
158
垢版 |
2017/04/28(金) 17:12:11.94ID:Yq+yDopp
>>157
いつでも同じクオリティじゃないか
2017/04/28(金) 20:19:57.31ID:j+L8+G8p
>>158
最近文読みやすくなってきてるしちょっとええ感じやで
160
垢版 |
2017/04/28(金) 20:29:25.20ID:0gV62uUk
>>159
まぁ具体的に「パラグラフが長い」「言い回しがくどい」と言われたら、
なるほどと思うし、ちょっと気を付けられるからな。
読みにくい、ガイジか!とだけ言われたら、読みにくいだけならしっかり読めとしか言いたくなくなる。
161デフォルトの名無しさん
垢版 |
2017/04/29(土) 02:55:48.56ID:R+WhfS42
シミュレーションをより簡略に作成するための新言語開発を。

「ロボットは東大に入れるか」成果報告会 in 2016(11/14)レポート
http://blog.livedoor.jp/dg_law/archives/52354118.html

これからはシミュレーションシステムの構築が簡略化されるので、来年のセンター物理は大きく得点が伸びるに違いない。

 スーパーコンピュータでの計算に必要となるプログラムはときに数十万行にも及び、作成やチューニングは大変困難です。
一方で、原理的にはシミュレーションしたい自然現象とその離散化法(注2)を指定すれば、プログラムは機械的に生成できます。
しかし、プログラミングはシミュレーションとコンピュータ双方に深い知識が必要となる非常に高度な作業であり、多数の計算機を
協調して動作させるスーパーコンピュータの性能を引き出す高度なプログラムを、自動かつ汎用的に生成することは不可能でした。
 そこで共同研究グループは、方程式がプログラムに変換されるまでの一連の段階に対応する数学的定義を作りました。
スーパーコンピュータが持つ階層のすべての段階において、自然が元来備えている「並列性」と「局所性」(注3)を保持する変換
を厳密に定めることで、新たなプログラミング言語「Formura」を開発しました。これによって、これまで不可能だったプログラミング
の機械化に成功しました。さらにFormuraは、同じアプリケーションに対して何万通りものプログラムを試し、最も速かったものを自動的に選択します。
 Formuraを開発したことで、規則格子シミュレーション(注4)分野においては、自然科学者が慣れ親しんだ方程式の記法を使ってシミュレーション
したい対象を記述することで、スーパーコンピュータの性能を引き出すための高度なプログラムが自動的に作成できるようになりました。
気象、地震、宇宙、生態ネットワークの研究など、規則格子シミュレーションを用いる分野の研究の加速が期待できます。
http://pr.fujitsu.com/jp/news/2016/12/2.html
162
垢版 |
2017/04/29(土) 12:11:59.50ID:R/nsoadB
投機ベースは確かに分野限られるし、実用例と先端の研究者が解離してる典型だわなぁ。
「5%の不良率で100個発注したら当たり前のように105個納品されてくるようなどっかのおおざっぱな国の発想だ」
と、日本の会社だと反発されるやつ。
ナップサックとか問題持ち出して、モノによっては泥臭く計算せなあかんのやと言うのと、
次は百万台でやっても一つのタスクの不可分な時間以下にはならんのだよ、
を説明して説得して導入するようなものだから。

トポロジ解析と図面生成か何かで原始的なそれやった事ある。
2017/04/29(土) 13:21:11.09ID:rB0Fvmgg
>>161
多くの深層学習フレームワークはNN構造をPythonなどで記述すると
それをテンソルの計算グラフに変換してGPUで高速計算してくれる。
NN構造や規則格子をさらに簡略に記述したければJuliaがある。
Fomuraの20行のシミュレーション記述も既存の言語でできるはずだ。

つまりシミュレーションをより簡略に作成するために新言語は必要ない。
必要なのは用途毎のフレームワークだ。
2017/04/29(土) 18:34:55.63ID:n+S+CElE
発展し続ける言語とゴミ屑同然に忘れ去られる言語、何が違うんだろうなぁ
2017/04/29(土) 19:09:01.68ID:0nTkChzC
言語の良さを理解して使い続けられる人と、ゴミ屑同然の脳みそですぐに忘れ去ってしまう人、何が違うんだろうなぁ
2017/04/30(日) 00:13:09.75ID:feM/rwNV
>>164
覚えやすさとチューニングのしやすさ。
以上。
167デフォルトの名無しさん
垢版 |
2017/04/30(日) 01:03:20.38ID:E30HxT2S
>>164
いろんなプログラム言語を開発しておいて、その上で『良いとこ取り』で新言語を開発する。
2017/04/30(日) 01:49:39.39ID:9UtCfcRf
>>164 バックでしょ
Goはグーグル発じゃなかったら「今どき継承もない言語作ったのかよ?w」で即死
2017/04/30(日) 01:50:36.87ID:2awuHSHC
>>167
なおScala
2017/04/30(日) 09:42:21.85ID:QitJ8eBZ
>>168
実際死んでね?言語としては。
言語として死んでるのをGoogle謹製の周辺ツールで無理やりカバーしてゾンビ化してる感じ。
ゾンビなので一周回って死ににくい。
2017/04/30(日) 10:18:39.25ID:H2bTIgd1
どんだけバックが大きくてゴリ押ししても
死ぬときは死ぬ
Dartとか
2017/04/30(日) 12:02:29.80ID:kLDfBj4F
>>168 >>170
Goは文法が簡単で高性能という特徴がある。
おかげで文法は簡単だが低性能な言語から移行しやすい。
だから難しい言語が選ばれない所で活躍している。

Gopherの道を歩む – Node.jsからGo言語への移行
http://postd.cc/the-way-of-the-gopher/
Go言語の低レイテンシGC実現のための取り組み
http://postd.cc/gos-march-to-low-latency-gc/
173デフォルトの名無しさん
垢版 |
2017/04/30(日) 15:36:43.63ID:4Q8qZxsi
Goって手続き型だろ?
Mainに集中して必要な機能呼び出すだけでいいんだから設計書なしで良さそう
174デフォルトの名無しさん
垢版 |
2017/05/02(火) 06:00:14.79ID:IDWdkJdY
Mathematica 11.1 | 2017年4月(日本語版) 詳細 ≫
バージョン11.1では,機械学習,ニューラルネットワーク, 音声処理,ロバストな記述統計等の分野における
MathematicaおよびWolfram言語の最先端機能が拡張されています.
広範な応用分野に加わった,130を超える新関数
ニューラルネットワークの新しい20種類の層の追加,および再帰型ネットワークと可変長シーケンスのシームレスなサポート
NetModelにより,増加し続ける完全なニューラルネットワーク(訓練されたものとされていないものを含む)のリポジトリにアクセス
データ,画像,テキスト等の空間を機械学習ベースで可視化するFeatureSpacePlot
SequencePredict,ActiveClassification,ActivePredictionを含む,新しい機械学習関数
AudioCaptureを使って音声を直接ノートブック内で録音することによって,すぐに処理・解析することが可能に
2Dおよび3D画像に対する,*,-等を使った計算が可能に
計算写真学と計算顕微鏡学に対するサポートの拡張
ImageGraphicsを使って,ビットマップのベクトルグラフィックスによる近似を求める
HilbertCurveやSierpinskiMesh等の空間充填およびフラクタル領域コンストラクタ
WinsorizedMean, SpatialMedianを含む,新しいロバスト統計と空間統計
新しいGeoBubbleChartと,Callout,ScalingFunctions等のサポートの拡張
記号次数を持つ導関数のサポート
解像度が高くなった標高データ
シームレスに統合されたWeb検索,Web画像検索,テキスト翻訳のための外部サービス
セッション間の値をローカル,あるいはクラウド等に保存するための,幅広いPersistentValueシステム
クラウド内で個別に編集できるノートブックをシームレスに配布するためのAutoCopy
ノートブックベースのスクリプトエディタを使ったWolframScriptの.wlsファイルの生成
Wolfram言語スクリプトの自動実行がWindowsでも可能に
ドキュメントセンターおよびオンラインの例題すべてが新しくレスポンシブデザインに
https://www.wolfram.com/mathematica/quick-revision-history.ja.html?footer=lang
175デフォルトの名無しさん
垢版 |
2017/05/02(火) 06:54:00.89ID:hkg4cpdn
回転放物面の方程式と東大の問題
http://mathtrain.jp/kaitenhobutsu

「放物線 y = 3/4 - x^2」

「y軸の回りに回転させる」

・・・例えば、こういう操作ができる3次元CADって開発されてないんですか?

統計的機械翻訳では自然言語処理は無理という話も聞いているけれど、高校数学でやることは内容が限られており、
一般的な機械翻訳よりは難易度は低いと思われます。
2017/05/02(火) 07:13:28.68ID:iysKcMgd
3次元CADを名乗っていて回転体を作れないもののほうが珍しいと思うが、
その問題を解けるCADは多くないだろうな。
近似的な数値解が求まることと、解を方程式で表して数式処理できることは全くの別物。
177デフォルトの名無しさん
垢版 |
2017/05/02(火) 07:39:13.20ID:IDWdkJdY
>>176
>その問題を解けるCADは多くないだろうな。

そのための新プログラム言語開発ってことだよな。
178
垢版 |
2017/05/02(火) 11:18:08.85ID:Ua7wVMyf
>>175
ごく当たり前の機能として存在する。
面で切り取る事もできる(面に対する押し出しで、相手方を削り取る感じ)
体積も求められるよ。
拘束条件は厳密だし、カーブを式で入れることもできるから。

ただ、それのために1License300万出す?
2017/05/02(火) 14:54:44.43ID:iysKcMgd
ああ、高精度な数値解を導出することと、任意の拘束条件から方程式を導出することの区別がつかない人がいるようだ。
2017/05/02(火) 14:57:14.02ID:Q2w+FZwb
解析解が必要な場面なのか?これは
181
垢版 |
2017/05/02(火) 17:06:18.52ID:Ua7wVMyf
>>179
うちでつかってるのは数値解じゃなくて方程式まで自由じゃないけど変数の式でも出たはず。あれ内製だったかな。
AutoCADのMASSPROPとかくらいだと、悲しいかな数値解しか出ないけど、カーネルに手を出せる会社ならだいたいその辺持ってると思うよ。
182
垢版 |
2017/05/02(火) 17:07:00.26ID:Ua7wVMyf
もし内製だったら、当たり前の機能として、とは言えんな。
それはすまん。
2017/05/02(火) 17:33:48.15ID:iysKcMgd
任意の方程式を扱えないと、>>175 の問題は解けないよね?
184
垢版 |
2017/05/02(火) 22:27:44.92ID:Ua7wVMyf
>>183
押出する元の図形をプロシージャルではなくて、曲線定義で描く。
曲線への拘束条件で何を取るか次第だけど、問題文通り入れればそれで良いと思うよ。
ゴールデンウイークは試せないのがもどかしいな。
2017/05/03(水) 16:11:10.64ID:dCKp/m7W
Smalltalkって名前だけ変えて次世代言語って紹介されたら
殆どの人は信じてしまうくらい先進的だよね
進歩しすぎてて理解されない不幸な言語
2017/05/03(水) 16:33:31.70ID:RICjVVNj
比較的新しい言語ってvar t : Type形式が多い気がするけどType t形式を利用しなくなった理由ってあるのかね
2017/05/03(水) 16:46:20.28ID:MC+KZ03m
>>186
型推論の問題じゃない?多分
2017/05/03(水) 16:53:47.90ID:jNZhewdQ
型を書いたり書かなかったりする場合に記述を大きく変える必要がなくて都合がいいんだろう。
型推論を使う言語とか、動的型言語に型ヒントを追加する場合とか。
2017/05/03(水) 17:10:47.34ID:UME+lawj
たとえばC#だと基本はType tで後から型推論var t(: typeはない)を追加した
だったら最初から統一的な記法で良くね?ってなる
2017/05/03(水) 19:11:09.93ID:RICjVVNj
なるほど
型推論が流行ってる(のかはわからないが)から型推論の書き方+αで書けるようにしたってことか
2017/05/03(水) 20:37:23.26ID:21J3ISub
デニス・リッチーも型前置にしたことを後悔していたんじゃなかったっけ?
たぶん型後置の方が合理的という点には大方の一致があって、あとは合理性を取るか、Cの語順に近づけることを取るかっていう感じなんじゃないかな?
2017/05/03(水) 22:01:20.86ID:mJ/QVcTI
>>186
pascalがそういう記法だけど、コンパイル速いのはpascalがコンパイラの都合に合わせた文法だからって読んだことある。
何かしらコンパイラが解釈し易い記法なんじゃね?
2017/05/03(水) 23:27:43.76ID:AGrCBSz0
>>192
Pascalの構文は再帰的パーサを簡単に書けるLL(1)文法なんじゃなかったかな
LL(1)ならトップダウンで構文解析できるからパーサは書きやすいしパーサの効率も多分だけど高い

Cの場合は、例えば

  atype;

という宣言があった場合、"atype"という識別子が

1.typedefで型の名前として既に定義済であれば「変数が指定されてない構文エラー」となるし

2.そうでない場合、"atype"という名前のint型の変数の宣言として扱われ
  2―1."atype"という変数が既に宣言済であれば2重宣言のエラー、
  2―2.そうでなければ正しい変数宣言

となるので、構文解析の際にsymbol tableを参照する必要がある(つまり本質的なレベルで文脈依存文法)ケースが存在するので
当然ながらコンパイラの効率が下がるだろうね
194デフォルトの名無しさん
垢版 |
2017/05/04(木) 00:37:37.35ID:lJ9s6a1R
昔のpascalは1パスコンパイラだった。コンパイルの速さはそれもあったかもね。
今のobject pascalはジェネリクスもあるしどうだろう?
2017/05/04(木) 05:29:59.66ID:TpHQvZsj
>>186
v: Type形式なら変数の型だけでなく、式に型をつける構文としてもそのまま使えるから。
196デフォルトの名無しさん
垢版 |
2017/05/04(木) 09:04:54.52ID:IvFxbTrW
値の演算だけでなく型の演算として同じ記号を使うのがCのポインタや配列
これは評判が悪かった
悪いのはポインタだけだというのがJava
全部悪いから全部変えるのが次世代
2017/05/04(木) 09:34:14.90ID:L3vkrSi7
まあポインタの宣言と参照のための記号に同じ * 使ってんのは今でもなんでなんとは思う。
2017/05/04(木) 09:51:37.05ID:l8/ufUYV
関数の戻り値型の指定はPython,TypeScriptが=>、Swiftだと->が混ざって
いまいち統一感がないんだよな。:のままだと構文的にうまくない部分があるんだろうか。
199デフォルトの名無しさん
垢版 |
2017/05/04(木) 10:09:01.14ID:g5LPBSe2
>>186
C方式に慣らされてるからそう感じるだけであって
あれはパースしづらいクソ構文だよ

struct S s;
を捨てたのは何でだろうと問うべきだよ
200デフォルトの名無しさん
垢版 |
2017/05/04(木) 10:44:22.27ID:IvFxbTrW
そもそも静的型が悪いと思えば単純明快だな

静的型は悪くない、だがジェネリクスは不要、ただし Array<T> 等はこっそり入れておく
こんな状態で統一感(笑)を期待する方がおかしい
201
垢版 |
2017/05/04(木) 11:53:43.54ID:iOTKQL/7
>>200
思いっきりGoだな。
まぁ、Goに統一感なんか無いし、期待してはいかんw
あれは誰でもかける便利な言語だよ。

一切の原理原則以外を排除する崇高な思想で作られた芸術品ではなくて、
「その辺にある便利そうなものを誤謬矛盾なく突っ込めるようにそれなりにルール作りました。
 とりあえずこのルール破ると突っ込めなくなるからやめてね。コンパイルさせないよ。」
という、実用のためのルールが細かいのがGoだよ。
電動ドリルのチャックとビットの規格みたいなもん。

「対称性がなくなるからこのメソッドを実装する」という発想ではない。
202デフォルトの名無しさん
垢版 |
2017/05/04(木) 12:29:38.64ID:IvFxbTrW
原理原則というのは崇高な思想じゃなくて無駄な仕様変更の防止という実用の技術だ
2017/05/04(木) 12:53:07.54ID:g5LPBSe2
なんだ PHP だったのか
204
垢版 |
2017/05/04(木) 13:45:55.83ID:iOTKQL/7
>>202
口実やね。
専用品と汎用品なら、圧倒的に前者の方か仕様変更の回数は少ない。
無理に延命したり使いましたりしたいからこそ、よくわからん仕様変更するハメになる。
無駄な仕様変更なら、最初からしなけりゃいいんだよ。
無駄なんでしょ。
使い捨てを使い捨てと認識する事こそがスタート地点。
歯が折れたら取り替えたいし、違う歯を使いたいからチャックがあるんだから。
歯の代わりにバフ付けることも出来るけど、それに対して仕様変更なんか要らないでしょ。バフを新規に作るだけじゃん。
置換原則出してきて証明する必要も無い。

>>203
そうだ、と言う認識だなぁ、俺は。
PHPも同じ理由で、いろんな意味でとても潔い言語だと思うよ。
2017/05/04(木) 15:09:17.79ID:TpHQvZsj
言語設計とドリルチャックを一緒くたとか…完全に呆れた
206
垢版 |
2017/05/04(木) 17:00:05.42ID:iOTKQL/7
呆れるなら簡単だからな。
どう違うかをきっちり教えて欲しいわ。
本当に勉強になったら素直に勉強になったと言うことにしてるし、実際何度もそうレスしてるよ。

言語なんて外から見たときに一意に呼び出し規約や入出力が決まってりゃそれでいいんだよ。
これでも素晴らしい言語とやらを5個10個と多数見てから言ってるんだけどな。

それ以上の、実用性以上の思想の旗を振りたいなら、何故その思想が必要か語ってほしい。
207
垢版 |
2017/05/04(木) 17:07:42.27ID:iOTKQL/7
しかし、式に型をつける構文が後置だから出来るのは本当なのかな。
キャストの前置や後置と何か違うのかなぁ。

って考えたら「宣言文 名前 型」の方が遥かに簡単にパースできるなって思わんのかな。
式に型をつけるってのも、コンパイラに教える意味での型か、キャストの型か2つの意味あるけど、どっちの事かな。
疑問。
208デフォルトの名無しさん
垢版 |
2017/05/04(木) 21:21:01.22ID:IvFxbTrW
>>204
多分それは使い捨てではなく交換
これを捨てる代わりにあれが欲しい
見返りがあれば捨てるが無条件に捨てられそうになったら使い捨てに反対するだろう
2017/05/04(木) 22:18:26.60ID:L3vkrSi7
むしろ変な原理原則に縛られてる方が糞仕様の増加を招くのだが。
haskell みたいにな。
210デフォルトの名無しさん
垢版 |
2017/05/04(木) 22:34:29.63ID:IvFxbTrW
確かに、関数型とかいう変な原理でHaskellを理解しようとしてるならやめた方がいい
静的型の原理だけで理解できるから
211
垢版 |
2017/05/04(木) 22:35:23.26ID:iOTKQL/7
>>208
「交換できる、交換出来ない」と「使い捨てである、改良を加えて連用する」は同時にどの組み合わせも成り立つのでは?
これを捨てる代わりに、これと同じ機能プラスαの新ライブラリを作る、みたいな話で、
完全に前方後方互換の代替品であるかもしれないし、そうではないものかもしれない。

そういう意味では、無条件に捨てる事ができるってのは立派な見返りだよ。
2017/05/04(木) 22:36:44.00ID:hGwzsYkf
良いんだよ。
Haskellは美しさが売りなんだから。
むしろ美しさを保ったまま、どこまで実用的なの作れるかが楽しいんだよ。

そう言う意味じゃsmalltalkと同じ、純粋xx言語でxxの真髄理解するなら〜って言語であって、次世代言語じゃあない。
213
垢版 |
2017/05/04(木) 22:36:44.02ID:iOTKQL/7
>>210
ならPrologの方が賢いし、Scalaの方がまともだし、Lispの方が最低限の原理から出来てるから、Haskellは要らない子だな。
214
垢版 |
2017/05/04(木) 22:39:24.44ID:iOTKQL/7
>>212
それそれ。エスペラント語とかロジバンみたいなもん。
実用的ではないけど面白いのは認める。
2017/05/05(金) 01:26:49.15ID:xfO5LNpr
Haskellは代数的データ型が便利
何気にあのレベルに便利な型システム他に見ない
216
垢版 |
2017/05/05(金) 03:41:35.36ID:05XvGSte
>>215
OCamlの方がシンプルかな。
Haxeの方が記法はきれい。
Kotlinはいささか冗長で使い物になるのかな?みたいな羊感出てるけど、when使うときに逆に便利になる。
2017/05/05(金) 05:49:16.66ID:IB1/E975
SmalltalkとHaskellは使ってみるとゴミと分かる二大巨頭
信者が煩いとこもソックリ
2017/05/05(金) 07:09:34.37ID:+77JIYq6
>>217
アンチがウザいのもそっくりだよね
2017/05/05(金) 07:18:58.13ID:IB1/E975
>>218
どっちの信者?
2017/05/05(金) 07:39:38.28ID:dc5WkLcd
>>217
アンチが無知なのもそっくりだよね
2017/05/05(金) 08:48:03.35ID:2f8pCQ29
IntelliJとかのマトモなIDEを使った後に
Smalltalkの時代遅れのIDEモドキ?を使ってみると、
終わった言語の進化に取り残されてる感がよく分かるし
こんな出来損ないを使うの強制されるSmalltalkerって哀れだなーって優しい気持ちになれるよ
2017/05/05(金) 09:20:19.67ID:7NmAzLlS
>>221
言語としてはどこらへんがゴミなの?
2017/05/05(金) 09:39:59.96ID:2f8pCQ29
>>222
動的型言語の中ではぶっちぎりで冗長なコードになるところ
224デフォルトの名無しさん
垢版 |
2017/05/05(金) 09:54:56.24ID:WrAdTxbV
文字列クラスを改変したら元に戻せないという話はSmalltalkにも当てはまるのかな
文字列クラスクラスがあれば壊れたクラスを使い捨てて新品のクラスに交換できるのに
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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