トップページtech
1002コメント366KB

次世代言語議論スレ【Go Rust Haskell Scala Erlang Elixir】 第二世代 [無断転載禁止]©5ch.io

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2017/02/11(土) 21:32:37.61ID:0GjTSBdX
いざ、語ろうぞ。

前スレ
次世代言語議論スレ【Go Rust Haskell Scala Erlang Elixir】 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1479434349/
0002デフォルトの名無しさん2017/02/11(土) 21:33:46.72ID:7Nq7SR91
>>1
乙です。
0003デフォルトの名無しさん2017/02/11(土) 21:36:55.91ID:Xp+0sQ+z
おつおつ
0004デフォルトの名無しさん2017/02/11(土) 21:43:38.85ID:2PZ2/Gs1
>>1
乙乙!!

前スレ >>998
落ちこぼれのおいらでさえ半分は理解出来た。
(ちなみに、マージソートは図解されたアルゴリズム入門書読んでやっと理解してコード書けたと言う低脳っぷりだ)
そいつ才能無い。
予言する。そいつ役立たず。

若かりし日のおいらでさえ触った事ないVBの仕事渡されて、その日にVB本買って勉強しながら書いてたっチューに。
分からんかったら質問しろよ。
入門書渡される有り難みも分かれよ。
0005デフォルトの名無しさん2017/02/11(土) 21:56:37.03ID:7Nq7SR91
>>4
まあ、意識はちょっと低いのかもですね。
Haskellは既存のパラダイムが通用しにくいので新参の入るいいチャンス、
却って染まってない方がいいと吹聴して、
よーし、じゃあ一発逆転したるとボルテージが上がったところであれだったから寂しかった。

前スレで統合開発環境の話がでてたけど、みなさんどんな感じですかね?
自分はemacsにghc-mod、company、hlintあたり(gitのチュートリアルのやつ)を入れてます。
布教できそうになったら、この辺の環境を整えてあげようと思ってますがご意見いただきたい。
0006デフォルトの名無しさん2017/02/11(土) 22:09:51.95ID:2PZ2/Gs1
本格運用ならおいらの出番はない。
terapadがお気に入りだから、tab一回をスペース4個にする以外何もしてない。。。

最近日本語情報も増えてきたと言ってもYesodは最低限のwebアプリ作ってお終いばかりだから、英語出来ないとキツイかもね。
頑張って。
0007デフォルトの名無しさん2017/02/11(土) 22:29:17.59ID:j6x3YnbP
前スレ903

>sum = foldr (+) 0
>product = foldr (*) 1

自分が思うにsum=, product=みたいに関数の定義はせずに、
使うところに直でfoldr (+) 0、foldr (*) 1 って書けるのが良い所なんじゃないかな…と

というのは、まずなにより定義する関数の数が減るし、
しかも使う所に(短くコンパクトに)処理の定義が書かれてるから、
わざわざ関数の定義部を参照しなくてもなにやってるか分かってより可読性が上がると思うから

メタレベルのロジックを抽象化して関数にしといて、その場での個別具体的な処理は
一時的な変数のごとくその場で合成して使い捨てる的な書き方を自分は良くするんだけどアンチパターンなんだろうか…
0008デフォルトの名無しさん2017/02/11(土) 22:30:03.25ID:ria0yk5C
「7週間で7つの言語」だっけ?
ちょっと古いけど徐々に関数型が理解できるような構成になってるから最初に特定の言語の本すすめるよりいいかも
0009デフォルトの名無しさん2017/02/11(土) 22:57:21.83ID:7Nq7SR91
>>6
おけ、頑張ります。Emacsもいいっすよ。
>>8
あの本、Haskellの辺をちら見ですが所々ギャグ入ってて面白げでした。
周りから徐々に興味をもってもらうのは大事ですね。次は前スレで挙げられてた本と共に検討してみます。
0010デフォルトの名無しさん2017/02/11(土) 23:03:47.51ID:7Nq7SR91
>>7
自分もスクラッチですね。
高階関数とλ式の組み合わせの良さって、その場でのプロセスの可読性とフットワークの軽さだと思ってます。
長けりゃwhereあたりで下に一時的に書いておくくらいで。
諸氏の意見を自分も聞いてみたいです。
0011デフォルトの名無しさん2017/02/12(日) 02:03:25.90ID:eJbIlXCt
F#で関数型っぽく?FizzBuzz


let Fizz x = (x%3=0, "Fizz")
let Buzz x = (x%5=0, "Buzz")
let FizzBuzz x = (x%15=0, "FizzBuzz")

let compose flist x =
  let bind z f =
    match z |> fst |> f with
    |(false, _) -> z
    |(true, y) -> (fst z, y)

  List.fold bind x flist

let transformer = compose [Fizz; Buzz; FizzBuzz]

[1..50]
|> List.map (fun x -> (x, string x))
|> List.map transformer
|> List.map (fun x -> x |> snd |> printfn "%s")
0012デフォルトの名無しさん2017/02/12(日) 02:11:44.19ID:ekfokMCG
// Java8で関西型FizzBuzz
IntStream.rangeClosed(1, 1).mapToObj(num -> {
  if (num % 15 == 0) {
    return "FizzBuzz";
  } else if (num % 5 == 0) {
    return "Buzz";
  } else if (num % 3 == 0) {
    return "Fizz";
  }
  return num;
}).forEach(System.out::println);
0013デフォルトの名無しさん2017/02/12(日) 02:38:59.43ID:VGD3y4dr
>>12
関数型っつーかメソッドチェーンでは。
RubyとかJSでよくみるやつ。

JavaScriptで学ぶ関数型言語みたいな本を見たときは詐欺乙と思ったなそういえば。
0014デフォルトの名無しさん2017/02/12(日) 02:42:05.20ID:32IkYRZ8
で、スレタイに上がってる言語はいつ実用的になるのよ?
企業がバックにいるGo、Rustはともかく
Haswellとか関数型信者のマウンティングにしか使われてない現状だし
0015デフォルトの名無しさん2017/02/12(日) 02:43:39.06ID:32IkYRZ8
別に言語体型の勉強でHaswellとか学ぶのは勝手にすればいいけど、
わざわざ既存の言語のコミュニティに入ってきて「オブジェクト指向は古い!これからは関数型!」とか
ほざかれると目障りで仕方ない
0016デフォルトの名無しさん2017/02/12(日) 02:48:08.35ID:ekfokMCG
>>15
Haswellは時代遅れ
Cannonlakeやで、池沼のお兄さん
0017デフォルトの名無しさん2017/02/12(日) 02:50:28.80ID:RMJaLK6d
>>14
Go Googleの犬になるなら既に実用的
Rust 書くまでのハードル高いわライブラリがゴミだわでそのうち消える
Haskell 高等選民様によって細々と使われ続けるが永遠にターンは来ない
Scala ゴミ
Erlang/Elixir ニッチな需要で生き残る
0018デフォルトの名無しさん2017/02/12(日) 02:50:51.11ID:eJbIlXCt
>>11>>12の違いは何なんだろうか…

感覚的な話だけど、会社やチームづくりに例えるなら
>>12は仲良く内製で開発(処理)する感じ
>>11は派遣使ってアウトソーシングしまくる感じがしますねぇ…
0019デフォルトの名無しさん2017/02/12(日) 02:55:00.32ID:32IkYRZ8
そうそうHaskellだった

どう考えてもオブジェクト指向の方が応用範囲が広い
GUIアプリとかHaskellで作れるのか?やるにしても気が遠くなるわ
0020デフォルトの名無しさん2017/02/12(日) 02:57:25.21ID:32IkYRZ8
まーjavaとc++にラムダの存在を教えてくれた事だけは感謝だわ
あれは確かに便利。
0021デフォルトの名無しさん2017/02/12(日) 02:57:51.45ID:oncvvJ9K
剰余演算を全く使わないFizzBuzzがあったような…こうだっけ
import Data.List (zipWith3)
import Data.Monoid
data FizzBuzz = None | Fizz | Buzz | FizzBuzz | Number Int
  deriving (Eq, Show)
instance Monoid FizzBuzz where
  mempty = error "something wrong"
  None `mappend` None = None
  None `mappend` Buzz = Buzz
  None `mappend` Number n = Number n
  Fizz `mappend` Buzz = FizzBuzz
  Fizz `mappend` _ = Fizz
  Buzz `mappend` _ = Buzz
  FizzBuzz `mappend` _ = FizzBuzz
  _ `mappend` _ = mempty
toString :: FizzBuzz -> String
toString (Number n) = show n
toString fb = show fb
lis = zipWith3 (\x y z -> x <> y <> z)
               (cycle [ None, None, Fizz ])
               (cycle [ None, None, None, None, Buzz ])
               [Number n | n <- [1..]]
main = mapM_ (putStrLn . toString) $ take 100 lis
0022デフォルトの名無しさん2017/02/12(日) 03:01:23.24ID:VGD3y4dr
>>19
HaskellからC叩けるから、gtkなりQtなり使えば作るだけなら気は遠くならんぞ?

オブジェクト指向と関数型は問題へのアプローチの仕方が違うだけで「オブジェクト指向の方が応用範囲が広い」はガセだ。
「オブジェクト指向は古い!これからは関数型!」とか言って殴り込んでくるやつが目障りなのは激しく同意するが。
0023デフォルトの名無しさん2017/02/12(日) 03:01:59.08ID:32IkYRZ8
確かにマルチスレッドという問題が普通の現場でも表面化してきたのは頭の痛い問題だが、
それに対する答えが関数型とは全く思えないね。

確かにマルチスレッドの問題単体で見たら関数型の方が優れているかもしれないが、
それだけのためにオブジェクト指向のメリットを全部捨ててるんだもんなぁ。
こりゃ普及せんわと
0024デフォルトの名無しさん2017/02/12(日) 03:18:20.25ID:VGD3y4dr
オブジェクト指向といえばHaskellのLensって今どんな感じなんだろう。
0025デフォルトの名無しさん2017/02/12(日) 03:50:30.23ID:ashgYgUc
>>11
F#もうちょういシンプルに書いてよ
https://www.rosettacode.org/wiki/FizzBuzz#F.23
0026デフォルトの名無しさん2017/02/12(日) 04:35:42.91ID:UIkULlkI
>>21

fizzbuzz(Max) :- fizzbuzz(M,A),writef('%w ',[A]),Max = M,!.

fizzbuzz(M,A) :- fizzbuzz([_],M,[M,M,fizz,M,buzz,fizz,M,M,fizz,buzz,M,fizz,M,M,fizzbuzz],[],A).

fizzbuzz(Ln,I,L,[],A) :- fizzbuzz(Ln,I,L,L,A).
fizzbuzz(Ln,I,L,[A|R],A) :- length(Ln,I).
fizzbuzz(Ln,I,L,[_|R],A) :- fizzbuzz([_|Ln],I,L,R,A).
0027デフォルトの名無しさん2017/02/12(日) 04:44:39.39ID:1dYlSNDw
OCaml、F#「!?」
0028デフォルトの名無しさん2017/02/12(日) 04:49:45.47ID:eJbIlXCt
>>21
書き直してみた
もはや最速DSLっぽい何かに…

let if_true_then flist x =
  let bind z f =
    match z |> fst |> f with
    |(false, _) -> z
    |(true, y) -> (fst z, y)

  List.fold bind (x, string x) flist |> snd


let Fizz x = (x%3=0, "Fizz")
let Buzz x = (x%5=0, "Buzz")
let FizzBuzz x = (x%15=0, "FizzBuzz")

[1..50]
|> List.map (if_true_then [Fizz; Buzz; FizzBuzz])
|> List.iter (fun x -> printfn "%s" x)
0029デフォルトの名無しさん2017/02/12(日) 04:57:02.22ID:eJbIlXCt
>>28>>25へを意図してた

F#初めて書いたけど無限にリファクタリングしたくなるな楽しくて
0030デフォルトの名無しさん2017/02/12(日) 05:00:54.45ID:1dYlSNDw
あ、>>27>>22へのレスね。
オブジェクト指向関数型言語なのに普及しやしねぇ。。。
0031デフォルトの名無しさん2017/02/12(日) 09:15:26.58ID:aVrWxIrs
Haskellにはoopの機能が無い?
Smalltalkさんのことバカにしとるんですか?
0032デフォルトの名無しさん2017/02/12(日) 09:47:43.03ID:1dYlSNDw
HaskellにOOPは無いよ。

なぜsmalltalk?
0033デフォルトの名無しさん2017/02/12(日) 10:04:50.15ID:ekfokMCG
OOPとFPを創聖合体させたScalaが最強なんやなって
0034デフォルトの名無しさん2017/02/12(日) 10:11:27.09ID:FUIQXWCG
どんな言語使っても糞なものしか作れんやつはいる。
まずは「プログラミング作法」でも読めと言いたくなる馬鹿が多すぎる。
0035デフォルトの名無しさん2017/02/12(日) 10:15:06.25ID:pm4QJbUk
>>34
タイトル間違えてる時点で同類だろ
せめて読んでから言おうな
ソフトウェア作法とプログラム書法のどっちか知らんが
0036デフォルトの名無しさん2017/02/12(日) 10:18:41.84ID:pm4QJbUk
>>20
そもそもC++erとHaskellerは重複してるだろ
お前も発言からマトモにプログラム組んでるやつとは思えない
0037デフォルトの名無しさん2017/02/12(日) 10:21:55.70ID:ekfokMCG
>>35
どっちンゴ?読んでみたい
けど紙の本しかない遺物やんけ
0038デフォルトの名無しさん2017/02/12(日) 10:26:15.52ID:pm4QJbUk
>>37
すまん俺が間違えてた
さらに同じ著者で別にプログラミング作法と言うのが出ている
自分の方が古い知識で大恥かいてしまった
0039デフォルトの名無しさん2017/02/12(日) 10:28:10.46ID:pm4QJbUk
>>34
謝罪はこっちに言うべきだったな
失礼な物言いで大変申し訳ない
0040デフォルトの名無しさん2017/02/12(日) 10:34:32.79ID:l4guIXkt
爺の頭に浮かぶのは
記述言語にRATFORを採用した方の本
0041デフォルトの名無しさん2017/02/12(日) 11:44:53.86ID:ekfokMCG
初版1980とか2000とか、ワイより年上で草生える
こんな時代から言われてることが、未だ当たり前どころか知られることもなく、
次世代言語が産まれては消え、ジャップランド土人は炎上プロジェクトとデスマ

いったい何なんや?
0042デフォルトの名無しさん2017/02/12(日) 12:14:02.72ID:D9dWxmTY
>>15
次世代言語スレにこの書き込みは面白いな
ここまで見事なブーメランはそうそう見れないぞ
0043デフォルトの名無しさん2017/02/12(日) 13:46:55.00ID:SEA4QyVV
ブーメランで思い出した
GUIとオブジェクト指向は直交する概念だから、GUIと関数型の組み合わせでもOK
0044デフォルトの名無しさん2017/02/12(日) 14:04:50.15ID:mqpRMrYe
Prologはやっぱり凄いな。数値演算がない。lengthが隠してるのか。 >>26
0045デフォルトの名無しさん2017/02/12(日) 14:10:48.77ID:ekfokMCG
>>44
言うほどか?
正直何書いてるのかさっぱりわからんMMMM
0046デフォルトの名無しさん2017/02/12(日) 14:57:40.58ID:32IkYRZ8
>>42
俺のは苦情だよ。どうせQiitaとかでマウンティングしてる奴らが多そうだしなここ
0047デフォルトの名無しさん2017/02/12(日) 15:08:07.55ID:YSMQxpB5
直近の次世代言語はTypeScriptだろうな
0048デフォルトの名無しさん2017/02/12(日) 15:11:57.61ID:7CrFTlLt
>>46
>>14>>19>>23も苦情なの?
わざわざ次世代言語のコミュニティにマウンティングしに来てるようにしか見えないけど
0049デフォルトの名無しさん2017/02/12(日) 15:17:28.61ID:32IkYRZ8
>>48
な、イラつくだろ?
これと同じ事を日常的にやってるのが関数型信者(というよりHaskell信者)。
0050デフォルトの名無しさん2017/02/12(日) 15:23:32.88ID:ZBx4BhwO
負けず嫌いでマウンティングしようと必死なんだけど、
叩くために持ち出した内容すら満足なレベルでなくて、失敗してる感じ。

オブジェクト指向の擁護側からも煙たがれてそうだね。
0051デフォルトの名無しさん2017/02/12(日) 15:41:22.09ID:ekfokMCG
>>49
お薬のお時間ですよ
0052デフォルトの名無しさん2017/02/12(日) 15:44:30.40ID:hey2nQ+P
>>49
俺はどこにもマウンティングしたことないのに今被害受けてるんだけど?
しかもその上さらに「な?イラつくだろ?」って勝ち誇られてるんだけど?
Qiita に出没するとかいうよくわからん関数型信者よりおまえがうざいよ
嫌だ嫌だといってる相手と同じことして恥ずかしくないの?
0053デフォルトの名無しさん2017/02/12(日) 16:16:33.77ID:0v9V4t1K
>>49
お前他板も荒らしてそうだな。
0054デフォルトの名無しさん2017/02/12(日) 16:20:13.28ID:aRM3PRRH
「相手は悪だからこちらの手段は正当である」ってどっかで聞いた理屈だな。

言語パラダイムも大事だが、周辺ツールや標準ライブラリの充実も大事じゃないかね。
そういう意味で「電池付属」を推してる次世代言語ってGoくらいか?
0055デフォルトの名無しさん2017/02/12(日) 16:43:28.53ID:Lac5VkvP
>>44
今日twitterにこのコードの解説が載ってたけど難しいですね。
わざとそうしているんですね。
0056デフォルトの名無しさん2017/02/12(日) 17:04:14.13ID:FjwSaYM1
>>44
Prologのプログラムは読むだけだと、どの言語より易しいっていう
印象ですが、このコードは難しいですね。剰余計算どころか計算が
でてこない。Mが沢山ならんでいるのもわけが分かりません。
0057デフォルトの名無しさん2017/02/12(日) 17:05:37.62ID:SEA4QyVV
競技プログラミングの類は難しい方が楽しい
相手がそういう競技を選んだから試合中はわざとそういうことをするのは正当である
0058552017/02/12(日) 17:20:26.48ID:rzlVGyJj
>>56
>>22のコードはtwitterでPrologおじさんとして知られている方が
書き込んだのではないかな。今日の午前中に連続して5通くらい、
このコードの解説を書き込まれていました。
0059デフォルトの名無しさん2017/02/12(日) 17:31:14.49ID:ashgYgUc
PrologのはClojureの例に載ってたこれと考え方近いのかな?
いくら何も大文字一文字が多すぎな気がするが

(take 100 (map #(nth (conj (cycle [% % "Fizz" % "Buzz" "Fizz" % % "Fizz" "Buzz" % "Fizz" % % "FizzBuzz"]) %) %) (rest (range)) ))

#は部分適用
%は部分適用時に引数を差し込む位置
(nth [1,2,3] 2) => 3
(conj [1,2,3] 2) => [1 2 3 2]
(take 5 (cycle [1,2,3])) => (1 2 3 1 2)
(take 5 (range)) => (0 1 2 3 4)
(take 5 (rest (range))) => (1 2 3 4 5)
(#(nth % 2) [1,2,3]) => 3
0060デフォルトの名無しさん2017/02/12(日) 18:09:04.18ID:rzlVGyJj
>>59
Clojureのコードの方はメタな表現。Prologの方は非決定性の単純な再帰。
その違いはあるけれど、やっていることは同じのように思います。
0061デフォルトの名無しさん2017/02/12(日) 18:53:57.11ID:32IkYRZ8
前スレ

981 デフォルトの名無しさん sage 2017/02/11(土) 20:43:04.84 ID:7Nq7SR91
>>978
>初心者はむしろJavaとかよりHaskellのが算数・数学に近いから馴染み易い。

これ、自分もそう思ってて、
会社の初心者のエンジニアにこう吹き込んでプログラミングHaskell渡したら、
舐めてんのか的なリアクションだったわ。

実績ある?布教したいので、うまいやり方を教えて欲しい。


983 デフォルトの名無しさん sage 2017/02/11(土) 20:50:51.13 ID:2PZ2/Gs1
それはもう、エンジニアとして初心者でも、それなりに手続き脳に固まってるんだと思う。

手前勝手だが、パブーにHaskell入門以前ってepubの本置いてるので、使えると思ったら読ませてみて。
(パブー Haskell で検索)

あんまり純粋関数型言語ってブランドに振り回されてもいけないと思う。
0062デフォルトの名無しさん2017/02/12(日) 18:55:17.88ID:32IkYRZ8
初心者のエンジニアにわざわざHaskellを布教する鬱陶しさ
それで嫌な顔されたら「手続き脳」
0063デフォルトの名無しさん2017/02/12(日) 19:05:04.40ID:ekfokMCG
な、手続き脳だろ?
0064デフォルトの名無しさん2017/02/12(日) 19:06:39.11ID:ElZAn973
手続き脳は悪口じゃなくて自身の経験からですが。。。
私はJavaも触った上でHaskellから得られるものは多いと言ってますが、あなたは?
(C#がメインですが)
0065デフォルトの名無しさん2017/02/12(日) 19:12:03.87ID:VGD3y4dr
>>64
>>20 >>23 って言ってるから何言ったってしゃーないんじゃね?
坊主憎けりゃ袈裟までって奴だと思う。
実際Haskell原理主義者がうざいっていうのは超同意するところではあるんだけど、
本人がその原理主義者と同じ行動してりゃ世話ないわ。
0066262017/02/12(日) 19:18:08.80ID:UIkULlkI
>>56 fizzbuzz(M,A) :- fizzbuzz([_],M,[M,M,fizz,M,buzz,fizz,M,M,fizz,buzz,M,fizz,M,M,fizzbuzz],[],A).
この本体( :- の右側)のfizzbuzzの第三引数のリストのMがPrologプログラマにとっては
盲点なんです。本来は [1,2,fizz,4,buzz,fizz,7,8,fizz,buzz,11,fizz,13,14,fizzbuzz]
であるところを全部Mを置いたらfailしてしまうと考えてしまうのです。
ところが、実際に利用するのは先頭の要素だけ。一時的に
[1,1,fizz,1,buzz,fizz,1,1,fizz,buzz,1,fizz,1,1,fizzbuzz]となったとしても
次はバックトラックしてこの束縛は解消してしまいますから。POPして出てくるのは
どれもMで、すなわち第二引数と同じであるサインが出続けるというわけです。
0067262017/02/12(日) 19:26:06.73ID:UIkULlkI
それではfizzやbuzzの時はどうなのか。これはMではありませんから、
第二引数と無関係です。それでこのリストからPOPされたものが最後の
引数、すなわち、Xとなります。解です。
Mの場合はカウンターリストLnの長さがlength述語でMとなり、それがXと
なりますから、1,2,4,7,8,11・・などが解として埋まっていくのです。
0068デフォルトの名無しさん2017/02/12(日) 19:37:29.11ID:32IkYRZ8
いやいや初心者でまだ仕事に使う言語覚えるだけで精一杯のやつに
Haskellなんか無理やり押し付けて、
それで拒否られてるのに性懲りもなくまだ布教しようとしてる奴はヤバイでしょ。
マジで宗教じゃん。
0069デフォルトの名無しさん2017/02/12(日) 19:43:22.57ID:SukjnWiy
一番最初に授業でやったのがLispだったけど特に抵抗は無かったなぁ
でも関数型は手続き型に較べて抽象度が高い傾向にあるし頭弱い人には厳しいと思う
0070デフォルトの名無しさん2017/02/12(日) 19:46:25.84ID:32IkYRZ8
まーウザがられるのは承知でやってるからね。
普段Haskell原理主義がやってる事と同じ事を
そのままこのスレでやってみただけだし。
0071デフォルトの名無しさん2017/02/12(日) 19:47:01.73ID:52ZDIEYO
仕事で使う言語とは別に、コードのまとめ方の勉強としてHaskell触らせるのがそんなにおかしいかね?
仕事で使わないものの勉強を押し付けられてたまるかっていうのは分からんでもないが、地力育てるって意味はあるしな。
0072デフォルトの名無しさん2017/02/12(日) 19:49:46.33ID:32IkYRZ8
>>71
自分が新人の頃の事忘れてるんじゃねーの?お前
仕事を覚えなきゃいけない、職場にも馴染まなきゃいけない。
そんな大変な時期に新しくもう一つ言語なんて学ぶ余裕ある訳ないだろ。

押し付けって言うんだよそういうのは。
本人の為に全くなってない。
0073デフォルトの名無しさん2017/02/12(日) 19:51:19.51ID:ElZAn973

教育期間とか無かったですか?
Haskell教えるっと言っても、触り程度で良いですし。
それなら、半日も掛かりませんよ。
それでも十二分に大きなものを得られます。
(教えたいのはHaskellではなく、構造を見抜く力。Haskellはその手段)

次の日からはどうぞ仕事用の言語を覚えて下さい。
0074デフォルトの名無しさん2017/02/12(日) 19:53:17.09ID:52ZDIEYO
>>70
狂人の真似とて大路を走らば、即ち狂人なり。
って言葉知ってる?
0075デフォルトの名無しさん2017/02/12(日) 19:55:10.92ID:32IkYRZ8
>>73
そういうのが有難迷惑って分からないかな?
自分がハマってるからって、仕事と関係ない言語を先輩後輩の力関係使って無理やり触らせるとか迷惑すぎるから。

そんな暇があるなら仕事のことを先に覚えたいに決まってるよね?新人君の気持ちとしては。
0076デフォルトの名無しさん2017/02/12(日) 19:59:58.88ID:ElZAn973
Haskellは手段書いてるやん。
言語覚えるより考え方覚える方が重要なのはプログラマなら分かるよね?
文法覚えたけど入門書以上の事何も書けないって奴を何人も見て来たよ。
0077デフォルトの名無しさん2017/02/12(日) 20:06:49.91ID:52ZDIEYO
>>72
Haskellじゃねーけど新人のころに直属のOJTに
仕事と全く関係無いLinuxの低レベル処理まわりの勉強させられたが
その時には役に立たなくても数年後に効いたのよね。

全然考え方の違う言語さわって見聞広める分にはいいんじゃねえの。
まあ強制する謂れはないかもしれんが。
0078デフォルトの名無しさん2017/02/12(日) 20:08:53.00ID:32IkYRZ8
だったら仕事を通じて必要なことを教えてやればいいだけ
訳の分からない言語の本読ませるより、そっちのほうがよっぽど新人も言う事聞くわ。
0079デフォルトの名無しさん2017/02/12(日) 20:09:42.74ID:32IkYRZ8
>>76へのレスな。
0080デフォルトの名無しさん2017/02/12(日) 20:13:57.00ID:32IkYRZ8
大体自分が新人の頃考えてみろって話だよ。
死ぬほど覚える事一杯あるのに、仕事と関係ない言語の本なんて読んだってアタマに入る訳ないだろうが。

お前らだってHaskellだの勉強始めた時は
ある程度仕事も覚えて余裕ができた頃だろうが。
自分と新人を同じ土俵で考えるなよ。
0081デフォルトの名無しさん2017/02/12(日) 20:23:57.35ID:VGD3y4dr
>>80
院生時代に学会と論文書きで死にそうになりながらHaskell覚えてすまんな
0082デフォルトの名無しさん2017/02/12(日) 20:27:34.22ID:VGD3y4dr
むしろ新人の頃は生まれて一度も使ったことがないC++と関連ライブラリの使い方覚えるのに必死だったな。
別に既存コードで使ってる部分ないのにわざわざテンプレートもやらされてからに。

それでも今役に立ってるからいいが。
0083デフォルトの名無しさん2017/02/12(日) 20:27:37.03ID:GC8FZ4sL
Haskell叩き名目に周囲に憂さ晴らししてるだけだろ
嫌儲に帰れ
0084デフォルトの名無しさん2017/02/12(日) 20:32:01.96ID:VGD3y4dr
いやHaskell原理主義者にヒャッハーされた憂はめっちゃ良くわかるんだよな。
だからこそそいつらと同じ事やって同じところに堕ちてりゃしゃーないわな感が強い。
0085デフォルトの名無しさん2017/02/12(日) 20:33:07.80ID:zPfOuuFT
関数型のおいしい部分は別にHaskellじゃなくても非純粋関数型で学べるし
そういう部分だけ勉強したいって人にはHaskellじゃなくてもっといい選択肢があるんじゃないかな
Haskellだとモナドなんかの初心者には理解しにくい部分がどうしても気になる
今は書籍もサイトも充実してきて、順を追って学べば誰でも既存のモナドを使えるレベルになれるけど
それってこの場合の本来の目的とは違うし
今Haskellやってる人は自分も含めて楽しいからやってるって人がほとんどでしょ
0086デフォルトの名無しさん2017/02/12(日) 20:36:00.02ID:ol+GRPUy
マウンティングの為に悪意で薦めるか、相手のことを思い善意で薦めるか、そこじゃね?
0087デフォルトの名無しさん2017/02/12(日) 20:36:05.84ID:VGD3y4dr
>>85
そういう観点から言うとOCamlかScala辺りが候補か?
0088デフォルトの名無しさん2017/02/12(日) 20:38:14.03ID:bL+fjtQh
>>87
LispかOCamlでしょ
ScalaはJavaやった後でなきゃ勧めちゃ駄目だと思う
0089デフォルトの名無しさん2017/02/12(日) 20:39:59.90ID:VGD3y4dr
Lispか。Scheme辺りなら処理系も手に入りやすいな。
0090デフォルトの名無しさん2017/02/12(日) 20:46:37.83ID:ol+GRPUy
それでSICP読めとかやると今度はLISP叩きが始まるのか。
0091デフォルトの名無しさん2017/02/12(日) 20:47:36.66ID:ElZAn973
>>80
むしろ新人の頃のが暇じゃね?

どんなコード書く(書ける)か分からん新人に、いきなり仕事は振らない。
独習C渡されて、数日はひたすら入門書読んで練習問題解くだけだった。(教育期間)
確かに最初の仕事はCだった。(と言うか、C++でベターC)

だけど、Javaだって当時仕事と関係無いけど自分で覚えた。
VBに至っては一回きりの仕事な上に、教えて貰ってすら無い。
覚えながら書いた。

文法覚えるより、練習問題させたかったんだと思うけどな。
割とすぐにVBだったし。
0092デフォルトの名無しさん2017/02/12(日) 21:02:49.53ID:b/z7m0Iw
LISPは括弧の羅列とか逆ポーランド記法とか、虫酸が走る要素満載だから
OCamlとF#で決まりだな
0093デフォルトの名無しさん2017/02/12(日) 21:26:51.34ID:Lac5VkvP
関数型といっても、テキスト処理なんかには全く無力だから。
これからは前途多難だな。
0094デフォルトの名無しさん2017/02/12(日) 21:32:22.04ID:D9dWxmTY
括弧の羅列で虫酸が走るやつはLispエアプだってはっきりわかんだね
Cの中括弧の羅列のほうがよっぽどウザい
0095デフォルトの名無しさん2017/02/12(日) 21:32:47.33ID:9Y6cAsF4
SICP通ってないのにプログラマ面して次世代かたってんのか

だいたいGoのベースにあるCSPがいつの時代の概念かしってんのかよ

正直次世代の言語は次世代のハードがないかぎり生まれて来ない
現行のアーキテクチャでやりつくせることは概ねどんな言語でもやりつくせる
あとはシンタックスシュガーのこのみでしかねえんだよ
0096デフォルトの名無しさん2017/02/12(日) 21:33:18.96ID:ashgYgUc
ClojureとF#で

JavaScriptで関数型っていうのを詐欺って書いてる人いたけど
実際にWebサイトいじくるコード書きながら部分的だけど関数型の考え方を身に付けることができるから
手続き脳からの脱却する初手としては有効だと思う
0097デフォルトの名無しさん2017/02/12(日) 21:57:05.96ID:ElZAn973
>>93
え、テキスト処理に関数型は向いてると思うが。。。
LLのが手軽ってだけで。
だからこそ堅牢性、並列性とテキスト処理必要なWeb鯖とか向いてるとも思う。
0098デフォルトの名無しさん2017/02/12(日) 21:59:08.12ID:RJmiTmR1
今この時代SICP読むのはもう趣味でしょ
CTMとかなら得るものあるだろうけど
0099デフォルトの名無しさん2017/02/12(日) 23:09:03.26ID:wxhE3H1K
ocaml覚えた動機は、エロゲーからテキストをぶっこ抜くツールを
新作ゲームに対応させるため
0100デフォルトの名無しさん2017/02/13(月) 00:49:48.93ID:9ylADHSn
CTM欲しいけど日本語のはもう絶版なんだろうか
いずれにしてもSiCPの枠組みをでてない次世代ってなんなんだって話
0101デフォルトの名無しさん2017/02/13(月) 01:50:16.82ID:bklcWYrm
>>91
> >>80
> むしろ新人の頃のが暇じゃね?
>
> どんなコード書く(書ける)か分からん新人に、いきなり仕事は振らない。
> 独習C渡されて、数日はひたすら入門書読んで練習問題解くだけだった。(教育期間)

おま、それは典型的な駄目な部署の教育方法じゃねーかw
そりゃ教える側はその方が楽だよ。本渡してわかんないことあったら聞けってのは。
でも、教育する、他人を指導する、という役割においては駄目駄目よ。
もっとちゃんと教えるところは新人で暇になんてならないから。
0102デフォルトの名無しさん2017/02/13(月) 01:52:14.35ID:bklcWYrm
>>92
リスプは逆ポーランド記法じゃない
0103デフォルトの名無しさん2017/02/13(月) 01:57:28.83ID:3qGYyBZv
HP電卓か?RPL : reverse polish lisp
0104デフォルトの名無しさん2017/02/13(月) 04:00:04.87ID:gZ/8QOyo
>>97
本質的? に項変換だからね。関数型は。
論理型は推論と同一性。思想の解明というようなレベルの
知識プログラミングの領域では優劣は明らか。
0105デフォルトの名無しさん2017/02/13(月) 04:24:42.25ID:rgdFF/HE
>>104
ごめん、よく分からない。
具体例を挙げてもらえるとありがたい。
0106デフォルトの名無しさん2017/02/13(月) 05:33:46.88ID:vGCo2kzU
あながちマウンティングしたいだけの奴が多いのは否定できないな
0107デフォルトの名無しさん2017/02/13(月) 05:45:53.47ID:gZ/8QOyo
>>105
思想を解明する知識プログラミングは殆ど手付かずだと思うので、極めて簡単な文例で。
「津軽海峡冬景色」からつぎの一節。論理型だと以下になります。二つのパターンを
見比べ、重ね合わせて理解します。こんな端的な表現が関数型にできるかということです。

私は帰ります --> 私は,帰ります.
私は --> 私,は.
私 --> [私].
は --> [は].
帰ります --> 帰り,ます.
帰り --> [帰り].
ます --> [ます].

文 --> 名詞句,動詞句.
名詞句 --> 名詞,後置詞.
名詞 --> [私].
後置詞 --> [は].
動詞句 --> 動詞,助動詞.
動詞 --> [帰り].
助動詞 --> [ます].
0108デフォルトの名無しさん2017/02/13(月) 06:41:13.16ID:GOtEVvRl
それ、テキスト処理、違う
0109デフォルトの名無しさん2017/02/13(月) 06:51:29.86ID:dJZmi+77
>>101
ああ。
ブラックだったさ。

そんなしっかり教える環境なら、そもそも新人にも教える側にも選択の余地なんぞないだろ。
教え得るノウハウあるんだから。
0110デフォルトの名無しさん2017/02/13(月) 06:57:26.15ID:dJZmi+77
>>104
Prologと比べられればね。
論理の勉強はあんまりしてこなかったから、だいぶ初心者用の入門書しか理解出来なかったな。。。

Haskellは巷で流行ってるのよりは向いてると思う。
K1だかKL1だかって並列論理型言語があるらしいが、研究室専用なのか処理系には出会えてない。
触ってみたかった。
0111デフォルトの名無しさん2017/02/13(月) 07:30:07.81ID:gZ/8QOyo
関数型は冗長な情報をより洗練されたものに書き換えるためのもの。
ところが、19-18世紀の大思想を読み解くというような対象は、
「ここに書かれていることは全て正しい」と仮定して掛かるような対象。
関数型のコンセプトとは全く合わない。論理型はテキストを述語化してから
それ自体は動かさず、補間情報を探すもの。我々が過去の思想を理解しよう
とする時の態度と一致する。
0112デフォルトの名無しさん2017/02/13(月) 07:30:33.52ID:PoWXNXBh
>>110
第5世代アーカイブにPCで動く処理系のソースがあったような
0113デフォルトの名無しさん2017/02/13(月) 07:44:49.04ID:dJZmi+77
第5世代言語なのは知ってたけど、アーカイブなんてあったのね。
ありがとう。
0114デフォルトの名無しさん2017/02/13(月) 07:57:27.96ID:gZ/8QOyo
>>112 >>113
もう10年は前だとおもいますが、Webを整理して解消する際にCDが売り出され
ました。最近、この再版を求める動きがありますが難しいようです。
Ubuntuを含むDebian系Linuxには32ビット時代はKL1のパッケージが載って
いましたが、64ビットになってからはないようです。
0115デフォルトの名無しさん2017/02/13(月) 08:06:53.18ID:dJZmi+77
10年前でも2007年。。。
90年代の遺産だと思っててごめんなさい。
そして、追加情報感謝です。
0116デフォルトの名無しさん2017/02/13(月) 08:50:20.89ID:fjEEeyAB
Σプロジェクトは出来たものが恥ずかしいゴミ過ぎて
この手の資料公開は無かったみたいだね。
https://ja.m.wikipedia.org/wiki/Σプロジェクト
0117デフォルトの名無しさん2017/02/13(月) 08:54:34.63ID:fjEEeyAB
これもオモロイ

シグマはどこへ消えた?
http://www.yamdas.org/column/technique/sigma.html
0118デフォルトの名無しさん2017/02/13(月) 09:42:44.82ID:mcSza9v8
>>114
KL1は上田研究室が最後の砦ですね。
こういう時はInternet Archiveがありがたい。

並行論理プログラミング (KLIC version 3.01)
http://www.ueda.info.waseda.ac.jp/software-j.html
けいえるわん
http://www.ueda.info.waseda.ac.jp/~takagi/kl1/
並列論理型言語処理系 KLIC のページ
http://web.archive.org/web/20100815015107/http://www.klic.org/software/klic/index.ja.html
第五世代コンピュータ プロジェクト アーカイブ
http://web.archive.org/web/20150121033015/http://www.jipdec.or.jp/archives/icot/ARCHIVE/HomePage-J.html
0119デフォルトの名無しさん2017/02/13(月) 10:33:26.43ID:9gMxi0s2
>>107
これだけなら演算子作れば関数型でも簡単に出来そうな気が
利点が良くわからない
0120デフォルトの名無しさん2017/02/13(月) 11:00:52.83ID:gZ/8QOyo
>>119
それが論理型との違いでしょう。論理型は上の方の定義を書き終えたら
できたできた。「私は帰ります」からはこれ以上の情報はない。この後で、
「どこに帰るのか」「いま私はどこにいるのか」「私とはどんな私だ」と
いうような情報を引数に付加するかも知れないが、それは後の話です。
0121デフォルトの名無しさん2017/02/13(月) 11:23:25.21ID:nSPUHPPd
>>120
耳に入ってくる言葉の端々を述語として書き並べることが論理プログラミングと
いうことですか?
01221202017/02/13(月) 12:16:38.41ID:gZ/8QOyo
>>121
基本的にそうだと思っています。構造は述語だけで、後は構造を持たずシンボル
をならべただけのものです。
ただ誤解がないように言うのですが、プログラミングの中心的な課題が思想を
解明することになるのは、それこそ自動車の無人自動運転が当然の時代となる
くらい先だと思います。ですから現時点でこの次世代言語スレで関数型言語が
不適格であるとは全然思っていません。
0123デフォルトの名無しさん2017/02/13(月) 12:20:56.87ID:l1N3ICNN
クラスベースOO=C++もあるけど、もっとわかりやすく便利で理想的なやつ
関数型=Haskell以下同文
論理型=Prolog以下同文
0124デフォルトの名無しさん2017/02/13(月) 13:19:41.96ID:9gMxi0s2
>>122
プログラミングというよりも、論理?の列挙に見えるんですけど
つまりそういう事を言ってるんですか?
0125デフォルトの名無しさん2017/02/13(月) 13:23:43.98ID:9gMxi0s2
論理というか集合の要素?
演算はまた別になってしまうだろうし、よくわからない
こういう記述だけで圏より素朴に演算を定義できるとも思えないし
0126デフォルトの名無しさん2017/02/13(月) 15:24:22.49ID:l1N3ICNN
適当に具体例を列挙してボトムアップする能力も評価されるべき
トップダウンとマウンティングは似ている
0127デフォルトの名無しさん2017/02/13(月) 15:41:49.88ID:HSaRDCl9
オブジェクト指向なんてダッセーよなー、関数型のほうが面白いよなー
0128デフォルトの名無しさん2017/02/13(月) 16:28:13.09ID:AmcZDedG
今までの歴史からして遠からずPythonすら置き換わる汎用言語も出るだろうけどどんなだろうな
まったく違うパラダイムだろうか
0129デフォルトの名無しさん2017/02/13(月) 17:10:45.69ID:X/RmwKxM
関数だけを使う関数型言語っていうのは初めにあって、
次にそれをパワーアップさせてリストだけを使うリスト型言語が出来て
次にそれをパワーアップさせてオブジェクトだけを使うオブジェクト型言語
ができたんだからオブジェクト型が今のところ最先端だな。
次のパラダイムは何か新しい一つの物だけを使った言語だと思うな。
0130デフォルトの名無しさん2017/02/13(月) 18:31:51.83ID:lgjAPN1q
>>129
マルチパラダイム言語ディスってんの?
0131デフォルトの名無しさん2017/02/13(月) 19:18:42.74ID:HSaRDCl9
>>129
某ゲームメーカーの昔のCMネタで書き込んだだけなのに、こうやって釣れるんだよな。

ネットのOOP解説関連のHPも、頭悪い人間や旧世代を見下してるの多いし、
同じことを歴史を繰り返して関数型にやられてるだけじゃん。
0132デフォルトの名無しさん2017/02/13(月) 19:26:15.09ID:l1N3ICNN
関数の中に関数を書くっていう関数型が初めにあったとすると
クラスの中に関数を書くっていうのは別にパワーアップしてない
粉飾パワー系
0133デフォルトの名無しさん2017/02/13(月) 19:27:22.92ID:MQ2CnNxG
因果は巡るのじゃw
0134デフォルトの名無しさん2017/02/13(月) 19:41:12.63ID:X/RmwKxM
>>132
オブジェクト型はオブジェクトの中にオブジェクトを書くんだよ。
メソッドはオブジェクトのインターフェイスでオブジェクトの一部として考えられる
オブジェクトのコアの中にオブジェクトが入って外部から遮断されてる。
0135デフォルトの名無しさん2017/02/13(月) 19:51:42.41ID:zwnL86Oa
OOP言語のJavaで作られたものは数あれど、
関数型言語のHaskellで作られたものって何があるん?
0136デフォルトの名無しさん2017/02/13(月) 20:02:53.28ID:l1N3ICNN
人間が作ったものは人間の手柄
それを巧妙なマウンティングで言語の手柄にされてしまう
更に言語の上にパラダイムが乗っかってパラダイムの手柄になる
0137デフォルトの名無しさん2017/02/13(月) 20:06:34.96ID:SRrzQdIe
129はなんか間違ってるだろ。
0138デフォルトの名無しさん2017/02/13(月) 20:12:19.53ID:SRrzQdIe
関数型とオブジェクト指向は共存できるだろし。
説明はできないが、別次元の概念だとおもうぞ。
進化するとか比較対象になるものではないだろ。
オブジェクト指向をベースにした純粋関数型言語って可能だろ?
0139デフォルトの名無しさん2017/02/13(月) 20:17:27.40ID:l1N3ICNN
オブジェクト指向を入れると型推論のアルゴリズムが複雑
ゆえに現実主義者はダックタイピングでオブジェクト指向するか純粋関数型で型推論する
0140デフォルトの名無しさん2017/02/13(月) 20:23:35.51ID:SRrzQdIe
ぐぐった、抜粋。


関数型言語のウソとホント - Qiita


?「関数型言語もいずれオブジェクト指向などのスタイルを取り入れたマルチパラダイムな言語になる」

関数型言語は関数というたったひとつの武器だけをひたすら研ぎ澄まして問題に立ち向かおうとする言語であり、それ以外の武器はかえって邪魔になります。
OCamlなんかはCamlという言語にオブジェクト指向的な機能を付け加えたObjective Camlが改名されたものだそうですが、OCamlが積極的にオブジェクト指向で設計されているようには見えないです。
Haskellに至ってはオブジェクト指向を取り入れる動きはほとんど皆無ですし、そうする必要がないです。
O'Haskellといってオブジェクト指向の概念を取り入れたHaskellが提案されたこともあったようですが、現在O'Haskellが使われているという話は聞いたことがありません。
最近では関数型以外の言語が関数型のスタイルを取り入れる動きがしばしば見られる一方で、関数型のほうから例えばオブジェクト指向を取り入れる動きはあまり積極的ではないようです。
しかし近年ではやはりScalaがオブジェクト指向と関数型の融合を目指したものとして台等しています。

http://qiita.com/hiruberuto/items/26a813ab2b188ca39019
0141デフォルトの名無しさん2017/02/13(月) 20:24:33.73ID:9ZqcI6aJ
>>139
純粋関数型にとって型推論とはそんなに重要なものなのですか?
0142デフォルトの名無しさん2017/02/13(月) 20:54:36.75ID:3XLU4PQN
OCamlは型システムが柔軟で強力なら、大抵の場面でOOじゃない方が楽だってことを教えてくれる良い言語
わざわざオブジェクトにするのは、遅延結合が必要な所とヘテロジーニアスなオブジェクトを統一して扱う場合くらい

弊害として、過激なOO不要論者になる可能性がある
0143デフォルトの名無しさん2017/02/13(月) 21:01:24.48ID:l1N3ICNN
>>141
個人的には、重要かどうかではなく本当に実現するのか騙されてるだけなのかを知りたい
0144デフォルトの名無しさん2017/02/13(月) 22:01:47.07ID:tn7uWAuX
当たり前なのかもしれないけど
データと処理が強く結びついてるドメインにおいてはオブジェクト指向の恩恵のほうが大きいんじゃね
グラフィック系のツールで選択してるブラシによっていろんな動作が変わるやつとか

データと処理が一箇所にまとまっててその結びつきが強制されてることにどの程度の価値を見出すか
Strategyパターンみたいなもを例に考えるといい気がする
0145デフォルトの名無しさん2017/02/13(月) 22:17:28.21ID:JsOR7Nm6
実践 Common Lisp とか読んでれば common lisp はだいぶ穏やかな言語だって
思うんだけどね。
あれもマクロマクロうるさい馬鹿のせいで偏見持たれてる気がする。
0146デフォルトの名無しさん2017/02/13(月) 22:21:19.27ID:ut1LFOtS
>>145
わかる
そんなに尖った機能無いよな
0147デフォルトの名無しさん2017/02/13(月) 22:22:45.43ID:GOtEVvRl
>>140
おはスケル

なんJ民かな
0148デフォルトの名無しさん2017/02/13(月) 22:23:57.02ID:GOtEVvRl
Lispはかっこつけすぎ
0149デフォルトの名無しさん2017/02/13(月) 22:56:11.66ID:HSaRDCl9
プログラミングは免許制にすればいいよ、
関数型プログラミングができるかどうかで。

馬鹿プログラマでも扱えるように色々と冗長にする
-> 冗長だから手番が増えてさらにプログラマが必要となる
-> 馬鹿プログラマが補給される

このコンボが決まって悪循環が続いている、と。
別に関数型プログラミングが全能とは思わないが、現時点でのひとつのリトマス試験紙にはなるかと。
0150デフォルトの名無しさん2017/02/13(月) 22:56:44.30ID:g1s3e9Z7
((L)(((i)s)p)))
0151デフォルトの名無しさん2017/02/13(月) 22:58:39.38ID:g1s3e9Z7
>>149
関数型の基礎になる数学知識があるかを問うたほうが良さげ
0152デフォルトの名無しさん2017/02/13(月) 22:59:44.86ID:ut1LFOtS
マクロが自然に馴染む構文というと、結局S式しかないという気はする
IDEでマクロの構文まで面倒見てくれる言語ってなんかある?
あれば使ってみたい
0153デフォルトの名無しさん2017/02/13(月) 23:44:14.31ID:HSaRDCl9
>>151
そうかもね。抽象化の最たるものだね、数学は。
>>152
emacsのLispモードについてんじゃないの?(適当)
0154デフォルトの名無しさん2017/02/13(月) 23:50:25.63ID:ut1LFOtS
>>153
「S式(lisp)ならマクロに対する特別な支援は(殆んど)要らない」ってこと
Juliaでマクロ書いてて思ったのよ、インデント崩れたりとか
0155デフォルトの名無しさん2017/02/13(月) 23:57:47.13ID:kQGSvZ2q
S式は括弧使って構文解析サボってるだけ。
逆ポーランドとかの怠け記法と同類。
0156デフォルトの名無しさん2017/02/13(月) 23:58:31.38ID:HSaRDCl9
>>154
なる。Julia知らんけどemacsなら(ry
0157デフォルトの名無しさん2017/02/13(月) 23:59:24.88ID:HSaRDCl9
>>155
emacsなら(ry
0158デフォルトの名無しさん2017/02/14(火) 00:35:59.85ID:gfvqdCIF
数学知識より国語力高いやつのほうが欲しい
0159デフォルトの名無しさん2017/02/14(火) 00:40:40.70ID:4G8SInJT
数学知識。まずは自分の国語力を見直そうか。
0160デフォルトの名無しさん2017/02/14(火) 00:46:48.47ID:gfvqdCIF
それはごもっともだが>>151の引用だから
0161デフォルトの名無しさん2017/02/14(火) 00:53:58.87ID:4G8SInJT
これは失礼。国語力も大事ですね。
0162デフォルトの名無しさん2017/02/14(火) 02:34:10.88ID:4XLa6m2a
オブジェクト思考はそもそもの設計思想からミスってるというのが持論だけど、割とハードにちかいとこでのでーたのやりとりのラップにつかえんのかなってかんじ
0163デフォルトの名無しさん2017/02/14(火) 07:08:37.44ID:izwS/hYI
LispやってるとなんでCでは中括弧を閉じるとき重ねずに一つ一つ改行していくんだろうと感じる
0164デフォルトの名無しさん2017/02/14(火) 07:54:13.53ID:deUQRuVA
>>163
LISPは行エディタ時代の言語。Cは画面エディタ時代の言語。
カーソルを縦に下ろしていって、ブロックを確認するのに、
改行しておいた方が都合よかったからではないか。
0165デフォルトの名無しさん2017/02/14(火) 08:15:42.74ID:uoklH2m8
実際に書いてみると、以下みたいなタイミングで改行を押すことになると思う

(define (fact n)[改行] (if (<= n 1)[改行]1[改行](* n (fact (sub1 n)))))

そうなると自然に閉括弧の中には改行が入らなくなるんじゃないかな
特にコーディングルールなんかを意識しなくても、閉括弧が密集するはず
0166デフォルトの名無しさん2017/02/14(火) 08:19:39.83ID:uoklH2m8
Juliaってまだ次世代言語という認識も無い感じなのかな、ver1.0出ないし
それとも対象領域が狭いのか
0167デフォルトの名無しさん2017/02/14(火) 08:41:27.92ID:ptdZF2Do
Juliaはすでにダメかと
放置ぎみ
これは言語に特色あるというより、LLVM用のスクリプト言語って位置づけだろ?
JavascriptをベースにしてLLVMを動かしてもいい。
01681222017/02/14(火) 08:44:44.67ID:deUQRuVA
>>124 >>125
どう答えればよいか考え倦ねていたのですが、
Prologの場合は、基本論理式であることは確かですから、論理かなと
言われればその通りなのでしょう。
>>107の「私は帰ります」から始まるスレッドで言いたかったのは、
受け取った文そのものが、シンボルで即ち述語となるということ。
それが我々が自然言語を扱う時、自然言語に接する時の作法に近い。
そのシンボルはやがて分解されて、詳細な述語が生まれる。そしてまた
それがDCG節で書いた二番目の定義、即ち、句構造への文法的な解析と
ほぼ同型になる。そういう主張です。
0169デフォルトの名無しさん2017/02/14(火) 08:45:48.11ID:ptdZF2Do
開発されてた

GitHub - JuliaLang/julia: The Julia Language: A fresh approach to technical computing.
https://github.com/JuliaLang/julia
0170デフォルトの名無しさん2017/02/14(火) 09:38:35.37ID:OAj0rQR0
>>168
Prolog、面白そうですね。やってみます。

FPでの自然言語処理だと、全てを読んだ訳ではない上での感想と理解いただきたいですが、
Computational Semantics with Functional Programming
がFPらしい流儀で本格的なことやってるように見えました。
Draft版がpdfで読めます。
0171デフォルトの名無しさん2017/02/14(火) 10:03:37.62ID:lPJlbUrB
Juliaはとりあえず永遠にStableにならなそうなふいんき()をなんとかしてくれ。
同じ事がNimやElmにも言えるが。
0172デフォルトの名無しさん2017/02/14(火) 11:20:46.81ID:QO8CQqzs
俺数学大っ嫌い文系だけどオブジェクト指向言語より関数型言語のが好きなんだが異端なのか?
0173デフォルトの名無しさん2017/02/14(火) 11:33:19.82ID:ptdZF2Do
手続き型は関数型を一般化したようなもので、関数型は手続き型を制限したようなもの。
手続き型ができれば、注意深くやれば関数型はかけるはず。
記法は別にしてほぼ一行でプログラムするようなこと。ハンターハンターでこんなのあるが。



制約と誓約についての詳しい考察 | キルアから見たHUNTER×HUNTER
念能力における概念の一つ。
自らの念能力に対し制約と誓約を課すことによってその威力と精度を著しく向上させることが出来る。
能力者のほとんどは「制約」のほうだけを自らの念能力に取り入れているケースが多く、
純粋に制約と誓約の両方を取り入れている能力者はクラピカくらいだと言える。
クラピカ
中指の鎖に対して「旅団以外には使わない」という制約と「旅団以外に使った場合は命を絶つ」という誓約を立てた。
作中では述べられていないが、恐らく制約のみを課すよりも制約と誓約の両方を課した方が能力がより向上するものと思われる。
http://kirua-hunterhunter.com/seiyaku/
0174デフォルトの名無しさん2017/02/14(火) 12:28:22.89ID:PhsD9VtO
>>172
洗練ということに価値をみる人だと至極当たり前の方向だと思う。
0175デフォルトの名無しさん2017/02/14(火) 12:33:23.61ID:OAj0rQR0
>>172
物事の抽象化という点では文理関係ないのでは?

受験数学だと抽象的でない暗記的な内容もあるでしょうし。例えば積分公式の暗記とか。
微分と積分が逆だとぼんやり理解するのが大事で、
ばっちり解析解(公式)が出るかはそりゃ出れば嬉しいけど、出ない方が多い。
そういう狭い領域が○×を判定しやすいという理由で試験にでているだけなのに、
それが数学の全てで、そういうテクニカルなことが嫌いだから数学も嫌いと思っている人は多いのではないでしょうか。
0176デフォルトの名無しさん2017/02/14(火) 13:05:57.35ID:he6YB8dM
lim
ver->1.0 JULIA ver
0177デフォルトの名無しさん2017/02/14(火) 15:41:28.41ID:90/NuRRw
Haskellからは関数型言語という制約を課しながら手続き型言語になりたい
という気持ちが伝わってくるからな。
結局、多様なオブジェクツからなる手続き型言語の理想世界を関数という
アトムで表すことが夢の最終目的なんだよな。
0178デフォルトの名無しさん2017/02/14(火) 18:50:23.77ID:uwayiWk9
>>149
篩にはなるだろうね
0179デフォルトの名無しさん2017/02/14(火) 19:05:13.35ID:IrYMwUeI
関数型にとって副作用有りのクロージャってどうなの?
使わずに済むなら使わずにおきたいものなの?
0180デフォルトの名無しさん2017/02/14(火) 19:25:54.26ID:smZbva6r
>>179
副作用を使いたいかどうかは型を調べればわかる
他にもnullを使いたい型や代入を使いたい型など色々作れる
0181デフォルトの名無しさん2017/02/14(火) 19:36:47.66ID:MJDh4U5x
関数型イコール免許皆伝はどうかと思う。
手続き型も書けて、関数型も書けて、それぞれをそれぞれに転記できるならまあ意味はあるだろうけど。
大体今まで会った関数型関数型と叫んでるやつは、シンプルだ、表記が素晴らしいと言うばかりで、ではこの関数は最大でヒープをどれくらい使うのかねと聞くと、時代錯誤だと危険回避する奴ばっかり。
再帰関数を書けないから再帰関数を叩くパンチカード叩きとレベルがかわらん。
ただ関数型プログラミングができる、は危険物乙4みたいな感じでしょ。
0182デフォルトの名無しさん2017/02/14(火) 19:51:31.16ID:m+Xk96Lk
>>168 Prologについて教えてください。
型もスコープもクロージャもないと聞きました。ほんとうですか。
0183デフォルトの名無しさん2017/02/14(火) 20:00:20.53ID:crAPAQjf
>>181
そんな奴は滅多におらん
予測しにくい部分はプロファイル取るのが当たり前
メモリとか気にしないのは、Java出身者のがよほど多いよ
0184デフォルトの名無しさん2017/02/14(火) 20:17:22.93ID:crAPAQjf
むしろ人口の比率の問題か、手続き型しか触って無い人のが偏屈なの多い気がするな
Cで再帰もなく、外向けの関数でもないのに、構造体の値渡しやコピーで怒る奴とか、
forループのカウンタをいちいち前置デクリメントにしろとか言う奴とか
宗教じみてると感じる
0185デフォルトの名無しさん2017/02/14(火) 20:18:27.68ID:4XLa6m2a
関数型のプラットフォームで、頻繁に呼ばれる関数だけ手続き型でかきたい、GPUとかもつかいたいんだけど、できる?

今想定してるのはclojureからJNI介してGPU叩くみたいな感じなんだけど
0186デフォルトの名無しさん2017/02/14(火) 20:57:13.91ID:D+3Qy3lW
>>182 難しい質問が来ていますね。はっきり言えることは、
Prologプログラマのレベルでは、型、スコープ、クロージャのどれも、
習いませんし、話題になりませんし、意識しません。マニュアル等の中にも
これら用語は現れません。プログラムコードにもそういう痕跡はないと思います。
述語定義の中の変数の単一化が起こる範囲がその実行時の節に限られる
ことなどは外部の人はスコープに当たるのではないか、と思うかも
知れませんが、Prologプログラマはそういう捉え方をしません。
ただですね、処理系の開発者や、遅延評価を含む制約論理を取り込んだ
部分のライブラリの開発者さらに、ISO規格のPrologの言語定義を担当する
人達などは、多分に意識して質問にあったような用語を用いて議論も
しているのではないかと想像しています。
0187デフォルトの名無しさん2017/02/14(火) 21:21:11.74ID:4G8SInJT
>>181
時代錯誤なのは環境によってはそうなのでは?
逆にそういうシビアな時代には全てのプログラマは優秀だったのだろうね。
シビアな手続き型の時代と、関数型の時代。その中間があれなのだろう。
0188デフォルトの名無しさん2017/02/14(火) 21:37:51.90ID:smQktxQa
何を作れるか、じゃなく何の道具を使ってるかでマウンティングする奴が多いのは否定できない
0189デフォルトの名無しさん2017/02/14(火) 22:18:02.07ID:OomJZo4F
>>183
プロファイルとかテストとか言語好きが一番嫌いな作業だろう。
0190デフォルトの名無しさん2017/02/14(火) 23:22:35.34ID:4G8SInJT
○○erは普通だが、○○istになると何か拗らせてそうにみえる不思議。
0191デフォルトの名無しさん2017/02/14(火) 23:24:21.91ID:lp4LJeik
◯◯istaは?
0192デフォルトの名無しさん2017/02/14(火) 23:44:37.20ID:gfvqdCIF
-istは〜の専門家って意味もある接尾語だからそういうものかも
(-istaも同じ)
0193デフォルトの名無しさん2017/02/14(火) 23:44:39.81ID:4G8SInJT
確かにそんなのもあった。
Haskellistとかいかにもだけど、そうじゃないのだね。
0194デフォルトの名無しさん2017/02/14(火) 23:56:23.74ID:4G8SInJT
istやistaを使うほどに専門的なのかね、それら言語は。
0195デフォルトの名無しさん2017/02/15(水) 00:32:52.53ID:WU5+o8Pm
専門家っていう意味でつけてるんじゃなくて日本語だと〜使いとか〜愛好家くらいの気持ちなんじゃね
マルキシストやフェミニストみたいな〜主義者みたいなニュアンスもあるし拗らせてるように見えてもそう不思議じゃない
ハルキストがいい例
0196デフォルトの名無しさん2017/02/15(水) 01:36:02.80ID:tEMTwX42
>>189
テストについては人による
TDD派もいる
プロファイルについては危険性高いからこそ、不安で取るんだよ
むしろなんで取らないと思うんだ?
0197デフォルトの名無しさん2017/02/15(水) 01:38:18.18ID:q4yDcCHe
Vista
0198デフォルトの名無しさん2017/02/15(水) 03:41:28.06ID:Hii7olK0
>>182
まさに、Prologの時代ですねw
http://echo.2ch.net/test/read.cgi/tech/1486946202
0199デフォルトの名無しさん2017/02/15(水) 05:47:41.94ID:De10g5Ib
>>172
文系でも英語が苦手なら、外国語よりは馴染みのある数学に近い関数型のが馴染みやすい。
0200デフォルトの名無しさん2017/02/15(水) 06:05:02.91ID:1UZn1FbQ
自分の書いたある関数に対して、同じアウトプットが出る他の速い関数に自動的に置き換えてくれる、
というのを関数型(証明支援系?)なら出来るという認識で良いんですかね?
0201デフォルトの名無しさん2017/02/15(水) 06:25:50.95ID:De10g5Ib
>>173
手続き型も制約の歴史。
その論で言えば最も制限のない言語はアセンブラ。
OOPや構造化が邪魔でアセンブラは文法がないとか言うならBASICが一番バランスしてるとでも言うのか。

構造化やOOPはデータや処理の流れを押し込めたり制限することで、大きくなり過ぎた仕様を人間に扱える様に切り出して来た。

関数型、論理型を始めとした宣言型言語は、より仕様そのものに近い形でアプローチをしてる。

関数型は性質で切り出す。
論理型は関係で切り出す。

問題は、CPUアーキテクチャから離れ過ぎて、理屈の上ではもっと最適化が進めば手続き型に負けないはずが、逆にコード上の最適化のヒントが少なくなり過ぎて最適化が進まない事。
結局別にライブラリが要る。

例えばリスト処理を状況に合わせて勝手にパックしてSIMDで処理するか、マルチスレッドで処理するか(あるいはその両方)は理屈の上ではコンパイラが決めてくれても良いが、そんな賢いコンパイラは無い。
この点、手続き上でSIMD使えるのはガリガリSIMD命令にして行く手続き型のが、少なくともシングルスレッドにおいてだけは、地道な最適化の歴史の重みが宣言型のポテンシャルを現時点で上回ってる。

宣言型の理想郷はまだ遠い。
0202デフォルトの名無しさん2017/02/15(水) 07:39:44.05ID:tgZ9ou3/
>>183
プロファイル取らずに机上で計算しとけよ…
そういう話をしてるんだよ。
お前も気にしないのは、の一人でしかない

>>187
今も、本質は変わらないよ。
ただスペックで力押しできるようになってきただけで。
それを、今のパソコンはスペックが良いので実行効率が悪いコードでも記述性が良ければそれで良いのです、
というのはエンジニアとして違う。
0203デフォルトの名無しさん2017/02/15(水) 07:54:49.66ID:3snx1bil
>202
>エンジニア 嘲笑
0204デフォルトの名無しさん2017/02/15(水) 08:07:49.51ID:NcaQdaDl
>>202は言葉はあれだが、言ってることは間違ってはいないと思う。
だからこそ、速くて高効率の手続き型で書かれたものと関数型スタイルで書かれたものとが、
同じ結果を出すことを証明できたら、と思うのだけどどうなんだろう?原理的に無理なのかな?
0205デフォルトの名無しさん2017/02/15(水) 08:13:45.18ID:WDBEc38A
手続き型が速くて効率がいいとはかぎらん。
JavaやC#みたいな仮想マシン上で動くやつ、あるマシンをソフトでエミュレートした環境でも
手続き型言語は動作する。
動くまでにかなりの複雑さ。
0206デフォルトの名無しさん2017/02/15(水) 08:15:13.90ID:4NekN3gF
>>203
嘲笑されようが、まぁそれでお金頂いている以上は無駄遣いしちゃいかんし、一体どう動いてるか知ってなきゃいかんと思うよ。
増してや、それを資格としたいならなおさら。
>>204
証明は簡単だよ。ベンチマークとっても良いし
アセンブリ見て何クロックかかってどれくらいメモリ使うか読めれば一番良い。
GC言語やJITでなんとかする類の言語だと、想定でどこまでヒープをどう使うかは把握してコーディングして、
それをベンチして欲しいけど。
まともなC#使いとかF#使いは自然にやってる。
0207デフォルトの名無しさん2017/02/15(水) 08:16:31.94ID:4NekN3gF
>>205
JITもあるし、フルAOTもあるよ。
限らん、は事実だけど、それは関数型言語で末尾最適化が利かないコーディングする程度の低レベルな人の話。
0208デフォルトの名無しさん2017/02/15(水) 08:35:46.11ID:WDBEc38A
言語速度は実装次第。
JavascriptがC言語並みの速度を出すのは実装次第で可能。
たとえばJavascriptをC言語にトランスレートしてからコンパイルすればいい。
処理の順序を認めない純粋関数型のほうが、処理待ち、ロックが発生しない分、速くなる余地がある。
混合型言語でも処理待ちを発生させたくない部分を関数型の制約で書くことで処理系の最適化次第で高速に動く。
0209デフォルトの名無しさん2017/02/15(水) 08:41:18.64ID:4NekN3gF
>>208
順序を認めないってのはちょっと語弊があるんじゃないか?
0210デフォルトの名無しさん2017/02/15(水) 08:43:08.58ID:WDBEc38A
マルチコアCPUの性能を活かすため並行/並列プログラミングを行う際には
競合状態やデッドロックへの対処が課題となりますが、Haskellでは上記の通り、
関数はいつどのように実行しても同じ結果が得られることが言語仕様上保証されていることから、
命令型言語に比べ並列化の対応が容易になります。

http://www.casleyconsulting.co.jp/blog-engineer/haskell/haskellで学ぶ関数型プログラミング入門/
0211デフォルトの名無しさん2017/02/15(水) 08:58:54.65ID:v/KlZINp
言うほど並行処理やりやすいか?関数型って
0212デフォルトの名無しさん2017/02/15(水) 09:08:57.09ID:WDBEc38A
ループの自動ベクトル化みたいに、C/C++言語ソースでも
関数型ルールに適合する部分を検出して、自動で関数型としておもに並列最適化するのも不可能ではないと思った。



コンパイラー最適化入門: 第4回 自動ベクトル化はどんな時に行われるか | iSUS
http://www.isus.jp/products/c-compilers/compiler_part4/
0213デフォルトの名無しさん2017/02/15(水) 09:14:49.65ID:WDBEc38A
理想の関数型処理系ならばシングルもマルチコアも、プログラマ側がソースコードを書き分ける必要がない。
いくら並列処理、コア数が増えたとしてもシングルコアと同一コードで動作する。
0214デフォルトの名無しさん2017/02/15(水) 10:00:49.58ID:urFAvqLF
シングルコアのプログラムを書くときでも
マルチコアの鉄の掟を厳守させられるという話

大企業病みたいなもの
0215デフォルトの名無しさん2017/02/15(水) 10:07:12.06ID:ZOlpsGL6
>>213
よく知らないのだが、Erlangなんてそうなるんじゃないの。
0216デフォルトの名無しさん2017/02/15(水) 10:32:51.74ID:JsTxjjGi
Haskellは並列化に強い!ってのは踊らされるには随分古いネタだな。
そもそも↑の理屈で並列化できる箇所は、前の計算結果に依存しない計算だけだぞ。mapは可能だけどfoldは不可能。
で、mapだけなら他の言語でも簡単に機能追加できる。10年以上前にGoogleがMapReduceをリリースしてるだろう。

Haskellの強みに並列化を(今でも)挙げるのはよっぽどアンテナ低いか使ってない奴だけじゃないか。
実際に使う人なら、柔軟で強力な型システムで「コンパイルが通れば大体はバグ無く動く」体験を重視する。
0217デフォルトの名無しさん2017/02/15(水) 10:37:13.31ID:9ZjtEPYx
>>203 が言いたいこと全部言ってくれたわ。
Haskell原理主義者ほどこの辺のことなーんにもわかってない。
本当関数型言語は害悪。この世のゴミ。
0218デフォルトの名無しさん2017/02/15(水) 10:38:29.22ID:9ZjtEPYx
>>217
ごめん203じゃない。>>202だった。慎んでお詫び申し上げる
0219デフォルトの名無しさん2017/02/15(水) 10:48:04.87ID:1HgqHGpq
>>198
これ最高ですが、Prologのキラーソフトにはなりませんね
0220アマゾン2017/02/15(水) 11:15:10.19ID:knsgAz8Q
フィリピンの海と空
フィリピンに行ってきた
https://neko-hirune.com/2017/01/16/philippines/
0221デフォルトの名無しさん2017/02/15(水) 11:28:59.88ID:WDBEc38A
現行Haskellではなく理想的な純粋関数型言語ならば
シングルスレッドとして書いたコードで自動でマルチコアに対応できる
0222デフォルトの名無しさん2017/02/15(水) 11:38:17.58ID:9ZjtEPYx
>>221
Javaがかつては「Write once, run anywhere」を謳ってたのを思い出したわ。
0223デフォルトの名無しさん2017/02/15(水) 11:38:33.47ID:L/2xzbEx
Goはエディタ支援ツールが充実してるね
この辺がRustと違うわ
0224デフォルトの名無しさん2017/02/15(水) 12:51:55.20ID:mUP4oUYS
>>219 ウェブブラウザの制御もJavascriptなんか排してPrologにすればいいんですよ
0225デフォルトの名無しさん2017/02/15(水) 13:00:53.70ID:mUP4oUYS
>>224
Prologは学んだことはあるが使ったことはないという人が
圧倒的に多い言語だからな。それには理由があると思うのだが。
02262242017/02/15(水) 13:06:40.71ID:mUP4oUYS
>>225
なにか、動機付けというか、使い方の示唆というか、そういう部分で
間違ってしまっている。論理の教材でしかない。
ブラウザの制御などで使えば、いくらでも面白いコードが生まれるし、
この部分に一般ユーザーが戻ってくるよ。
0227デフォルトの名無しさん2017/02/15(水) 13:08:19.96ID:4NekN3gF
>>221
そうかな?
物理的なリソースは各コアごとに無いし、そもそも向いてない作業もある。
ソートはどうするのか、そこからのtakeはどうするか。
any的なものは「一つあれば」なのか「一つでもあれば」なのか。
firstは「firstのfirst」でも良いのか、純然たる「first」なのか。
これはそこそこ違ってくるし、実際の記述も変わる枠組みも多い。
常にupdateがかかるテーブルを元にした処理、に、テーブルロック要求したり、それでは不味いとロックのエスカレーションをさせていくレベルの話になる。
掛かっても気にしないんだろうけど。

>>223
言語仕様を縛ったからね。
コンテキスト依存なものも少なくて、さらに演算子のオーバーロードはさせない。
0228デフォルトの名無しさん2017/02/15(水) 13:09:11.87ID:mUP4oUYS
>>226
ブラウザなんて『けものフレンズ』でいいじゃないか。
0229デフォルトの名無しさん2017/02/15(水) 13:35:00.08ID:L/2xzbEx
Prologおじさん何やってんの…
0230デフォルトの名無しさん2017/02/15(水) 16:09:53.66ID:w0SHr4I6
論理型言語の命題とは型で証明は関数なんだよな。
だからprologは関数型言語なんだよな。
一階述語論理は自動証明できるからそれを利用したのがprologなんだよな。
つまり型を指定すると自動でプログラムを作ってくれる関数型言語が
prologなんだよな。
0231デフォルトの名無しさん2017/02/15(水) 16:17:56.52ID:DZkwefyE
>>230
型が実は述語であるということには同意しますが。
0232デフォルトの名無しさん2017/02/15(水) 18:12:05.78ID:4NekN3gF
銀の弾丸は無い、を引き合いに出す気はないけど、
いわゆるベストはものによって変わると思うよ。
どう頑張ってもCPUは手続きとして処理するんだし。
写像を手続き無しに瞬間的に作ってくれるプロセッサってアナログコンピュータ以外に今現時点個人が手に入れられるものは無い。
荒っぽく言うと1を10で割った結果が有理数では無い事は仕方無いんだから、それを理解して物作る必要があるとしか言えないでしょ。
その理屈を知ってるからサチらない程度に10倍しとくってのと、
何かわからないけどそう言うのは古代文明で、今は○○が都合よくコンパイルしてくれて、○○が都合よくコプロなりGPUなりなんなり使ってくれるから、見かけ上正しければ良い、無駄な10倍は見る書く上で都合が悪い
ってのは、だいぶ違うんじゃないの?
0233デフォルトの名無しさん2017/02/15(水) 19:11:19.15ID:1UZn1FbQ
>>232
相変わらず表現が独特でわろた。

ベストを尽くすために手を抜かないこと、
そのためには手続型だろうが関数型だろうが論理型だろうが全て知っておくべきなのは確かだろうね。
0234デフォルトの名無しさん2017/02/15(水) 19:54:26.04ID:XdeTM6Wg
>>216
foldも結合則(例 (1+2)+3 = 1+(2+3))が成り立つなら順番どうでも良いので並列化出来るよ。

クイックソートやマージソートに見られる二重再起による分割統治方も並列化し易い。
関数型の場合、要素1のリストまで並列出来るので、そこまですると並列化の利点よりスレッド生成コストの方が高く付いて逆に遅くなるけど。

どこら辺でスレッド生成を止めるか?も環境によるので、自動化するには環境を把握する機能がコンパイラが吐き出すバイナリに埋め込まれる必要がある。
(現在の場合、並列化スイッチ入れると自動でコア数は見る。コア数指定も出来る)
0235デフォルトの名無しさん2017/02/15(水) 20:20:11.46ID:Th31PT5v
Haskellって、自動で並列化してくれるような頭の良いコンパイラあったっけ?
まだ実現してなかったような
0236デフォルトの名無しさん2017/02/15(水) 20:36:58.49ID:XdeTM6Wg
今の所、parとかseqを普通の関数に付けて、これは並列化出来るって教えて、並列化に対応させるスイッチでコンパイルすると並列化出来る。
はずだが、遅延評価が邪魔して上手く動かないので正規系にする関数を別に用意したり。。。
(一番手軽だが、逆効果になり易い手法)

専用データ構造や関数が手法ごとに用意されてるので、どの並列化手法使うかでも選択肢あり過ぎて分からん。。。
(Haskellコンパイラの開発者の1人は並列化手法のエキスパート。あらゆる手法をライブラリで提供してる。カンブリア時代状態)

まどろっこしいので、もっと賢くなってほしい。
ポテンシャルとしては全自動が理論上可能なのだから。
(並列Prologも効果的な並列化が課題とか。ワトソンがPrologベースなら、スパコン分野で地味に進化してるのかね。。。)
0237デフォルトの名無しさん2017/02/16(木) 07:01:54.85ID:C8TUip5w
1/10は明らかに有理数じゃろ......
0238デフォルトの名無しさん2017/02/16(木) 07:19:28.85ID:4KP2Pywx
2進でか?
0239デフォルトの名無しさん2017/02/16(木) 07:26:16.22ID:Wr6Ic1dD
そうだね
0240デフォルトの名無しさん2017/02/16(木) 10:15:18.61ID:KWZoWk4l
「有理数」ではあるが「2進数における非循環小数」ではない。
0241デフォルトの名無しさん2017/02/16(木) 10:15:46.55ID:KWZoWk4l
間違えた。「2進数における非無限小数」ではない。
0242デフォルトの名無しさん2017/02/16(木) 10:53:34.48ID:xrKz9Vp6
>>202
空間計算量を大雑把に把握するなんて程度はできて当然
ただシステムとランタイム含めて、現実にどれぐらいか見なきゃならない

そしてお前はそれすらまともにやっとらんとバレたわけだ
他人をけなす前にもう少し考えた方がいいんじゃ無いか?
0243デフォルトの名無しさん2017/02/16(木) 10:57:56.10ID:xrKz9Vp6
>>204
いやこいつはただ貶したいだけだよ
メモリについては言語というか主に処理系に依存するんでない?
オーダーの事言ってるなら、言語関係ないしな
0244デフォルトの名無しさん2017/02/16(木) 11:14:33.36ID:Ql+ZhAJA
>>242
空間計算量なんて大雑把なレベルじゃなくて、使ってるデータのサイズと言語ごとのランタイムを足し上げた値くらいすっと出せよって話では。
プロファイリングは答え合わせであって、作ってからプロファイル見てみようなんて姿勢はプログラマ名乗るのも恥ずかしいレベル。
自分はだいたいなんか見落としてるせいでよく外す程度には未熟だが、それでも書く前に計算してる。

で、そういう事前計算を怠る奴ほど思考停止して関数型言語ごり押しにくるんだって話なんだよなぁ……

自分は >>202 じゃないし >>242 がそうだというつもりもないが。
0245デフォルトの名無しさん2017/02/16(木) 11:19:39.88ID:81TflRQB
なんかフワっとした主観の話ばっかりでつまらんな
具体的に言語の話をしようよ
0246デフォルトの名無しさん2017/02/16(木) 11:33:50.95ID:xrKz9Vp6
>>244
何か特定の言語での話してない?
まずJavaのように動的にコードが変化する言語じゃ、計算じゃ正確には出せない
C系ですらアラインメントやlibcの実装だけでズレるし

それと、何も把握せずにプロファイルを見るとは言っとらんよ
客観的なデータのが重要と言ってる
意識的に使う分は把握して当たり前
それでも組み込みのように全て環境を固定しているわけでもなければ、結局推量でしかないわけ
0247デフォルトの名無しさん2017/02/16(木) 11:44:26.26ID:xrKz9Vp6
少なくとも自分は特定の関数のヒープ使用量を正確に出せって言われて、
自分の推量だけで答えるとか、過信してるとしか思えないけどね
それこそエンジニアとしてどうかと
0248デフォルトの名無しさん2017/02/16(木) 11:52:36.67ID:H/8owqMI
ハッカーと画家って本の0章になぜ日本人がソフトウェアを
作れないか書いてあるから見てみるといいよ。
0249デフォルトの名無しさん2017/02/16(木) 12:08:34.14ID:wnT1ZsVz
>>242
できて当然だから、やってからプロファイルしろって言ってんだけど。
システムとランタイムの、を現実に見るのは答え合わせで、ランタイムがどうかってのを知らなくても勝手にやってくれるんだから良いじゃん、勝手にやってる事は知らねえよww、ってどうなの、って事。
ごく普通にやってるよ。

>>243
処理系に依存するなら、処理系の実装読んどけって言ってるんだよ。
貶すつもりは無いが、当たり前が出来てない事を指摘するとキレる奴多すぎって言ってんの。

>>246
動的にコードが変化する、って何だ?
JITがどう効くか、GCがどう走るかって話なら、それこそ織り込んでコーディングしろって話なんだよ。
末尾再帰になるように再帰関数書くのと同じレベルの話なの。

>>247
正確に、とは言ってないよ。
だから、最大で、と聞くんだよ。
ここまでに未開放がこう溜まって、GCが走るのは最短でここ、の想定が出来ないのに書いてるなら、単なる物量押しでしかないって言ってる。

妙に反論するけど、お前なんか同じような事を言われたトラウマでもあるの?
0250デフォルトの名無しさん2017/02/16(木) 12:20:00.88ID:xrKz9Vp6
>>249
プロファイルを取ってるって事は、副次的に何が高いか把握してるって事だよ
やってりゃ勝手に覚えるから
それがわからないって事は、普段からマメに見てないって話になるわけ

それとGCやJIT云々はランタイムの設定値やシステムの状況などに直接依存する
これらは運用で適宜変更するものでもあるわけで、
ここで開放とか最適化なんて、書くときに決め打ちするものではないよ
はっきり言って、知らずに無茶苦茶言ってるとしか思えない

設定を無視できるほど、小さなメソッドや関数や、
競技プログラミングなどなら話は別だけど、そういう話じゃないでしょ?
0251デフォルトの名無しさん2017/02/16(木) 12:25:26.46ID:Ql+ZhAJA
>>246
だからその、意図的に使うデータ把握して当たり前ってことができない奴が、特にHaskell原理主義者に多いんじゃねえかって話。
その当たり前満たした前提の行動を議論してもしょうがない気がする。

こっちのスキルも高いとは言えんのは100も承知。
0252デフォルトの名無しさん2017/02/16(木) 12:30:15.66ID:wnT1ZsVz
>>250
副次的にも何も、それは確認であって想定ではないよね。
想定は結果から逆算するべきものではない。

運用で変更するためには、変更するとどうなるかの根拠があるわけだよね。
足りなそうだから増やすなんて場当たり的な運用でない限りは。
そのためには、何故そう変更すると、どう挙動が変わるかを把握してる必要があると思うけど。
決め打ちではないって。
少なくともここまでは動かないってラインを考えるんだよ。
ここまではこれだけのオブジェクトが確実に生きてるって話。
そのラインを超えるように、環境を構成するべきもの。

無茶苦茶でもなんでもない。お前がやりたい事(実行環境変更)を叶えるために必ず必要な事。

大きなシステムは小さな関数から出来てるんだよ。
小さな関数を把握できずに、大きなシステムを把握出来るはずが無いでしょ。
0253デフォルトの名無しさん2017/02/16(木) 12:35:23.30ID:sNiQCo0I
おまえらどっちもできるエンジニアなのは分かったから宗教戦争やめてくれや……
本当の敵はHaskell原理主義者というか関数型原理主義者だろ……
0254デフォルトの名無しさん2017/02/16(木) 13:02:05.24ID:xrKz9Vp6
>>251
OCaml派なのでHaskellは知らんよ
Haskellの製品とか見たこと無いし

>>252
そもそもJavaについては最大値はクラスローダ実装にも大きく依存するし、
このために相乗的に増えることもよくある
あと環境決め打ちの競プロや、メモリに影響しない小さな関数は論外だって意味だよ

フットプリントでなくコードが「小さな」関数という意味で言うなら、
把握することは良いことだけど、結局それじゃ根拠が足りない

特にJITなんて呼ばれる回数によるから、callerのが重要だよ
そして今は処理系すら常に変化していくし、
要件を厳密に揃えなければそう簡単には机上の計算通りには行かない

低レベルを頭で把握しておくってのは良い事だとは思うよ
でも把握できる範囲なんて、大して広くないわけ
複雑になるほど数値的な意味でエラーが増える

結局効率としては早めにデータ取って、根本のアルゴリズムを刷新していったほうが良い
要件ならそのためのテストを書く

自分もC/C++のが期間長いから気持ちはわかるけどね
0255デフォルトの名無しさん2017/02/16(木) 13:46:04.15ID:wnT1ZsVz
>>254
相乗的に増えるのは読んで字のごとく、相乗りして増えるんだから、
同じ話してるよ。
環境決め打ちではなくて、環境を決めるためのパラメタだよね。Javaならそれこそ、jvmに何メガ渡すかを決定できない物作って、どう構築するかさっぱり理解できんのだよ。
ヤマカンや、その「実測して初めて決定的な数字がわかる」スペックで客に買わせるサーバを選定できる訳無いんだし。

呼ばれる回数で変わる?単に入力に対するオーダーとして呼ぶ回数が分かればいいんじゃないの?
机上で厳密に、ではなくて、タイムライン上で最低と最高は少なくとも出しとくべきだって言ってるんだよ。

早めにデータ取るのは当たり前で、そのデータの根拠が無いって言ってるの。
別にそれさえ理解できてりゃ関数型でも手続き型でも何でも良いよ。
単に手続き型からドロップアウトしたってだけの事を、大仰に言わんでも良い。
0256デフォルトの名無しさん2017/02/16(木) 13:53:56.92ID:1VBkG9E6
相乗って相乗りじゃなくて
1以上の係数を掛けて
相互に乗算して増えてく
っていう意味じゃなかったっけ
0257デフォルトの名無しさん2017/02/16(木) 13:56:51.92ID:oI59/Xqq
俺客だけどプログラムそのものじゃなくてプログラムで出来るものと、できてるプログラムの改造しやすさしか興味ないよ
プログラムの速さだって実測してくれるなら相手がそれを計算出来るかどうかなんてどうでもいいし、そんな糞マニアックなことより、円滑なコミュニケーションのために俺の目的分野の専門知識の触りとかを知っておいて欲しいわ
0258デフォルトの名無しさん2017/02/16(木) 14:57:12.38ID:xrKz9Vp6
考えてみたが、最適化や低レベルについては、
むしろ関数型言語の方が壁に当たる分、深く知る羽目になる気がするね

CPSや再帰の末尾最適化など、特別な書き方がいるし、
例えば、自分が代入先のレジスタやretの生成位置気にしたり、
最適化の処理系実装そのものまで考えるようになったのは、関数型の影響
前は枝葉のコストや小さなコードの入力とアセンブリの出力の範囲での最適化しか考えなかった

逆を言えば、関数型は簡単なコードすら手動最適化が必須の駄目環境って事だけど
ちなみにHaskellは知らない
0259デフォルトの名無しさん2017/02/16(木) 14:59:57.45ID:vNu5QmU/
>>258
そうだよ、だからバカは使うなって言ってるの。
0260デフォルトの名無しさん2017/02/16(木) 15:02:02.18ID:xrKz9Vp6
長くなったので、>>258から分割

>>255
相乗については>>256の通り

まず非機能要件は、テストに組み込めという話をしたので問題外として、

そちらのいう構成は、OSどころかアーキテクチャまで考える場合もあるよね
でも厳密な最適化や計算を行いたいなら、環境も厳密に規定する必要がある
想定が高くても低くても効率は落ちるから

けど、そこまで厳密な環境なんてそう無い
上限または下限を想定する事はあっても、決め打ちする事はまずないから
つまり非機能要件は決め打ちじゃない

そしてそもそも品質そのものは目的によって変わるので、最適化すれば良いという話じゃない
例えば学習ソフトなら、実際の画面遷移の最適化なんかより、
遷移遅延を感じさせない仕組みのが重要だったりするよね

そして、構成決め打ちで速度やスケールが重要な場合
これは厳密にデータを取って確認する事になるから、
推量なんて適当な話にはならない

ちなみに手続き型からドロップアウトと言ってるけど、自分は今でも両方触ってるよ
まあただ煽って貶したいだけだろうけどさ
0261デフォルトの名無しさん2017/02/16(木) 15:24:31.29ID:xrKz9Vp6
ちなみに推量の最適化自体を否定してるわけじゃないよ
でもそんなものよりプロファイル取る癖つけろと言ってるだけで

あと、一つ突っ込むの忘れてた
>想定は結果から逆算するべきものではない。
自分にとっては想定ミスなんて良くあるし、
ミスったら結果から演繹するので、正直全く同意できないね
もちろんテストも書くし、その結果から修正する事もある
0262デフォルトの名無しさん2017/02/16(木) 15:29:54.59ID:H/8owqMI
プログラミングは油絵の様に後からいくらでも直せるからね。
取り敢えず作ってダメなら直すというやり方が成功するんだよ。
フランケンシュタインのようにライブラリーの継ぎ接ぎでつくって
後から気に入らないところを治す方法が一番適してる。
速すぎる最適化は良い効果を生まないよ。
それには言語の処理速度なんか関係なくて
ライブラリーが充実していて再発明をしなくてよくて
バグが起きにくいガベージコレクションなどが採用されてる
pythonが最適だと思うね。
0263デフォルトの名無しさん2017/02/16(木) 16:13:06.24ID:Om/f1qwp
>>257
システムに必要な専門分野の知識を説明するのは発注者の仕事
一般的に入手可能な知識で2〜3冊本読めば済むような内容なら別だが
0264デフォルトの名無しさん2017/02/16(木) 16:25:33.75ID:Om/f1qwp
速度や実行効率と可読性や保守性とのバランスが10年前や20年前とは変わってるんだから
自分のポジショニングを考えた上でフォーカスするレイヤーを決めればいい話
すべてのプログラマーが同じレイヤーを意識しなきゃいけないわけがない
0265デフォルトの名無しさん2017/02/16(木) 16:31:10.41ID:oI59/Xqq
ごりごりの手続き型のコードは読むのしんどいから嫌い
めっちゃ速いならもうコード見ずに使うけど、それならその分野で世界最速の奴一個買って終わりだな。その手ので日本産の奴買ったことないわ
読みやすくて改造させてくれるなら、多少遅くても大した差はないし、自由度効くぶん使いやすいからそっち普段使いにするな

>>263
そりゃ一般的に入手可能な本2〜3冊読んでりゃもう十分よ。触りって書いただろ
0266デフォルトの名無しさん2017/02/16(木) 17:13:38.72ID:Om/f1qwp
そっか
触りってのをどういう意味で使ってるのか判断できなかったんだよ
0267デフォルトの名無しさん2017/02/16(木) 18:21:46.39ID:JJYggtnj
>>264
その通りではあるんだけど
学習コスト・ライブラリ充実度から言語絞り込まれてほしいのが本音
0268デフォルトの名無しさん2017/02/16(木) 18:33:59.96ID:vXmi+bZe
数学屋の友人はあっという間に
Haskellを使いこなすすようになってた…
自分との学習コストの違いに唖然
0269デフォルトの名無しさん2017/02/16(木) 18:53:05.90ID:vNu5QmU/
>>260
お前の言ってる決め打ちがわからん。
上限下限はどうするの?勘?まだ存在しない顧客環境での実測値?

それで触ってるのが仕事だとすると、どんぶり勘定な仕事だなとしか言いようが無い。
もしくは、別次元としての、70万行のデータを、時間かかっていいしマシンパワーで押すわ、百万行まで触れるようになったし。プログラムとかめんどくさい。って言ってエクセルのピボットで集計するようなただの作業。

>>261
想定ミスは、想定のミスであって、俺はお前が想定らしい想定してない事を言ってるんよ。
正しく想定してからやっと、想定ミスだって言えるの。
多分データ量の二乗に比例しとるなって結果から見て、実はデータ量とは関係なくディスクIOの二乗で全部メモリに乗れば関係なかったとか、脇が甘いテストになる。
その結果から修正する事はあれど、その結果が何故かを無視していい訳ではない。

>>262
最適化以前の話。
>>264
そーそー。だから、危険物乙種でしかないの。
0270デフォルトの名無しさん2017/02/16(木) 19:06:31.30ID:Om/f1qwp
危険物乙種とかわからんからググったわwもう
http://zukai-kikenbutu.com/faq.html
0271デフォルトの名無しさん2017/02/16(木) 19:11:27.27ID:i7zv/65D
>>269
君なんの職業?
0272デフォルトの名無しさん2017/02/16(木) 19:36:24.29ID:jkeGRaiP
>>253
いや人格攻撃じゃないし
どんどん議論するべき
0273デフォルトの名無しさん2017/02/16(木) 20:20:58.17ID:vTJJz6f+
AirPlayは次世代言語スレから去るべき
0274デフォルトの名無しさん2017/02/16(木) 21:08:30.75ID:vNu5QmU/
>>271
SEで、機械屋。
0275デフォルトの名無しさん2017/02/16(木) 21:09:37.34ID:fezIKwJC
Haskellとかの関数型言語の面倒くさい部分を全て隠蔽して
普通の手続き型言語として使えるような次世代関数型言語って無いの?
0276デフォルトの名無しさん2017/02/16(木) 21:11:46.40ID:vNu5QmU/
>>273
どっかで同じような言ってるやつが居たな、このスレだったか。
MathematicaとかMaxima使ってる≒線形代数エアプでやり過ごしたに違いない的なやつ。
0277デフォルトの名無しさん2017/02/16(木) 21:15:19.80ID:suS7noGe
>>275 >>230 Prologだと
0278デフォルトの名無しさん2017/02/16(木) 21:16:17.73ID:vNu5QmU/
>>275
めんどくさい所は美味しい所でもあるし、そうなるとFortran使っとけとなる。
ちなみに言うほど悪くない。
バカみたいな台数のバカみたいなスペックの計算機クラスタで、CADモデルに対してFEMとCFDいっぺんにかけるのとか向いてる。
0279デフォルトの名無しさん2017/02/16(木) 21:16:59.73ID:tL8xrN5m
>>268
数学屋って何?
数学の研究自体で食ってるとか
数学の授業を担当してる先生とかのことかな

数学の秋山先生みたいな人なら
数学屋と呼んでも違和感無いけど
0280デフォルトの名無しさん2017/02/16(木) 21:18:30.85ID:vNu5QmU/
>>279
虚学同士で仲良くしてるんだろ。
工学部に情報があるのが理解できんのと同じ程度に納得行く話。
0281デフォルトの名無しさん2017/02/16(木) 21:24:58.24ID:tL8xrN5m
>>280
> 虚学同士で仲良くしてるんだろ。

どうしたんだ突然w
お前酒でも飲んでんのかw
0282デフォルトの名無しさん2017/02/16(木) 21:35:39.40ID:P3WHHdzo
>>277
ということはErlang
0283デフォルトの名無しさん2017/02/16(木) 21:38:44.27ID:vNu5QmU/
>>281
すまん、どういう意味かわからん。
むしろ俺が言ってる意味が伝わってないならすまん。
0284デフォルトの名無しさん2017/02/16(木) 21:46:10.67ID:tL8xrN5m
どういう意味か言ってみようかな…

>>268に質問したのに横から旧にお前は)どうしたんだ突然w
(虚学同士?>>268>>268の友人しか登場人物無いし
どこに虚学とやらが二つ揃ってるというのかお前は)どうしたんだ突然w

俺の言ってる意味は分かった?
0285デフォルトの名無しさん2017/02/16(木) 21:59:02.25ID:vNu5QmU/
>>284
ああ、横からって事は、特に何の意味もないよ。

数学屋とやらと、足回りなど気にしない高尚な情報屋同士、どこが実学か俺は聞きたいくらいだが。
虚学って事を知らないならゴメンな。
0286デフォルトの名無しさん2017/02/16(木) 22:00:29.05ID:vNu5QmU/
重ね重ねすまん。
「事を」は「言葉を」の誤記。
0287デフォルトの名無しさん2017/02/16(木) 22:03:03.89ID:tL8xrN5m
>>285
ああわかった

「足回りなど気にしない高尚な情報屋同士」
これ↑はどっから出てきたんだよってこと
俺にはさっぱりわからんがお前にはそれが見えているから
虚学「同士」ってことになるのね

わかったわかったもう完全にわかった
どうもありがとう
0288デフォルトの名無しさん2017/02/16(木) 22:06:36.02ID:DGgcs6h7
やっぱり人格攻撃になるんだなあ
0289デフォルトの名無しさん2017/02/16(木) 22:24:01.99ID:UUonyg1z
>>276
君そいつと別人なのか
0290デフォルトの名無しさん2017/02/16(木) 22:29:05.40ID:rd0RZk7B
人の職業を見下し、自分の考えが全てだと思ってる奴おるな
0291デフォルトの名無しさん2017/02/16(木) 22:41:39.82ID:9YwwbNAj
>>274
専門かよ
自分の専門で2chでマウンティングかけて楽しいか?
0292デフォルトの名無しさん2017/02/16(木) 23:02:07.93ID:vNu5QmU/
>>291
マウンティングも何も…。
もし物知らず扱いされたと思うなら、それは単に物知らずだったからなだけじゃん。
扱いじゃなくて事実なら真摯に受け止めるべきだと思うけど。
煽りながらとはいえ、意見を軽く扱ったつもりはないし、全て真面目に反論してきたつもり。
それに対して、専門だ、マウンティングだ、と知識やノウハウを議論する以前の段階にすり替えて、自分に対してみっともないとか、惨めだとかそういう気持ちは起こらんのかな?
今一番お前を馬鹿にしてるのはお前自身だよ。

そもそも、少なくとも議論出来るレベルでこっちは議論したいわけ。議論スレなんだから。
0293デフォルトの名無しさん2017/02/16(木) 23:09:53.87ID:81TflRQB
真面目にマウンティングしてたんだね
0294デフォルトの名無しさん2017/02/16(木) 23:17:05.21ID:vNu5QmU/
これをマウンティングと言われたらなんの話もできんな。
それこそ、事実や経験や知識や裏打ちはほっといて、
フワッとした主観で具体的な言語の話をする楽しいスレになるんだろうな。
俺は降りた。
0295デフォルトの名無しさん2017/02/16(木) 23:29:17.18ID:9YwwbNAj
>煽りながら
自覚あって草だw

そりゃ楽しくプログラムするための次世代言語のスレで楽しくプログラムするより速さを求めてきっちりしないとエンジニアとして云々言ってたらマウンティング以外の何物でもないだろ
0296デフォルトの名無しさん2017/02/16(木) 23:50:42.37ID:vNu5QmU/
>>295
楽しくプログラムするためとは驚いた。
楽しいプログラムなんて、楽しい偏微分方程式の解き方ぐらい存在意義がわからん。
「使って嬉しいシャープペンシル、女子力アップ!」みたいな、そうじゃないってか漠然とし過ぎてる話にならんの?

道具。いかに道具として次世代にふさわしいかだと思うんだけど?

速さを求めてるわけではないよ。
速くなくても良いけど、なにやってるか分かってないけどとりあえず便利、は間違ってる。
シャーペンってすごいんだぜ、なんだかよくわからないけど、押せば芯が出るんだ、出なくなったら芯終わりだからね!いっぱい書いて試してみて!みたいに聞こえる。
0297デフォルトの名無しさん2017/02/16(木) 23:50:59.04ID:tL8xrN5m
> 事実や経験や知識や裏打ちはほっといて

酩酊でもしないと常人からは出ぬフレーズ
うぬぼれきった陶酔しきった世界観
0298デフォルトの名無しさん2017/02/16(木) 23:53:30.18ID:vNu5QmU/
>>297
えー?じゃあどれも無いってこと?
0299デフォルトの名無しさん2017/02/16(木) 23:55:25.31ID:Om/f1qwp
メタギロン
0300デフォルトの名無しさん2017/02/16(木) 23:56:41.07ID:tL8xrN5m
>>298
一切の煽りなしで一個聞いていい?
今お酒どんくらい飲んでるの?w
0301デフォルトの名無しさん2017/02/16(木) 23:59:57.92ID:vNu5QmU/
>>299
たしかに。それは申し訳ないな。
議論の議論しても仕方無い。

まぁ、うまい・安い・早い、適当に適用して便利、省メモリ、正確は2つしか取れんのだから、
何が良いかはどれが欲しいかからしか選べんのだし、
関数型だ!ってのは、ある場合でしか成り立たんのを、
資格だ、と言うのが変だなと言うところが発端だったということで。

少なくとも楽しいではないけど。
0302デフォルトの名無しさん2017/02/17(金) 00:00:32.49ID:v1OUY9Vp
>>300
飲んだらもっとめんどくさいよ。
飲んでないから言うけど。
0303デフォルトの名無しさん2017/02/17(金) 00:00:54.35ID:CPPwRvDK
速さが欲しくてきっちりやりたい時はFortran使うし、再帰関数使うならヒープ量把握しとけとか余計なお世話だわ
目的のことだけ考えて楽しくプログラム書きたいからわざわざ次世代言語なんて使ってるんだっちゅーの

>>296
こちとらこっちの専門でやりたいことがあってそれを素早く楽に実現する為だったり、趣味で表現したいことがあってプログラム書いてるわけよ。きっちり管理する煩わしささえなければExcelでもいいわけ。
そんな作業楽しい方がいいに決まってるだろ。
こっちこそ授業ノートとるならシャーペンの構造を理解しとけと言ってるように感じる
0304デフォルトの名無しさん2017/02/17(金) 00:05:38.15ID:CPPwRvDK
関数型言語使えるのががプログラマの資格だとか言ってる奴いたか?
そんな奴いたなら俺も変だと思うけど
0305デフォルトの名無しさん2017/02/17(金) 00:05:45.99ID:v1OUY9Vp
>>303
目的の事だけ考える、に、方法が無いなら、目をつぶって得体の知れない手袋はめて輪投げするようなもんだろ。
それはどんな苦行なんだよ。
歩いていって素手で輪を置いたほうがいいんでないの?って言われても当然じゃん。

ノート取るならシャーペンの構造を理解しとけって、そりゃそうじゃねえの?
見りゃわかるから意識してないだけで。
落としたら中の芯折れるんだな、とか、明日芯無くなるな、とか、
一切考えずに使えるもんでもない。慣れてるだけ。
0306デフォルトの名無しさん2017/02/17(金) 00:06:56.54ID:v1OUY9Vp
>>304
>>149な。
0307デフォルトの名無しさん2017/02/17(金) 00:12:33.39ID:CPPwRvDK
>>305
目的のことだけを考えるのに一番近いのがPythonみたいなバッテリー付属言語とか、いわゆる「表現力の高い」関数型言語なんよ
たしかにこいつらは遅いけど、バグも少ないし書いてて楽しい

シャーペンの例なら、さっきからシャーペンを作れるようになっとけってレベルのこと書いてるように感じるけど?

>>149はまあ俺も頭おかしいと思うわ
0308デフォルトの名無しさん2017/02/17(金) 00:16:40.96ID:jHhPXKUT
>>149はしょーもない、2ちゃんにありがちな、
レス乞食の釣りレスだと思うけど単にw
0309デフォルトの名無しさん2017/02/17(金) 00:19:13.74ID:v1OUY9Vp
Excelで良いならExcel使えばいいと思うんだよなぁ。
Pythonしかり。

楽しいってなんだろう。
楽しく訓練して何日かかけてやるのと、
楽しくないけど半日で終わってあとは好きな本当に楽しいことができるのなら、
多分、後者のほうが良いと思うんよ。

別に速くなくても良いよ。挙動のわからんものを使うなと。
ヒープの例に戻れば、断言してくれれば、もしくは断言できるか、計算しますと言えれば、いくらでも使って良いと思ってる。

シャーペン作れなくても良いよ。
何故シャーペンで字がかけるのか、どれぐらいで芯が無くなるのかって事ぐらいは最低考えとけ、
それは文字数よりも書いた面積に比例してて、明日はどれくらい物書くから、どれぐらい芯が要るか考えて筆箱準備しろ、
って言ってる。
0310デフォルトの名無しさん2017/02/17(金) 00:22:28.47ID:v1OUY9Vp
ってかExcelってVBA使わない限りは、
クソ遅いだけで、超ピュアでビジュアルな関数型のプログラミングだと思うんだけどね。
ありゃ良くできてる。
0311デフォルトの名無しさん2017/02/17(金) 00:28:46.57ID:FRNRkpOC
どこがだ。具体的に
0312デフォルトの名無しさん2017/02/17(金) 00:30:26.50ID:FRNRkpOC
それはマスのところで関数を記述できるだけで、関数型言語とはべつではないのか。
C言語も関数を記述できるがそれは関数型言語ではないのか。
0313デフォルトの名無しさん2017/02/17(金) 00:32:15.78ID:v1OUY9Vp
>>311
副作用が無い、データかデータを表す何かの有向グラフに収まるところ。
0314デフォルトの名無しさん2017/02/17(金) 00:32:24.02ID:CPPwRvDK
>>309
人の趣味にケチつけんな
Excelは管理再利用が面倒だし、実行するのにデータをxml形式にしないしといけないし、人に触らせたらすぐぶっ壊れるし、記述速度より実行速度が気になるレベルで遅いしであんなもん嫌いだ
あと関数型は数日かけて訓練したらその辺のマクロよりよっぽど記述効率いいからな。実行速度もそんなに遅くなくて実行速度と記述速度のバランスも取れてる

シャーペン作れなくてもいいっていうのは俺はMKLレベルのfft作れなくてもMKLのfftの結果があってることを確認出来るなら問題ないと解釈してるけどいいか?
0315デフォルトの名無しさん2017/02/17(金) 00:39:39.34ID:BlebXdwz
>>311
参考
http://softwareengineering.stackexchange.com/questions/219298/what-are-the-data-structures-behind-a-spreadsheet
0316デフォルトの名無しさん2017/02/17(金) 00:41:08.25ID:v1OUY9Vp
>>314
ケチはつけてないよ。
それは、使えない、で良くないって言うんじゃないの?俺は、で良いならって言ってんだから。
よほど記述効率が良い、って段は、
程度問題であって、目的が果たせればそれで良いって自分で言ってるの?それは自分でケチつけてるんじゃないの?

多分シャーペンと同じで、慣れてるからそう思うバイアス掛かってると思うけどね。もしくはイケア家具みたいな、自分が作ったからこれは良い物だ的な。

FFTの話はまさにそう。
検算可能であり、コスト算定可能であればそれで良いと思う。
0317デフォルトの名無しさん2017/02/17(金) 00:43:41.86ID:v1OUY9Vp
>>315
paper書く人居るくらいのテーマなんだな。
0318デフォルトの名無しさん2017/02/17(金) 00:49:53.74ID:CPPwRvDK
>>316
「『きっちり管理する煩わしささえなければ」Excelでいい』ってちゃんと書いただろ。結論としてExcelはダメなんだよちゃんと読めよ

程度問題だよ。関数型より書きやすくてそんなに遅くないいい言語があったら乗り換えるよ
そこまで言うのなら書きやすくてそんなに遅くない、いい言語紹介しろよ。そのために議論スレがあるんだよ

俺はFFTのコスト算定はオーダー以上のことは出来ないよ。人の環境とか知ったこっちゃないからな。文句あるか?
0319デフォルトの名無しさん2017/02/17(金) 01:03:04.70ID:v1OUY9Vp
>>318
ちゃんと読んで、「それは駄目ってことだよね」と。俺は「で良いなら」って話をしてるんだから、なんの否定もしてないじゃん、って言ってるんだが。

やっぱり程度問題なんでしょ?それ言ってんじゃん。。

俺は総てに於いてこれが良いって物は出せないよねって主張してんだから、それを何か勧める為には何したいか言ってもらわないと何とも言えんが、
FFTかけたいようなデータで、かつそれはすでに解釈されたデータ列になってて、FFTかけるだけなら、
どれで書いてもレベル変わらんような。
マルチコアでぶん回したいなら、
Goのチャンネルに放り込むか、
F#なりC#で列挙子にしてパイプライン的に書くかな。ngenすりゃ実用範囲で動くと思う。

もっと楽にやりたいならlabview線つなぐ。
0320デフォルトの名無しさん2017/02/17(金) 01:03:42.24ID:v1OUY9Vp
labview「で」線つなぐ、だな。脱字多くてすまん。
0321デフォルトの名無しさん2017/02/17(金) 01:11:48.31ID:flJ/BMEC
コミュ障特有の謎比喩
0322デフォルトの名無しさん2017/02/17(金) 01:19:27.13ID:v1OUY9Vp
>>321
だって、端的に書いても理解できてないじゃん。
俺ずっと同じ事を言ってるよ。
0323デフォルトの名無しさん2017/02/17(金) 01:22:15.67ID:CPPwRvDK
>>316
>>303「『管理しやすいなら』Excelでもいい作業」
>>309「ExcelでいいならExcelを使えばいい」
>>314「Excelは管理しにくいからダメ」
>>316「Excelでいいなら」
>>318「Excelじゃダメだって」
なんか間違ってる?
正直今も316は解釈出来てないかもしれん
319も最初の段は何言ってるかわからん。主語と述語ちゃんとつけてくれ

だから程度問題だって。程度問題だよ。程度問題で言語選んじゃいけませんか?全てにおいてこれがいいって言語はないから中ぐらいの普段書きの言語として関数型選んでるわけ。文句ある?

「全てにおいてこれがいいって物は出せないよね」って意見が理由で人に計算量きっちり計算できない奴はエンジニア失格とか煽ってたの?

>>322
確信持てないし、俺も人のこと言えないけど、多分君の文は相当読みにくくて理解しにくいと思う。
0324デフォルトの名無しさん2017/02/17(金) 01:23:50.79ID:CPPwRvDK
いや、もしかして>>149がこの板の総意だと思って暴れてるのか?
0325デフォルトの名無しさん2017/02/17(金) 01:23:55.37ID:FFSvl2Qr
バカの一つ覚えみたいにマウンティングがどうの喚いてる残念な子は何なの
0326デフォルトの名無しさん2017/02/17(金) 01:39:01.80ID:CPPwRvDK
いやこいつ>>181か?
関数型ができたら免許皆伝という意味ではないと主張してるのか
もしそうなら特に異論はないわ。書き方が全体的に刺々しくて腹立つだけで
0327デフォルトの名無しさん2017/02/17(金) 01:47:42.61ID:BlebXdwz
数学よりも国語力が大事ってことが証明されたな
0328デフォルトの名無しさん2017/02/17(金) 01:51:20.62ID:v1OUY9Vp
>>323
309の解釈が違う。
309では、Excelで良いって言うなら、Excelでいいんだよなって言ってんの。
君の発言とは一切関係なく。
>>269を引き合いに出した発言な。
かつ、Excelでいい場合の話してるんだから、Excelではいかん場合のお前の話は、何故俺に説明されてるかわからんかった。

>>323
何をムキになってるかわからん。
俺にとっては程度問題だけど、そっちが持ってる技術に偏りがあるなら、それは重み付けされちゃうじゃん、って。

「全て於いてこれが良い云々」は当たり前だけど、その前提を持って考える上で計算量を把握して、という話なんだから、
君が煽ってるのは君だよ。
君が用意するんだよ、前提の前提を。

前提を出さず、ほらお前はやってない、どうなんだ、ってそりゃ詐欺師だ。
よほど、それでは出せない、と端的に断るほうが誠意がある。
少なくとも知ったかぶってはいないよ。

>>323
確信を持って言うけど、ちゃんと読めば最初から書いてある。
それに対して、正しいというレスもついているし、反論もついている。

それをここまで懇切丁寧に説明させて、わかり辛いとはどの口に言われたもんかわからんな。
バカの責任転嫁も甚だしいわ。
0329デフォルトの名無しさん2017/02/17(金) 01:52:59.18ID:v1OUY9Vp
>>324
そうじゃないよ。
それへの反論の書き込みに対して、反応した人らがずーっと反論してくる感じ。
>>326
そうだよ!!
0330デフォルトの名無しさん2017/02/17(金) 02:05:33.84ID:/e9PsruZ
>>269
バッファ程度の事も想定して当たり前だよ
お前さん、他人をすぐ下に見る傾向があるみたいだけど、特に優秀には見えないよ

そもそもプログラミング可能な範囲だけでIO制御を考えてる時点で、想定が甘すぎると言ってるわけ
それと実測値に根拠がないと言うが、実測もしない値のがよほど根拠ない
想定と異なるとしても、それは実測とは関係がない

自分を過信するのもいい加減にな
0331デフォルトの名無しさん2017/02/17(金) 02:07:45.05ID:CPPwRvDK
>>328
日をまたいで正確に追って読めというのは無理がある。ちゃんと日をまたいで理解して欲しければコテをつけてくれ
バカの責任転嫁とまで言われる筋合いは流石にないし、流石に自分の文に自信持ちすぎかと。そこは自分を過信しすぎだろう。
>>316
>それは、使えない、で良くないって言うんじゃないの?>俺は、で良いならって言ってんだから。
なんて書いていてめちゃくちゃな日本語だと自分で思わなかったの?
まあ、もういいけど
0332デフォルトの名無しさん2017/02/17(金) 02:08:57.41ID:CPPwRvDK
よくみると元々の議論相手だったっぽいID:/e9PsruZもけっこううざいな
0333デフォルトの名無しさん2017/02/17(金) 02:18:08.25ID:/e9PsruZ
>>332
お前ふざけた事言ってるとOreillyで殴るぞ
0334デフォルトの名無しさん2017/02/17(金) 02:19:14.14ID:CPPwRvDK
>>333
Oreillyは電子書籍で揃えた。そっちだけ物理の本で殴るのはズルい
0335デフォルトの名無しさん2017/02/17(金) 02:23:41.12ID:/e9PsruZ
>>334
わかったKindleで殴るぞ
0336デフォルトの名無しさん2017/02/17(金) 02:25:04.91ID:CPPwRvDK
>>335
そこまで揃えられたらしゃーない。大人しく殴られてやる。おやすみ
0337デフォルトの名無しさん2017/02/17(金) 02:48:04.12ID:rJQ63uAR
俺、次世代言語の事なんか何も判らんけど
このスレ好きだわ
0338デフォルトの名無しさん2017/02/17(金) 06:12:11.89ID:OzL2HcLi
スレ伸びてたと思ったら、すごいことになっとるなww
プロの人が降臨してたか。エアプじゃない経験した各プログラミング言語の弱点を聞いてみたいわ。
0339デフォルトの名無しさん2017/02/17(金) 07:09:56.96ID:g/hrd3HU
Haskell好きでガシガシ勉強してきたけど
久しぶりにCでコード書いたら
シンプルかつ高速なええ言語やん。

バグらずちゃんと動いて、読み易けりゃ
言語はExcelでもCでもなんでも構わんなあと達観。
0340デフォルトの名無しさん2017/02/17(金) 08:04:07.72ID:v1OUY9Vp
>>330
実測するんだって。
その出てきた実測値は根拠あっての実測値じゃん。
想定と実測が関係ないとなると、じゃあどう直す?って話になるじゃん。

>>331
滅茶苦茶な日本語だとは特に思わんけどな。
お前の言ってるのはAは使えないだろ
俺はAが使える時の話してる
ってのを理解できなかったから、細かく話されてるだけかと。
0341デフォルトの名無しさん2017/02/17(金) 08:17:06.53ID:v1OUY9Vp
>>338
coq→原理上、煩雑
Prolog→思ってるより良い。ただ満足に使いたければマシンパワーで押す必要がある
haskell→煩雑で遅い
Scala→そこまで遅くはないけど煩雑
lisp(Gauche)→カッコが一種類は読んでて辛い。でももっと流行っても良かった言語。好き。
Fortran→実務やるまでは古代文明だと思ってたが、相当こなれてる
C#→割と万能。個人的に一番使う。
C→これを使って便利な所が、≒不便な所に直結する。ライブラリ書く言語としては最強かと。
Java→嫌いじゃないが、細かくthrowableとか書く割にそれから享受するメリットが少ない。
rust→とても良いけど、結局低レイヤー考えられないと使い物にならん
Go→イケアの取説程度にわかりやすい。手順や書き方を縛って読むのを楽にする類。ただ、channelって考え方は好き。
PHP→良い言語ではないが、よい道具。作者の発言の、歯ブラシの下りはまさに同感。
そんなもんかな。
Ruby→歪すぎる
0342デフォルトの名無しさん2017/02/17(金) 08:23:11.54ID:/e9PsruZ
>>340
だからそのデータや実測値という根拠を元に、更にべつの想定で関連させるんだろ
でもお前さんは、想定が先と言ってる
推量はいくら進めても推量でしかなのだから、実測値には勝てないよ
その事を認めるなら、プロファイルを取る事より、想定を優先した事が矛盾している
0343デフォルトの名無しさん2017/02/17(金) 08:29:07.61ID:/e9PsruZ
しかし機械系のSEって具体的に何の人よ
制御系なら組込Javaの基礎知識ぐらいあるだろうし
0344デフォルトの名無しさん2017/02/17(金) 08:46:35.63ID:v1OUY9Vp
>>342
勝つとかじゃなくて。
実測は結果で、原因にはできないよねって言ってるの。
実測が意味を為すのは推定想定に対しての振れ幅だよ。

>>343
原動機とかその辺作ってるような所のSE。統計と解析と、モデリングとシミュレーションが主。
Javaの基礎知識は微妙。好きじゃないし。
Javaのプロセッサも使わんな。
0345デフォルトの名無しさん2017/02/17(金) 10:09:14.07ID:5GnaKs10
>>340
君細かく話すの下手ね
自分の書いた文を三日後に読んで意味わかるか確かめるといいよ
0346デフォルトの名無しさん2017/02/17(金) 10:55:52.49ID:v1OUY9Vp
>>345
普段細かく話さなくても通じるから、それはちょっと慣れなきゃならんな。
面目無い。
0347デフォルトの名無しさん2017/02/17(金) 18:13:23.68ID:BlebXdwz
>>341
>lisp(Gauche)→カッコが一種類は読んでて辛い。でももっと流行っても良かった言語。好き。

カッコが3種類の読みやすいLispあるよ
0348デフォルトの名無しさん2017/02/17(金) 19:30:05.29ID:OHRubUk+
俺の使ってるlispは閉じ括弧と開き括弧の2種類あるから読みやすいよ。
0349デフォルトの名無しさん2017/02/17(金) 20:08:04.10ID:OzL2HcLi
>>341
そっち系のプロの一感想として参考になった。
ありがとう。
アマチュアとしてそれとは真逆の方向に進むわ。
0350デフォルトの名無しさん2017/02/17(金) 20:14:56.21ID:v1OUY9Vp
>>347
Gaucheは同じとみなすだけだが、あれは好かん。
違う、同じ物を2つの書き方で書けてもなんの意味もないどころか、全てが同じ存在であることがまず一番のメリットのlispに無視できない影を落とすと思わないかな。
カッコが一種類で辛いのは人間が読むときなんよ。そんな都合でいびつな仕組み作っても全く意味がない。

Javascriptはいろんな意味でカッコが3種類あるlispかもしれんな。
0351デフォルトの名無しさん2017/02/17(金) 20:34:03.22ID:krcZKPEA
Lisp系は読みやすくするためにブロックインデントのような記述をする
しかもインデントは構文とは関係ないからルーズでいいという柔軟性もあって
コードを読むのは最初の取っ付き難さだけの問題ですぐに慣れる
0352デフォルトの名無しさん2017/02/17(金) 20:39:11.22ID:v1OUY9Vp
>>349
俺は情報分野は仕組み知ってただけだよ。あとTurboCとTurboPascalは使ってたけど、高尚なもんじゃなくて単に計算してた。
それこそ仕事で最初触った石がハーバードアーキテクチャで、コンパイラがカスすぎてアセンブラで書いたくらい。
あとは使うから使えるようになっただけだし、新しい何かが出たら本当に便利なのか使ってみたいから、今すでにあるものをその考え方に合わせて書き直して、必要があれは人呼んで添削してもらったりして選定してきただけ。
趣味者やアマチュアとモチベーションの位置は変わらんよ。

>>351
あれ今の環境だときっと読みやすいんだろうな。
0353デフォルトの名無しさん2017/02/17(金) 20:54:31.83ID:jHhPXKUT
お山の大将にありがちな
聞くに堪えない幼稚な大演説
0354デフォルトの名無しさん2017/02/17(金) 21:00:04.86ID:v1OUY9Vp
>>353
幼稚でなく端的な、聞くに耐えるレスをよろしく!
0355デフォルトの名無しさん2017/02/17(金) 21:01:30.74ID:OzL2HcLi
>>352
なる。感想を聞いたとしても結局は自分で試すことになる。仕事で使っていない分、試す時間は少ない。
となると、アマチュアはプロが触れそうにない領域を試すというのが良い役割分担なのでは?と思っている。
常に進化するべきという、モチベーションは共通していると思うよ。
なので、上に挙がっているProlog、Lisp(Gauche)、Coqあたりをやることにする。自然言語処理に相性いいかなと。
上の計算コスト云々はよく分からんかった。
これらはアルゴリズム系のを押さえとけばいいんかな?教えてもらえるのならこの際聞いておきたい。
0356デフォルトの名無しさん2017/02/17(金) 21:04:19.50ID:OzL2HcLi
ああ、触れそうにないというのはあれね、
触れたけどそっちの方向には行く気があまりしない、というやつね。
すでに触れとるわとか言いそうだからww
0357デフォルトの名無しさん2017/02/17(金) 21:13:43.89ID:BlebXdwz
>>348
>>350
そういうんとちゃうわw
リスト -> ()
ベクタ -> []
マップ -> {}
0358デフォルトの名無しさん2017/02/17(金) 21:17:54.89ID:FRNRkpOC
実測とこのスレの次世代言語は関係ないとおもうんだが・・・
現行が遅いことと、速さの限界が言語として決まってることは別だろ。
チューリング完全とされる言語は理屈上、同じ性能のはずだし、
同じ動作を実現させるならどんな言語でも、コンパイル後のアセンブラコードを一致させるのは可能だろ。
0359デフォルトの名無しさん2017/02/17(金) 21:36:19.92ID:791Hsf9h
>>358
同意。現行の速さの話は現世代言語スレを立ててそちらで行うべき
0360デフォルトの名無しさん2017/02/17(金) 21:46:25.54ID:j7VnQfgr
>>358
そういう究極に近い処理系は海外旅行と同じくらいのコストで
別銀河に行ける時代には可能かもしれないけど次世代ではないと思う
0361デフォルトの名無しさん2017/02/17(金) 21:52:26.95ID:RO0Dh/N6
Haskellってデータ構造がリストで整数値がBigIntだから遅いだけで、その二つをやめたコードは普通に速いって聞いたけどどうなの?
0362デフォルトの名無しさん2017/02/17(金) 22:07:14.05ID:umz2fAMD
>>355
プロが触れそうにないってのはたしかにあるかも。
俺も個人的に遊んでるものはあるけど、そっちで使ってたものが何年か経って何故か流行る事もあるし。
アルゴリズムってか、計算量を想定する癖的なものを付けといたほうが、明らかな悪手を選ばないと思う。

>>357
全部S式だから意味がある。

>>358
そう。実測は結果であって、考え方の軸に据えるべきものじゃない。
速さの限界が言語として決まってるってのは微妙。その言語でコンパイラ書いたら良いんだし、今のCPUだと作法がめんどくさいけど、クリティカルな部分メモリに機械語書いて実行可能フラグ立てて、ただjmpすれば良い。
0363デフォルトの名無しさん2017/02/17(金) 22:10:00.55ID:FRNRkpOC
そうでない。
言語文法によって速度限界が決定されるのか?ということ。
たとえばジョジョ言語、天使ちゃんマジ天使言語はもとと同速、同性能なはず。
 
一部抜粋。
 
 
ジョジョ言語
オラオラオラオラオラオラオラオラオラッ!!
「あ・・・ありのまま今起こったことを話すぜ
俺は奴の前で階段を登っていたと思ったら、いつの間にか降りていた
な…何を言っているのかわからねーと思うが、
俺も何をされたのかわからなかった…
頭がどうにかなりそうだった…催眠術だとか超スピードだとか、
そんなチャチなもんじゃあ断じてねえ。
もっと恐ろしいものの片鱗を味わったぜ…」
スターフィンガー!
オラオララララ!
http://d.hatena.ne.jp/toyoshi/20100208/1265587511


天使ちゃんマジ天使言語
天使ちゃん!天使ちゃんマジ天使天使ちゃん天使ちゃん天使ちゃんマ
ジ天使天使ちゃん天使ちゃん天使ちゃん天使ちゃん天使ちゃんマジマ
ジマジマジマジ天使マジマジマジマジマジ天使天使ちゃん天使ちゃん
天使ちゃん!天使ちゃん天使ちゃん天使ちゃん天使ちゃんマジマジマ
ジ天使天使ちゃんマジ天使天使ちゃんマジマジマジマジマジマジ天使
天使ちゃん天使ちゃん天使ちゃんマジ天使天使ちゃん!
http://yuroyoro.hatenablog.com/entry/20100621/1277104092
0364デフォルトの名無しさん2017/02/17(金) 22:47:39.98ID:umz2fAMD
>>363
俺も、されない、って言ってるんだけど。
Brainfuck系でも、その中でそれを解釈してインタプリタとして実行するのと、それを解釈してメモリに実行可能なバイナリ書いてjmpするのではかなり違うだろうし。
BASICでPOKEしまくってjmpする感じ。
0365デフォルトの名無しさん2017/02/17(金) 22:50:27.46ID:RO0Dh/N6
常に誤解されてる日本語能力低い奴おるな
0366デフォルトの名無しさん2017/02/18(土) 00:01:31.00ID:r22s4v0Y
このスレって
次世代言語議論とか関係なくて
宗教戦争してる感じ

ただ読んでて勉強になる
0367デフォルトの名無しさん2017/02/18(土) 01:18:25.28ID:aPryF3wh
プログラミングで時間がかかっている場所を推測してはいけない。ボトルネックは思いもよらない場所で起きる、そのためボトルネックの場所が特定されるまで後で推測しようとしたり、チューニングを施そうとしてはいけない。
0368デフォルトの名無しさん2017/02/18(土) 01:36:35.85ID:sBDrBZfs
実行速度やメモリ使用効率など一切気にしないで(犠牲にしてでも)
とにかく仕様や記述が美しかったり、新たな概念を入れ込んでるような
次世代言語って無いの?
0369デフォルトの名無しさん2017/02/18(土) 01:59:33.85ID:yZwtGkz9
>>362
>全部S式だから意味がある。

トレードオフを考えた意見には見えないな
0370デフォルトの名無しさん2017/02/18(土) 02:20:36.55ID:pwNGovUe
[]とか{}とかを使ったらS式じゃなくなるというのは意味がわからんな
#()と大して変わらんやろ
0371デフォルトの名無しさん2017/02/18(土) 04:14:00.29ID:u3Rp0W8f
>>362
お前最初と言ってる事変わりすぎ
0372デフォルトの名無しさん2017/02/18(土) 06:53:05.50ID:PttFZXVD
>>371
どこ?
0373デフォルトの名無しさん2017/02/18(土) 08:15:41.52ID:eEzHSrBl
次世代言語論に可逆性なんて観点は出てこないものだろうか。
03743732017/02/18(土) 08:20:24.07ID:eEzHSrBl
前スレも含めてリバースエンジニアリングという言葉が一度も現れていない
ことに気がついたのだけれども。
0375デフォルトの名無しさん2017/02/18(土) 09:05:56.17ID:IbdRLC16
可逆であったとして何か良いことがあるのだろうか
0376デフォルトの名無しさん2017/02/18(土) 09:58:23.84ID:tWOOsF+u
実際道具によってどこまで抽象的に考えられるかは違うんだよな

googleがmapreduceをC++だけ書いてて気づいたならたいしたもんだが、その名前自体がアイデアの出所を示してるよな

disassem?必要だよ
何1000万回回す関数ループのアセンブリでのステップ数をしるのに必要

次世代の言語は常におーぷんそーすでかかれるべきだから、きにしてはいけない

だいたい動作原理なんか概ねわかるだろっていうソフトしかないし

めんどくさいのは既存のプログラムのハックしやすさとかだけど、ハックされるってことはユーザ的にうざったいってことだから、これを拒絶するのは次世代的じゃない
0377デフォルトの名無しさん2017/02/18(土) 10:10:29.33ID:tWOOsF+u
あと実務か理論家問わず、ある目的を達成する時間をきにしような

一番いいのはハードウェアリソースと自分の時間的リソースを天秤にかけることだよ、それが答えだ

で下から最適化かけるか上から最適化かけるかだけど、結局的は動くものだから、ラピッドに書き進めて、ダメならコードをさっさと捨てられる言語じゃないとダメだ
下の都合は上からの変更要求に容易に薙ぎ倒される

コードを捨てたことがない奴や、インターフェースを変更してがりがり修正したことがない奴は、物事の設計の本質が再設計にあることがわかっちゃいない
逆に再設計ばっかしてる奴は開発の重みを知らない

だけど同じ内容をいろんなようにかけることが重要で、捨てるべきコードでもテスト関数に使えたりするわけだ、まあコードをがりがりかける言語が重要だわ
0378デフォルトの名無しさん2017/02/18(土) 10:16:40.50ID:eEzHSrBl
>>375
単純に、逆関数が効く部分に限っては、副作用なんて怖くなくなる。
何時でも、元に戻せばよいのだから。
0379デフォルトの名無しさん2017/02/18(土) 10:51:47.48ID:Ro3+uC32
>>371
しかも相手をちゃんと読んでない扱いする屑だぞ
0380デフォルトの名無しさん2017/02/18(土) 11:27:28.43ID:n/aPn98B
>>379
読めてないじゃんw
0381デフォルトの名無しさん2017/02/18(土) 11:34:58.18ID:+coMAf/q
>>378
それがいくつも組み合わさった結果、
副作用と反作用が入り乱れてワケわかんなくなるよね
0382デフォルトの名無しさん2017/02/18(土) 11:44:14.96ID:SkS6Bpbi
>>380
ほらね
0383デフォルトの名無しさん2017/02/18(土) 11:57:51.06ID:J8ZqTZ7F
>>373
Pure Prologなんて「モデル」もあるのだから議論の対象にはなるね
0384デフォルトの名無しさん2017/02/18(土) 12:58:31.34ID:L0Ez/SUX
>>378
副作用なければゼロサムの余地あるけど、あるならただの無駄なんだから駄目だろう

ってか今は副作用って用語流行ってるの?
中級者以上が意識するような印象あったのに
0385デフォルトの名無しさん2017/02/18(土) 13:09:45.23ID:c66JkvGz
>>374
可逆計算を保証するのは、計算モデルを極端に限定しなくてはならない
から難しい。それでは寛くリバース・エンジニアリングではというと、
これは、ログ技術の問題となる。記述量の少なくて済む抽象化が進んだ
高級言語ほど有利。低水準な言語や手続型言語は一般に不利になる。
そんなこともあって、手続型主体の2chでは話題になり難いのではないか。
0386デフォルトの名無しさん2017/02/18(土) 13:12:29.93ID:nOWzQE+i
>>351
すでに通った道です。
https://practical-scheme.net/wiliki/wiliki.cgi?Lisp%3AS%E5%BC%8F%E3%81%AE%E7%90%86%E7%94%B1
0387デフォルトの名無しさん2017/02/18(土) 13:20:05.55ID:+coMAf/q
ルーストっていう新しい言語でもC並の速度?低レベル?扱えるんだから
Go並に仕様整理して、Swift並にモデーンな概念取り入れて、null安全とか型推論とか関数型とか
んでもって、C並の速度?低レベル?もイケる言語作れよ
何でしょうもない新言語モドキばかり作ってるんだ?
0388デフォルトの名無しさん2017/02/18(土) 13:29:38.44ID:H1Iwru9r
構音障害定期
0389デフォルトの名無しさん2017/02/18(土) 13:30:05.93ID:1c96nb+d
つまり D だな
0390デフォルトの名無しさん2017/02/18(土) 13:31:53.39ID:H1Iwru9r
Dに線形代数ライブラリの決定版が来たら使ってやってもいい
0391デフォルトの名無しさん2017/02/18(土) 13:47:42.79ID:lgYwOx6z
>>387
C++が諸悪の根源。こいつのせいで他の低レベル言語が育たない
0392デフォルトの名無しさん2017/02/18(土) 13:51:27.71ID:a+1Rglt2
今SchemeやるならGaucheよりRacketじゃね
0393デフォルトの名無しさん2017/02/18(土) 15:06:57.43ID:H1Iwru9r
>>392
いいこと言うね
0394デフォルトの名無しさん2017/02/18(土) 15:29:25.16ID:+coMAf/q
>>392
ほらな、またワケワカラン言語が沸いてくる
すぐ消えるよそんな言語!
0395デフォルトの名無しさん2017/02/18(土) 15:32:00.14ID:mXj5l4mF
Cのマクロがしょぼいのが一番悪いんだ。
0396デフォルトの名無しさん2017/02/18(土) 15:37:20.08ID:H1Iwru9r
Rackは相当力入れて作ってる奴がいるから多分そう簡単には消えないと思うよ
超手軽にGUIが作れて面白いぞ
0397デフォルトの名無しさん2017/02/18(土) 15:56:21.71ID:+coMAf/q
https://racket-lang.org/

なんだこのきったねえ&だっさい文法
かっこつけすぎ
頭おかしなってるんちゃうか
死んでこいこのサルゥ
0398デフォルトの名無しさん2017/02/18(土) 16:12:20.92ID:IbdRLC16
LLVMのおかげで「文句言うなら作ってみろ」が躊躇なく言える
いい時代になったな
0399デフォルトの名無しさん2017/02/18(土) 16:16:45.63ID:H1Iwru9r
主観でdisは流石に品位を疑う
0400デフォルトの名無しさん2017/02/18(土) 16:20:18.48ID:+coMAf/q
主観じゃない評価って何?
きみ、騙されやすいフレンズなんだね
0401デフォルトの名無しさん2017/02/18(土) 16:20:51.75ID:uN0gKd0L
計算機代数に強い新しい言語って無いよね?
未だにMaximaとかMathematicaとか…
0402デフォルトの名無しさん2017/02/18(土) 16:34:47.66ID:yZwtGkz9
かっこつけすぎって
格好じゃなくて括弧のことだったのかw
0403デフォルトの名無しさん2017/02/18(土) 16:41:27.95ID:nInQFD5e
>>387
ocamlでネイティブコンパイルする
後はすこし遅いけどhaskellでCの型使って正格評価で手続き型として書く
haskell信者が発狂しそう
0404デフォルトの名無しさん2017/02/18(土) 16:45:25.66ID:IbdRLC16
>>400
根拠がない
0405デフォルトの名無しさん2017/02/18(土) 17:12:08.79ID:mXj5l4mF
マウンティングしすぎ。
0406デフォルトの名無しさん2017/02/18(土) 17:46:36.58ID:lAiiQrdi
>>401
独自言語よりJupyter NotobookでSymPyを使う方が応用範囲が広い。
だから計算機代数に強い新言語を作る意味はないと思う。

Pythonの数式処理ライブラリSymPyをWolfram Alpha(Mathematica, Maxima)の代わりに使う方法
http://myenigma.hatenablog.com/entry/2015/11/21/222755
0407デフォルトの名無しさん2017/02/18(土) 18:27:44.02ID:tWOOsF+u
計算機代数ならfortranがさいっきょ
単純なシンタックスが高水準なコンパイラを生むのは当たり前だよなあ
0408デフォルトの名無しさん2017/02/18(土) 19:09:22.59ID:mXj5l4mF
maximaはlispだしmathematicaはCだろ。
というかマウンティングしすぎじゃね?
0409デフォルトの名無しさん2017/02/18(土) 19:57:28.94ID:n/aPn98B
Racket、文法は悪くないと思うけど。発想もランタイムもドキュメントもサンプルも素晴らしいのに流行らんな。

しかし、相変わらず>>405みたいなのが言うマウンティングがわからんな。
なんか昔そう言う奴がリアルに廻りに居たことあったけど、すごくめんどくさい奴だった。
何か自分が知らないことが出てきたら、知らないって事を認めるのが悔しいのか、知っているから何なんだ、偉そうに教えてるつもりか!ってキレてから必死に調べて、
俺が飽きたぐらいにドヤ顔してきて、「へえ、凄いね。で、どんな実用的な物作ったの?そこまでは俺前やったから、実用化したとなるとがぜん興味が出る。是非それを見せてほしい」って答えると発狂した奴。
勝つ事や、覚える事が目的になってんだよなぁ。マウンティングって発想自体が。
これも、ただの人格のdisりに聞こえるんだろうが。
考え方への違和感なんだけど。

>>408
MathematicaはWolfram自体で書いてるライブラリが殆ど。
0410デフォルトの名無しさん2017/02/18(土) 20:05:57.21ID:+coMAf/q
>>408
おまえの名前は今日から騎乗位ヴォーイな
0411デフォルトの名無しさん2017/02/18(土) 21:49:41.01ID:yZwtGkz9
マウンティングはdoggy styleなんだがw
0412デフォルトの名無しさん2017/02/18(土) 21:57:05.09ID:u3Rp0W8f
>>409
ドキュメント、フレームワークの件って
haskellやclojureでも似たような文言見たな
0413デフォルトの名無しさん2017/02/18(土) 21:59:25.00ID:u3Rp0W8f
なんだスレで一人で盛り上がってる奴か
いい加減コテ付けてくれ
0414デフォルトの名無しさん2017/02/18(土) 22:07:23.98ID:9b05DXnD
>>409
偉そうに人を見下した態度を取るクズを揶揄した言葉だぞ
0415デフォルトの名無しさん2017/02/18(土) 22:11:22.21ID:yZwtGkz9
>>414
ちがうわww (マウンティング)
0416デフォルトの名無しさん2017/02/18(土) 22:12:45.81ID:+coMAf/q
騎乗位ヴォーイは誰と戦ってるんだ?
0417デフォルトの名無しさん2017/02/18(土) 22:14:15.42ID:9b05DXnD
>>415
ほんまや。相手よりも立場が上と一方的に格付けすることだったわwwwwww
素性も晒さず立場が上とアピールして相手を見下すことほど滑稽な事はないなwwwwww
0418デフォルトの名無しさん2017/02/18(土) 23:25:03.39ID:n/aPn98B
見下した態度を取るってのがわからんのだよな。
俺は割と疑問質問には答えてるのに。
馬鹿の発言だから、と適当に煙に巻いてしまうのが、見下した態度なんじゃないの?
そうでないと、自分の知らない事喋るやつは全員自分を見下しに掛かってる奴って事になるじゃん。
自分が出来てない事を、自分が改善できない事にすり替えて、だから相手が悪いと言い続けてただ安心してるようにしか感じられん。
0419デフォルトの名無しさん2017/02/18(土) 23:27:34.38ID:n/aPn98B
相手が立場が上とアピールしてると思うためには、自分は立場が下だと思ってる必要があるような気がするんだが、それがよくわからん。
遠回し過ぎる謙遜みたい。
0420デフォルトの名無しさん2017/02/18(土) 23:32:17.27ID:f/vArP56
まずはエンジニアとしてうんぬん言うのやめたら?
このスレにいるのはエンジニアだけじゃないんだし
あとさっさとコテつけろ
0421デフォルトの名無しさん2017/02/18(土) 23:39:15.74ID:+GrP5YYe
ID:n/aPn98B
日本語下手すぎ。ちゃんと推敲して書き込め
0422デフォルトの名無しさん2017/02/18(土) 23:58:28.00ID:n/aPn98B
>>420
もう言ってないじゃん?
言われたら都合の悪い言葉でもあるまいし。
それを元に俺は自分が正当だとは言ってないよ。

>>421
句点が足らん奴に言われてもな。
読解力が足らんだけだろう。
0423デフォルトの名無しさん2017/02/19(日) 00:02:59.54ID:ICafsFuA
>>422
句点が足らんのは文化だぞガイジ
0424デフォルトの名無しさん2017/02/19(日) 00:03:52.76ID:rTEdd30o
>>423
統一しろよ
0425デフォルトの名無しさん2017/02/19(日) 00:06:06.57ID:JRoh81o2
>>424
統一(トンイル)!
0426デフォルトの名無しさん2017/02/19(日) 00:13:25.34ID:JRoh81o2
Clojureすこ��
0427デフォルトの名無しさん2017/02/19(日) 00:28:38.82ID:gFzSi0IK
基本的に型なし言語全般嫌いだわ
保守性最悪

php案件で地獄見た
0428デフォルトの名無しさん2017/02/19(日) 00:30:59.55ID:JRoh81o2
>>427
すまん��‍♀️
一応typed clojureあるから許してくれ��
0429デフォルトの名無しさん2017/02/19(日) 00:36:05.18ID:wTRmLlA2
動的型付け言語はプログラマ様がいかに気持ち良く書けるかを追求したものであって、
基本的にその後のことは考えていない
6年前の日本でさえこんな記事が出ている

Ruby対Scala
http://tech.cm55.com/wiki/scala/ruby
0430デフォルトの名無しさん2017/02/19(日) 00:37:15.52ID:JRoh81o2
>>429
Pythonはその後のことも考えてる��
0431デフォルトの名無しさん2017/02/19(日) 01:21:32.08ID:99UtXzmV
>>429
クソ記事だなそれ

>>427
動的型付け言語は型がないわけじゃないぞ

好き嫌いがあるのは理解できるが
RubyやPythonで保守性が低いコードしか書けないならそれはプログラマの力量の問題だろ
ClojureやElixirでも同じこと
0432デフォルトの名無しさん2017/02/19(日) 01:25:59.85ID:JRoh81o2
>>431
たしかに!��

本当に型がないのはFortranなんだ��
関数に違う型入れた時、Wallつけても警告なしでそのまま処理することがあるんだ��
0433デフォルトの名無しさん2017/02/19(日) 02:08:47.12ID:gFzSi0IK
バカでもバグのない・きれいなコードが書けるような言語を目指すべきだろ

力量なんて言葉を信じて拝んでるようじゃ、どうしようもないね
俺は力量あるから俺のPHPコードは保守性高い(キリッ なんて言う奴、
絶対信じないわ
0434デフォルトの名無しさん2017/02/19(日) 02:24:32.40ID:EgghxIau
一長一短だろ
C++で自由な型、autoを使ってたりするのもあるし。
テンプレートや、標準ライブラリや、自作クラスなどのせいで
場合によって実際の型を記述すると100字-200字になったりとか。
0435デフォルトの名無しさん2017/02/19(日) 02:50:22.06ID:JRoh81o2
>>433
おおむね同意なんだ��
0436デフォルトの名無しさん2017/02/19(日) 03:10:32.76ID:zCzNbcF8
型は必須じゃない
型があるがためにインターフェース宣言も強制になるとかやってらんねえし

ダックタイプしたいの、
いちいち複数の似たようなクラスを一つのコレクションにするために、抽象クラス実装とかやなの

データが妙な木構造をもったり、変なメソッドを山のように連れ回したり、そんなんをdocに並べて恥がないのか死ねよってのが本音だわ、そういうくそみたいな状況を型システムはなんの抑止もしない

これらはだいたいオブジェクト指向にたいしてだが、nil checkやdivide by zeroも弾けないような型システムならいらないんだよな、型を宣言するのはパフォーマンス目的だけ

メンテナンス性はよくないよ、いちいちこちらが型を指定することによって起こる型エラーや論理エラーのほうが多い
なんでint型かlong型かbiginteger型かをプログラムを実行する前に知っとく必要があるのか

タイプがおおいってことは、バグもおおいってことなんすよ
0437デフォルトの名無しさん2017/02/19(日) 03:32:41.60ID:2E4HsXtc
>>433
それこそhaskellとかがいいんじゃないの
イライラする位コンパイラが煩いけど、コンパイル通ったらバグ入り難い
0438デフォルトの名無しさん2017/02/19(日) 03:59:50.40ID:99UtXzmV
>>433
PHPを型なし言語とか言うバカでもバグのでない言語できるといいね
0439デフォルトの名無しさん2017/02/19(日) 05:02:56.26ID:rTEdd30o
>>436
長文はキチガイ
0440デフォルトの名無しさん2017/02/19(日) 05:13:41.07ID:TEo9X1n7
>タイプがおおいってことは、バグもおおいってことなんすよ
ええ!君はIDEのコード補完機能を使っていないのかい?
0441デフォルトの名無しさん2017/02/19(日) 05:24:22.97ID:WmxPvSMQ
タイプ量とバグ数の相関関係にあるのかはよく知らないが
IDEのコード補完機能がその関係を無効にするという話も聞いたことない
0442デフォルトの名無しさん2017/02/19(日) 09:00:03.17ID:oHvSLa7Q
思いついたんだけど、ここだけの話だけど、
プログラム言語の次世代はたぶん次のようなものだと思う。
なぜ今まで誰も作らなかったのか、という発想なんだけど。
プログラム言語の作者たちはプログラムを書く側の人間
ではないことから気づけなかったんだろうな。
このアイディアはこのスレのlispの括弧が多いという問題から
閃きを得たんだけど、こうすれば簡単にその問題を対処できるし
例えばドロップ&ドラッグやリファクタリングを使えたりも出来るんだよね。
この新しい次世代の言語とはどんなものかというと、今までのプログラミング
言語はなぜかテキストエディターで書かなければならない理由がないということに
気づいてしまったんだ。
つまりlispの括弧の代わりに四角い箱の中に文字でプログラムを書け指でその箱を動かして
入れ替えたりできて、その空間は3次ホログラミング上でプログラミングを操る
のがいいんじゃないかな。
0443デフォルトの名無しさん2017/02/19(日) 09:09:20.15ID:gFzSi0IK
>>438
論破されてよほど悔しいようだね
弱い型の話くらい知ってるが、そんなとこしか反論しようがないとはw
0444デフォルトの名無しさん2017/02/19(日) 09:11:43.72ID:oHvSLa7Q
>>443
マウンティングはやめたまえ
0445デフォルトの名無しさん2017/02/19(日) 09:51:20.61ID:Xj9Bc8Z7
瞬間風速的、超人気次世代言語 けもの フレンズ by Prolog
http://qiita.com/vain0/items/6d3b75f667d3ec7f1d2a
0446デフォルトの名無しさん2017/02/19(日) 09:51:28.05ID:ae9YYSse
>>433
そのレベルで抽象化できるならもはやプログラマは不要だろうな。
0447デフォルトの名無しさん2017/02/19(日) 10:13:09.01ID:oHvSLa7Q
アニメをみるやつは考えることが幼稚だから頭も幼稚なんだろうな。
0448デフォルトの名無しさん2017/02/19(日) 10:15:23.89ID:u0IMxLBQ
>>445
ガンダム言語が欲しい
0449デフォルトの名無しさん2017/02/19(日) 10:29:03.83ID:xhOuQeUD
>>442
いいですね。作りましょう。
でもLISPのように構造のある言語は不向きというか、そもそも構造が
あることが間違っているのではないでしょうか。
0450デフォルトの名無しさん2017/02/19(日) 10:30:58.25ID:JRoh81o2
>>445
これ好き��
0451デフォルトの名無しさん2017/02/19(日) 10:37:45.81ID:1YOlvzzj
>>442
http://www-ui.is.s.u-tokyo.ac.jp/papers/2002/hara_spa2003_GTEdit.pdf
こんな感じかな
冗長すぎる気がするけど巨大ディスプレイがあれば実用的なのかな
0452デフォルトの名無しさん2017/02/19(日) 10:42:22.60ID:oHvSLa7Q
>>151
全然違う、それはただのヴィジュアルプログラミング言語。
0453デフォルトの名無しさん2017/02/19(日) 10:44:53.17ID:JRoh81o2
>>451
これの図一より普通のエディタのほうが見やすい��
0454デフォルトの名無しさん2017/02/19(日) 10:49:40.08ID:4cG2wjOG
UEのblueprintみたいなやつじゃないの?
結局ガリガリに書くから、両方試したけどUnityの方が楽だったけど。
ぐるぐる回して見れる、管の中から見れるテンソル場描きたくてシェーダー書いたけど、あれはノードベースの方がわかりやすいかもしれん。
0455デフォルトの名無しさん2017/02/19(日) 11:00:36.45ID:oHvSLa7Q
simulink max/mspみたいなやつのことか?
それなら違う。
俺が言ってるのは括弧が文字を囲む四角に置き換わる奴。
0456デフォルトの名無しさん2017/02/19(日) 11:03:27.06ID:oHvSLa7Q
付け加えると
その四角をドラッグ&ドロップで他の場所にいれたり、小さくしたりできるんだよ。
0457デフォルトの名無しさん2017/02/19(日) 11:09:41.17ID:j/PY5hTi
わかった
ブループリントだ
0458デフォルトの名無しさん2017/02/19(日) 11:11:18.98ID:gFzSi0IK
ブループリントだ
0459デフォルトの名無しさん2017/02/19(日) 11:17:09.34ID:oHvSLa7Q
いや、ブループリントとはぜんぜん違う。
0460デフォルトの名無しさん2017/02/19(日) 11:44:07.33ID:gFzSi0IK
マジレスするとスクラッチ
0461デフォルトの名無しさん2017/02/19(日) 14:13:25.17ID:f0uZnC6X
ああそれだ。ケイらのSqueak EToysとかレズニックらのScratchとか
最近だとケイらが後者に触発されたGPか。クラスも定義できる。
https://wiki.scratch.mit.edu/wiki/GP_(programming_language)
0462デフォルトの名無しさん2017/02/19(日) 14:27:23.37ID:gDmPx0qd
StarLogoもScratchみたいになっててビビる
0463デフォルトの名無しさん2017/02/19(日) 14:38:46.35ID:zUGOeDh0
GPって何が得意な言語なの?
0464デフォルトの名無しさん2017/02/19(日) 15:22:08.12ID:gFzSi0IK
初心者騙し
0465デフォルトの名無しさん2017/02/19(日) 15:31:50.44ID:zUGOeDh0
>>464
君全体的に口が悪いね��
0466デフォルトの名無しさん2017/02/19(日) 15:55:42.24ID:99UtXzmV
>>443
弱い型の話くらい知ってるww
プログラミングで飯食ってるならもうちょっと勉強しようか (マウンティング)
0467デフォルトの名無しさん2017/02/19(日) 15:57:56.95ID:z58bfBFt
タイプレス言語の素晴らしさを語ってくれ
0468デフォルトの名無しさん2017/02/19(日) 15:57:59.39ID:gFzSi0IK
>>466
一生ペチプーとルビーで型チェックでもやって満足してろ池沼w
0469デフォルトの名無しさん2017/02/19(日) 16:53:40.94ID:oHvSLa7Q
まるでマウンティングの再帰プログラミングだな。
0470デフォルトの名無しさん2017/02/19(日) 16:58:29.97ID:0KgcPyL2
早くスタックオーバーフローしないもんかね
0471デフォルトの名無しさん2017/02/19(日) 17:27:43.18ID:zCzNbcF8
次世代言語っていうのは旧時代の勉強不足無能化石おじいちゃんをマウンティングするための言語なんだから、マウンティングがどうとかはお門違いだよね


マウンティングしてこそ次世代言語だよねー
0472デフォルトの名無しさん2017/02/19(日) 18:17:01.09ID:fMHoIyOU
次世代言語のメリットが分からないんだけど

テストしやすい
書く量が減る
処理速度が早いとかか?

どれも既存言語で不満を感じたことないんだよな
それにメンテできるやつの人数の問題がな、
もちろん普及してる言語ならいいんだが
実際業務で使ってるやつおるの?
0473デフォルトの名無しさん2017/02/19(日) 18:19:14.09ID:gDmPx0qd
「まだ業務であまり使われていないこと」が次世代言語の条件なのだ!
0474デフォルトの名無しさん2017/02/19(日) 18:29:54.37ID:xhOuQeUD
>>472
Go Rust Haskell Scala Erlang Elixir を次世代言語の候補としてよいなら、
Erlangなんて三十年近く業務で使われているよ。ヨーロッパでの話だけど。
0475デフォルトの名無しさん2017/02/19(日) 18:54:38.36ID:9aquvNP9
で、その次世代言語で何を作れるかって話になると急に静かになるよな、このスレ
0476デフォルトの名無しさん2017/02/19(日) 19:06:26.57ID:0KgcPyL2
次世代言語に必要なのは行間を読む能力かな
0477デフォルトの名無しさん2017/02/19(日) 19:12:20.23ID:zUGOeDh0
次世代言語のメリットを感じないのに次世代言語スレに書き込むとか構ってちゃんにもほどがある
0478デフォルトの名無しさん2017/02/19(日) 19:16:23.84ID:9aquvNP9
関数型って大型のプロジェクトじゃ使いづらすぎるもの
C++とかjavaに良いところだけ吸収されて終わりな気がする
0479デフォルトの名無しさん2017/02/19(日) 19:18:15.72ID:xIzOJtdu
構ってちゃんガイジはほっといてF#の話しようぜ
0480デフォルトの名無しさん2017/02/19(日) 19:41:40.29ID:3PAcJG2I
バカになりきって、バカのフリしてるから馬鹿に見えるんだよ!だから僕は馬鹿じゃないよ、バカのフリしてるだけなんだもん、と言い訳してるんよね、この荒れ方はいつも毎度。

>>472
それぞれがそれぞれにメリットあるから、一概には言えんと思う。
0481デフォルトの名無しさん2017/02/19(日) 19:44:16.83ID:5WEM4D2L
>>480
意味わからん。その読む人のことが考慮されていない独特な日本語もしかしてエンジニアガイジか?
0482デフォルトの名無しさん2017/02/19(日) 20:01:26.51ID:kLttcYX+
SE君はいい加減にコテ付けてくれよ
0483デフォルトの名無しさん2017/02/19(日) 20:05:04.86ID:5WEM4D2L
ほんまそれ。コテ付けないくせにID違う過去の書き込みまで整合して理解してないと読解力ない扱いするしガイジすぎる
0484デフォルトの名無しさん2017/02/19(日) 20:12:15.15ID:4WbKyzci
GUIとかアクションゲームが書きやすい次世代言語ガ欲しいんだよな
0485デフォルトの名無しさん2017/02/19(日) 20:12:59.23ID:5WEM4D2L
GUIだけならRacket結構いいで(小声)
0486デフォルトの名無しさん2017/02/19(日) 20:30:16.49ID:3PAcJG2I
>>482
そうだとわかるのであれば、不要だろう。

>>483
整合して理解ってわからんな。整合せずに理解なんか出来んだろう。
本当に理解できて無いだけのような。
そもそもごく当たり前の事しか言ってないし。

>>484
マジレスになるが、Unityでいいんじゃないの?
0487デフォルトの名無しさん2017/02/19(日) 20:35:37.79ID:5WEM4D2L
>>486
内容云々じゃなくてどれがおまえの発言がわかってないと読解力ない扱いすることを言ってんだよ
0488デフォルトの名無しさん2017/02/19(日) 20:40:11.67ID:3PAcJG2I
あ、言葉足らずだった。
言語はライブラリとして出せればなんでも良くて、Unityに入力と出力とを任せちゃえばいいんじゃないの?って意味だったよ。

>>487
何言ってんの?
読解力ってのは漫然と存在するもんじゃなくて、読解する対象となる文章や発言があってこその、読解力なんじゃないの?
そういう意味では、無い扱いではなくて、無い断言してて、事実、無いんだよ。
俺は人間として読解力が致命的に欠けてるとは言ってないよ。
0489デフォルトの名無しさん2017/02/19(日) 20:41:13.41ID:SSNQijd/
>>488
いいからコテ付けろ。長文が邪魔
0490デフォルトの名無しさん2017/02/19(日) 20:43:21.31ID:5WEM4D2L
>>488
ああはいはい君のわけわからん文を理解するには俺には読解力が足りないかもね
でも君複数人に意味わからんと言われてるのに一切反省せずにそうやって開き直るとかマジでガイジやね

書き込んで一週間後に自分の文読んでみろ。自分も読解力ないことがわかるから
0491デフォルトの名無しさん2017/02/19(日) 21:00:26.22ID:3PAcJG2I
>>490
読解力が足らんをまだ勘違いしてるんじゃないだろうか。

一週間後も理解できると思うよ。
過去ログ見てみたけど、理解できたし。
そもそも難しい事言ってない。
0492デフォルトの名無しさん2017/02/19(日) 21:06:44.56ID:SSNQijd/
>>491
俺にもおまえの書き込み意味不明だわ

おまえはどれが自分の書き込みかわかるから流れがわかるんだろうけど、他の人にわからんからな
日本語が独特だからなんとなくこの発言はこいつかもなって程度しかわからん
しかも肝心のレスの中身は日本語崩壊しててわからん
0493デフォルトの名無しさん2017/02/19(日) 21:11:13.18ID:5WEM4D2L
>>491
言ってる内容は難しくないけど文体がひどすぎて発言IDがコロコロ変わってるから全体的にひどい
無意味に長いし
0494デフォルトの名無しさん2017/02/19(日) 21:26:32.83ID:kLttcYX+
>>491
また人のせいですか?
いいからコテ付けて
読む手間省けるから
0495デフォルトの名無しさん2017/02/19(日) 21:37:59.11ID:oHvSLa7Q
言いたい、ことが、マウンディング、する、ことだから、
何を、言って、イルカは、重要じゃ、なくなる、のだろう。
0496デフォルトの名無しさん2017/02/19(日) 21:48:13.05ID:SSNQijd/
>>495
その点の打ち方はちょっと違うなww
奴のは文自体も崩壊してる

>ちゃんと読んで、「それは駄目ってことだよね」と。俺は「で良いなら」って話をしてるんだから、なんの否定もしてないじゃん、って言ってるんだが。
>目的の事だけ考える、に、方法が無いなら、目をつぶって得体の知れない手袋はめて輪投げするようなもんだろ。
それはどんな苦行なんだよ。
>それは、使えない、で良くないって言うんじゃないの?俺は、で良いならって言ってんだから。

こうだぞw
0497デフォルトの名無しさん2017/02/19(日) 21:53:26.57ID:oHvSLa7Q
マウンディングするのが目的じゃないのなら、
コテつけて丸く収められる、はず、だろ。
0498デフォルトの名無しさん2017/02/19(日) 21:56:03.01ID:kLttcYX+
言語聞いてる人にUnity使えとか言うしなあw
知らなくても無理に答えようとする辺りが、すごいプライド高そう
0499デフォルトの名無しさん2017/02/19(日) 22:12:45.44ID:oHvSLa7Q
このスレッドは仲良しグループが集まるスレッドだから
マウンティングする人は迷惑がられるよ。
0500デフォルトの名無しさん2017/02/19(日) 22:34:42.64ID:onpeALKx
(何を言ってるのか)分からないことを、ちゃんと(何言ってるのか)分からないと言わないからこうなるという教訓。
たまにとんでもないレベルでコミュニケーションに難のある人がいる。

言ってることが妥当でも伝え方が下手過ぎると、そもそも話に参加できないことも教訓。今回は極端過ぎてタメにならんが。
コードレビュー時に難読化させたものを出して、読めない理由のを相手の能力不足だと言い張るなんて普通はしないからね。

>>490 相手の不足を自覚を持たせるには、最低限の客観視できる能力が相手に必要。多分難しいよ。
0501デフォルトの名無しさん2017/02/19(日) 22:39:24.10ID:5WEM4D2L
>>500
多分その通りなんだけど、何そのエンジニアガイジ並みの文章は
0502デフォルトの名無しさん2017/02/19(日) 22:50:37.85ID:ae9YYSse
linus さんからお前らへ愛をこめて。
http://gigazine.net/news/20170217-talk-of-tech-innovation-linus-torvalds/
0503デフォルトの名無しさん2017/02/19(日) 22:51:51.74ID:j/PY5hTi
プログラミング言語よりも日本語を勉強した方がいい
0504デフォルトの名無しさん2017/02/19(日) 23:02:29.10ID:onpeALKx
>>501 すまんな。エンジニアガイジが気持ちよく喋っていたあたり(2月15日くらいから)で誰かが止めてやればよかったって言いたかったんや
具体的にどのレスからなのかも指したかったんだけど、目が滑ってどうにもならんかった
見返すとPrologニキのレスの分かりやすさが仏のようでな…
0505デフォルトの名無しさん2017/02/19(日) 23:04:35.53ID:oHvSLa7Q
マウンティングすることが習慣化されてる人は、その習慣を自覚して
治す訓練をしたほうが良い。
0506デフォルトの名無しさん2017/02/19(日) 23:06:58.68ID:gFzSi0IK
マウンティングヴォーイは一度精神科で診てもらった方がいいとおも
0507デフォルトの名無しさん2017/02/19(日) 23:07:12.98ID:5WEM4D2L
>>504
文体が極端やなw
でもそれならわかるわ。たしかにその通りだった
流石にそんな奴おらんやろという思い込みが対応を遅らせたわ……
0508デフォルトの名無しさん2017/02/19(日) 23:10:32.95ID:5WEM4D2L
つかもう>>233で指摘されてたのな
0509デフォルトの名無しさん2017/02/19(日) 23:32:35.87ID:F8PGNdTx
お山の大将と言うのはさ
放置されるわけ
実力と自己評価が乖離してる奴ほどめんどくさいのって無いからね
基本的にはだもれもう構わないわけ
だからこそ、そいつ本人はそのまま腐り続けていくわけ
自分を守って、自分を疑わず、順調に腐っていくわけ
0510デフォルトの名無しさん2017/02/20(月) 07:37:40.87ID:OMj3Nkar
真似がへただなぁ。
句点なくして文章は成り立たんよ。少なくとも真似なら。
まあそこまで皆が言うなら、建設的でそして素晴らしい議論を見ることにするよ。
0511デフォルトの名無しさん2017/02/20(月) 07:48:51.13ID:GZ5sjweL
ここまで糞みたいな長文でスレを埋め立てた事に関しては
どう責任取るの?
0512デフォルトの名無しさん2017/02/20(月) 08:04:27.56ID:OMj3Nkar
なんか健全かつ先見性のある議論邪魔したならそりゃ謝るが、
誰も議論できてなかったじゃん?関数型サイコー!銀の弾丸!これぞ次世代!Goは死ね、って話しで
ワイワイ内輪が盛り上がってるようにしか見えなかったから。
0513デフォルトの名無しさん2017/02/20(月) 08:54:42.66ID:GZ5sjweL
ならもっと言いたかった事を簡潔に書けよ
文が死ぬほど読みづらいせいで関数型アンチも敵に回してるぞ
0514デフォルトの名無しさん2017/02/20(月) 08:58:31.83ID:ceDGpBpg
これ以上構うのは思う壺やね
0515デフォルトの名無しさん2017/02/20(月) 09:04:06.43ID:0EDg44av
ここが2chだからいいけど
もしこれが現実ならば、見知らぬ通行人に
マウンティングポジションになることに対応することだからな。
0516デフォルトの名無しさん2017/02/20(月) 09:06:10.01ID:hUMmJbIR
いや議論の内容云々じゃなく人格がキモいって話だろ
0517デフォルトの名無しさん2017/02/20(月) 09:07:59.25ID:GZ5sjweL
なんでこの2スレ目になった途端こんな糞スレ化したんだ?
0518デフォルトの名無しさん2017/02/20(月) 09:09:26.46ID:ceDGpBpg
>>513
>>516
未だにこれを理解せずにこっちが理解できてないことにするのがエンジニアガイジがエンジニアガイジたる所以だぞ
エンジニアガイジがまたおしゃべりする起点にされる
0519デフォルトの名無しさん2017/02/20(月) 09:24:06.30ID:EsKjTg7q
ワイワイ内輪で盛り上がってるやんけ!邪魔したろ!の精神
女子のゴム跳びを横切って切っていくガイジかな?
0520デフォルトの名無しさん2017/02/20(月) 09:54:41.77ID:515zyTOI
>>512
なんかまるで自分が建設的かのような言い草だな
主犯なのに
0521デフォルトの名無しさん2017/02/20(月) 10:23:00.37ID:kGJih3Uo
次世代日本語スレかよw
0522デフォルトの名無しさん2017/02/20(月) 10:31:12.29ID:0EDg44av
自称エンジニアとマウンティングしあってもなんの意味もないよ。
0523デフォルトの名無しさん2017/02/20(月) 10:32:31.76ID:0EDg44av
マウンティングできる立場ならしておいて損はないから
取り敢えずマウンティングしておこうという安易な考えが
このようなマウンティング合戦を引き起こすんだよ。
マウンティングに関する個人の自覚が一番大事だということ。
0524デフォルトの名無しさん2017/02/20(月) 10:52:19.31ID:hUMmJbIR
マシンガンマウンティング
0525デフォルトの名無しさん2017/02/20(月) 11:32:12.11ID:vii1JuD3
まあこの程度で罪悪感を覚えるような世代じゃないからな
交通事故の方がよっぽど危険っていうのが常識になった世代だ
0526デフォルトの名無しさん2017/02/20(月) 12:16:58.33ID:7TPMrIcT
スレタイも読めないろうがいえんじにあのせいだろ


マウンティングがどうたらこうたら言う奴は結局自分がおべんきょした言語を捨てられないだけだろ

下手すると言語間のinteropもできないかもしれない

新しい言語を覚えることに苦がない連中のために次世代言語はあるわけで、それをマウンティングだとかなんだとか甘え倒したやつのせいで一気に糞スレ化した

確かに俺らはマウンティングしたのかもしれないが、それ以外にお前はスレチなんだよ

以下言語同士のマウンティング大会再開
0527デフォルトの名無しさん2017/02/20(月) 12:23:58.13ID:HbYsv9vV
【Go Rust Haskell Scala Erlang Elixir】
とても、次世代とは言い難い言語も二つ入っているけれど、言語をこの六つに
限定して、「関数型は云々」を抑えればよいスレになるだろう。
0528デフォルトの名無しさん2017/02/20(月) 12:44:12.42ID:U7e4pk9q
F#も入れてくれよ
0529デフォルトの名無しさん2017/02/20(月) 13:09:46.09ID:OMj3Nkar
>>526
良いねボタンがあったら連打してるわ。
0530デフォルトの名無しさん2017/02/20(月) 13:19:41.40ID:EsKjTg7q
>>526
いや普通に目が滑る長文書き込み続けるエンジニアガイジのせいだろ
最初にマウンティング言い出した奴はもう退散しただろ流石に
0531デフォルトの名無しさん2017/02/20(月) 13:31:55.58ID:4IvFNXp6
このスレで起こったマウンティングは2種類ある。
一つは>>526が批判してる新しい言語を覚えられないおじさんがqiitaでマウンティングされた怒りをぶつけに来たマウンティング
もう一つは日本語不自由なガイジが突然エンジニアとして云々言って人を見下し始めたマウンティングである
0532デフォルトの名無しさん2017/02/20(月) 13:38:39.30ID:4IvFNXp6
なお、後半のものについては本人の日本語が不自由なため何が言いたいのかわからず、なんか見下された不快感だけがみんなの心に残ったのである
0533デフォルトの名無しさん2017/02/20(月) 14:38:13.49ID:hWyQekBi
心ってなんなの
新しい言語を勉強するとかいってたのに実際には心を勉強してるのか
0534デフォルトの名無しさん2017/02/20(月) 14:54:06.04ID:OMj3Nkar
別にマウンティングも何もしてないけどな。
見下してもない。
見下してたら、disりもせず、また言うとるわ()で終わりじゃん。
0535デフォルトの名無しさん2017/02/20(月) 14:58:46.57ID:v3LtpIEs
>>534
この後に及んで書き込むと言うのならとっととコテをつけろ
0536デフォルトの名無しさん2017/02/20(月) 15:03:47.69ID:ARWpVDFL
>>433
> バカでもバグのない・きれいなコードが書けるような言語を目指すべきだろ

それこそ銀の弾丸願望だなw
お前の希望を満たす唯一の解は

  バ カ に は 書 け な い 言 語

ということになる

まあ実際には残念ながらそんな言語も存在しないが、数行ならともかく
ある程度は纏まった行数のあるコードを書こうとするとバカには耐え難い苦痛となる言語は完全でないにしてもその方向への第一歩としてなら存在し得ると思う

そういう「バカにとっては纏まったコードを書くのが非常に苦痛になる」言語が満たすべき条件として直ぐに思いつくのは次の2つ

(1) >>437さんが指摘してるHaskellのようなコンパイル時の検査が非常に煩いこと

(2) かなり大雑把な表現で申し訳ないが一つの考え方に対して色んな書き方を許さないこと(書き方の自由度が低いこと)

(1)に関しては>>437さんが説明してくれてるし、バカは忍耐力がなく自省ができないからバカのままなのでそういう輩を排除するには良い条件

(2)は、バカほど自分の力量を見誤っている(だからバカなのだ)わけで、そういう自分を過信してる人間ほど自由に書きたがる、
そういう自分を過信して勝手気ままをやりたがるバカを排除するには良い条件
0537デフォルトの名無しさん2017/02/20(月) 15:09:17.00ID:v3LtpIEs
Python、Haskellは>>536的にはいい言語だよね
謎長文で目が滑るしなんか喧嘩腰で煽っててエンジニアガイジみたいな文章だけど
0538デフォルトの名無しさん2017/02/20(月) 15:11:09.36ID:515zyTOI
>>534
見下してないって、自覚なくナチュラルに罵倒と煽りと嘲るとか、もう常に周囲を見下してるタイプじゃんよ

態度に出てる自覚ないなら自省した方がいいと思うよ
0539デフォルトの名無しさん2017/02/20(月) 15:27:03.78ID:515zyTOI
>>537
Pythonは割とバカでもすぐ書けちゃう
最近githubで出てる外人のコードとか見ると、PHPやRubyみたいに
コピペとグローバル変数上等なコードも多くなってきてる

Haskellの方はコンパイラからのダメ出しが半端じゃなくて、動かすまでに徹底的に矯正される
自分も含めてバカが書いても、動けばある程度まともなコードになる感じ

でも経験者が汚く書こうと思うと書けるし、銀の弾丸とはとても言えないけど
0540デフォルトの名無しさん2017/02/20(月) 15:27:47.66ID:hWyQekBi
Pythonは自由な書き方を制限するとか昔は言われたけど嘘だったよ
むしろなんの制限もないと気付かれた後で急速に普及した
0541デフォルトの名無しさん2017/02/20(月) 15:28:17.18ID:0EDg44av
要するにここはマウンティング猿山なんだよ。
もともといたマウンティングボスがNO2のエンジニアマウンティングに
マウンティングされて新しいボスマウンティングになっただけ、
エンジニアマウンティングがいなくなったとしてもNO2マウンティングが
ボスマウンティングになるだけで何も変わらない。
0542デフォルトの名無しさん2017/02/20(月) 15:34:12.88ID:0EDg44av
間違えた訂正
マウンティング猿山→マウンティング・サル・マウンテン
0543デフォルトの名無しさん2017/02/20(月) 15:40:20.77ID:v3LtpIEs
>>539
まあ銀の弾丸はないよね
0544デフォルトの名無しさん2017/02/20(月) 15:43:12.31ID:sYYCVn4X
やっぱ「次世代言語すげー!」って言ってる奴はマウンティングしたいだけのバカなんだよな。
本当のエンジニアはこつこつ今ある言語で物作る。
つまり次世代って言葉自体が欺瞞的ってことだ。
0545デフォルトの名無しさん2017/02/20(月) 15:44:05.15ID:v3LtpIEs
>>544
なんでこのスレに来たの?
0546デフォルトの名無しさん2017/02/20(月) 15:51:17.86ID:sYYCVn4X
>>545
職場の若いのが新しいナントカで物作りたいっていうのを戒めるための題材集めだよ
新しいもの使うのなんてただのマウンティング合戦で一切エンジニアとして無用だってことの説明資料
0547デフォルトの名無しさん2017/02/20(月) 16:04:10.30ID:515zyTOI
>>546
それってただの資産の再利用の問題じゃないの?
オブジェクト指向とか、Cでマクロ駆使するより、標準で機能付いてる言語使ったほうがいいと思うけど
0548デフォルトの名無しさん2017/02/20(月) 16:09:31.30ID:HbYsv9vV
>>546
20年以上、ErlangやHaskellを使っている人の話は聞きたくないのですか?
0549デフォルトの名無しさん2017/02/20(月) 16:16:02.31ID:0EDg44av
(コ)の業界のオキテって本が無料で読めるようになってたから読んでみると業界の実体がわかるよ。
0550デフォルトの名無しさん2017/02/20(月) 16:16:57.68ID:sYYCVn4X
>>547
そういう「新しい言語はあんなこともこんなこともできる!」っていうのが欺瞞なんだよな
エンジニアなら道具は選ばないはず。

>>548
もしそういう奴がうちに来るならそれはそれで歓迎するぞ。
0551デフォルトの名無しさん2017/02/20(月) 16:18:07.67ID:OMj3Nkar
>>538
そりゃ受け取る方の問題じゃん。
そうなのか、が言えないから、馬鹿にされてると思うんじゃないのかなぁ。
煽られて火がつくのは、それに負い目感じてる証拠な気がする。ハゲてない奴にハゲって言っても気になる筈が無いのと同じようなもんで。

>>546
新しいもので古いものをリプレイスさせてみたら良いと思うよ。
当時新しいと言われていたものを実戦投入したい時は俺は書いて見せて良い所悪い所プレゼンしてた。
0552デフォルトの名無しさん2017/02/20(月) 16:20:28.77ID:515zyTOI
>>550
エンジニアなら良い道具選ぼうよ
ハードはもちろんだけど、それに合わせてソフトも変えなきゃ
それじゃただの頑固職人だよ
0553デフォルトの名無しさん2017/02/20(月) 16:27:55.07ID:515zyTOI
>>551
受け手の問題だから、いくら罵倒してもいいって
自分が何言ってるかわかってる?
0554デフォルトの名無しさん2017/02/20(月) 16:31:49.00ID:sYYCVn4X
>>551
食い下がってきたらやらせる。アイデアありがとう

>>552
良い道具かどうかの基準に新しさはない。
新しくてなんかごてごて機能がついてることを良いの基準に無理やり言い換えたいから
屁理屈のマウンティング合戦になるんだ。

この、新しくてなんかごてごて機能がついてることを聞こえよく言い換えると次世代って言葉になるんだろうな。
0555デフォルトの名無しさん2017/02/20(月) 16:35:03.64ID:515zyTOI
>>554
新しいから必ずしも良いとは一言も言ってないよ
ただ、道具を選ばないはずだと言いながら、特定の道具に固執するのは違うんでない?と言ってるだけで
0556デフォルトの名無しさん2017/02/20(月) 16:38:52.51ID:U7e4pk9q
>>544の発言でマウンティングおじさんはスレ違いの荒らしだと明確になったことだし
皆でNGして触れず障らずスルー徹底した方がいいと思うけど
0557デフォルトの名無しさん2017/02/20(月) 16:40:04.60ID:0EDg44av
マウンティングさせてもらえないことのストレスによりドーパミンが
大量に分泌されて、それがマウンティング依存を引き起こすんだよな。
さらに誰にも認められないストレスからセロトニンが正しく分泌されなくなって
鬱も引き起こしてる。
完全に病気。
0558デフォルトの名無しさん2017/02/20(月) 16:43:49.84ID:sYYCVn4X
>>555
自分特定の道具に固執するレスしたっけ?
そう聞こえたなら誤解させてすまん。

単純に「新しい(&色々と今の道具にはない機能がある)から使い始めよう!」っていう一種の思考停止を問題にしたかっただけだ。
0559デフォルトの名無しさん2017/02/20(月) 16:46:17.99ID:515zyTOI
>>558
なら話ぐらい聞いてやりなよ…
新しいから駄目って方も思考停止だよ
0560デフォルトの名無しさん2017/02/20(月) 16:53:53.33ID:hwv+h5te
>>558
アセンブラからCへの変化のように新しい方が明らかに生産性が上がったこともある。
それと>>547の「標準で機能付いてる言語使ったほうがいい」を否定しているけど
オブジェクト指向言語Javaは登場してから20年以上経つ実証済みの言語だ。
フレームワークや大規模ライブラリを使う時はオブジェクト指向言語の方が
生産性が上がるのは実証済みだからオブジェクト指向言語を使うほうがよいと思う。
0561デフォルトの名無しさん2017/02/20(月) 16:55:18.84ID:sYYCVn4X
>>559
話聞いた結果ダメだと思ったから資料集めしてた訳なんだが、
そう言われるってことは話聞かなさそうに見えるってことだろうから
あんまり頭ごなしにならんよう気を付けるわ。
0562デフォルトの名無しさん2017/02/20(月) 16:55:53.87ID:79fDpNth
若いのを黙らせようと思うなら、材料集めにここにいるよりも話し方書き方教室でコミュニケーション能力養った方がはるかにマシ
自分が理解していることの1割も伝えられないんだから、人からは頑固な無能としか見えないよ
0563デフォルトの名無しさん2017/02/20(月) 17:01:55.94ID:sYYCVn4X
>>560
標準でついてる機能が本当に生産性上げるのかとかその辺の考察をすっとばして次世代って言葉でだまくらかして、
これがわからない奴はダメだみたいな話になるのを問題にしてるんであって、
staticおじさんみたいな話をしてるわけではないつもりだ。

それはオブジェクト指向でも関数型でも同じのはず
0564デフォルトの名無しさん2017/02/20(月) 17:16:19.06ID:hUMmJbIR
> やっぱ「次世代言語すげー!」って言ってる奴はマウンティングしたいだけのバカなんだよな。
> 本当のエンジニアはこつこつ今ある言語で物作る。
> つまり次世代って言葉自体が欺瞞的ってことだ。
ふーん
0565デフォルトの名無しさん2017/02/20(月) 17:25:48.04ID:E/pOlJmJ
>>546
staticおじさんチーッス
老害のカガミですね
0566デフォルトの名無しさん2017/02/20(月) 17:28:04.29ID:OMj3Nkar
>>553
いや、だから、罵倒と受け取るのは罵倒されてると思うからでは?って。
ああ煽られとるな、って何で思えないんだろう。
0567デフォルトの名無しさん2017/02/20(月) 17:30:08.05ID:hvLz26pv
>>566
死ねカス
0568デフォルトの名無しさん2017/02/20(月) 17:31:36.06ID:515zyTOI
>>566
違うよ
そちらが他人のせいにしたいだけだよ
0569デフォルトの名無しさん2017/02/20(月) 17:31:42.01ID:3AFYiP2a
エンジニアガイジってNGされるのが怖いからいつまでもコテ付けないんだろうな
構ってちゃんにもほどがある
0570デフォルトの名無しさん2017/02/20(月) 17:37:19.78ID:0EDg44av
エンジニアマウンティングはどう頑張ってもマウンティングボスになれる
器じゃないんだからいつまでもマウンティングしても無駄だよ。諦めたほうがいいよ。
0571デフォルトの名無しさん2017/02/20(月) 17:39:51.14ID:OMj3Nkar
マウンティングでもなんでもないけど。
しょうもないしもういいわ。
0572デフォルトの名無しさん2017/02/20(月) 17:53:38.36ID:0EDg44av
>>571
諦めたらそこで試合終了だよ。
頑張れ!
0573デフォルトの名無しさん2017/02/20(月) 17:54:13.24ID:3AFYiP2a
Deep learningはPython、Lua、Java(Scala)、C++あたりの実装がメジャーだけど、Luaってどうなんだろ?
05745362017/02/20(月) 18:28:15.61ID:ARWpVDFL
>>537
いや、煽るつもりはないんですが、流石に「バカでもバグのない・きれいなコードが書ける」という
あまりにも虫の良すぎる目標設定をされると、少しは皮肉を言いたくなったわけですよ

バカはそういうコードが書けないからこそバカなわけです
バグのないきれいなコードを書けるようになったらそのプログラマをもはやバカとは呼べないわけですよ

つまり、>>433を言い換えると、「世の中のバカ全てをバカでなくさせることのできる言語」をリクエストしてると
私には読めたわけです

プログラミング言語1つ作って、それでプログラムを書かせたら世の中から全てのバカが消滅するって
余りにも現実離れしたリクエストだと思いませんか? なので皮肉の1つは言わせてもらったのです

そしてそのリクエストに応えるには、バカにはプログラムを書けないようにするしかありません
つまりプログラムのコード書きからはバカを排除してかしこい人間だけに書かせるしか433のリクエストに応える術はないということです
そうすれば、結果としてプログラムを書くのはかしこい連中だけになるので
バグのないは無理でもバグの少ないまあまあきれいなコードが圧倒的な比率を占めることは少しは期待できるわけですよ

現実問題としては、それすらも実現困難だとは思ってますけどね 
だってバカは圧倒的に多いし、それらバカを全部排除したら世の中で必要なコード量を生産できませんから
(バグのあるコードでもないよりはマシという冷厳たる現実が世の中には存在する、なにしろコードがなければさすがに製品を出荷できない)

それとプログラマに限らず、世の中でバカのまま居続ける人間は、例外なく当人は自分自身の力量を見誤っている
(簡単に言えば、現時点で自分がある面に関してバカであることに気付いていない)というのが私今までに得た経験則なので
それを絡めたわけです
0575デフォルトの名無しさん2017/02/20(月) 18:42:13.66ID:GZ5sjweL
あの、「代名詞」って知ってる?
日本語を書く時に便利だから使うといいよ。
0576デフォルトの名無しさん2017/02/20(月) 19:05:45.45ID:h743D+j5
pythonってあるじゃん
実際にはほとんど使ったことないし
言語の売りについても話半分に聞いてるけど
それでもさ
やっぱ部分的には同意しちゃうよな

もっと簡潔に
もっと一般的に
それでいいんだよな

独善的なグネグネは
コードもレスも誰も読みたく無いね
0577デフォルトの名無しさん2017/02/20(月) 19:08:22.39ID:3AFYiP2a
>>574
んー。バカでもバグなく綺麗なコードをかけるように目指してるのがPythonだよね?
>>433が言ってるのは多分努力目標であって、Pythonくらいで十分なんじゃないの?少なくともRubyよりは誰でも綺麗なコードをかける言語に近いわけだし
0578デフォルトの名無しさん2017/02/20(月) 19:11:15.29ID:PLHl4ve/
>>574
> バカのまま居続ける人間

に自分が含まれないって確信している時点で語るに落ちてるだろ
0579デフォルトの名無しさん2017/02/20(月) 19:26:22.38ID:OMj3Nkar
言語が馬鹿を弾くから、総て馬鹿でなくなるはずなんじゃないの?
だから、馬鹿のままで居続ける人間が居なくなるような言語を求めてると読めたんだけど。
その言語を求めてる人間は、その時点で馬鹿のままでい続けたい人間には含まれないので、何も矛盾して無いと思うが。
0580デフォルトの名無しさん2017/02/20(月) 19:41:27.79ID:OMj3Nkar
もしかしてさぁ。
お前らの言うマウンティングとか、偉そうなとか、意味不明ななんて言葉は、
マルコフニコフとザイチェフのコピペのDQNみたいなレベルの話なのかな。
0581536,5742017/02/20(月) 19:44:58.66ID:ARWpVDFL
>>578
これを知るをこれを知るとなし 知らざるを知らざるとなす これ知るなり
(知之為知之 不知為不知 是知也)
0582デフォルトの名無しさん2017/02/20(月) 19:51:48.99ID:OMj3Nkar
ソクラテスも言ってたな。
The only true wisdom is in knowing you know nothing.
ただひとつの真の叡智は何も知らないと知る事である。
0583デフォルトの名無しさん2017/02/20(月) 19:53:16.19ID:y3rX5v4L
ここで無知の知を書き込むと言うことはついに反省したか。よかったよかった
コテつけろよ
0584デフォルトの名無しさん2017/02/20(月) 20:02:46.10ID:hWyQekBi
文系「暗記したやつは知ってるけどそれ以外は知らない」
理系「文系が知らない範囲でも俺達ならできる」
0585デフォルトの名無しさん2017/02/20(月) 20:08:15.67ID:515zyTOI
>>580
化学系だからその二者はわかるけど
コピペとか言われても何も伝わらないよ
そうやって言ってる内容大したことないのに、自己完結して他人馬鹿にしてばかりだから、マウンティングと言われるんだと思うよ
0586デフォルトの名無しさん2017/02/20(月) 20:08:49.33ID:515zyTOI
いい加減コテ付けてほしいね
0587デフォルトの名無しさん2017/02/20(月) 20:15:11.11ID:0EDg44av
何も知らないということを知らないということは違うだろ。
どう考えても全部知ってないということを知ることの翻訳の間違いだと思うな。
何も知らないは大げさに言ってほんのちょっとだけ知ってるけど、という意味なら、
何かを知れば知るほど、どんどん知ることより知らないことの方が増えてるから
知ってることと知らないことの比率が
知らないことのほうが多くなるといういみならわかるが。
0588デフォルトの名無しさん2017/02/20(月) 20:17:21.74ID:515zyTOI
ソクラテスの無知の知はむしろID:OMj3Nkarと対極だよねえ
引用の仕方がひどいとしか言えない
0589デフォルトの名無しさん2017/02/20(月) 20:19:48.39ID:3AFYiP2a
まさか俺以外にも化学系がこのスレにいたとは
05902017/02/20(月) 20:22:17.87ID:OMj3Nkar
>>585
お前の目の前にあるのは何なの?

>>587
違う。翻訳の間違いってまたすごいな。
When the debate is over, slander becomes the tool of the loser.
やな。

>>588
自明であるものは書くべからず、だよ。
自明だとわからんだけでは?
05912017/02/20(月) 20:24:44.92ID:OMj3Nkar
>>589
原動機には燃油が必要だからね。
0592デフォルトの名無しさん2017/02/20(月) 20:27:12.13ID:515zyTOI
>>590
またすぐそうやって煽る
0593デフォルトの名無しさん2017/02/20(月) 20:28:14.65ID:0EDg44av
かりにソクラテスのいう言葉が正しいのなら
何も知らないことを知っているってこと以外何も知らないってことだから、
何かを複数知ってると思ってる人は実は0個しか知って無くて
それ以外の人は何も知らないということだけを1つだけ知っているということだよな。
0594デフォルトの名無しさん2017/02/20(月) 20:30:23.36ID:0EDg44av
違った
何も知らないということを知っていれば少なくとも一つだけ知ってるから
何も知らないということを知ってないのか、
これは矛盾だな。
05952017/02/20(月) 20:33:05.59ID:OMj3Nkar
>>592
ああ、「マルコフニコフ ザイチェフ DQN」検索したら一つ目に出てくるよ。
特定のコピペブログ進めるわけにもいかんし、適宜検索してね。
0596デフォルトの名無しさん2017/02/20(月) 20:34:24.21ID:hWyQekBi
人間は言葉はたくさん知ってる
ただしその言葉が本当か嘘かは何も知らない
0597デフォルトの名無しさん2017/02/20(月) 20:34:39.83ID:0EDg44av
ソクラテスが言いたかったのは無知の知を知った気になって言いたい奴にたいして
無知の知を知らないということを知らないと言いたかったんだろう。
05982017/02/20(月) 20:35:07.39ID:OMj3Nkar
>>594
「何も知らないという事」と、「「何も知らないという事」を知っている」のはコンテクストの高さが違う。
Aと、Aを知っている事に置き換えると理解出来るんじゃないかな。
0599デフォルトの名無しさん2017/02/20(月) 20:40:35.68ID:515zyTOI
>>595
そういう話じゃなくて、
毎回言ってる内容がもったいぶってる割にくだらない事だって言ってるんだよ
06002017/02/20(月) 20:41:25.91ID:OMj3Nkar
>>597
ソクラテスはオラクルをもらいにアポロンの神殿に行くんだが「ソクラテスより知恵のあるものはいるんですか?」と聞くんよ。
オラクルは「居ない」で、ソクラテスはそんな訳あるかと色んな偉い人に尋ね回る。
でも大体みんなおんなじ様な奴で、では何が違うのかと考える。
そこでソクラテスは、あいつらは今俺が疑問に思っている事を、知ってるつもりで居る。俺は少なくとも知らないという事を知っている、差はそこだなぁって気づく。
差の話。
0601デフォルトの名無しさん2017/02/20(月) 20:42:24.69ID:3AFYiP2a
LispってDeep learningのライブラリもあるとか聞いたこともあるけど現役なんだろうか?
また流行らないかな
0602デフォルトの名無しさん2017/02/20(月) 20:42:30.87ID:515zyTOI
とりあえずコテは付けてくれたみたいだから、これ以上はいいか
06032017/02/20(月) 20:42:37.51ID:OMj3Nkar
>>599
面白きこともなき世を面白く
住みなすものは心なりけり
06042017/02/20(月) 20:43:12.10ID:OMj3Nkar
>>601
現役だよ。特定分野のCADで組み込み言語になってる。
0605デフォルトの名無しさん2017/02/20(月) 20:52:32.98ID:515zyTOI
>>601
Lisp一式ではないけど、サブセットなら、vSwitch?の管理ツールで使われてたの見たことある
あとCitrixのもOCamlとS式使ってたね
一度再流行したのかな?
0606デフォルトの名無しさん2017/02/20(月) 20:56:16.18ID:TCuyHNDs
emacs の elisp が有名なはず
0607デフォルトの名無しさん2017/02/20(月) 21:06:15.35ID:515zyTOI
これも微妙だけど、Clojureなら小遣い稼ぎで個人的に使った事ある
Leiningenは扱いかなり楽だった
Clojureは一応、次世代の範疇になるのかな?
0608デフォルトの名無しさん2017/02/20(月) 21:20:30.06ID:3AFYiP2a
>>605
はえー化学系でもそっち系のプログラムちゃんと中身まで読むんもんなんだなあ。すごい具体的にありがとう
Clojureは俺大好きだわ。エラーログ見にくいのが玉に瑕だけど、副作用なくしてデータ型もほとんど組み込みで賄っていけるようになってるのは初めて触った時衝撃的だったし、凄い使いやすいと思う
0609デフォルトの名無しさん2017/02/20(月) 21:47:40.98ID:0EDg44av
>>598
そうなんだ、頭いいね。すごいね。
0610デフォルトの名無しさん2017/02/20(月) 21:56:06.91ID:E/pOlJmJ
何スレだよココ
0611デフォルトの名無しさん2017/02/20(月) 21:56:35.21ID:E/pOlJmJ
known unknownとunknown unknownの違い
0612デフォルトの名無しさん2017/02/20(月) 22:33:30.16ID:+Es5+QIS
>>574
うん、じゃあ君みたいのは、次世代言語なんか目指さず
PHPでもやってりゃあいいんじゃないかな
いい感じに枯れてるし
0613デフォルトの名無しさん2017/02/20(月) 23:08:27.63ID:pBTAhYeW
Fortranって新しい奴だと意外といいよね
コンパイラがないのが玉に瑕だけど
06142017/02/20(月) 23:54:24.44ID:OMj3Nkar
>>609
あのさあ。
これは矛盾だな、とかドヤ顔して、突っ込まれたら茶化して誤魔化してしまうから、マウンティングされたって思い続けるんじゃねえの?

憐れなやつだな。
今のこれは煽りではなくて、本心からお前の人としての成長って意味での低レベルさに呆れて見下げた。
0615デフォルトの名無しさん2017/02/21(火) 00:02:23.62ID:VzOUm1IH
>>610
Closureすこすこすれなんだ��
0616デフォルトの名無しさん2017/02/21(火) 00:05:39.27ID:aFqTV30T
Clojureだろー
0617デフォルトの名無しさん2017/02/21(火) 00:07:27.46ID:VzOUm1IH
>>616
くっ、殺すんだ��
0618デフォルトの名無しさん2017/02/21(火) 00:19:48.71ID:mBttMKPw
>>614
これブロント語か何か?
0619デフォルトの名無しさん2017/02/21(火) 08:30:29.63ID:hRfLRshI
トランスピュータ的なものが復活するとして、Occamに一票。
0620デフォルトの名無しさん2017/02/21(火) 08:46:42.39ID:6E70FNN5
>>619
Erlang,Haskellと同世代w
0621デフォルトの名無しさん2017/02/21(火) 13:16:55.26ID:U5zPXNaJ
このスレ賢者多いな
0622デフォルトの名無しさん2017/02/21(火) 15:13:44.69ID:Wq0po8Kb
>>621
抜いてからここに掻くとはキモ杉
0623デフォルトの名無しさん2017/02/21(火) 18:49:11.38ID:vHI0u4yb
>>613
あれ?gcc 対応してなかったっけ?
0624デフォルトの名無しさん2017/02/21(火) 18:50:25.37ID:vHI0u4yb
>>604
Lisp族はしつこいね…
0625デフォルトの名無しさん2017/02/21(火) 19:00:51.63ID:XgI+74Bx
Lispはいい言語だよね。関数名汚らしいけど
06262017/02/21(火) 19:26:42.07ID:kVBeW7vO
>>624
便利だよ。
回路のトポロジをS式で持ってたりする。
0627デフォルトの名無しさん2017/02/21(火) 19:38:23.43ID:U07h2BkK
まあLispというかS式だよね、S式がLisp族だと言われるとそれもそうだが
そういえばJuliaのパーサーがLispで書かれていてちょっと驚いた
0628デフォルトの名無しさん2017/02/21(火) 19:49:21.36ID:U07h2BkK
RustやらJuliaやら、健全なマクロも流行ってきてるし、
Lisp(というかScheme)のオリジナリティはもう第一級継続くらいなのか?
0629デフォルトの名無しさん2017/02/21(火) 19:52:11.93ID:quEto1j7
sexpはセックスピーと英語で発音するから覚えとけ
06302017/02/21(火) 19:56:57.94ID:kVBeW7vO
>>628
何を持って健全と言うべきかはわからんが、原点に近いLispがM式を持っていたが結局要らなくなったように、
S式の時点で抽象化が完了してる。
特殊化して使途を明確にするのが健全化だと言うなら、それは多分Lispから離れてる。
オリジナリティはそこだと思う。
>>629
ちゃんとSymbolicExpressionと言うと恥ずかしくないよ
0631デフォルトの名無しさん2017/02/21(火) 20:14:10.19ID:U07h2BkK
>>630
健全って通じないのか
hygienic macrosでググってくれ
0632デフォルトの名無しさん2017/02/21(火) 20:14:18.83ID:QntSWc7O
s式こそ力の源泉なのだ
S式をぱくらないかぎり、LISPは存在しつづける
しかしS式をぱくったらそれはLispとして扱われる、よってlispをこの世界から消すことは不可能
0633デフォルトの名無しさん2017/02/21(火) 20:18:05.46ID:YCLculbK
JuliaLispとかいう謎のライブラリ
0634デフォルトの名無しさん2017/02/21(火) 20:20:55.99ID:YCLculbK
>>631
大丈夫だよ。健全なマクロは普通は通じる
Lisp知らない人には通じないことの方が多いけど
06352017/02/21(火) 20:46:26.02ID:kVBeW7vO
>>631
Hygienicで繋がった。ありがとう。
lispだとあたりまえなんだが、そう言えばCなんかのプリプロセッサは違うな。
オリジナリティを他の物が持っていない物、にするなら確かにあんまり残ってないかも。
ただ、他の物にも概念が使われていっただけで、lispとしては何も変わっていないなら、オリジナリティは失われていないんじゃないかなと思う。
0636デフォルトの名無しさん2017/02/21(火) 20:53:36.87ID:YCLculbK
Lispの未だに強いオリジナリティーはマクロによる自然な構文拡張やね
Juliaなんかだとマクロ使う時は絶対@から始めることになってマクロの世界と他は明確に区別される
自然な構文拡張が良いことかどうかは知らんが
0637デフォルトの名無しさん2017/02/21(火) 21:23:37.13ID:mBttMKPw
>>635
お前もっと推敲してから書き込みボタン押せよ
06382017/02/21(火) 21:36:57.04ID:kVBeW7vO
>>637
指摘は具体的に。
0639デフォルトの名無しさん2017/02/21(火) 21:47:47.45ID:YCLculbK
まーたスレが健全じゃなくなってしまうのか
0640デフォルトの名無しさん2017/02/21(火) 21:52:47.78ID:U07h2BkK
知らないことは知らないと言ってくれた方が印象が良いよ

>>636
それはわかるわ
結局S式以外だとマクロに馴染まない部分が多い
0641デフォルトの名無しさん2017/02/21(火) 22:26:23.27ID:erjb2Y5l
「知らない」だなんていったん認めたら死んじゃう病だから
06422017/02/21(火) 22:33:50.94ID:G2JKuh1w
>>641
え?認めてるけど。
健全なマクロって表現は知らなかった。
ハイジェニックならわかるよ
>>635で繋がったって言ってるんだから、それまでは知らなかったと認めてるって事なんだけど、
もしかしてそこまで書かないと理解できないの?
0643デフォルトの名無しさん2017/02/21(火) 22:37:50.41ID:YCLculbK
健全なマクロの概念を元から知ってた奴は
「lispだとあたりまえなんだが、そう言えばCなんかのプリプロセッサは違うな。」
なんて書き込まないんだよな……
0644デフォルトの名無しさん2017/02/21(火) 22:41:29.61ID:U07h2BkK
本当にそう
「lispだとあたりまえ」というわけでも無いし
次世代言語にはあまり詳しく無いみたいだし、自己弁護でスレ消費しまくるからもうレスしないで欲しい
0645デフォルトの名無しさん2017/02/21(火) 22:44:09.90ID:nqMPFgnS
クラスに一人はいたろ?
頭悪いくせにかしこぶってる奴
言い訳ばっかで相手されない奴
0646デフォルトの名無しさん2017/02/21(火) 22:48:12.56ID:U07h2BkK
しかし何故Juliaにパターンマッチ無いんだろうか
マクロ書かせるならschemeやRustみたいにして欲しかった
0647デフォルトの名無しさん2017/02/21(火) 22:51:10.36ID:YCLculbK
Match.jl使えということなのかなあ……?
あんまり使いやすい気もしないけど
0648デフォルトの名無しさん2017/02/21(火) 23:27:58.76ID:aZVtVmfL
学習コスト、過去資産(JVM)、コンパイル速度(vs Scala)
的な意味で、
ポストネクストジェネレーション言語は、Kotlinだと思った
0649デフォルトの名無しさん2017/02/21(火) 23:29:01.23ID:aZVtVmfL
どう?ネクストジェネレーションボーイズ、君たちのオピニオンを聞きたい
0650デフォルトの名無しさん2017/02/21(火) 23:29:40.86ID:p/zS4ycM
永遠に次世代な言語議論スレにスレタイ変えろよ
0651デフォルトの名無しさん2017/02/21(火) 23:44:32.35ID:VzOUm1IH
見た感じ良さそうだけどClojureがすこ��
0652デフォルトの名無しさん2017/02/21(火) 23:57:16.70ID:YCLculbK
Kotlin全然知らないから語っていってくれると助かる
俺は特に今はKotlinのマクロへの姿勢に興味があるぞ
似たものがあるの?それともKotlinの世界ではマクロは邪悪なの?はたまたマクロすらいらないくらい柔軟なの?
0653デフォルトの名無しさん2017/02/22(水) 00:09:55.57ID:fluTtG1x
Kotlin少ししか見たことないけどほぼGroovyだよね?
GroovyってJavaみたく冗長じゃなくJVM言語の中では一番素直だと思うんだけどあんま流行って無くない?
0654デフォルトの名無しさん2017/02/22(水) 00:28:38.21ID:NAcKQUQP
Groovyは作者が「Scalaの存在知ってたらGroovyなんか作らなかった」とか言ってなかったけ
名前もめったに聞かないし、やる気ないんでないの
0655デフォルトの名無しさん2017/02/22(水) 00:28:57.34ID:NAcKQUQP
>>652
マクロってなんや?
VBAか?
0656デフォルトの名無しさん2017/02/22(水) 00:35:08.30ID:ZaZgCHvk
健全なマクロと言えばRustのマクロもそんな事言ってたっけか?
あの辺まだRFC全然固まってないからなんとも言えんけど。
0657デフォルトの名無しさん2017/02/22(水) 01:13:53.88ID:fluTtG1x
>>654
Groovyの作者はKotlinのContributorやってたみたいよ

>>652
基本静的型付けだからLispみたいのは無理でしょ
0658デフォルトの名無しさん2017/02/22(水) 01:29:29.89ID:saOmZMjK
groovyはgradleで使われてるしなあ
0659デフォルトの名無しさん2017/02/22(水) 01:33:20.72ID:NAcKQUQP
メインもテンプレートもビルドツールも、全部Scalaで書けるScalaがやはり最強か
0660デフォルトの名無しさん2017/02/22(水) 02:02:31.56ID:eMNezfX1
これからは、Scalaの静的チェックと、Groovyの柔軟さを兼ね備えた、Kotlin

Kotlinは、IntelliJ IDEA を作っている、JetBrains が作っている
0661デフォルトの名無しさん2017/02/22(水) 03:07:25.70ID:zCSiLBBR
Groovyは実は静的、動的、型推論とかを、目的に合わせて、その都度使う側が柔軟に選べて、
各種フレームワークがメチャクチャ充実してるし、Androidアプリ作成すら超簡単。
その上サーバー側も、Grailsで超短期にポコポコ作れる。最高。

だけど最近は死に体で、向こう数年で死亡確実。
代替え探したけど、Scalaはランタイムサイズと、コンパイルの速度が遅い事と、その割に動的チェックが多くてダメ。
Clojureは書き方は異なるけど、その点かなり良くて、計算やアイデアの実装にはかなり良い線行ってる。
だけど、Web絡むとちょっとツライ。

という事で、Kotlinで落ち着く。
0662デフォルトの名無しさん2017/02/22(水) 07:29:08.94ID:NAcKQUQP
Scalaな、ほんとあのコンパイル速度だけどうにかすれば
ネクストジェネレーションなのに
0663デフォルトの名無しさん2017/02/22(水) 09:41:40.80ID:KWTAJujq
Scalaはバージョン上がる度にあらゆるものがぶっ壊れるジョーク言語だろ
次世代とか腹筋鍛えるの上手いなお前
0664デフォルトの名無しさん2017/02/22(水) 09:50:36.67ID:tESclUs7
Prologな、ほんとあの実行速度だけどうにかすれば
ネクストジェネレーションなのに
0665デフォルトの名無しさん2017/02/22(水) 09:59:29.68ID:T1tKwjPz
実行中に次世代が生まれ育つ
それがProlog
0666デフォルトの名無しさん2017/02/22(水) 10:05:23.95ID:KWTAJujq
スレタイに上がってる言語が次世代から今世代になることは永遠に来ないであろう
Goがワンチャンあるくらいだな。
0667デフォルトの名無しさん2017/02/22(水) 10:22:33.13ID:GipbjYWe
一番悪いのはsmalltalkが完璧すぎるから、それの劣化コピーしか生まれないんだよな。
むしろsmalltalkが未来を行き過ぎた、今ようやくsmalltalkにあうハードがようやく追いついて付いて来た感じだな。
0668デフォルトの名無しさん2017/02/22(水) 11:03:40.39ID:fjTFiziM
GoよりRustのほうがいいと思うんだけど、Rustはガチガチに固すぎるから広まるの難しい気がする。
そうしてるうちにC++も進化してきちゃうし。
あまり固いよりも多少ルーズなほうが広まりやすいのかなと思う。
0669デフォルトの名無しさん2017/02/22(水) 11:04:37.80ID:yE+4DrBg
お、Smalltalkの人いるやん
Smalltalk のnumpyにあたるものってPolyMathでいいの?なんかbuild faildって書いてるけど
0670デフォルトの名無しさん2017/02/22(水) 11:17:38.39ID:6zZpHdYT
ちんこは硬いほうが良いに決まってるだろ!
0671デフォルトの名無しさん2017/02/22(水) 11:39:43.04ID:aa6hdQs0
>>667
OzはSmalltalkの劣化コピーではなくその先に進んだと思う。
さまざまなプログラミングパラダイムの実現方式が明確にされているので、
例えばPortを使用しなければ実行結果はつねに一定だと保証される。

プログラミングの世界観を変える衝撃!
Paradigms of Computer Programmingで震えるほどの知的感動を体験した
http://futurismo.biz/archives/2427
1 関数型からスタート
2 関数型 + State = オブジェクト指向
3 関数型 + (Concurrency + Thread) = 決定性データフロー
4 決定性データフロー + Port = マルチエージェントデータフロー
5 オブジェクト指向 + マルチエージェントデータフロー = アクティブオブジェクト指向
0672デフォルトの名無しさん2017/02/22(水) 11:50:41.19ID:IgFsT0u9
Ozといえば、論理型が閃くが。
0673デフォルトの名無しさん2017/02/22(水) 14:46:40.20ID:/xnb0vmR
>>669
PolyMath と numpy はちょっと違うような気がするけど

> なんかbuild faildって書いてる

Pharo を pharo.org から落としてきて起動
デスクトップクリックメニュー → Tools → Catalog Browser → PolyMath を右クリックで install stable version
でインストールしてみて

サンプルコード
http://ws.stfx.eu/4R9DC7LS6DFK
0674デフォルトの名無しさん2017/02/22(水) 15:50:02.77ID:Dt6aQTUj
AKL(Andorra Kernel Language)という論理型言語を拡張してマルチパラダイムにしようとした
AKLの枠組み自体ちょっと具合が悪かったのでOzをつくった、という感じかな

Programming Paradigms of the Andorra Kernel Language
https://www.sics.se/~sverker/public/papers/aklsicsr9108.pdf

AKL is a multiparadigm programming language
https://www.sics.se/~sverker/public/sverker-janson-thesis.pdf

Logic programming in the context of multiparadigm programming:
the Oz experience
https://www.info.ucl.ac.be/~pvr/tutFinal.pdf
0675デフォルトの名無しさん2017/02/22(水) 21:29:52.41ID:NAcKQUQP
聞いたこともねえ言語だな
0676デフォルトの名無しさん2017/02/23(木) 00:12:09.80ID:tGlCB3TQ
>>675
http://toro.2ch.net/test/read.cgi/tech/1196257692/
0677デフォルトの名無しさん2017/02/23(木) 01:34:05.96ID:Zu/nS+/A
>>672
では、GHCと聞いたらどの略語が閃くかな?
(ア) Glasgow Haskell Compiler
(イ) Guarded Horn Clauses
(ウ) Global Honored Crown
0678デフォルトの名無しさん2017/02/23(木) 02:21:16.68ID:tGlCB3TQ
>>677
もう断然、(イ) Guarded Horn Clauses
0679デフォルトの名無しさん2017/02/23(木) 05:03:30.83ID:ekyNuiCM
やっと変なのが消えてくれて良かった
若輩者ですので、勉強させていただいてます
0680デフォルトの名無しさん2017/02/23(木) 10:40:11.74ID:IXi6HShy
>>677
Global Health Consulting
0681デフォルトの名無しさん2017/02/23(木) 19:05:14.56ID:DLL2ppN8
Government Hentai Carnival
0682デフォルトの名無しさん2017/02/23(木) 19:23:46.57ID:eG9NqkD/
Government by the 2ch of the 2ch for the 2ch
0683デフォルトの名無しさん2017/02/23(木) 21:49:28.70ID:NSeMdseE
>>679
ここで馬鹿の意見聞くより
実装落としてきてチュートリアルでも動かしたほうがよっぽどためになるよ。
0684デフォルトの名無しさん2017/02/23(木) 23:59:31.94ID:D7gpmMoW
ガウディ本在庫生き返れ、生き返れ
0685デフォルトの名無しさん2017/02/24(金) 05:01:56.75ID:+8ZV1rk4
>>683
少しは本読んだ方がいいよ
0686デフォルトの名無しさん2017/02/25(土) 01:03:34.93ID:ZZ7bz2+n
某チャットの会社、Scala本番投入に(一応)成功したらしいな
パフォの問題とか言ってたからやはりScalaはダメなのかと落胆しかけたけど、
これはScalerは勇気付けられるニュースだな
0687デフォルトの名無しさん2017/02/25(土) 01:29:59.86ID:afFe6u0X
Elixirというのは知らないのだけれど、
Erlangとはどのくらい離れているのですか。
0688デフォルトの名無しさん2017/02/25(土) 03:03:40.57ID:IvVV1H8V
「見た目はRuby、中身はErlang、その名はElixir」
この辺見てみれば?ドキュメントや書籍も分かりやすいのが多くて入りやすいと思う
https://elixirschool.com/jp/lessons/basics/basics/
http://elixir-lang.org/crash-course.html
0689デフォルトの名無しさん2017/02/25(土) 03:07:23.83ID:IvVV1H8V
Phoenix本がオススメ
0690デフォルトの名無しさん2017/02/25(土) 04:04:49.22ID:EwirEsal
>>689
>Phoenix本がオススメ
ってどれ?
0691デフォルトの名無しさん2017/02/25(土) 06:52:31.49ID:afFe6u0X
>>688
ありがとう
0692デフォルトの名無しさん2017/02/25(土) 09:43:53.25ID:ZZ7bz2+n
スカラガチ勢っておりゅ?
0693デフォルトの名無しさん2017/02/25(土) 10:29:12.96ID:ZZ7bz2+n
カワヨ

ttp://gazousaitodayo.up.seesaa.net/image/giphy-8fc63.gif
0694デフォルトの名無しさん2017/02/25(土) 10:30:27.77ID:ZZ7bz2+n
gobak
0695デフォルトの名無しさん2017/02/25(土) 13:16:17.77ID:WNBWBU3U
0696デフォルトの名無しさん2017/02/25(土) 13:17:52.32ID:WNBWBU3U
最後はけ
0697デフォルトの名無しさん2017/02/25(土) 15:37:53.07ID:IvVV1H8V
>>690
https://pragprog.com/book/phoenix/programming-phoenix
これ 訳書出てたと思ったけど勘違いだったぽい
原著は1.3版が5月発売予定だから買う前にFree Updateしてくれるか確認したほうがいいかも
0698デフォルトの名無しさん2017/02/25(土) 18:19:42.61ID:EwirEsal
>>697
ありがと
0699デフォルトの名無しさん2017/02/25(土) 19:06:51.89ID:usTDxsWv
>>687
Elixir が C だとすると
Erlang は アセンブラ くらい違う
見かけとか文法は全然別物
0700デフォルトの名無しさん2017/02/25(土) 22:39:05.88ID:zBpj546t
>>671
http://jump.2ch.net/?http://futurismo.biz/archives/2427
ここでもCTMCPの和訳の、並行-並列の誤訳問題は押さえられていますね。
でも、関係プログラミングが外れているのは衝撃だな。
0701デフォルトの名無しさん2017/02/26(日) 12:18:52.94ID:+I4Nnlvd
>>699
アーァングはそんなに速いのか?
0702デフォルトの名無しさん2017/02/26(日) 12:38:44.79ID:OJbfAwI1
構音障害定期
0703デフォルトの名無しさん2017/02/26(日) 12:48:59.56ID:CFwwLXTd
たとえるならElixir=CとErlang=Lispじゃないかな
0704デフォルトの名無しさん2017/02/26(日) 13:25:57.12ID:+I4Nnlvd
エリグザイルはそんなにいいのか?
0705デフォルトの名無しさん2017/02/26(日) 15:56:43.97ID:EKsFxkbb
ElixirをCとするならErlangはアセンブリの方が近い
というか、Lispは明らかに違う

まともな文字列型がなく記述が冗長なErlangは実用にならない
使うならまだしもElixirだけど、スーパーバイザを用いた
設計について触れている本は今のところ
『すごいErlangゆかいに学ぼう!』しかない
そこまで学習コストを掛ける価値がある言語ではないかと
0706デフォルトの名無しさん2017/02/26(日) 17:12:44.96ID:X0RAHqwQ
703は逆を言いたかったんじゃないかと

それはともかく、ElixirのマクロはLisp以外の言語の中ではいい感じに見えるなぁ
0707デフォルトの名無しさん2017/02/26(日) 17:17:19.18ID:y0OwgzfP
>>705
記述の冗長性と実用なんて何の関係もない。
0708デフォルトの名無しさん2017/02/26(日) 17:29:53.83ID:/2VmdLBu
これWebの簡単なコントローラのイメージ
https://github.com/daveshah/rumbl/blob/master/web/controllers/user_controller.ex

マクロとか軽量プロセスとかいろいろ特徴あるけど
Railsライクにつくれて高いパフォーマンスも手に入れられるから
リクエスト数が多いorリアルタイム性が高いWebアプリを作るような人なら
どんなもんか試しておいて損はないと思う
0709デフォルトの名無しさん2017/02/26(日) 17:32:52.38ID:6PbRYEEj
記述が冗長な言語は(次世代言語として)どうか
0710デフォルトの名無しさん2017/02/26(日) 17:36:14.71ID:i7F7s/ev
ElixirをErlangより評価する人達っているんだ。構文の美しさからみてもErlangが断然の格上に思うが。
0711デフォルトの名無しさん2017/02/26(日) 17:40:22.45ID:y0OwgzfP
>>709
まったく関係なし。
0712デフォルトの名無しさん2017/02/26(日) 17:56:27.61ID:EKsFxkbb
Java程度なら実用とは無関係と言えるが
Erlangの記述の冗長さは度を超えている

それを抜きにしても文字列をまともに扱えない時点で
実用性なし
0713デフォルトの名無しさん2017/02/26(日) 17:58:17.60ID:y0OwgzfP
文字列ってstringのこと?
0714デフォルトの名無しさん2017/02/26(日) 18:06:26.62ID:y0OwgzfP
ごめんなさい。
マルチバイト文字がPrologでいうところのアトムとして、扱えないとかそういう意味かな。
0715デフォルトの名無しさん2017/02/26(日) 18:27:24.70ID:6PbRYEEj
Javaが冗長で嫌だというのがScalaの主な駆動力だと思ってたけど違うのか?
0716デフォルトの名無しさん2017/02/26(日) 18:31:58.81ID:y0OwgzfP
冗長性で排するということになったら、常に関数型しか残らなくなる。
実際にそうなってはいない。
0717デフォルトの名無しさん2017/02/26(日) 18:40:16.16ID:6PbRYEEj
なんかこいつエンジニアガイジと同じ匂いがする
0718デフォルトの名無しさん2017/02/26(日) 18:48:08.14ID:Xq2/OYkK
いい嗅覚をしてるな。言われてみるとそんな雰囲気がある
0719デフォルトの名無しさん2017/02/26(日) 19:51:02.61ID:0OuKEIg3
人の話を聞かないし見えている文章を読まない
でも我が軍には透視能力と嗅覚があるから
っていういつものパターン
0720デフォルトの名無しさん2017/02/26(日) 19:58:37.71ID:WP4rX3RZ
次世代ってのはパフォーマンスインテンシブなパーツと、エクスプレッションインテンシブなパーツがシームレスに変換できなきゃいけない
07212017/02/26(日) 20:00:59.07ID:7S0kek79
>>717
なんだよ突然。
そもそも俺は関数型を否定はしてないぞ。
どっちかしか書けない奴は、どっちかしか書けない奴でしかないと言ってるんだよ。

言語から冗長性を省いて、そして一つ命令の長さの記述の長さを極限まで短くすると
'B3418AD3B402CD21'で、レジスタにAを入れて表示するって意味になる、それこそ古の技術に行き着いちゃうじゃん。あってるかはわからん。
それじゃ使いづらいからいろんな言語出てきたんだから、そもそも論としておかしい。

ただし、記述自体が冗長であると言うことと、2通り以上の全く同じ結論に至る記述法があることは同一ではなくて、後者はよろしくないとされてきた。めんどくさいから説明はしないけど。
逆に言うと、一つの結論にソースを導くための拘束条件として記述が長くなる事は許容せざるを得ない。
その典型がvoidに対するキャストだったり、テンプレートへの型の指定だったり、だよ。
lispのS式とは対極。
07222017/02/26(日) 20:04:41.09ID:7S0kek79
>>720
そりゃ無理だよ。
パフォーマンスに対してインテンシブかどうかは人が決めるんだし、どうインテンシブかどうかは場合場合で異なるんだから、結局記述せざるを得ないし、そうなると結局、構文表現においてインテンシブになる。
0723デフォルトの名無しさん2017/02/26(日) 21:57:21.39ID:6YiCwjxB
なんだよ突然はこっちのセリフだぞ
0724デフォルトの名無しさん2017/02/26(日) 21:59:49.78ID:+I4Nnlvd
単発「なんだよ突然はこっちのセリフだぞ

0725デフォルトの名無しさん2017/02/26(日) 22:30:05.48ID:6PbRYEEj
うわ、ガイジやっぱりまだいたのかよ
あれだけの醜態を晒しておいてよくやるわ
0726デフォルトの名無しさん2017/02/26(日) 22:41:06.12ID:QTOiTMeT
こいつがコテ付けて書き込む直前に高頻度で単発がガイジ叩き叩きするよな
2〜3のIDを同時に使え、その内一つか二つは自由に飛行機を飛ばせると見た
0727デフォルトの名無しさん2017/02/26(日) 22:47:47.48ID:6PbRYEEj
>>719>>721
という流れを見るにID:y0OwgzfPはガイジだったのか
やっぱりこれほど話が通じない奴なんてそうそういないもんなんだなあ
0728デフォルトの名無しさん2017/02/26(日) 22:56:32.26ID:y0OwgzfP
>>727
私は、一般論として、
記述の冗長性と実用、記述の冗長性と次世代言語の候補になるかどうかは無関係だと云っただけ。
Erlangの文字列については最近の事情は知らない。7-8年使っていない。
0729デフォルトの名無しさん2017/02/26(日) 23:16:58.94ID:WP4rX3RZ
c++がいじとはすけるがいじ
0730デフォルトの名無しさん2017/02/26(日) 23:17:38.66ID:WP4rX3RZ
まあ実際はpythonがいじ、Javaがいじのほうが多いけどな
0731デフォルトの名無しさん2017/02/27(月) 00:54:10.38ID:ByUNbP3p
エンジニアガイジさんの書き込みは細かいところは私は分からないが、経験に裏打ちされてそう。
言ってることの一部をググって参考にしてる。
Mozartの情報を貰えたのはかなりの収穫だった。
細かい言語触らなくても、これ一つで色々分かりそうだ。
いい加減コテハンをつけて欲しいがなww
0732デフォルトの名無しさん2017/02/27(月) 01:15:27.77ID:nRplP13o
次世代言語に関する知識はガバガバだけどな
0733デフォルトの名無しさん2017/02/27(月) 02:21:46.12ID:5E11FgpK
perl6話題にならんのはなぜ?
0734デフォルトの名無しさん2017/02/27(月) 02:59:12.05ID:HZsx317T
過去の遺物をメンテして行くだけの終わった言語だからw
0735デフォルトの名無しさん2017/02/27(月) 03:14:00.77ID:HtNOCsJ/
PHPかPerlかと言われたら死を選ぶくらいの糞言語だからな
0736デフォルトの名無しさん2017/02/27(月) 05:00:55.34ID:h3H1G9eI
>>731
うん、コテつけなよ
流石にキモいよあんた
0737デフォルトの名無しさん2017/02/27(月) 05:01:37.16ID:h3H1G9eI
自演してまで自分のプライド守りたいとかちょっと怖い
0738デフォルトの名無しさん2017/02/27(月) 06:02:45.91ID:+x1NtVmP
>>731
それ別人じゃないの?
0739デフォルトの名無しさん2017/02/27(月) 06:47:17.95ID:04OD2zdk
>>736
よく読もうwエンジニアガイジ氏は少なくとも
自分にとっては次世代言語について有益な情報をもたらしてくれている。
クソレスしかできないあなたよりね。
0740デフォルトの名無しさん2017/02/27(月) 06:52:52.52ID:04OD2zdk
じぁあこのスレらしいことを書くと別のスレにも書き込んだが、
カリーハワード対応について、あれなんなんだろう。
関数の型とその実装が、帰納的命題と証明に対応していて、同じように書けてるんだが不思議だわ。
0741デフォルトの名無しさん2017/02/27(月) 07:24:30.09ID:h3H1G9eI
>>740
何なんだろうって、定理証明支援の基礎部分としか
賢ぶってもだめだなあガイジは
0742デフォルトの名無しさん2017/02/27(月) 07:37:33.64ID:EpOC9Vda
また自分が書いたレスがどれか、 他人が把握できてる前提でレスしてる人がいるねえ
0743デフォルトの名無しさん2017/02/27(月) 07:46:10.13ID:04OD2zdk
>742
知ってる人なら、上の部分だけで話が通じると思ったのだが。
>>741
賢ぶって見えるのは、君が無知だからだよ。
急いでググったんだろ、どうせ。
0744デフォルトの名無しさん2017/02/27(月) 07:46:17.51ID:HtNOCsJ/
まーたマウンティングヴォーイが暴れてるのか?
07452017/02/27(月) 07:49:49.30ID:LPYoFd+U
>>727
違うよ。
俺なら言われたとおりちゃんとコテハン入れるもの。
0746デフォルトの名無しさん2017/02/27(月) 07:54:35.53ID:nRplP13o
エンジニアガイジがもたらした有益な情報……

>Hygienicで繋がった。ありがとう。
>lispだとあたりまえなんだが、そう言えばCなんかのプリプロセッサは違うな。
>え?認めてるけど。
>健全なマクロって表現は知らなかった。
>ハイジェニックならわかるよ
>>>635で繋がったって言ってるんだから、それまでは知らなかったと認めてるって事なんだけど、
>もしかしてそこまで書かないと理解できないの?

デタラメ知ったかぶりの方法と逆ギレ自己弁護の方法とか?
07476712017/02/27(月) 08:02:08.30ID:u4jqLtHp
>>731
Ozについて句読点付き常体で書いているのは
>>671だけだがエンジニアとは別人だよ。

>>736-737
>>671がエンジニアでないと知らなかったから自演ではない。
0748デフォルトの名無しさん2017/02/27(月) 08:04:33.64ID:04OD2zdk
スレの趣旨すら理解できない人ばかりだから、マウンティングヴォーイwwは去るわww
ネーミングセンスだけは秀逸だなww感心したわ。
でも、プログラムやってる奴って基本マウンティングヴォーイだと思うけどな。君らだってそうだろ?
自分がマウンティングされたと感じたときだけ子供みたいに喚くのは、すごいなwwと思う。
あえてトリックスターを演じてる部分もあるよ。
07492017/02/27(月) 08:09:28.61ID:LPYoFd+U
賢ぶってるつもりもないし、俺のこと言われてるかどうかわからんが。

>>746
だってその時期あんまり日本語の文献に当たれてないんだもん。
Hygienicは衛生的な、だよ。そして、そのほうが実は体を現してる。少なくとも健全なんて意味は無い。
0750デフォルトの名無しさん2017/02/27(月) 08:16:23.55ID:nRplP13o
訳を知らないのはともかく、健全なマクロがなんたるかを理解してればあんな書き込みはしないって>>643>>644で指摘されていたことは忘れてしまったと見える

というか、故意に忘れたような書き込みをしているんだろうな。難読化のために
07512017/02/27(月) 08:26:07.98ID:LPYoFd+U
>>750
えー?だって、Cのプリプロセッサでも書こうと思えば書けるんだもの。
逆にlispのマクロでも、リエントラントでなかったり副作用を持つマクロを書こうと思えば書ける。
それを、書けない(書く能力がない)から、あいつは勘違いしてる、と言われても困る。
自然とそうなるけどね、って話をしたんだけど…
lisp満足に書けないんじゃないの?まあ実務で使ってなきゃ確かに無理だろうけど。
0752デフォルトの名無しさん2017/02/27(月) 08:32:19.06ID:nRplP13o
アホちゃう?いやマジで
0753デフォルトの名無しさん2017/02/27(月) 09:22:30.59ID:uBpFMEOL
あらあら、エンジニアさまは春のご休暇中のおぼっちゃまがたとたいそうお仲がよろしいことで。
0754デフォルトの名無しさん2017/02/27(月) 09:27:34.57ID:osdWLrJm
lispやってて健全なって訳知らないってのも、、、
0755デフォルトの名無しさん2017/02/27(月) 09:33:45.75ID:uBpFMEOL
さようでしょうか。
エンジニアさまはのんびりしていらっしゃいますから、お知りにならないこともございましてよ。
0756デフォルトの名無しさん2017/02/27(月) 09:47:06.54ID:nRplP13o
この後に及んで指摘されてることと微妙に違うことを書き込んで自己弁護してるのヤバい
わざわざ逸らした中身も間違ってるんだけどさ
07572017/02/27(月) 10:44:26.58ID:LPYoFd+U
>>756
そうか、そこまで言われるのであれば、また調べとくよ。
0758デフォルトの名無しさん2017/02/27(月) 11:03:18.32ID:YR5y2ew/
>>705
Erlangは、実用のみを目指した処理系
0759デフォルトの名無しさん2017/02/27(月) 11:18:02.76ID:5k/CBMds
難読化するやつは無駄は多いが害は少ない
本当に有害なやつは誰でも読めるように書くことで騙される被害者を増やす
0760デフォルトの名無しさん2017/02/27(月) 11:27:09.95ID:DfzPiU2b
>>758
拍手
0761デフォルトの名無しさん2017/02/27(月) 11:37:18.17ID:uBpFMEOL
エンジニアさまはお気だてに難がおありなだけで、悪意はおありにならないと存じますわ。
お難しいお言葉をお使いあそばすのも、おつむがよろしいことをお隠しになるのがお嫌いなだけですのよ。
0762デフォルトの名無しさん2017/02/27(月) 13:25:12.18ID:v/+Cqpnu
この句点の付け方わざとやってんのかな
0763デフォルトの名無しさん2017/02/27(月) 13:27:36.80ID:v/+Cqpnu
>>757
こんな一文ですら読みづらいもんな
ネタ抜きでやってんなら感心する
0764デフォルトの名無しさん2017/02/27(月) 14:01:31.38ID:tp9pRiI7
>>712
馬鹿には無理
07652017/02/27(月) 18:41:03.53ID:LPYoFd+U
>>763
申し訳ないがマジでどこがかわからん。
読みにくいって言うのは、何を指して言ってるの?
0766デフォルトの名無しさん2017/02/27(月) 18:47:00.21ID:yzRLzpad
関数型言語の話でよく言われる副作用はバグの温床ってのは本当なのかなぁ
0767デフォルトの名無しさん2017/02/27(月) 22:13:09.61ID:85Uc1mTz
副作用ってかどんな状態変化をもたらすかわからんコードは糞ってことだろ。
0768デフォルトの名無しさん2017/02/27(月) 23:01:11.13ID:yzRLzpad
どんな状態変化をもたらすかわからんコードなんてほんとうにある?
0769デフォルトの名無しさん2017/02/27(月) 23:07:56.96ID:sVGz7y9C
他人のソースを初めて読んだ時は大体そうじゃない
0770デフォルトの名無しさん2017/02/27(月) 23:16:37.37ID:yzRLzpad
でも、それってコード自体がクソかどうかと関係あるかな
読むヒトの能力の問題だったりもするわけじゃない?
07712017/02/27(月) 23:52:23.51ID:LPYoFd+U
どんな変化があるか理解できないから、彼らには関数型が万能なんでしょ。
最大何クロックでどれだけヒープ使って帰ってくるかわからない関数を書いて平気で、実測すりゃ良いらしいから。
昔から計算量推定は当たり前のようにやるもんなんだけどな、関数型であろうが何であろうが。
0772デフォルトの名無しさん2017/02/28(火) 00:01:27.45ID:SX/AvTMQ
参照透過性は計算資源の制約については何も語らないからな
0773デフォルトの名無しさん2017/02/28(火) 00:11:04.15ID:NI2SydcR
マウンティングヴォーイはまだ見えない敵に顔面騎乗位されてるのか?
0774デフォルトの名無しさん2017/02/28(火) 00:11:16.47ID:SFhQP9uJ
推測するな計測せよ
0775デフォルトの名無しさん2017/02/28(火) 00:12:03.03ID:YpdiM6bb
>>770
状態保存と変化は、可能な限り局所的なスコープにし、
かつ同じ粒度の扱うデータ単位別に処理を分けて関数にする
これだけで全体の見通しが全然違うよ

駄目なコード書く奴は、暗黙の変換と大域変数や、クラス内など広いスコープの変数を多用し、副作用をもたらし、
1処理で粒度の異なるデータ単位を操作したりする

特に実装する事ばかりに気を取られてるタイプに多いね、この手のは
0776デフォルトの名無しさん2017/02/28(火) 00:15:28.48ID:aiAxVD3k
エンジニアガイジはRobert C. Pikeの「推測するな測定せよ」をどう解釈しているんだろう?
割と気になる
0777デフォルトの名無しさん2017/02/28(火) 00:19:57.77ID:4si4Uh/Z
ガイジはただのエアプ
でもなきゃ引退した爺だよ
テストから静的解析から測定から何からが自動化当たり前の時代に、こんなのが職場にいたら回らない
SVNおじさんはうちにまだいるけどな!
0778デフォルトの名無しさん2017/02/28(火) 02:56:36.77ID:Ym9QP3v2
>駄目なコード書く奴は、暗黙の変換と大域変数や、クラス内など広いスコープの変数を多用し、副作用をもたらし、
1処理で粒度の異なるデータ単位を操作したりする

これも、昔から言われてる気がするけどほんとかなぁって思う
誰かが昔に言った、実際にはある特定の条件においてしか適用できないような言説を
そのまま鵜呑みにして引き継いでるだけで

いいコード書くやつは暗黙の変換や大域変数使ってもいいコード書くんじゃない?
0779デフォルトの名無しさん2017/02/28(火) 03:57:01.43ID:6w9GlHx8
いや駄目だろ
0780デフォルトの名無しさん2017/02/28(火) 07:55:46.36ID:NI2SydcR
>>778
根本的に才能ないやつは、そもそも考えがこんなんだから、才能ないんだろうな
って思った
0781デフォルトの名無しさん2017/02/28(火) 08:24:56.38ID:r69JGN+q
>>778
「駄目なコード書く奴→暗黙の変換と大域変数や、クラス内など広いスコープの変数を多用し、副作用をもたらし、
1処理で粒度の異なるデータ単位を操作したりする」
なだけであって←が成り立つなんてどこにもかいてないぞ。
0782デフォルトの名無しさん2017/02/28(火) 08:45:42.36ID:aiAxVD3k
>>778
これエンジニアガイジだろ
07832017/02/28(火) 10:06:01.62ID:X3vk2ROj
>>776
Measure. Don't tune for speed until you've measured, and even then don't unless one part of the code overwhelms the rest.
であるように、tuneはMeasureしてから、って話。
前段のYou can't tell where a program is going to spend its time,Bottlenecks occur in surprising places, so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is.
は、ボトルネックに確証がないのに、ボトルネックを推測するなと言っているのであって、コードの動きを把握する事とはまったく変わらん。

>>777
ただのEULAで高リスクのため保証適用外で別途契約しなきゃならん類の業種の10年目だよ。
エアプて。。
お前みたいなのが居たら人が死んでから対策する事になるんだろうな。

>>778
良いコードを書きやすい環境、はあるよ。
0784デフォルトの名無しさん2017/02/28(火) 10:28:11.36ID:aiAxVD3k
>>783

You can't tell where a program is going to spend its time,Bottlenecks occur in surprising places, so don't try to second guess
プログラムがどこで時間を使うかは見分けられない。ボトルネックは驚くべき場所にある。って訳せるよね

>ボトルネックに確証がないのに、ボトルネックを推測するなと言っているのであって、コードの動きを把握する事とはまったく変わらん。

「ボトルネックに確証がないのに」ってどういうこと?どこから出てきたの?
この場合の「ボトルネックに確証がない」というのは「まだ測定していない」と解釈していいの?
それとも「俺はこのプログラムを完璧に理解しているから測らずともボトルネックがわかる」ということ?
0785デフォルトの名無しさん2017/02/28(火) 10:42:02.27ID:r69JGN+q
エンジニアガイジは雰囲気で話す人だから詳しく聞いても意味ないよ
0786デフォルトの名無しさん2017/02/28(火) 10:52:37.69ID:aiAxVD3k
>>785
だからこそね……

まだ曖昧な所があった
>>771の「計算量推定」とはO(N)とかのこと?それとも違う?
07872017/02/28(火) 11:14:04.28ID:X3vk2ROj
>>784
いや、tellだから明言することはできない、だと思うが。
見分けられてもそうであるという確証はその場では得られていないから。
その為に計測して、それが本当にボトルネックだと言う事を確認せよと言う論旨では?

まだ計測していない、で良いよ。
ただ、何処を計測するかは理解して計測しようね、では?
ただ漫然と計測したらそれで良しではないよ。
だから、until proven that's where the bottleneckなんだよ。

>>786
オーダもそうだし、その間に使いうるリソースのオーダも。
大体、容易に発散する。
0788デフォルトの名無しさん2017/02/28(火) 11:22:58.17ID:aiAxVD3k
>>787
は?tellはこっちだろ

3[can,could などを伴って]
a〈…を〉知る,わかる.
用例
He cannot tell (the) time yet. 彼はまだ時計(の見方)がわからない 《★【用法】 《英》 では通例 the は略さない》.

英語力皆無かよ
0789デフォルトの名無しさん2017/02/28(火) 11:32:22.46ID:JMZtVtmA
Lispを英語で勉強したから健全なマクロの訳がわからんというのも怪しくなってきたな
0790デフォルトの名無しさん2017/02/28(火) 11:48:07.67ID:r69JGN+q
You can't tell where a program is going to spend its time
やれやれ、誰も英語を完全に読めないみたいだな。
tellの本来の意味は伝えるという意味だからこれを改変してはならない。
can'tの本来の意味はしようと思っても出来ないという意味だから、
伝えようとしようと思っても出来ないとなる。
伝える事とはプログラムがそのプログラムの時間を費やそうとする場所、
すなわち、プログラムはまだ実行してなくて、ソースコードの段階で
どこで時間を過ごすのかを伝えることが出来ない。
なぜ伝えることが出来ないのかの理由はしらないのかわからないとかいろいろある。
0791デフォルトの名無しさん2017/02/28(火) 11:55:51.47ID:JMZtVtmA
>>790
原義について語ってるんじゃないと思うぞ
0792デフォルトの名無しさん2017/02/28(火) 12:00:38.09ID:r69JGN+q
tellはわかる、しらないより広い範囲の意味があるってことだよ。
明言できないことは伝えられない主義の人は、したくても伝えないかもしれないわけだしな。
0793デフォルトの名無しさん2017/02/28(火) 12:04:00.12ID:aiAxVD3k
普通そう意味で you can't tell where ~ なんて言わないよね
そんな使い方してる例文あったら持ってきてよ
0794デフォルトの名無しさん2017/02/28(火) 12:04:28.74ID:fDxpOtjw
tellの原義は数えるだよ
0795デフォルトの名無しさん2017/02/28(火) 12:14:30.78ID:r69JGN+q
もし知ってても宗教上の理由で人に伝えられない人は知らないと日本語で言えなくても
英語ではcan't tellと言えるのが大きな違いだよな。
0796デフォルトの名無しさん2017/02/28(火) 12:20:06.43ID:aiAxVD3k
英語できない子供の言い訳みたいなこと言ってんな。You やぞ You
You can't tell 〜 をそう言う意味で使うことはない。あるなら例文を持ってこい
0797デフォルトの名無しさん2017/02/28(火) 12:21:55.54ID:JMZtVtmA
少なくともこの文では「わからない、判別できない」だな
0798デフォルトの名無しさん2017/02/28(火) 12:22:51.16ID:+hx/19pV
なにこのスレ、レベル低すぎ
0799デフォルトの名無しさん2017/02/28(火) 12:40:11.86ID:r69JGN+q
英語は文脈依存だから一文だけ持ってこられて意味を限定することは出来ないんだよね。
0800デフォルトの名無しさん2017/02/28(火) 12:53:32.73ID:aiAxVD3k
はい文脈
http://www.lysator.liu.se/c/pikestyle.html

ちなみに日本語版Wikipediaの解釈はこうな

ルール1: プログラムがどこで時間を消費することになるか知ることはできない。ボトルネックは驚くべき箇所で起こるものである。したがって、どこがボトルネックなのかをはっきりさせるまでは、推測を行ったり、スピードハックをしてはならない。
0801デフォルトの名無しさん2017/02/28(火) 13:17:06.45ID:yL/JEJ1V
で、Curry-Howard対応は誰も分からんのか?
次世代言語に関係するぞ、くだらない英文解釈と違ってww
By かえってきたマウンティングヴォーイ
0802デフォルトの名無しさん2017/02/28(火) 13:18:42.13ID:aiAxVD3k
ほんまくだらんわ
こんなくだらん間違いして堂々と書き込むなや
0803デフォルトの名無しさん2017/02/28(火) 13:35:19.61ID:GKPFI9ic
マウンティングおじさんとスルーできないキッズのプライドを賭けた頂上決戦やなw
0804デフォルトの名無しさん2017/02/28(火) 13:56:43.33ID:YR81H7WH
やっぱエンジニアガイジ出てくるとめちゃくちゃになるな
流石っすわ
08052017/02/28(火) 14:37:06.09ID:X3vk2ROj
>>788
えー?だから、明言することができないんじゃん。
何故、canを伴って、理解という意味になるか考えろよ。最後にproveを持ってきてるんだからわかるじゃん。

>>790
自分でいうとるやないか。知らないのかわからないのか、と。

>>804
どうしてもマウンティングにしたいんだろww
下だと認めないためには、上にいるのは上にいるフリをしてマウンティングしているに違い無いと断定しないと都合が悪い。
本来上も下も無い、持ってる定規の数で相対位置しか決めれないフワフワした技術ってもの自体の価値に、マウンティングとかってのは何を言ってるかわからんレベルなんだけど。

期末でのんびりしとる所に、面白いじゃん。
0806デフォルトの名無しさん2017/02/28(火) 15:01:37.16ID:aiAxVD3k
>>805
よくわからんからはっきり言ってくれよ
tellはどの意味だと解釈してるの?
0807デフォルトの名無しさん2017/02/28(火) 15:03:43.11ID:r69JGN+q
You can't tell where a program is going to spend its time,Bottlenecks occur in surprising places,
so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is.

wikipediaの「プログラムがどこで時間を消費することになるか知ることはできない。」
は誤訳だな。
プログラムがどこで時間を消費するかは実行して調査すればわかるんだからね
going toというところがポイントでプログラムを実行する前にということを強調しているんだね。
しることが出来ないというのも誤訳でどの場所で時間を費やしているか正解を言い当てることは出来ないという
意味が文脈的に正しい。
Bottlenecksの初めの文字が大文字なのは,がandを表していることを示しているんだね。
言い換えるとYou can't tell where a program is going to spend its timeはBottlenecks occur in surprising places
の言い換えということだね。
0808デフォルトの名無しさん2017/02/28(火) 15:09:11.28ID:39alJvfi
>>806
お前も次からコテつけろな
08092017/02/28(火) 15:25:09.32ID:X3vk2ROj
>>807
だよね。
>>806
辞書の通り、だよ。言う、示す、表す。
0810デフォルトの名無しさん2017/02/28(火) 15:30:40.42ID:39alJvfi
マ・ジ・か・?
08112017/02/28(火) 15:41:47.31ID:X3vk2ROj
くだらん勘違いだと指摘した理由がすでに誰かによって正確でない形で訳された、賢くて辞書的に誤りでないウィキペディアンの記事か。
めでたいわ。

>>810
tellは伝える以上の意味をそもそも持たん。
辞書には、伝えられないのは知っていないからだという状況を説明して、そこから、知っていないのは知ることができないからだ、という状況を説明する流れを短絡させて
助動詞を持った否定文のtellに「わからない」って訳をあてる慣例を載せてるだけ。
中身のわからんライブラリつかうからこうなるみたいな話。
0812デフォルトの名無しさん2017/02/28(火) 15:43:23.79ID:JMZtVtmA
こいつ自己弁護の神かよ
08132017/02/28(火) 15:47:14.51ID:X3vk2ROj
>>812
いや、これは一抹の不安感すら覚えずに断言できるし、してた。
08142017/02/28(火) 15:49:37.19ID:X3vk2ROj
もう少し説明すると。。
これ誤解しとるなと思わないと、原文持ってくるわけねえだろ。
0815すまんやっぱりがまんできん2017/02/28(火) 15:51:50.23ID:aiAxVD3k
>>811
can't tell は「わからない」という意味の慣用表現だ。

Cambridge Dictionaryより、
can tell
to know something from what you hear, see, etc.
(周りの状況から)分かる, 判断できる
You could tell that he was tired.

言う、示す、表すだっていうんなら他の例でそうなっている例文を示せ。そしてこの文においてあえて慣用表現と違う意味で使ってると主張するならその根拠を示せ
08162017/02/28(火) 15:53:51.90ID:X3vk2ROj
>>815
だから、慣用表現でしょ。
慣用ってわかる?
お前がそう言うなんて明日は雪かww≒らしくないことを言う

お前が言うなら、明日は雪か(誰かに天気予報を聞いてるだけで、普通にあしたは雪っぽい)

くらいの話。
08172017/02/28(火) 15:55:31.14ID:X3vk2ROj
I can't tell how you are xxxxxxsh personって、嫌味以外に取れる?
0818すまんやっぱりがまんできん2017/02/28(火) 15:57:32.27ID:aiAxVD3k
>>816
例文と根拠を示せ
0819デフォルトの名無しさん2017/02/28(火) 16:01:46.66ID:JMZtVtmA
自分が正しいとするためなら一般的な解釈まで間違ってるとする自己弁護の神
0820デフォルトの名無しさん2017/02/28(火) 16:35:33.12ID:YR81H7WH
自己弁護の内容が正しいかどうかは問題ではない
自己弁護への欲求が強すぎるあまり
次世代言語スレで英語の講義を始めてしまうその人格が問題なのだ
0821デフォルトの名無しさん2017/02/28(火) 16:37:36.32ID:YR81H7WH
正しさへの欲求と言ってもいい
これはプログラマとしては必要な能力だが
場を弁えずにこの欲求に従って暴走してしまうのは、性犯罪者と大差無し
0822すまん2017/02/28(火) 16:48:31.21ID:aiAxVD3k
ごめんなさいもうやめます
0823デフォルトの名無しさん2017/02/28(火) 17:07:32.49ID:XVJCzCfX
>>822
この性犯罪者野郎!
0824デフォルトの名無しさん2017/02/28(火) 18:02:02.33ID:BuG71j2n
正しさというより成果への欲求かな
正しさへの欲求という名前は一般的ではないし
成果主義や即戦力への欲求という方が汎用性がある
0825デフォルトの名無しさん2017/02/28(火) 18:02:52.40ID:Y9WAj6yi
承認欲求でしょ
0826デフォルトの名無しさん2017/02/28(火) 18:56:44.69ID:BuG71j2n
成果にこだわらない奴は勝ちたいとも負けたいとも思ってない
0827デフォルトの名無しさん2017/02/28(火) 19:36:14.34ID:dZfei9He
その"can't tell"が"問うなかれ"(誰もわからないので答は返ってこないので)という言い回しなのは
まあちょっと読解力があれば普通はわかる。
0828デフォルトの名無しさん2017/02/28(火) 19:56:08.81ID:IEQOApHw
【Go Rust Haskell Scala Erlang Elixir】

どれも強烈に人を惹きつける何かが欠けている思うが
0829デフォルトの名無しさん2017/02/28(火) 20:38:18.89ID:gLYyu04Y
if(A=BorC)ってやりたい
0830デフォルトの名無しさん2017/02/28(火) 20:46:47.60ID:0il7Gtii
そんなどういう評価順序が良いか意見が分かれそうな書き方いらんわ。
08312017/02/28(火) 21:02:04.68ID:jx+SAc84
>>819
一般的な解釈だと誤解している時点で辞書の使い方が悪い。
>>820
ふっかけてくるからじゃん。。

>>826
その通り。勝つ負ける、容認される否認される必要はどちらも、必ずしも無いが、分析と成果は必ず必要。
分析無き成果は、次回の糧にならない類の、天気だったから豆腐が売れたからうちの会社は大きくなったみたいな失速の元。

その分析が居るでしょ、テストベンチに載せる前に、って単にそれだけの話なのに、やたらめったら否定する奴が居ただけ。

>>292で言ったように、まともな議論にならんのが問題。
0832デフォルトの名無しさん2017/02/28(火) 21:08:41.16ID:imKByc8p
>>828
その中ならHaskellだろう。キャラ立ちしてるのは。
次世代の裏返しとして、この先生きのこる現世代言語は、どれよ?
C、C++、Lispは残りそうだが、Pythonとか消えそうな気がする。
08332017/02/28(火) 21:13:37.16ID:jx+SAc84
どいつもジャンル違いだけど、バイナリ単体で依存しないものが書ける新しいスクリプト言語としてのGoか、疑わしきは殺すErlangは必要悪としてでも生き残ると思う。
Pythonも結構いろんなものの組み込みスクリプトとして2系だけ生き残る。

無くなるのはLuaあたりだろ。
0834デフォルトの名無しさん2017/02/28(火) 21:24:50.96ID:SX/AvTMQ
Luaは名前がかわいいから生き残る
0835デフォルトの名無しさん2017/02/28(火) 21:30:10.27ID:imKByc8p
>>833
おおう、いいねこういうのが聞きたかった。
英語はもうスルーしてよ、クソレスが増える。
自然言語処理関連で、流行ってるとか人口が多いという観点でなく、
言語自体の表現力というかポテンシャルの意味で将来性のあるのどれだろう?専門と違いそうだけど。
Pythonは少し触ったけどなんか違うと思った。
どうでもいいが、蛇なのもなにげにいやだ。嫌がらせだろ、あれ。

>>834
あんま知らんけど、可愛いな、確かに。
0836デフォルトの名無しさん2017/02/28(火) 21:42:06.35ID:r69JGN+q
luaはコメントの使い方の発想が凄い。
一行コメントが--で始まって、ブロックコメントが
--[[
--]
だから一行目の初めに-をつけるだけでブロックコメントできる。
こんな言語どこにもないだろ。
08378352017/02/28(火) 21:53:52.24ID:imKByc8p
上のだけじゃ、分かんないね。ごめんスルーして。
ここで何をやろうとしているかはちょっと書けない。
関数型に誘導しているように見えて、またマウンティングとか荒れそうだしな。。
08382017/02/28(火) 22:00:56.17ID:jx+SAc84
>>835
表現力という意味では圧倒的にGoは欠けてる。
ただ、人間側が譲歩すると意外に物事が上手く行くのはpalmのgraffitiみたいなもんで、時代時代に割り切りってのは必要なので、良い面悪い面あると思う。
どうしても捨てられない面を割り切れってのも無理な話なので、選定対象外になっても仕方ない。
疑わしきは殺すってのは意外に俺の業種には多い処理で、try-catchは超大なjmpと同じだからアプリケーション層では使うな、ってレベルの実装もあり得る。
ヒステリックなチェックに、1=0+1の結果確かめる世界の話だからイマイチ伝わらんかもしれないけど、あるっちゃある。
これはGoにも通じるけど。

pythonは言語としてはホントにライブラリで勝ってる部分がある。
Shelveとかマジ便利。
で、マクロにたまに見る。

言語としてのポテンシャルが高いのはRustなんじゃないかな。まだスイスアーミーナイフ感はあるけど。
Haskellは、それ使うならもっと計算機用意してProlog使うか、厳密さがいるならCoq使うか、ベクトルやら複素数に対して莫大なフィルタとしての計算量が必要ならFortran使うか、ホント中途半端。
0839デフォルトの名無しさん2017/02/28(火) 22:03:10.04ID:SX/AvTMQ
googlecloudとかすごいから、使えない言語は失格ということでいかがでしょうか
0840デフォルトの名無しさん2017/02/28(火) 22:03:52.52ID:SX/AvTMQ
計算資源はかねでかえるが、参照透過性は金じゃかえない、わかるかなー
08412017/02/28(火) 22:08:29.90ID:jx+SAc84
>>839
トランスパイルしてしまえば使える。
マクロをGoのジェネレーターで書いてみて、思ったより使えた事しか今まで俺も言えなかったが、
Pythonをトランスパイルするという荒業をGoogle自身がやってみせたところ見ると、
ホントにスクリプト言語の下駄としても使う気なんだと思うよ。

頑として、単独バイナリが作れるのを崩さんしね。
ちょっと挙動変わってネットワーク系はダイナミックリンクするようになったけど、コンパイルオプションでちゃんとスタティックに出来るし。
あれ、大量にある端末に撒いて処理させて結果返させて、最後落とすとかに、すごく便利。
0842デフォルトの名無しさん2017/02/28(火) 22:09:09.29ID:r69JGN+q
luaは小さい言語だから何かをするにも一つしか方法は無い。
普通の言語は色々な記号とかたくさんあって覚えきれないって思うけどluaは違う。
08432017/02/28(火) 22:09:16.49ID:jx+SAc84
>>840
参照透過性を担保したいのなら、そもそもプログラムではなくクエリ言語として書くべき。
08442017/02/28(火) 22:27:39.89ID:jx+SAc84
>>836
同じ発想のコメントは、#(改行まで)と#;(後続するS式ひとつ)と#|(対応する|#まで)で相当前にSchemeにある。
0845デフォルトの名無しさん2017/02/28(火) 22:30:25.36ID:NI2SydcR
>>828
Scala落としてKotlin入れるべきかと最近マジで思い始めた
やっぱ覚えること考えることは少ない方がいいわ
0846デフォルトの名無しさん2017/02/28(火) 22:50:50.76ID:r69JGN+q
出来ることが多くなるほど、それをするかしないかで選択する必要が出てくるからな。
何もできなければ考える必要もないしそれが一番いい。
0847デフォルトの名無しさん2017/02/28(火) 22:59:07.97ID:r69JGN+q
英語とかだとaとかtheとかの決まりが嫌でもそのものの数を意識しないといけなくなる、
日本語は物の数を意識しなくていいからな。
このとき外人は何を考えるにも数を意識する習慣が植え付けられて
数を意識しないで生きることがどうしても出来ない人間になってしまう。
つまり言語は人の考えかたまで洗脳させる力があるってことだよ。
だから難しい言語を覚えると変な習慣を植え付けられて抜けだれなくって
後悔しても遅いということになる。
0848デフォルトの名無しさん2017/02/28(火) 23:06:51.93ID:39alJvfi
その理屈でいくとひらがな、カタカナ、漢字と三種類も文字があって
常に選択しなきゃいけない日本語は大変だねってことになるのか?

単数・複数、冠詞の種類で違う意味をもたせられることのメリットだってあるんだから
選択肢のない言語が常に一番いいってことなんてないよ
状況次第
0849デフォルトの名無しさん2017/02/28(火) 23:14:40.34ID:uYAjyD2O
プログラム言語の思考への影響力ってすごいよね

Python書いてたら処理をちゃんと関数に分けていかないとインデントがすごいことになるから処理をちゃんと分けようとなる
Lisp書いてたら処理を関数に分け、一関数一処理にすることが身につく
HaskellやClojure書いてたらイミュータブルなものだけでプログラムを作るにはどういうデータ構造を使えばいいかを考えるようになる
そしてイミュータブルを基本にするプログラムの見通しの良さに気づくとFortranでもsubroutine よりfunctionが好きになってくるのだ!
0850デフォルトの名無しさん2017/02/28(火) 23:35:43.40ID:NI2SydcR
いっぽう量産型Jap・・じゃなかったJaverはパブリックなインスタンスフィールドで最強の利便性を手に入れた
0851デフォルトの名無しさん2017/02/28(火) 23:43:26.98ID:uYAjyD2O
パブリックなインスタンスフィールド使うjavaなんてあるの?
0852デフォルトの名無しさん2017/02/28(火) 23:46:14.21ID:m0Ev7iKR
その点C++は何も身につかなった
0853デフォルトの名無しさん2017/02/28(火) 23:47:33.42ID:SX/AvTMQ
いまだになんでフィールドをプライベートにして、publicアクセサでアクセスしないといけないのかわからん

もうプログラミングはじめて5年はたつのに、Javaの教科書に最初に出てくるこれが理解できんわ

別にclassをmutableなmapとして使えばええやん
おれはガイジなんですかね
0854デフォルトの名無しさん2017/02/28(火) 23:50:41.32ID:uYAjyD2O
同僚のガイジ対策…… かなあ?
0855デフォルトの名無しさん2017/02/28(火) 23:54:12.99ID:HQrDI/W5
>>849
forthが抜けてるぞ
0856デフォルトの名無しさん2017/02/28(火) 23:56:25.44ID:uYAjyD2O
>>855
Forth知らんねん…… いい教材教えてくれ
0857デフォルトの名無しさん2017/02/28(火) 23:59:43.41ID:r69JGN+q
>>853
publicとかprivateとか選択させるから自由だと一見思わせておいて
選択することを強制される言語な。
逆に選択しなくていい選択肢があっても選択しないのは間違った使い方と批判されるんだよな。
0858デフォルトの名無しさん2017/03/01(水) 00:01:18.98ID:vtZNckjh
それって選択できる分だけタイピング数多くなってウザくね?
08592017/03/01(水) 00:44:33.92ID:qlPRyFoc
アクセサが要るかどうかってそこそこ大事な議論だと思うな。
クラス≒データの入れ物派≒構造体の発展系の人はそれこそアクセサなんて要らんし、データを出し入れする人間かAPIやABIが気にするべきだと思うだろうし、
クラス≒アクターな人は、自分の状態は命令を受けて自分が変更するべきものって見るだろうし。
書いててコンテクスト次第な気もしてきた。
0860デフォルトの名無しさん2017/03/01(水) 00:46:32.09ID:TmPMZG9k
プロパティ
0861デフォルトの名無しさん2017/03/01(水) 00:55:38.34ID:mdQDD1zG
>>860
はい
0862デフォルトの名無しさん2017/03/01(水) 00:59:37.31ID:5dqtc8Ml
全部イムタブルにするのが時代の最先端なんだろ?
副作用厨は死ね
0863デフォルトの名無しさん2017/03/01(水) 01:02:11.69ID:PoLyM5bd
そう遠くない未来に、人が直接プログラミングなんかしないで
求めたい結果のなんとなくの方向性を示してあげると
そこから推論して自動的にそれぞれのCPUのアーキテクチャに合わせて
カリカリにチューニングされた効率的かつ高速で実行するプログラムを
生成、デバッグしてくれるような
メタ・メタプロミング言語がでるんじゃないの?
0864デフォルトの名無しさん2017/03/01(水) 01:03:50.85ID:mdQDD1zG
完全に全部イミュータブルにするのしんどくない?
上のレイヤーのものはミュータブルなほうがなんだかんだ使いやすい時も多いと思うんよ
0865デフォルトの名無しさん2017/03/01(水) 01:12:21.51ID:5VwxzvNt
昔は人間がいちいちプログラムを組んでたんだよな
なんて時代がくるかもな
0866デフォルトの名無しさん2017/03/01(水) 01:22:07.09ID:PoLyM5bd
バグの生まれる原因って、言ってみれば
人がプログラミングしていると行為そのものにあるから
アルゴリズムや変数がどうのこうのとか考えるのも無くすべきなんだよね
0867デフォルトの名無しさん2017/03/01(水) 02:17:32.65ID:wvdVVNS5
やっぱ、だいたいイミュータブル、要所要所ミュータブルで書ける
F#、OCamlが一番使いやすいってことだな
0868デフォルトの名無しさん2017/03/01(水) 03:09:22.56ID:kjGhMmon
イミュータブルの問題は、イミュータブルが暗黙的にガベコレを前提としていることな
ラディカルに変化するプログラムにおいては、クローンコピーとガベコレのコストがかかる

だから基本的にはreduceしてmapするのはloopで処理するのに比べてコストがかかる
詳しくないけどmutable mapならそれほどコストかからないんじゃないの,あとpythonのmapも2と3で挙動違うらしいけど、たぶんここらへんが理由で2と3の宗教対立がおこってるんだろうなと推察する

pythonは2と3の戦争がなければ勉強してたとおもうけど、結局clojureにしちゃったよ、lispにそうした言語的不安定さはないからな、ただmutableにたいする過剰なアレルギーと、Cに対する縁遠さは感じるよね、やろうと思えばアクセスできるけどね
0869デフォルトの名無しさん2017/03/01(水) 07:50:15.49ID:mdQDD1zG
よく知らないけどRustってimmutablでガベコレじゃないんじゃなかったっけ?
0870すまん2017/03/01(水) 08:35:27.31ID:kR9TTFn1
>>807
よく読んだら結論俺の言いたかったことと全く同じだった
ガン無視しててごめんなさいでした
0871デフォルトの名無しさん2017/03/01(水) 09:22:01.46ID:rIYwFQuf
言うて速度重要か?見通し良ければ全て良しで普段やってるわ
0872デフォルトの名無しさん2017/03/01(水) 11:31:29.81ID:8rKmLVvs
mutableなデータを管理するには「魚拓を取る」手間がかかるよ
immutableならその手間を省ける
0873デフォルトの名無しさん2017/03/01(水) 21:20:51.09ID:7g4TvaUW
B5000シリーズのようなスタックコンピューターのよい点、わるい点はどんなことに
なるのだろうか
0874デフォルトの名無しさん2017/03/01(水) 21:29:36.33ID:CflRFoht
まぁ実際Scalaさんが最強なんだけどな
小規模から大規模まで対応できるスケーラブルな言語だからな
ただいかんせん学習コストが高すぎてコミュニティが発展しないな
0875デフォルトの名無しさん2017/03/01(水) 21:34:09.62ID:CflRFoht
次世代言語として議論する指標の一つとして
コミュニティの将来性が一番大事なんだ
たしかにscalaは素晴らしい言語だが
結果的にRoRに熟練したrubylist達より生産性も年収も低いという悲しい結果になるだろう
つまりこのスレタイにあるscalaは真っ先に脱落するので以降scalaについては議論しなくていい
0876デフォルトの名無しさん2017/03/01(水) 21:51:26.32ID:uGJVx5D1
じゃ代わりに次スレからF#とClojureを入れようか
0877デフォルトの名無しさん2017/03/01(水) 22:00:21.49ID:5dqtc8Ml
ScalaさんはKotlinaさんに食われちまっただ
0878デフォルトの名無しさん2017/03/01(水) 22:02:08.05ID:6pnFK8Jr
F#とかいう死産を入れるのやめてください
0879デフォルトの名無しさん2017/03/01(水) 22:27:19.31ID:rIYwFQuf
Clojureは学習コストも低いし素晴らしい
0880デフォルトの名無しさん2017/03/01(水) 22:47:13.18ID:HpsT7VIQ
>>871
O(n^2), O(n^3) のオーダーのアルゴリズム組むときは必要。
まあそこだけ C で書いて呼べばいいやってのはあるけど。
0881デフォルトの名無しさん2017/03/01(水) 23:09:15.49ID:mdQDD1zG
>>880
うん。そうだね
08826712017/03/01(水) 23:27:04.31ID:3lkyIXUw
>>875-876
https://www.indeed.com/jobtrends/Rust,Haskell,Scala,Erlang,Elixir,Clojure.html
※Goはプログラミング言語と関係ない求人が大量に引っかかるのではずした。

求人グラフを見るとScalaはこのスレの次世代言語の中で圧倒的に有望だ。
Elixirは求職者こそ増えているが求人が少なすぎて一番将来性がない。
ClojureはScala以外には負けてないからElixirと入れ替えよう。
0883デフォルトの名無しさん2017/03/01(水) 23:35:46.72ID:5dqtc8Ml
>>882
ひほう、Kotlinンゴ息してない
みんなすごいなあ
ScalaなんてアルトJava程度の使い方しかようできんわ
0884デフォルトの名無しさん2017/03/01(水) 23:47:01.00ID:uGJVx5D1
>>882
次世代じゃないからこそScalaが圧倒的なんじゃね
将来性のある言語は求職より求人のほうが先に増えるというデータがあるのかな?
0885デフォルトの名無しさん2017/03/01(水) 23:56:07.86ID:CflRFoht
そんなscalaっていいかなあ
苦労して覚えても
javaに代わる新たな奴隷言語って感じしかしねーわ
スケーラブルといいながら少人数じゃなんもできない印象
ならgo言語投資したほうがよくね
0886デフォルトの名無しさん2017/03/02(木) 00:08:46.30ID:PoY2cizm
論理展開がまるで意味不明
0887デフォルトの名無しさん2017/03/02(木) 00:28:33.75ID:/bDaB9jM
求人って流れから展開してんだけど意味不明か?
求人のほとんどはweb系だろ
つまりweb主体で考えたら次世代言語としてはgo言語でいいってわけよ
0888デフォルトの名無しさん2017/03/02(木) 00:42:43.10ID:2uItjQHI
というか少人数ならScalaでもJavaでもなくC++で全部書いた方がいいと思う
だからスケーラブルではない
0889デフォルトの名無しさん2017/03/02(木) 00:58:18.18ID:rNQsQkKa
最近のC++は結構最近の流行も取り入れてる感じするけど、相変わらず行列はEigen頼りだし、折角のinitializer_listにEigenが対応してないしでなんか汚い
0890デフォルトの名無しさん2017/03/02(木) 01:04:19.49ID:msdat3q4
イマドキ自前でメモリ管理とかありえない
0891デフォルトの名無しさん2017/03/02(木) 01:05:06.98ID:rNQsQkKa
unique_ptrあかんか……
まあ俺も嫌いだけど
0892デフォルトの名無しさん2017/03/02(木) 01:10:50.02ID:PoY2cizm
あかんな
0893デフォルトの名無しさん2017/03/02(木) 01:19:19.34ID:sI8Npgtk
shared_ptrは必要
0894デフォルトの名無しさん2017/03/02(木) 01:23:26.45ID:rNQsQkKa
D言語での流行りの書き方みたいにいっそクラス使うのやめて全部構造体にしてポインタも使わずすればワンチャン?
0895デフォルトの名無しさん2017/03/02(木) 01:25:37.38ID:sI8Npgtk
>>894
それCでよくね?
0896デフォルトの名無しさん2017/03/02(木) 01:30:22.17ID:rNQsQkKa
>>895
なんなら継承の代わりにtemplate使うくらいの勢いで行くから、一応templateがキモになって結構コード減らせるんや……
0897デフォルトの名無しさん2017/03/02(木) 01:41:11.36ID:sI8Npgtk
>>896
継承の代わりにテンプレートってどういう
もしかしてジェネリックに書くって事?
0898デフォルトの名無しさん2017/03/02(木) 01:42:22.88ID:rNQsQkKa
>>897
ああ、うん。表現悪くて申し訳なかった。そういうことや
0899デフォルトの名無しさん2017/03/02(木) 01:46:30.18ID:sI8Npgtk
>>898
ええんやで
0900デフォルトの名無しさん2017/03/02(木) 02:05:45.84ID:ggH8M0CB
>>874
scala の異常系は簡単に書けますか?
0901デフォルトの名無しさん2017/03/02(木) 02:06:57.23ID:ggH8M0CB
>>879
Clojure の異常系は簡単に書けますか?
私は win32api で書いていますが,異常系は最後の課題,どうあがいても泥縄になってしまう‥どうすればよいのか‥
0902デフォルトの名無しさん2017/03/02(木) 02:30:25.12ID:sI8Npgtk
>>900
>>901
意味わからんくね?簡単に書けるってどういう事?
リソース管理でも絡まなきゃ、ただの裁量じゃね?

書き方なら例外でもEitherでもif-returnでも好きに使えばいいし
ハンドリングが面倒なら、正常系のみ想定して書いたり、正常以外Exitって割り切ってもいいわけで
0903デフォルトの名無しさん2017/03/02(木) 02:33:36.14ID:sI8Npgtk
推敲中に送信したすまん
ちょっと煽ってるみたいになってしまったけど、最初の行は消すつもりだった
あとC#とか使えばって言おうとした
0904デフォルトの名無しさん2017/03/02(木) 02:53:27.04ID:ggH8M0CB
>>903
C# の RAII は信頼できないし‥
リソース管理は普通に絡みます,C++ で書いてますがあまり例外 を使いたくない,という思いがひしひしと‥
想定する例外が10を超えると忘れてしまうのです‥
0905デフォルトの名無しさん2017/03/02(木) 03:40:01.81ID:0oUTdLuO
scalaって、いちど覚えた事をちょっと違う形で
もう一度覚えなおさなきゃいけないのが面倒って感じで
何度インストールしても飽きて消しちゃう言語だなあ

F#やClojure、Eixirは半日で覚えれちゃうけど
0906デフォルトの名無しさん2017/03/02(木) 05:11:00.80ID:Ht8ZZ7Zf
Scalaなんてコンパイル重いし、
結局型を書かなきゃいけない所が多いし、
ランタイムもJRE以外にもJarの束を付けなきゃいけないし、
劇的にパフォーマンスが出るわけでもない。
ちょっとしたライブラリを探せばすぐにplayとかのフレームワーク前提。
こんなの誰が仕事で使うの?
自社サービス向けのオナニー自製ならいいけど、
決まった納期内にお客様に納品するのには全く向かないね。
0907デフォルトの名無しさん2017/03/02(木) 09:26:45.16ID:rNQsQkKa
自分向けのオナニー製品が作れるのは大事よ
オープンな言語はそうじゃないと発展しない
0908デフォルトの名無しさん2017/03/02(木) 09:50:05.53ID:X4GuTBcC
コンパイルなんかしなくても実行中にコードが書き換えられればいいのだ。
プログラムの世界の中の入って実行しながら作ってくみたいな。
0909デフォルトの名無しさん2017/03/02(木) 09:58:38.29ID:rNQsQkKa
Smalltalkかな?
0910デフォルトの名無しさん2017/03/02(木) 10:17:43.30ID:sI8Npgtk
>>904
RAIIなら異常系書く必要ないじゃないの
リソース絡んでも裁量の問題だし
復帰処理書くのが面倒と言う意味なら、それは言語の問題ではなくて、起こした副作用の数の問題だから
0911デフォルトの名無しさん2017/03/02(木) 10:36:43.47ID:wkGJHU+E
>>908
それまさにSmalltalk
コンパイルはするけどソースコードを書くそばからメソッド単位で行なうのでコンパイル時間は気にならない

コンパイルが終わると、ソースコードは主従が逆転して生成されたメソッドオブジェクトのプロパティの扱いになる
メソッドオブジェクトにメッセージを送ると自分を生成するのに使われたコードを返してくるようになっていて

(Integer compiledMethodAt: #factorial) getSource

有名なクラスブラウザとか、環境内のソースコード閲覧・編集ツールはこのシンプルな仕組みで作られている
(ソースコードを編集して再コンパイルすると、既存のメソッドオブジェクトが新しいものと置き換えられるからくり)

なお、メソッドを含め生成されたオブジェクトはある種のKVSに随時収められ自由なアクセスや永続化が可能だ
0912デフォルトの名無しさん2017/03/02(木) 11:23:03.41ID:X4GuTBcC
smalltalkとはちょっと違うかな、
テキストエディターとかブラウザーはプログラムの外だからね。
完全にプログラムの中に入ってみることを想像してごらんよ。
0913デフォルトの名無しさん2017/03/02(木) 11:37:01.63ID:rNQsQkKa
それなんていう言語?やってみたい
0914デフォルトの名無しさん2017/03/02(木) 11:44:04.40ID:wkGJHU+E
>>912
うーん、ちょっとイメージできないな。
ミクロの決死圏みたいに小さくなって体内に潜って何かする感じ?

プログラムの中に入ったとき、そこで目にしたり手で操作できるのは具体的には何?
0915デフォルトの名無しさん2017/03/02(木) 11:44:28.74ID:msdat3q4
 S c r a t c h
0916デフォルトの名無しさん2017/03/02(木) 11:46:26.32ID:X4GuTBcC
>>913
一番近いのはマインクラフト
0917デフォルトの名無しさん2017/03/02(木) 11:49:01.53ID:2uItjQHI
食べ物の外に包装も食器もないサンドイッチを想像した
0918デフォルトの名無しさん2017/03/02(木) 11:56:47.48ID:UEXtMhWW
>>907
それだけでは発展しない
それがscala
09192017/03/02(木) 12:10:43.36ID:J02J+VSe
Java嫌いでaltJavaのたぐいはどれも触って2、3回適当な小物作ってから最終的にほったらかして、それ以上探しもしなかったが、
このスレのお陰でKotlinやってみっか、って気分になれた。
感謝だ。

しかし今のJVM早いな。
あと、OpenJDKのスレッド周りの実装にくだくだコメントで説明書いてるのは読んでて面白い。
0920デフォルトの名無しさん2017/03/02(木) 12:12:15.51ID:X4GuTBcC
>>914
それがわからないから誰も作らないんだろうな。
0921デフォルトの名無しさん2017/03/02(木) 12:16:08.68ID:RFc8l/YM
このスレってCeylon出ないのな
ま今後も出ないだろうけど
0922デフォルトの名無しさん2017/03/02(木) 12:24:12.13ID:2uItjQHI
中に入るのはテスターでありプログラマーじゃないが
テスター=プログラマーってTDDか
0923デフォルトの名無しさん2017/03/02(木) 12:26:10.43ID:aZGoxjgC
一般的に関数型がObject思考を凌駕することは未来永劫ないだろう
本命はkotlinだよね
0924デフォルトの名無しさん2017/03/02(木) 12:27:49.40ID:+fj/W95T
知名度の問題であって、Object志向も普通に難しいと思うけどなあ……
最近は関数型の本も増えてるし案外わからんよ
0925デフォルトの名無しさん2017/03/02(木) 12:32:25.54ID:aZGoxjgC
Rxが関数型の影響を受けてるからそこから関数型を興味を持ったという人はいる
俺のことだが
0926デフォルトの名無しさん2017/03/02(木) 12:58:01.63ID:2uItjQHI
>>924
C++が難しいのはオブジェクト指向のせいじゃないから
オブジェクト指向を反証することは不可能だろう
0927デフォルトの名無しさん2017/03/02(木) 13:15:02.15ID:Ht8ZZ7Zf
>>912
ほとんどのSmalltalk処理系ではテキストエディタもブラウザもプログラムの一部だけど?
0928デフォルトの名無しさん2017/03/02(木) 13:24:21.81ID:+rQYOfT7
>>926
どっからC++でてきたんや……
0929デフォルトの名無しさん2017/03/02(木) 13:40:45.09ID:X4GuTBcC
>>927
ブラウザーとか実行中に改造できないだろ。
0930デフォルトの名無しさん2017/03/02(木) 13:47:15.20ID:wkGJHU+E
>>929
ブラウザーがWebブラウザを指すのかクラスブラウザを指すのかわからないけど
たとえ前者であってもSmalltalkで実装してありさえすれば、Smalltalkなら
テキストエディタだろうとデバッガだろうと、あらゆるプログラムを実行中に変更可能だけど?
0931デフォルトの名無しさん2017/03/02(木) 13:59:40.10ID:sI8Npgtk
Kotlin悪くないけど
もうXamarinとF#とかでいいかなって
0932デフォルトの名無しさん2017/03/02(木) 14:35:22.17ID:X4GuTBcC
>>930
small talkで実装してないだろ。
というか出来ない。
0933デフォルトの名無しさん2017/03/02(木) 14:51:52.50ID:wkGJHU+E
>>932
出来ない? なぜそう思う?
https://github.com/HPI-SWA-Teaching/Scamper
0934デフォルトの名無しさん2017/03/02(木) 14:54:01.74ID:X4GuTBcC
smalltalkはOSだからブラウザもテキストエディターもコンパイラもあって
OS実行中にプログラムをコンパイルして実行できて当たり前だろ。
そんな話どうでもいいんだよ
0935デフォルトの名無しさん2017/03/02(木) 15:05:16.54ID:iFkNWUjs
Smalltalkはいいけど
Smalltalkerはみんななぜか説教臭いな
0936デフォルトの名無しさん2017/03/02(木) 15:25:07.64ID:aaznfXOI
正直どの言語も大差ないから、簡単にC#の代替で使えて
MSが勝手に環境整えてくれるF#でいいやってのはあるな
ある程度関数プログラミングができる言語なら及第点であとは環境だわ
0937デフォルトの名無しさん2017/03/02(木) 15:34:03.82ID:sJmpQzyL
個人的にsmalltalk, lisp, forthは他の言語とは没入感が異なる感じで興味はあるけど、ブロックは波括弧が好きなんだ。
0938デフォルトの名無しさん2017/03/02(木) 15:50:12.09ID:YcXw8B0S
次世代言語スレで化石smalltalk語ってる時点で老害
0939デフォルトの名無しさん2017/03/02(木) 15:54:34.84ID:msdat3q4
>>938
really sorena
0940デフォルトの名無しさん2017/03/02(木) 16:08:20.58ID:wkGJHU+E
逆だろSmalltalk→すごい古い言語→化石→学ぶ価値なしって短絡がもう老害
0941デフォルトの名無しさん2017/03/02(木) 16:53:24.59ID:/K7Oi55n
何故か仲間に入れてもらえないSmalltalker
人格のせいやろなあ
0942デフォルトの名無しさん2017/03/02(木) 16:53:48.58ID:Ht8ZZ7Zf
>>935
それはsmalltalkが70年代に解決した答えを再発明して「ルビーすげー」「スカラすげー」とか言ってる人達がいるからじゃないかなあ?
0943デフォルトの名無しさん2017/03/02(木) 17:00:28.55ID:PnUsVojE
>>940
ほら老害
0944デフォルトの名無しさん2017/03/02(木) 18:27:43.42ID:tjZvnyJr
Smalltalkって良くも悪くも環境が独特だからなかなか手を出す気になれないけど
出来ないだろ→実装してないだろ→そんな話どうでもいいの流れは笑うわ
0945デフォルトの名無しさん2017/03/02(木) 18:37:38.25ID:XIRSYmHQ
Crystal
0946デフォルトの名無しさん2017/03/02(木) 19:09:06.43ID:D0Q5K0sH
他の人は現実の世界の話をしているのに
Smalltalkerは独自の世界、夢の世界の話をしているような印象
一生話が噛み合うことはないだろう
0947デフォルトの名無しさん2017/03/02(木) 19:16:41.84ID:sI8Npgtk
SmalltalkerなのにBigmouthてか

ごめん、言ってみたかっただけ
0948デフォルトの名無しさん2017/03/02(木) 19:22:29.95ID:H05ElAyQ
smalltalkの仕事なんてあるのか
0949 ◆QZaw55cn4c 2017/03/02(木) 19:38:19.19ID:ggH8M0CB
>>910
いえ,RAII でも異常を検出したら exception を投げるようにしているのです.
この例外が山のようになり把握できなくなってしまいました‥
0950デフォルトの名無しさん2017/03/02(木) 19:39:08.26ID:ggH8M0CB
異常系をスマートに書く方法はありませんか‥
0951デフォルトの名無しさん2017/03/02(木) 19:50:57.95ID:wkGJHU+E
>>948
> smalltalkの仕事

あるよ→https://www.sorabito.com/recruit/

主機能でSmalltalkを使って、その後ろでRubyやグラフデータベースを使っています。最近新しくErlangにも挑んでいますね。
https://thepedia.co/article/1068/
09522017/03/02(木) 19:59:17.17ID:J02J+VSe
異常があればテレメトリ出して死ぬのがなんだかんだで一番スマートでは?
変な話し方になるが、異常が起こったモジュールが、異常が回復されたと正常に判断するって至難の業だと思う。
「じゃあリエントリしろ」も「もう諦めろ」も外から言わない限り信用できる指示じゃ無い。
親がプロセスでもスレッドでもマイクロスレッドでも何でもいいから独立したワーカー起こして処理するのがいいんでないの?
0953デフォルトの名無しさん2017/03/02(木) 20:02:54.27ID:2uItjQHI
そこは他人に文句言うだけにして自力で改善する気はない奴の方がC++に向いている
0954デフォルトの名無しさん2017/03/02(木) 20:11:16.22ID:YJPJyRwm
速いしメタプロできるしかっけー
ってのが最近のc++er
0955デフォルトの名無しさん2017/03/02(木) 21:59:02.79ID:oaAit11r
>>949
おいQz
お前まともにC++書けねえだろ
何玄人ぶってんだボケ
0956デフォルトの名無しさん2017/03/02(木) 22:47:26.90ID:zVj4hayh
>>935
smalltalkが「動作効率とかコードが短いとか目先の話から離れて"人間が"わかる要素分解にしようぜー」って50年前に言ってるのに
それを動作効率とかコードが短いとか目先の利益を弄っては七転八倒して泥の中でのたうってる次世代言語たちが
ちょっと泥の中で立ってみて「俺こそが次世代の勝利者!」と言ったとたんに滑って転ぶ漫才を遠くから眺めてるからじゃねぇかな。
smalltalkやってねぇけどw
0957デフォルトの名無しさん2017/03/02(木) 23:05:25.36ID:0pf4kbjz
それDのほうが……
0958デフォルトの名無しさん2017/03/02(木) 23:11:15.15ID:v0pqsBKd
コードが短いのは大事よ
エディタの画面からはみ出すようなコードは理解しにくい
0959デフォルトの名無しさん2017/03/02(木) 23:27:34.01ID:msdat3q4
a.b().c.d().e() => a
0960デフォルトの名無しさん2017/03/02(木) 23:31:02.89ID:v0pqsBKd
>>959
やりすぎ
0961デフォルトの名無しさん2017/03/03(金) 00:11:22.49ID:1/MW9e8p
DとRustってどっち流行ってるん?
0962デフォルトの名無しさん2017/03/03(金) 00:14:19.97ID:GTe30Tvn
ドワンゴがニコ動/ニコ生用の分散ファイルシステムをRustで作ったらしいね
0963デフォルトの名無しさん2017/03/03(金) 00:14:28.41ID:uHR+rCVC
rustだろ
0964デフォルトの名無しさん2017/03/03(金) 00:15:11.56ID:qZwZC4ll
>>962
Rustのネガキャンやめろや
0965デフォルトの名無しさん2017/03/03(金) 00:16:03.19ID:PujljoQ9
やっぱだめじゃねえか
0966デフォルトの名無しさん2017/03/03(金) 00:19:46.41ID:GTe30Tvn
宣伝じゃないよ
http://gihyo.jp/dev/serial/01/dwango-engineersoul/0002
0967デフォルトの名無しさん2017/03/03(金) 00:22:27.09ID:QiMDcuzn
すごーい
0968デフォルトの名無しさん2017/03/03(金) 00:51:32.91ID:8C22uBPf
c++は11以降はかなりよくなったがネットワークまわりがまだ標準じゃないんだよな。
ネットワークが重要な現代、次世代名乗るならある程度のネットワーク絡みの機能は標準で持っておくべきと思う。
0969デフォルトの名無しさん2017/03/03(金) 01:07:21.29ID:uHR+rCVC
ライブラリで賄えば問題ない
0970デフォルトの名無しさん2017/03/03(金) 01:19:55.72ID:aWDXFaDP
>>947
俺は嫌いじゃないよ
0971デフォルトの名無しさん2017/03/03(金) 02:39:11.08ID:kTTbDRK0
>>949-950
自分でわざわざ複雑な処理にしておいて、複雑で困るって言われてもなあ…
コードの削減については置いておいて、異常系を簡素化したいなら、処理グループ毎にクラス化し、
キャッチや復帰などの処理をある程度そこでしてしまうとかは?
Javaでは下層の例外をそうして簡単にして、再度包んで投げるってのは良くやるよ

ただ、把握できないほど多いというのは、その場所で処理すべきでない物も処理してる証拠だと思うし
言語選びや移行以前にそのプログラムの設計を見直すべきではないかな
たぶん言語変えても同じ事繰り返すことになると思うし
0972デフォルトの名無しさん2017/03/03(金) 07:42:14.14ID:8C22uBPf
>>969
標準ライブラリも含めての機能だよ
0973デフォルトの名無しさん2017/03/03(金) 08:07:53.57ID:fn5fnrS2
socketっていうのはついてるけどwindowsだけ標準じゃないからな
boost.asioっていうのを使うしかないね。
0974デフォルトの名無しさん2017/03/03(金) 21:38:30.43ID:iKcxFzj7
>>971
なるほど,たしかに自分で細分化して自分で手に負えないことになっているのかもしれません
exception をくるむんですね
0975デフォルトの名無しさん2017/03/03(金) 21:39:51.78ID:iKcxFzj7
>>955
なんでC++だとおもったのですか?
0976デフォルトの名無しさん2017/03/03(金) 22:22:13.92ID:8SEA7Mtt
>>975
C++以外にまともにRAII使える言語は永遠のマイナー言語のDと今のところマイナー言語のRustぐらいしかなくね?
0977デフォルトの名無しさん2017/03/03(金) 22:46:09.88ID:QiMDcuzn
RAII の上位版がGCだからね
そもそも必要ない
0978デフォルトの名無しさん2017/03/03(金) 22:53:44.04ID:8SEA7Mtt
>>977
それはない
Javaのリソースリークのバグなんて珍しくもない
0979デフォルトの名無しさん2017/03/03(金) 22:55:20.34ID:n9rn4mK3
これからは defer 文だな。
0980デフォルトの名無しさん2017/03/03(金) 23:04:18.63ID:QiMDcuzn
>>978
おまえの管理するメモリと
JVMの管理するメモリ
俺ならどっちを信じるかな?
0981デフォルトの名無しさん2017/03/03(金) 23:12:59.08ID:Q3zcIHzi
>>980
ほんとこれ
0982デフォルトの名無しさん2017/03/03(金) 23:14:21.70ID:8SEA7Mtt
>>980
メモリだけがリソースじゃないんだよ?
0983デフォルトの名無しさん2017/03/03(金) 23:18:57.33ID:QiMDcuzn
>>982
そうだな、コード書く時間とか、おまえがアレしたメモリのバグを探す時間とかな
時間は大切なリソースだな
0984デフォルトの名無しさん2017/03/03(金) 23:20:42.16ID:Q3zcIHzi
0985デフォルトの名無しさん2017/03/04(土) 01:50:48.23ID:NT9gf9Aa
RAIIの上位版がGC?
馬鹿じゃないのこいつ
JavaでもAutoClosableあるだろ
0986デフォルトの名無しさん2017/03/04(土) 02:01:36.89ID:/imazuHh
よく知らないんだけどJavaってまともにRAIIできるの?
0987デフォルトの名無しさん2017/03/04(土) 02:27:07.11ID:a1Qd0ocB
>>985
明示的に書かないといけない分RAIIより劣ってるけどな
0988デフォルトの名無しさん2017/03/04(土) 10:31:29.70ID:WrMrtIld
久しぶりに来たが一気にスレタイと関係ないクソスレ化しててワロタ。
次スレは立てないか、立てるなら隔離スレを一緒に立てるかした方が良い。
0989デフォルトの名無しさん2017/03/04(土) 10:32:50.59ID:/imazuHh
次世代言語は無駄って主張してる奴が荒らしてた印象

次世代言語批判スレでも立てるか?
0990デフォルトの名無しさん2017/03/04(土) 10:35:24.61ID:oIxbzBCS
nullで初期化して後で代入すればいいと思ってる奴は言語関係なくまともにRAIIできない
0991デフォルトの名無しさん2017/03/04(土) 11:31:46.46ID:X2My6T7M
彼らは「次世代言語は無駄」ってマウンティングするのが目的なのであって
マウンティングする対象がいないスレにはいかないだろう
そういう志の低い輩は相手にしてはいけない
なぜなら、我々は次世代を目指す有志なのだから
0992デフォルトの名無しさん2017/03/04(土) 11:51:00.86ID:oIxbzBCS
マウンティングしてる庶民の話題は志が低いだろ
どうせならマウンティングで億万長者になった奴の話をするべき
09932017/03/04(土) 11:51:52.41ID:JF26yneQ
俺次世代言語は必要だと思ってるよ。
無根拠な盲信が害悪だと言ってる。
0994デフォルトの名無しさん2017/03/04(土) 12:03:04.87ID:N3MxYr/T
>>993
お前はお呼びじゃないから
0995デフォルトの名無しさん2017/03/04(土) 13:24:15.34ID:+9qG5EdN
>987
馬鹿は一般的なシチュエーションに対応するなんてできないんだから、
その場その場で明示的に書いてもらったほうがいいわ。
0996デフォルトの名無しさん2017/03/04(土) 13:47:55.44ID:X2My6T7M
>>995
それはあるね
バカの一般化って
関数の引数にいっぱいホニャララフラグをつけることだもの
0997デフォルトの名無しさん2017/03/04(土) 13:54:54.89ID:8UmZvvGr
人間だれでも初めは頭がよくても脳が疲れてくると馬鹿になる。
09982017/03/04(土) 14:06:56.89ID:JF26yneQ
>>994
そりゃすまん。
0999デフォルトの名無しさん2017/03/04(土) 14:31:12.62ID:GRvQ2lmz
うめとこ
1000デフォルトの名無しさん2017/03/04(土) 14:31:29.42ID:GRvQ2lmz
バイバイおさるさん
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 20日 16時間 58分 52秒
10021002Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/

▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。