スレタイ以外の言語もok
前スレ
次世代言語10[Rust Swift TypeScript Dart]
https://mevius.5ch.net/test/read.cgi/tech/1524607347/
探検
次世代言語11[Rust Swift TypeScript Dart]
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/06/03(日) 23:53:27.92ID:vrBh4O6u513デフォルトの名無しさん
2018/06/17(日) 16:12:12.31ID:NZRREY9d JS, TypeScript では、this の挙動が変だから、皆、that に代入して使う。
that = this
Haxe では、こういう事はない
下のような引数付き、enum もある。
一々、抽象クラス・インターフェースを書かなくても、多様な入力方式に対応できる
enum Input {
Key (keyCode:int);
Click (x:int, y:int);
}
switch (input) {
case Input.Key (keyCode):
case Input.Click (x, y):
}
パターンマッチも使えるし、Elixir に似てる
that = this
Haxe では、こういう事はない
下のような引数付き、enum もある。
一々、抽象クラス・インターフェースを書かなくても、多様な入力方式に対応できる
enum Input {
Key (keyCode:int);
Click (x:int, y:int);
}
switch (input) {
case Input.Key (keyCode):
case Input.Click (x, y):
}
パターンマッチも使えるし、Elixir に似てる
514デフォルトの名無しさん
2018/06/17(日) 16:19:53.70ID:iWNJr2Uz515デフォルトの名無しさん
2018/06/17(日) 16:22:09.07ID:iWNJr2Uz 「新しいものを導入しよう」とか脳死でわめくガキに現場しっちゃかめっちゃかにされる経験がないのか
それとも逆に現場ひっかきまわす側のガキなのか
次世代っていうのは目新しさで決めるもんじゃないだろ
それとも逆に現場ひっかきまわす側のガキなのか
次世代っていうのは目新しさで決めるもんじゃないだろ
516デフォルトの名無しさん
2018/06/17(日) 16:22:47.73ID:SIx1eJMh517デフォルトの名無しさん
2018/06/17(日) 16:24:24.84ID:aJjY8hhI Dが目新しいってマジ?
518デフォルトの名無しさん
2018/06/17(日) 16:28:42.12ID:iWNJr2Uz519デフォルトの名無しさん
2018/06/17(日) 16:32:58.06ID:8e4AMBWv このスレに上がってるような言語を実践投入する時はそら1990年代にJavaを投入した時のように慎重にいかないといかんでしょ
脳死での実践投入なんて発想が最初に出てくるとかガイジか。いや、ドカタだからそういう常識が欠けているのか。ごめんね?
脳死での実践投入なんて発想が最初に出てくるとかガイジか。いや、ドカタだからそういう常識が欠けているのか。ごめんね?
520デフォルトの名無しさん
2018/06/17(日) 16:33:35.47ID:yCU9+KnB 商用開発的に色んな側面考慮してJava8選択するのは特におかしいとは思わないけど
次世代呼びは流石に無茶やって
次世代呼びは流石に無茶やって
521デフォルトの名無しさん
2018/06/17(日) 16:35:35.09ID:iWNJr2Uz522デフォルトの名無しさん
2018/06/17(日) 16:38:30.24ID:iWNJr2Uz523デフォルトの名無しさん
2018/06/17(日) 16:44:30.75ID:8dIO3AYC524デフォルトの名無しさん
2018/06/17(日) 16:46:16.06ID:8dIO3AYC >>502
人材がいないのにどうやって集めろっていうの?
人材がいないのにどうやって集めろっていうの?
525デフォルトの名無しさん
2018/06/17(日) 16:50:08.16ID:8dIO3AYC >>502
別に新しい技術で人材不足を解消しようって話はしてないよ。
間違った行間読みはやめろ。
純粋に案件を始めるにあたって、
言語を特殊なものにすると、人材が集めづらいだろって話。
TypeScriptというメジャー寄りの言語ですら、専門以外エンジニアになりがちって話。
ちなみにTypeScriptは学習コストは低いほうだ。
別に新しい技術で人材不足を解消しようって話はしてないよ。
間違った行間読みはやめろ。
純粋に案件を始めるにあたって、
言語を特殊なものにすると、人材が集めづらいだろって話。
TypeScriptというメジャー寄りの言語ですら、専門以外エンジニアになりがちって話。
ちなみにTypeScriptは学習コストは低いほうだ。
526デフォルトの名無しさん
2018/06/17(日) 17:00:54.21ID:TG/aPZPS サポート切れるのに今からJava8を選ぶって逆に脳死過ぎだわ
The老害にも程がある
The老害にも程がある
527デフォルトの名無しさん
2018/06/17(日) 17:03:31.92ID:4b7uuLRW528デフォルトの名無しさん
2018/06/17(日) 17:12:42.29ID:u2X2MJCJ JVM系言語は全滅と思っていいのかね
529デフォルトの名無しさん
2018/06/17(日) 17:43:45.20ID:erltHdM+ >>524
知るか。派遣でもなんでも雇えば良いだろ?
>>525
> 間違った行間読みはやめろ。
すまんな…でも、あの文脈じゃそういう風に受け取られても仕方ないと思うけど…
> 言語を特殊なものにすると、人材が集めづらいだろって話。
集めづらいよ。だから慎重に検討する必要はあるし、手放しに喜んで良い機能じゃない
ただ時々「慎重に検討する」を曲解して「結局、絶対に採用されない」と
新しい技術そのものを否定しようとするヤツが居るんで
それは違うだろ?将来に備えて勉強しておく必要はあるだろ?
自分が理解できなかったのを正当化するための言い訳だろ?って言いたい
あと、慎重に検討した結果、採用したとして、それでも失敗した場合は
それは経験として受け入れるべきであって失敗として否定するべきではない
ある程度のリスクは受け入れないと、失敗はしなかったとしても成功もしない
どの程度のリスクを許容するかのバランスの問題であって、
全くリスクを受け入れようとしない企業は所詮その程度の企業だってこと
知るか。派遣でもなんでも雇えば良いだろ?
>>525
> 間違った行間読みはやめろ。
すまんな…でも、あの文脈じゃそういう風に受け取られても仕方ないと思うけど…
> 言語を特殊なものにすると、人材が集めづらいだろって話。
集めづらいよ。だから慎重に検討する必要はあるし、手放しに喜んで良い機能じゃない
ただ時々「慎重に検討する」を曲解して「結局、絶対に採用されない」と
新しい技術そのものを否定しようとするヤツが居るんで
それは違うだろ?将来に備えて勉強しておく必要はあるだろ?
自分が理解できなかったのを正当化するための言い訳だろ?って言いたい
あと、慎重に検討した結果、採用したとして、それでも失敗した場合は
それは経験として受け入れるべきであって失敗として否定するべきではない
ある程度のリスクは受け入れないと、失敗はしなかったとしても成功もしない
どの程度のリスクを許容するかのバランスの問題であって、
全くリスクを受け入れようとしない企業は所詮その程度の企業だってこと
530デフォルトの名無しさん
2018/06/17(日) 17:53:45.44ID:iWNJr2Uz531デフォルトの名無しさん
2018/06/17(日) 17:55:57.69ID:OuCJaAt5 図星で草
532デフォルトの名無しさん
2018/06/17(日) 18:10:25.08ID:7oGqe5zS おじいちゃんにはkotlinは難しすぎるらしい
533デフォルトの名無しさん
2018/06/17(日) 18:16:25.72ID:SIx1eJMh >>518
5、6年後にJava8www
5、6年後にJava8www
534デフォルトの名無しさん
2018/06/17(日) 18:43:07.15ID:iWNJr2Uz >>533
なんかおかしいか?枯らす期間としては短い方だろ
なんかおかしいか?枯らす期間としては短い方だろ
535デフォルトの名無しさん
2018/06/17(日) 18:54:54.59ID:a73jVlJK 寿司職人が5、6年修行しているようなものか
半年でできらぁって誰かが言い出したとしてお前らはそいつを倒せるのか?
半年でできらぁって誰かが言い出したとしてお前らはそいつを倒せるのか?
536デフォルトの名無しさん
2018/06/17(日) 19:15:51.85ID:SIx1eJMh >>534
何がおかしいのかわからないようならこの業界やめた方がいい
何がおかしいのかわからないようならこの業界やめた方がいい
537デフォルトの名無しさん
2018/06/17(日) 19:18:30.51ID:510xBBBe Java8のどこらへんが次世代なのかは言わんのな
538デフォルトの名無しさん
2018/06/17(日) 19:26:09.30ID:iWNJr2Uz539デフォルトの名無しさん
2018/06/17(日) 20:20:10.90ID:En9MtaF9 >>518
Java8 のサポート期間いつまでか知ってるかい?
Java8 のサポート期間いつまでか知ってるかい?
540デフォルトの名無しさん
2018/06/17(日) 20:25:05.46ID:p2Sm4Lro たぶ今頃サンに問い合わせてるんだろな
541デフォルトの名無しさん
2018/06/17(日) 20:38:25.12ID:SLSvvYl3 導入したい技術は、きちんと上司に根回しして
承認印を頂くこと
承認印を頂くこと
542デフォルトの名無しさん
2018/06/17(日) 20:43:39.42ID:dJUJdMR3 上司がバカな可能性も十分あるからなんとも言えん。
しかし、同じくらいの割合でバカな新人が新しいクソツールをねじ込むこともあるからな。
一般に表面だけ見て判断はできんわ。
しかし、同じくらいの割合でバカな新人が新しいクソツールをねじ込むこともあるからな。
一般に表面だけ見て判断はできんわ。
543デフォルトの名無しさん
2018/06/17(日) 20:50:01.61ID:wbEMQisX 五年後からJava8とか地獄のような現場もあったもんだな
現場を知らなかったわ
現場を知らなかったわ
544デフォルトの名無しさん
2018/06/17(日) 20:55:06.44ID:wY+r/3B/ アップデートがあるうちはまだまだ未完成
LTSが終了したところで真の安定板になるのですよ…
LTSが終了したところで真の安定板になるのですよ…
545デフォルトの名無しさん
2018/06/17(日) 21:26:03.64ID:u2X2MJCJ そろそろ次世代の話がしたい
546デフォルトの名無しさん
2018/06/17(日) 21:27:10.33ID:wbEMQisX 現場知ってる人にASTの話題流されたからな
547デフォルトの名無しさん
2018/06/17(日) 21:34:27.48ID:Nk/Dtbgv Java8は流石にネタだと信じたい
ネタとしては面白かったけど
ネタとしては面白かったけど
548デフォルトの名無しさん
2018/06/17(日) 21:44:52.52ID:Zsovn15r 面白かった次スレから入れるか?w
549デフォルトの名無しさん
2018/06/17(日) 22:04:53.41ID:SLSvvYl3 やれやれ・・・(肩をすくめ、冗談だろ?と失笑しながら、イケメンを少し崩した変顔でつぶやく僕)
550デフォルトの名無しさん
2018/06/17(日) 22:19:46.98ID:IxLGC6rA 昔クソツールと言ってgradleを拒否した爺さんが弊社にいた
蓋を開けてみると新しいからダメっていうか爺さんがわからないからごねてただけだった
爺さん今はKotlinを猛烈に攻撃してる
こういうのって沢山あるんだろうな
蓋を開けてみると新しいからダメっていうか爺さんがわからないからごねてただけだった
爺さん今はKotlinを猛烈に攻撃してる
こういうのって沢山あるんだろうな
551デフォルトの名無しさん
2018/06/17(日) 22:32:18.24ID:EBuoSE6p サポート終わったものは社内のセキュリティ監査で引っかかるから使えんけどなあ
552デフォルトの名無しさん
2018/06/17(日) 22:36:34.77ID:dJUJdMR3553デフォルトの名無しさん
2018/06/17(日) 22:59:16.75ID:iFYzb9cl ドカタ言語としてはJava SE 1.4くらいがちょうどよかった。あれのLTSがあったらなぁ。
554デフォルトの名無しさん
2018/06/17(日) 23:00:14.53ID:9aKhKpN8 C#やりたいなあ
555デフォルトの名無しさん
2018/06/17(日) 23:06:55.31ID:SLSvvYl3 railsはさすがにゴミですわ
ド型にすらなれないゴミ
ド型にすらなれないゴミ
556デフォルトの名無しさん
2018/06/17(日) 23:21:54.59ID:p2Sm4Lro グレードルもクソだと思うけどそもそもjavaがクソなのでツールを責めるのは酷だすな
コトリンは救いようがない滅せよ
コトリンは救いようがない滅せよ
557デフォルトの名無しさん
2018/06/17(日) 23:28:49.24ID:dJUJdMR3 言語もそうだがクソなものを勧めてくる奴の特徴は
おそろしくモジュラリティーの低いものばっかり勧めてくるってところだ。
おそろしくモジュラリティーの低いものばっかり勧めてくるってところだ。
558デフォルトの名無しさん
2018/06/17(日) 23:47:42.67ID:Zsovn15r その発言!η変換すると「クソなものはモジュラリティが低い」になるぜ!
559デフォルトの名無しさん
2018/06/18(月) 00:41:09.48ID:szLLB6p9560デフォルトの名無しさん
2018/06/18(月) 00:44:39.69ID:szLLB6p9 >>559
kotlinなにがだめだったん?
kotlinなにがだめだったん?
561デフォルトの名無しさん
2018/06/18(月) 00:44:54.86ID:szLLB6p9562デフォルトの名無しさん
2018/06/18(月) 00:56:40.78ID:5zfP7m4z gradleがクソはまあわかるがantよりはマシ
爺さんがごねなきゃ最低のクソから並みのクソぐらいには昇格できたかもしれない
新技術拒否爺さんは業務効率化を阻む害悪でしかない
爺さんがごねなきゃ最低のクソから並みのクソぐらいには昇格できたかもしれない
新技術拒否爺さんは業務効率化を阻む害悪でしかない
>>555
今から rails に取り組もうと思っていたのですが…(?然)
今から rails に取り組もうと思っていたのですが…(?然)
564デフォルトの名無しさん
2018/06/18(月) 01:49:33.50ID:2+ok0PtZ 気にすんな。世の中には自分の能力が足りなくて理解できないものをクソだということにして
自分の心を安定させようとするやつが居るってだけのことだから。そういうやつは何千年も
前から居る。ほとんど人間という動物の習性だと思っていい。誰でもそういう状態にハマる
可能性がある。ハマってる最中はそいつは他をクソ呼ばわりするだけで新たな事は何も
学習しなくなるので馬鹿な状態が維持されて発展しない。
自分の心を安定させようとするやつが居るってだけのことだから。そういうやつは何千年も
前から居る。ほとんど人間という動物の習性だと思っていい。誰でもそういう状態にハマる
可能性がある。ハマってる最中はそいつは他をクソ呼ばわりするだけで新たな事は何も
学習しなくなるので馬鹿な状態が維持されて発展しない。
565デフォルトの名無しさん
2018/06/18(月) 07:01:11.25ID:Jei0+sA2566デフォルトの名無しさん
2018/06/18(月) 07:13:46.91ID:wJzzPYpc >>564
歴史に何も学ばないやつに発展はない。
https://anond.hatelabo.jp/20171129214218
565はこの種のバカなことを引き起こしといてトンズラするタイプだな。
だいたいこのタイプは仕様が満たされるものだと過信してるタイプで
機能の堅牢性なんてまともにチェックしてない。
歴史に何も学ばないやつに発展はない。
https://anond.hatelabo.jp/20171129214218
565はこの種のバカなことを引き起こしといてトンズラするタイプだな。
だいたいこのタイプは仕様が満たされるものだと過信してるタイプで
機能の堅牢性なんてまともにチェックしてない。
567デフォルトの名無しさん
2018/06/18(月) 07:25:45.84ID:OPxRI0Cf 歴史を学習した人間より科学を学習した自動運転の方が安全というのが
シンギュラリティの思想だよな
シンギュラリティの思想だよな
568デフォルトの名無しさん
2018/06/18(月) 08:03:14.74ID:GT4ypnkz >>564
それを「固定された思考態度」という。
それを「固定された思考態度」という。
569デフォルトの名無しさん
2018/06/18(月) 08:19:55.49ID:AHTeguQN どっちも危険な盲信になりえる
>>564 みたいに一方的なのは危険
>>564 みたいに一方的なのは危険
570デフォルトの名無しさん
2018/06/18(月) 10:03:33.26ID:1wi3jEJk 「新しいものをバカみたいに導入しようとする奴は危険」ってのはまあその通りなんだが
上の「5年後にJava8を導入おじさん」も同じくらい危険人物な訳で
結局突き詰めてメリデメリをジャッジできる思考力ないだけのバカは開発を地獄にするってのは変わらんよね
上の「5年後にJava8を導入おじさん」も同じくらい危険人物な訳で
結局突き詰めてメリデメリをジャッジできる思考力ないだけのバカは開発を地獄にするってのは変わらんよね
571デフォルトの名無しさん
2018/06/18(月) 11:21:38.28ID:cgeQ1bE7 プロコンという語を覚えると便利だよ>メリデメリ
英語のプレゼンでprosとかconsとか見たことあるでしょ?まあ英語というかラテン語なんだけど。
英語のプレゼンでprosとかconsとか見たことあるでしょ?まあ英語というかラテン語なんだけど。
572デフォルトの名無しさん
2018/06/18(月) 11:40:21.90ID:OPxRI0Cf デメリット、コスト、人月の見積もり
見積もりを妄信するのも危険と言われる
見積もりを妄信するのも危険と言われる
573デフォルトの名無しさん
2018/06/18(月) 13:11:53.12ID:byOf5Soa574デフォルトの名無しさん
2018/06/18(月) 14:05:58.53ID:7nYEmGe5 そもそも次世代言語が次世代なうちは個人の趣味プロぐらいにしか使わんだろ
575デフォルトの名無しさん
2018/06/18(月) 14:33:09.83ID:sQTrKk9Y HaskellやElixirを実業務で使ってるところも
実在するわけだよな恐ろしい
実在するわけだよな恐ろしい
576デフォルトの名無しさん
2018/06/18(月) 14:45:17.24ID:UoKY4/G0 そのへんはむしろ枯れてるし実際ある
577デフォルトの名無しさん
2018/06/18(月) 14:48:34.03ID:soq2obRK まあHakellに関してはもう次世代というよりLispと似たようなポジションだということで
578デフォルトの名無しさん
2018/06/18(月) 15:30:15.87ID:soq2obRK ところで、またATS2に話を戻すんだけど、
日本語訳もあったしチュートリアルやってみてるんだけど
↓の再帰関数の停止性検査とやらで躓いている
ttp://jats-ug.metasepi.org/doc/ATS2/INT2PROGINATS/x2485.html
特に
fun isevn{n: nat} .<2*n>. (n: int n): bool = if n = 0 then true else isodd (n-1)
and isodd{n: nat} .<2*n+1>. (n: int n): bool = not(isevn(n))
が何故.<2 * n>.と.<2 * n + 1>になるか理解できん…
.<n>.と.<n + 1>.で大丈夫だと思ったんだが…
たぶんまだ、停止性メトリクスとやらが正しく理解できていないんだろうな…
誰か詳しく解説してくれないか?
日本語訳もあったしチュートリアルやってみてるんだけど
↓の再帰関数の停止性検査とやらで躓いている
ttp://jats-ug.metasepi.org/doc/ATS2/INT2PROGINATS/x2485.html
特に
fun isevn{n: nat} .<2*n>. (n: int n): bool = if n = 0 then true else isodd (n-1)
and isodd{n: nat} .<2*n+1>. (n: int n): bool = not(isevn(n))
が何故.<2 * n>.と.<2 * n + 1>になるか理解できん…
.<n>.と.<n + 1>.で大丈夫だと思ったんだが…
たぶんまだ、停止性メトリクスとやらが正しく理解できていないんだろうな…
誰か詳しく解説してくれないか?
579デフォルトの名無しさん
2018/06/18(月) 15:31:22.53ID:/sFO+jYl >>575
ドワンゴ(失笑)とかか?wwww
ドワンゴ(失笑)とかか?wwww
580デフォルトの名無しさん
2018/06/18(月) 15:37:03.09ID:/sFO+jYl ドワンゴが使ってると公言した言語を使ってる会社はドワンゴレベル
気を付けろwwwww
気を付けろwwwww
581デフォルトの名無しさん
2018/06/18(月) 16:10:43.68ID:soq2obRK ドワンゴってScala以外にもSwift, Kotlin(スマホアプリ)やReact(Typescript)やRustとかも使ってるからな…
開発事例は聞いたことないけどGoの勉強会とかもやってるし…
その基準だと、このスレでよく話題に挙がる言語はほとんど全てドワンゴレベルだな
ドワンゴレベルじゃない次世代言語はDartくらいか?www
開発事例は聞いたことないけどGoの勉強会とかもやってるし…
その基準だと、このスレでよく話題に挙がる言語はほとんど全てドワンゴレベルだな
ドワンゴレベルじゃない次世代言語はDartくらいか?www
582デフォルトの名無しさん
2018/06/18(月) 16:24:24.97ID:NEyGx0zg ドワンゴには、C++ の標準化委員の江添亮もいるし、Rust, Elixir, HDL もやってる。
クックパッドには、RubyVM を作った、笹田耕一もいる
基本は、Ruby。
Gradle で使うGroovy も、Ruby そっくり。
Elixir もそう。
jQuery のメソッドチェーンも、Ruby っぽい
無料のRails チュートリアルをやれば、すべてのフレームワークがわかる
クックパッドには、RubyVM を作った、笹田耕一もいる
基本は、Ruby。
Gradle で使うGroovy も、Ruby そっくり。
Elixir もそう。
jQuery のメソッドチェーンも、Ruby っぽい
無料のRails チュートリアルをやれば、すべてのフレームワークがわかる
583デフォルトの名無しさん
2018/06/18(月) 16:24:43.92ID:yVgz9/Zm 言語と品質には何の関係もないのを
日々実証し続けているドワンゴさん
日々実証し続けているドワンゴさん
584デフォルトの名無しさん
2018/06/18(月) 16:29:30.09ID:pZ1JIWjn まだRubyのチュートリアルの話してんの?
Rubyっぽい、って、第一言語がRubyだからそう見えるだけだろ。
Rubyっぽい、って、第一言語がRubyだからそう見えるだけだろ。
585デフォルトの名無しさん
2018/06/18(月) 16:40:07.48ID:OPxRI0Cf フリーソフトがあるから品質と価格が無関係
586デフォルトの名無しさん
2018/06/18(月) 17:22:50.97ID:qMNnTEHn ドワンゴってエンジニアだけ見ると技術力高そうなのに
なんで成果が全部ゴミなんだろうな
なんで成果が全部ゴミなんだろうな
587デフォルトの名無しさん
2018/06/18(月) 17:37:58.73ID:NEyGx0zg YouTube, AbemaTV は、広告
ニコ生は、有料
Showroom は、寄付
ビジネスモデルが異なるから、
1つのチャネルの視聴者数が1万を超えると、追い出す
乃木坂みたいに、数万人も見ると、追い出す。
広告が無いから、1万人以上が無料で見ると、電気代が払えず、赤字になる
ニコ生は、有料
Showroom は、寄付
ビジネスモデルが異なるから、
1つのチャネルの視聴者数が1万を超えると、追い出す
乃木坂みたいに、数万人も見ると、追い出す。
広告が無いから、1万人以上が無料で見ると、電気代が払えず、赤字になる
588デフォルトの名無しさん
2018/06/18(月) 18:02:04.30ID:EvkbZGBx >>578
isevn.<n>.とisodd.<n+1>.だと
isevn 3 のメトリックは.<n>. = .<3>.
そこから呼ばれるisodd 2 のメトリックも.<n + 1> = .<3>.
減ってねえ!エラー!ってことじゃね
想像だけで試してないので違ってたらすまん
isevn.<n>.とisodd.<n+1>.だと
isevn 3 のメトリックは.<n>. = .<3>.
そこから呼ばれるisodd 2 のメトリックも.<n + 1> = .<3>.
減ってねえ!エラー!ってことじゃね
想像だけで試してないので違ってたらすまん
589デフォルトの名無しさん
2018/06/18(月) 18:04:53.53ID:xdRdwSco >>578
とある関数呼び出しの定義内に表れる再帰的呼び出しの
停止性マトリクスが、大元の関数呼び出しの停止性マトリクスから辞書順で下降していくことから停止性を担保しようというのが停止性マトリクスの意味。
そして停止性マトリクスの記述に表れる n は issven や isodd の引数そのものだということに注意
iseven、isodd の停止性マトリクスがそれぞれ n、n+1 だと、
iseven n の停止性マトリクス→n
iseven n の定義に出てくる isodd (n-1) の停止性マトリクス→n-1+1=n
減っていないから停止性が担保されない(NG)。
説明にあるように <n, 0> と <n,1> ならば、
iseven n の停止性マトリクス→<n,0>
iseven n の定義に出てくる isodd (n-1) の停止性マトリクス→<n-1,1> (下降している!OK)
isodd も同様に
isodd n の停止性マトリクス→<n,1>
isodd n の定義に出てくる iseven (n) の停止性マトリクス→<n,1> (下降している!OK)
そして<n,0>, <n,1> の代わりに n*2, n*2+1 を使っている(この代用が可能なことはわかるよね)。
とある関数呼び出しの定義内に表れる再帰的呼び出しの
停止性マトリクスが、大元の関数呼び出しの停止性マトリクスから辞書順で下降していくことから停止性を担保しようというのが停止性マトリクスの意味。
そして停止性マトリクスの記述に表れる n は issven や isodd の引数そのものだということに注意
iseven、isodd の停止性マトリクスがそれぞれ n、n+1 だと、
iseven n の停止性マトリクス→n
iseven n の定義に出てくる isodd (n-1) の停止性マトリクス→n-1+1=n
減っていないから停止性が担保されない(NG)。
説明にあるように <n, 0> と <n,1> ならば、
iseven n の停止性マトリクス→<n,0>
iseven n の定義に出てくる isodd (n-1) の停止性マトリクス→<n-1,1> (下降している!OK)
isodd も同様に
isodd n の停止性マトリクス→<n,1>
isodd n の定義に出てくる iseven (n) の停止性マトリクス→<n,1> (下降している!OK)
そして<n,0>, <n,1> の代わりに n*2, n*2+1 を使っている(この代用が可能なことはわかるよね)。
590デフォルトの名無しさん
2018/06/18(月) 18:08:28.85ID:xdRdwSco >>589
>停止性マトリクスが、大元の関数呼び出しの停止性マトリクスから辞書順で下降していくことから停止性を担保しようというのが停止性マトリクスの意味。
この説明「下降していく」だと本当に再起をどんどん
実行していくみたいで間違ってるか。
とある関数呼び出しの停止性マトリクスよりも、
その関数の定義に表れる全ての再帰的呼び出しの停止性マトリクスのほうが辞書順で小さい、
というべきか。
>停止性マトリクスが、大元の関数呼び出しの停止性マトリクスから辞書順で下降していくことから停止性を担保しようというのが停止性マトリクスの意味。
この説明「下降していく」だと本当に再起をどんどん
実行していくみたいで間違ってるか。
とある関数呼び出しの停止性マトリクスよりも、
その関数の定義に表れる全ての再帰的呼び出しの停止性マトリクスのほうが辞書順で小さい、
というべきか。
591デフォルトの名無しさん
2018/06/18(月) 18:09:50.53ID:xdRdwSco >>589
>isodd も同様に
>isodd n の停止性マトリクス→<n,1>
>isodd n の定義に出てくる iseven (n) の停止性マトリクス→<n,1> (下降している!OK)
最後の行は
isodd n の定義に出てくる iseven (n) の停止性マトリクス→<n,0> (下降している!OK)
の間違いでした
>isodd も同様に
>isodd n の停止性マトリクス→<n,1>
>isodd n の定義に出てくる iseven (n) の停止性マトリクス→<n,1> (下降している!OK)
最後の行は
isodd n の定義に出てくる iseven (n) の停止性マトリクス→<n,0> (下降している!OK)
の間違いでした
592デフォルトの名無しさん
2018/06/18(月) 18:32:21.74ID:NEyGx0zg 偶数は、2*n
奇数は、2*n+1
奇数は、2*n+1
593デフォルトの名無しさん
2018/06/18(月) 18:34:45.57ID:EvkbZGBx >>592
理解してないだろw
理解してないだろw
594デフォルトの名無しさん
2018/06/18(月) 18:51:32.37ID:OPxRI0Cf 安全装置のたぐいは損失を防ぐばかりで利益は全然ない
利益がないから理解できない人が続出
利益がないから理解できない人が続出
595デフォルトの名無しさん
2018/06/18(月) 18:58:41.11ID:soq2obRK >>589
ありがとう
冷静に計算していったら、確かにnとn+1じゃ減ってないからダメで
2*nと2*n+1だときちんと減ってるからOKってところまでは理解できた
でも、一体何を考えて<n,0>と<n,1>のタプル?のメトリクスが出てきたか全然分からない…
> そして<n,0>, <n,1> の代わりに n*2, n*2+1 を使っている(この代用が可能なことはわかるよね)。
すまない。俺はバカなんだ。分からないんで教えて下さい。
自分でも自分がどこまで分かっているのかさえよく分かっていないんだが、
たぶん、停止性メトリクスがきちんと減っているかどうかを計算する方法までは理解できたが、
きちんと減っている停止性メトリクスを導き出す方法が分かってないんだと思う
ありがとう
冷静に計算していったら、確かにnとn+1じゃ減ってないからダメで
2*nと2*n+1だときちんと減ってるからOKってところまでは理解できた
でも、一体何を考えて<n,0>と<n,1>のタプル?のメトリクスが出てきたか全然分からない…
> そして<n,0>, <n,1> の代わりに n*2, n*2+1 を使っている(この代用が可能なことはわかるよね)。
すまない。俺はバカなんだ。分からないんで教えて下さい。
自分でも自分がどこまで分かっているのかさえよく分かっていないんだが、
たぶん、停止性メトリクスがきちんと減っているかどうかを計算する方法までは理解できたが、
きちんと減っている停止性メトリクスを導き出す方法が分かってないんだと思う
596デフォルトの名無しさん
2018/06/18(月) 19:23:14.64ID:xdRdwSco >>595
>すまない。俺はバカなんだ。分からないんで教えて下さい。
辞書順を保ったまま <n, 0>, <n,1> をそれぞれ 2*n, 2*n+1 で置き換えられる
3*nとか4nでもいいけど2つしかないから2nで十分
例
fun f
{n:nat} .<3*n>.
(n: int n) : bool =
if n = 0 then true else g (n-1)
and g
{n:nat} .<3*n+2>.
(n: int n) : bool = not (h (n))
and h
{n:nat} .<3*n+1>.
(n: int n) : bool = not (f (n))
>すまない。俺はバカなんだ。分からないんで教えて下さい。
辞書順を保ったまま <n, 0>, <n,1> をそれぞれ 2*n, 2*n+1 で置き換えられる
3*nとか4nでもいいけど2つしかないから2nで十分
例
fun f
{n:nat} .<3*n>.
(n: int n) : bool =
if n = 0 then true else g (n-1)
and g
{n:nat} .<3*n+2>.
(n: int n) : bool = not (h (n))
and h
{n:nat} .<3*n+1>.
(n: int n) : bool = not (f (n))
597デフォルトの名無しさん
2018/06/18(月) 19:24:20.04ID:EvkbZGBx >>595
引数のnと、isoddとisevnの2つの関数の区別(+0, +1)を位取り(*2)して足してるだけじゃないかな……
引数のnと、isoddとisevnの2つの関数の区別(+0, +1)を位取り(*2)して足してるだけじゃないかな……
598デフォルトの名無しさん
2018/06/18(月) 19:33:04.83ID:vrc1WpPf599デフォルトの名無しさん
2018/06/18(月) 19:52:57.33ID:wJzzPYpc ドワンゴはc++みたいなもんだな。
とりあえず新言語(新機能)の実験台になってもらえるっていう。
とりあえず新言語(新機能)の実験台になってもらえるっていう。
600デフォルトの名無しさん
2018/06/18(月) 20:40:04.20ID:bcKP+A2z601デフォルトの名無しさん
2018/06/18(月) 20:46:12.17ID:7nYEmGe5 ドワンゴは本当のC++プログラマーも募集してるしな
602デフォルトの名無しさん
2018/06/18(月) 21:40:32.50ID:poCVJCAd やきそば焼かせてるようなクズ会社にいくのか?
603デフォルトの名無しさん
2018/06/18(月) 21:49:26.33ID:c5Ieze8t bio100%の戀塚もいるんだよな
いかんせん上がアホだから
いかんせん上がアホだから
604デフォルトの名無しさん
2018/06/18(月) 21:55:35.52ID:soq2obRK >>596
辞書順を保ったまま置き換えられるってのが何をしてるのかイマイチよく分からんが
とりあえず、2つの関数で相互再帰なら2n、3つなら3nといった感じ……なのか?
うーん…まだ勉強し始めたばかりだし、やってればそのうち分かるようになるかぁ…
あざっす。
辞書順を保ったまま置き換えられるってのが何をしてるのかイマイチよく分からんが
とりあえず、2つの関数で相互再帰なら2n、3つなら3nといった感じ……なのか?
うーん…まだ勉強し始めたばかりだし、やってればそのうち分かるようになるかぁ…
あざっす。
605デフォルトの名無しさん
2018/06/18(月) 22:18:33.96ID:ejyTxCd5 >>604
いやここで堪えて理解しておくべき。
引数から算出できて、再帰で減るものを何か考えてそれを停止性マトリクスとする。
値そのものじゃなく大小関係だけが大事だから、
m が 0 と 1 のどちらかしかなければ
<n, m> の代わりに n*2+m で ok ってこと
例
<5,0> は <4,1> より大 ⇔ 5*2+0 は 4*2+1 より大
いやここで堪えて理解しておくべき。
引数から算出できて、再帰で減るものを何か考えてそれを停止性マトリクスとする。
値そのものじゃなく大小関係だけが大事だから、
m が 0 と 1 のどちらかしかなければ
<n, m> の代わりに n*2+m で ok ってこと
例
<5,0> は <4,1> より大 ⇔ 5*2+0 は 4*2+1 より大
606デフォルトの名無しさん
2018/06/18(月) 22:30:23.80ID:ejyTxCd5 ちなみに辞書順というのは停止性メトリクスのタプルについて、
先頭の要素同士を比較、等しければ次の要素同士を比較、また等しければそのまた次の以下略…
という風に比較したときの順序関係
先頭の要素同士を比較、等しければ次の要素同士を比較、また等しければそのまた次の以下略…
という風に比較したときの順序関係
607デフォルトの名無しさん
2018/06/18(月) 22:47:52.93ID:ejyTxCd5 上で散々マトリクスと誤記しているメトリクスはこの場合「(停まるまでの)距離」という意味
608デフォルトの名無しさん
2018/06/18(月) 23:09:05.63ID:soq2obRK >>605
なるほど。(n, 0)と(n, 1)が2nと2n+1に変換できることまでは分かった。ありがたい。
でも、そもそもの話として(n, 0)と(n, 1)っていうのが
一体何を考えて導き出されたのかが分からないんだよ…
チュートリアルに「isevn と isodd に (n, 0) と (n, 1) のメトリクスを与えれば、
これら2つの関数の停止性もまた検査できることは明白です。」って
書いてあるんだけど、俺にとっては全然明白じゃない…
何をどう考えたら(n, 0)と(n, 1)のメトリクスを与えようと思うんだ…?
現状、分かっているのは2nと2n+1ならメトリクスが減っているからOKってところと
(n, 0)と(n, 1)のメトリクスが2nと2n+1に変換できるってところまで…
一番肝心な部分が理解できていない気がする…
なるほど。(n, 0)と(n, 1)が2nと2n+1に変換できることまでは分かった。ありがたい。
でも、そもそもの話として(n, 0)と(n, 1)っていうのが
一体何を考えて導き出されたのかが分からないんだよ…
チュートリアルに「isevn と isodd に (n, 0) と (n, 1) のメトリクスを与えれば、
これら2つの関数の停止性もまた検査できることは明白です。」って
書いてあるんだけど、俺にとっては全然明白じゃない…
何をどう考えたら(n, 0)と(n, 1)のメトリクスを与えようと思うんだ…?
現状、分かっているのは2nと2n+1ならメトリクスが減っているからOKってところと
(n, 0)と(n, 1)のメトリクスが2nと2n+1に変換できるってところまで…
一番肝心な部分が理解できていない気がする…
609デフォルトの名無しさん
2018/06/18(月) 23:17:38.17ID:Tp0/3gfg なんの話か分からないけどこういう奴らが使ってる技術は使いたくない
610デフォルトの名無しさん
2018/06/19(火) 00:28:07.36ID:2myyjakz ATSは依存型言語の中でも奇抜な方だと思うよ
Coqとソフトウェアの基礎の方が易しいと思う
Coqとソフトウェアの基礎の方が易しいと思う
611デフォルトの名無しさん
2018/06/19(火) 01:44:59.48ID:menX4d1R CoqとAgdaは敬遠してるんだよね…
あの二つはプログラミング言語じゃなくて証明支援器だって聞いてるから…
オレは別にPCに証明問題を解くのを手伝ってもらいたいんじゃなくて、
従来の型システムを発展させた依存型とかを使ったより安全な
プログラミングを行うの方法が知りたいんだよって思って…
けど、学ぶ順番としてはCoqが先のほうが良かったのかな?
でも、Coqだとどうにもモチベーションが…
あと、ついでに線形型も学びたかった……
Rustの所有権・借用・ライフタイムはほぼ理解できてるんでそれほど難しくはないだろうと…
まず、依存型で躓いてるんで線形型までたどり着いていない…
んー……一度に色々やろうとし過ぎか…(´・ω・`)
あの二つはプログラミング言語じゃなくて証明支援器だって聞いてるから…
オレは別にPCに証明問題を解くのを手伝ってもらいたいんじゃなくて、
従来の型システムを発展させた依存型とかを使ったより安全な
プログラミングを行うの方法が知りたいんだよって思って…
けど、学ぶ順番としてはCoqが先のほうが良かったのかな?
でも、Coqだとどうにもモチベーションが…
あと、ついでに線形型も学びたかった……
Rustの所有権・借用・ライフタイムはほぼ理解できてるんでそれほど難しくはないだろうと…
まず、依存型で躓いてるんで線形型までたどり着いていない…
んー……一度に色々やろうとし過ぎか…(´・ω・`)
612デフォルトの名無しさん
2018/06/19(火) 02:53:39.62ID:8GZLihdn Idris とかはどうなのよ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか… [BFU★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… [BFU★]
- 中国国営メディア「沖縄は日本ではない」… ★6 [BFU★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- バービー、 台湾有事の発言の波紋で「たまったもんじゃない」「高市さんに真意は聞きたい」「国民に向けて説明してほしい」 [muffin★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 中国高官と話す外務省局長の表情、やばい [175344491]
- 【高市速報】小野田キミ「中国依存はリスク」断交を示唆か [931948549]
- 日本政府「高市総理の発言は問題ないと伝え、中国総領事のSNS投稿は問題があると中国に伝えました😊」 [931948549]
- 【んな専🏡】なんG 姫森ルーナ(・o・🍬)総合スレ🏰【ホロライブ▶】
- 【速報】中国、高市の発言撤回を改めて要求 [834922174]
- 【悲報】高市早苗周辺「支持層が離れるので今更発言を撤回できない」 [935793931]
