[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 05/09 13:17 / Filesize : 218 KB / Number-of Response : 1023
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

次世代言語12 Go Rust Swift Kotlin TypeScript



1 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 09:38:15.76 ID:qg2ggPtj.net]
スレタイ以外の言語もok

前スレ
次世代言語11[Rust Swift TypeScript Dart]
https://mevius.5ch.net/test/read.cgi/tech/1528037607/

496 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 17:33:47.60 ID:yV15yOGY.net]
あーもう
どこの板にもこういうキチガイ湧くんだよな
煽りカスでどっちにも有益にならないから放置安定よ

497 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 19:13:52.55 ID:Df5F+309.net]
物欲はなくて支配欲だけがあるのが問題なんだろう
買いたい物がない人間が一体何のために利益を出すのか
益が少ない者を見下したり支配したりするためでしょ

498 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 19:22:52.13 ID:eTX7oAdY.net]
お前ら次世代言語の話をしなさいよ
俺はRockstarをお勧めするぞ
プログラムであり自己表現でもある

499 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 19:42:52.49 ID:eDBn37vJ.net]
言語の内容は一切しらないが
名前が商品っぽくてギーク臭がしないから、その言語ははやらないだろう

500 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 19:44:04.42 ID:eDBn37vJ.net]
とおもったらネタ言語だった

501 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 19:59:49.21 ID:zeY5m7dD.net]
だからPonylangが真の次世代だっつってんだろ

502 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 21:19:44.69 ID:jHvVDWmn.net]
Haskellのエラーモナドかましたリスト内包表記は難解すぎる

503 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:06:47.14 ID:GVyD60rv.net]
多言語を批判するならお互いが同じ例題でソース書き比べたらええやん
ずっとごちゃごちゃ言ってるやつってソースもごちゃごちゃしてそうw

504 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:09:18.66 ID:9WGuah8C.net]
言い出しっぺがまずやってみせて



505 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:14:55.65 ID:GVyD60rv.net]
>>492
多言語を批判なんてしてないから言い出しっぺではない傍観者だ

506 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:24:44.41 ID:9WGuah8C.net]
いや君の提案でしょ?

507 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:25:11.28 ID:uE0dE1bw.net]
>>491
書き比べはそれはそれでもめるんよ
言語ごとの推し抽象化手法(有り体に言えば得意分野)が違うから同じの書かせつつ公平にはしにくいし
オーバーラップする領域ではライブラリーのAPI叩くだけのHelloWorldレベルのコード比較に終始してしまう

508 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:29:16.57 ID:gNiJKIOF.net]
つまりパイソニップお手上げ降参状態ですよっと

509 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:50:48.50 ID:HPChxVcI.net]
Python嫌いってどういう層だよ

510 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 22:58:30.53 ID:GVyD60rv.net]
>>495
なるほどね触れた俺がアホだったわすまんなw
NG入れて見ないようにすればいいだけだしなw
読解力のないIQ低すぎる奴とは会話が噛み合わないから仕方ないなw

511 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 23:03:02.54 ID:gNiJKIOF.net]
というわけで多言語とか言ってる馬鹿 ID:GVyD60rv はNGっと

512 名前:デフォルトの名無しさん [2018/07/30(月) 00:09:51.52 ID:15o6QT6I.net]
なんでpythonの話になっとるんだ
rustの話が尽きたからか

513 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 00:20:26.08 ID:cSovQdPN.net]
批判っていうか評論も一つの作品だよな
漫画や小説なら良いが評論は悪いという価値観を押し付けるから揉めてるんじゃないか

514 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 00:42:35.61 ID:BCmT78P/.net]
拡張子htaみたいな事出来る言語ねーかな



515 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 21:32:39.35 ID:9zA5gDfM.net]
>>478
「|」をオーバーロードしてるライブラリはある。
https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/wordcount.py
俺は別に読みやすいと思わんが。

516 名前:デフォルトの名無しさん [2018/07/30(月) 22:36:49.52 ID:15o6QT6I.net]
数学やってりゃ分かるってのは高級言語にとって正当性の担保にならんと思うんだけど
pythonはスクリプトを書くためにあってアプリケーションを書くには向いてないよ

517 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 23:30:08.44 ID:BCmT78P/.net]
pythonはスクリプトやアプリケーションとかじゃなくてapiとかライブラリとかじゃな

518 名前:「か? []
[ここ壊れてます]

519 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 02:24:31.97 ID:6M1+k6px.net]
スクリプトは後で修正するためにある
正当性の担保ってのがなくても後で修正すればいいと思ってる
だからスクリプトはズル
本物のアプリケーションはズルをしない

520 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 06:32:08.41 ID:rMUR8HCB.net]
androidアプリ開発でGUデザインに拘りたいとしたら
どんな言語がいいでしょうか?

521 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 07:25:08.27 ID:HSKVxhV4.net]
ん?ユニクロをもっと安っぽくしたようなデザインにしたいってこと?

522 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 07:33:09.79 ID:UxY/lhlr.net]
https://twitter.com/kskexx/status/1023719574846373889
githubの分析だそうだけども
.netどこに行ってしまったん

523 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 07:35:04.61 ID:NvL3iNMe.net]
>>509
お前記事読んでないやろw

524 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 07:59:40.57 ID:ZEe/Gn0n.net]
>>507
Unity



525 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 08:15:32.70 ID:JoTrRiyA.net]
GUIライブラリに何を使うかによる

SDLってAndroidでもつかえたっけか?

526 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 12:04:21.71 ID:wLuD0qiK.net]
In our survey of 16,000+ npm users in January 2018, 46% of them reported using TypeScript.
https://twitter.com/seldo/status/1024052940355526656

527 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 12:16:30.29 ID:MCiT+aJj.net]
>>509
.NetのC#以外は死んでるようなものだし
C#も半端な位置で留まってるから話題にならんのだろ
他バッサリ切ってC#に注力すればいいのにな

528 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 12:35:27.84 ID:Y+ETzapn.net]
F#使いも生きてるぞ

529 名前:デフォルトの名無しさん [2018/07/31(火) 13:56:56.90 ID:zoworXJJ.net]
>>504
たしかに、そのとおりです

たとえば数学でいう直積(direct product あるいは cartesian product)の
プログラミング言語上の表現を、一般的には「タプル」と呼んでいる
もちろん ML や Haskell に代表される厳格な型システムを前提に設計された
言語の代数的データ型を持ち出すまでもなく、直積と直和の概念は
計算における数学上の概念の中で基本中の基本です

それにもかかわらず Python では、単なる不変(immutable)な配列に対して
公式文書でこともあろうか「タプル」と命名し、驚くなかれ「1要素のタプル」
といふ数学の概念を超越したリテラル構文を定義しちゃいました
世界的に普及している/していた言語は数多くありますが、こんな命名や
リテラル定義が存在するのは、後にも先にも Python だけ、唯一無二の存在です

まさに Python の設計哲学とは;
  スクリプト言語にとって数学なんてクソ
といふことなんでしょうね

530 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 14:34:58.99 ID:U3QRqLaV.net]
直積集合がタプルじゃなくて直積集合の要素がタプルな
んでもってn個の集合の直積を考える場合普通n=1は除外しない

531 名前:デフォルトの名無しさん [2018/07/31(火) 15:00:19.27 ID:zoworXJJ.net]
>>478
あのぅメソッドチェーンとは異なり、内包表記というのは
決して万能な道具ではないんですけど、ご存知ですか?

内包表記というのは、高階関数 map/filter とジェネレータという
三つの要素を簡潔に表現できる構文糖でしかありませんから、
内包表記では表現できない課題も数多く存在します
ですからたとえば Haskell では内包表記を提供する一方で、
ポイントフリーといふ関数を繋ぐ流れるようなスタイルでも書けます
つまり「メソッドチェーン vs. 内包表記」という対決の図式は成り立ちません

これでもまだ「リスト内包がわからんってわめき散らすの無知晒してるだけ」と
騒ぎたいなら、以下のお題(>>430-431)を内包表記だけで書いてみてください

 '-'.join(map(lambda x: str(x), reversed(sorted(a))))

>>478氏が無知でなければ、内包表記でサラッとエレガントなコードを書けますよね?
ちなみに以下のような三重にカッコが入れ子になった醜いコードは勘弁してくださいね

 '-'.join(str(x) for x in reveresed(sorted(a)))

532 名前:デフォルトの名無しさん [2018/07/31(火) 15:33:57.86 ID:zoworXJJ.net]
>>517
>n個の集合の直積を考える場合普通n=1は除外しない

ええ、それが Python 村の中では「普通」で常識なんですよね
でも Python 村から一歩外に出れば:
  n個の集合の直積を考える、ここで n>=2
が「普通」なんですけど、ご存知でしたか?

たとえば手元の教科書(*1)だと、直積は以下のように定義されています
・2つの集合の直積 A × B = { <x, y> | x <- A, y <- B }
・3つの集合の直積 A × B × C = { <x, y, z> | x <- A, y <- B, z <- C }
・4つの集合の直積も同様に定義される
この本では n=1 は定義されていないし、個人としても定義のしようがないと考えます
で、ML/Haskell/Erlang/Prolog といったタプルというデータ構造が存在する言語でも、
「普通」n=1の直積を除外しており、これが世間の常識です
ちなみに「Python村の常識、世間の非常識」といふ格言、聞いたことありませぬか?

ところで、もちろん内包表記はご存知ですよね?
知らないと>>478氏に「無知晒してる」と嗤われちゃいますよ

*1:論理と計算のしくみ
  https://www.amazon.co.jp/dp/4000061917/

533 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 16:01:29.91 ID:6M1+k6px.net]
n=1もあるしn=0もある
n=0は直積の単位元いわゆるunit
直和の単位元はbottom

534 名前:デフォルトの名無しさん [2018/07/31(火) 16:12:57.41 ID:zoworXJJ.net]
>>520
>n=1もあるしn=0もある
>n=0は直積の単位元いわゆるunit

たしかに Python 村の中では、n=0 も除外しないのが「普通」ですね

で、静的型付け言語の ML/Haskell では単位型(unit)として定義され
タプル型とは明確に区別されていますし、動的型付け言語では
nil という特別なアトムで表現することが多く、これが世間の常識です
ちなみに「Python村の常識、世間の非常識」といふ格言、聞いたことありませぬか?

ところで、もちろん内包表記はご存知ですよね?
知らないと>>478氏に「無知晒してる」と嗤われちゃいますよ



535 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 17:08:51.40 ID:LX5aJa12.net]
>>516
なんだか随分と力んでいるみたいだけれど

> それにもかかわらず Python では、単なる不変(immutable)な配列に対して
> 公式文書でこともあろうか「タプル」と命名し、驚くなかれ「1要素のタプル」
> といふ数学の概念を超越したリテラル構文を定義しちゃいました
> 世界的に普及している/していた言語は数多くありますが、こんな命名や
> リテラル定義が存在するのは、後にも先にも Python だけ、唯一無二の存在です

いや、そういうことを言い出せば同じ引数の値で呼び出しても返す値が同じになるとは限らないCなどの「関数」“function”は数学における関数の概念とは全く違う破廉恥極まりない命名だとなるよ
そもそも手続き型プログラミング言語やオブジェクト指向プログラミング言語での「変数」“variable”と呼ばれているものもも数学の変数とは全く異なる
(例えば、それらの言語で書かれたプログラムの検証を考えるとその問題があからさまになる)

つまりプログラミング言語での用語は数学の用語を借りて使ってはいるが数学でのその用語の表していた概念を尊重しているとは限らないということだ
そういう例、つまり数学用語を数学での概念を尊重しない形でプログラミング言語の世界で借用してしまっている例は探せばいくらでもあるだろう

536 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 17:40:46.67 ID:vAluDZRs.net]
そもそも = が代入って時点で数学と違うんだから
いちいち「厳密な定義がー」いう方がどうかしてる。

537 名前:デフォルトの名無しさん [2018/07/31(火) 17:55:08.00 ID:zfxDeDFf.net]
普通にWikipediaでタプルをしらべたら一要素のタプルの事をシングルというと
書いてあるのだがwww

538 名前:デフォルトの名無しさん [2018/07/31(火) 18:08:24.59 ID:zoworXJJ.net]
>>522
数学の定義や数式を計算機上で実行するには、
必然的に「解釈」という(あるいは「評価」とも呼ばれる)プロセスを伴いますから、
数学の概念とプログラミング言語との間に乖離(かいり)が存在するのは一般論ですし、
その為に計算機工学という分野で研究成果が積み重ねられてきました

もちろんこうした乖離は一般論ですから、例を探せばいくらでも挙げられるでしょう
たとえば「n個の直積を考える」場合に数学では n=1 や n=0 を除外しないモデルを
構築することは可能ですが(>>517,521)、計算機工学の研究成果を元に設計された
言語だと「n個の集合の直積を考える、ここで n>=2」が暗黙のうちに認知されています
(なぜなら n=1 または n=2 の直積は、一般的には形式的に定義できない為)

ところが、こうした計算機工学の成果である n>=2 を無視し、
そんなのどうでもいいとばかりに「単なる不変な配列をタプルと命名する(>>516)」といふ
深淵の淵へ自ら飛び込んだ稀有な例が Python といふ次世代言語なんですよ

もしも「他のあらゆる言語では計算機工学の常識に沿って設計しているのに、
ある特定の言語ではそれを無視している」という具体例があれば、ご教示願います
たとえば「Python におけるタプルの命名」は、他の言語には見られない唯一無二の例です

539 名前:デフォルトの名無しさん [2018/07/31(火) 18:21:46.76 ID:zfxDeDFf.net]
A = { x | x <- A}
A × B = { <x, y> | x <- A, y <- B }
普通に定義できるがwww

540 名前:デフォルトの名無しさん [2018/07/31(火) 18:36:17.24 ID:zoworXJJ.net]
>>478
>それはそれとしてPythonはもっと関数を横に繋げられるようにしてくれ
>Elixirのパイプ演算子みたいな感じでさあ

いや、新たにパイプ演算子みたいな構文を追加しなくても、
オブジェクト指向言語の Python であれば、メソッドチェーンで実現できるよ
だって、Python を除く今時のオブジェクト指向言語では実現できていますから
その具体例が >>430 のリンク先のブログ主様が書いた簡潔なライブラリです

問題は、「なぜこれをやろうとしないのか?」という点です
もちろんライブラリの後方互換性は失われますが、
python2 から python3 で致命的な「後方互換性の断絶」を断行したのが
Python ですから、一貫性のあるAPIを提供するライブラリへの刷新もできたはず

さらに根本原因にさかのぼれば、「なぜ最初から一貫性のあるAPIを設計しなかったのか」
といふ疑念に突き当たります
だって、Python を除く今時のオブジェクト指向言語では設計できていますから

最後に背景原因を考察すると、Python 作者のGuido氏が:
  API の設計において一貫性などはクソ
と考えていたのか、それとも:
  オブジェクト指向が流行っていたから行き当たりばったりに設計した、
  今は後悔している
と考えているのか興味深い

541 名前:デフォルトの名無しさん [2018/07/31(火) 18:45:34.71 ID:zoworXJJ.net]
>>526
>A = { x | x <- A}

えぇとぉ、{ x | x <- A} というのは単に集合 A を内包的に定義してるだけですから、
それは「1個の集合Aから構成される直積」ではなく単に「単純集合A」を定義してるだけです

あぁそうか、フェイトニスタには内包表記うんぬん以前に、数学の教養が欠けているのですね
ついうっかりしておりまして、大変失礼をば致しますた

542 名前:デフォルトの名無しさん [2018/07/31(火) 19:00:43.13 ID:zoworXJJ.net]
うっかりミスを訂正:
  >>525
  X:>(なぜなら n=1 または n=2 の直積は、一般的には形式的に定義できない為)
  O:>(なぜなら n=1 または n=0 の直積は、一般的には形式的に定義できない為)

543 名前:デフォルトの名無しさん [2018/07/31(火) 19:04:21.79 ID:zfxDeDFf.net]
定義するのに集合と同じ定義では同じでは駄目というルールはないから間違っては無いwww
ちなみにn=0の直積は1元集合として定義できるとWikipediaにかいてあるwww

544 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 19:12:42.47 ID:x816LWzK.net]
ウィキペに書いてあるとか言っちゃう人って・・・



545 名前:デフォルトの名無しさん [2018/07/31(火) 19:36:15.75 ID:zfxDeDFf.net]
正式な定義だと、直積の要素はペアの中にペアがある構造じゃないと駄目www
A × B × C = { <x, y, z> | x <- A, y <- B, z <- C }
↑の定義があってるのは日本のWikipediaだっけでしたwwww
これを使うにはn-fold Cartesian productという直積を拡張した奴じゃないとだめでした残念www
とくにn=1の時はそのままA=Aとちゃんとした本に書いてあるwwww

546 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 19:38:51.12 ID:xC1/ia91.net]
今までの流れをまとめるとpythonはクソ。
TypeScriptが最強。という理解でよいでふか?

547 名前:デフォルトの名無しさん [2018/07/31(火) 20:41:56.45 ID:CfkG900T.net]
rustが最強
が正しい

548 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 21:51:57.40 ID:vpErkqT1.net]
メソッドチェーンでもリスト内包でも異常なまでのテンポラリ変数嫌悪を感じるのだが、
無理にそんな書き方するくらいならテンポラリ変数使えや。

549 名前:デフォルトの名無しさん [2018/07/31(火) 22:05:54.62 ID:CfkG900T.net]
メソッドチェーンは無理なく書けるでしょ
変数はバグの餌だから忌諱するのは当然

550 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:09:04.65 ID:4i5flEMB.net]
変数があって嬉しいのはデバッガでステップイン実行するときだけだな
そろそろステップの概念を卒業した新発想のデバッガが必要な時期にきてると思う

551 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:10:09.78 ID:/w6/tE8P.net]
一時的な内部処理でまでステートを毛嫌いする純粋病の関数型信者と似ている

552 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:14:45.36 ID:hpcufxDD.net]
お前らみたいなドカタなら兎も角、数学者がn=0やn=1に自然に拡張できる定義をn>=2に限定するわけないじゃん
ドカタここに極まれりだな

553 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:17:04.70 ID:10MH4XIN.net]
メソッドチェーンってワンライナーと同類だろ

554 名前:デフォルトの名無しさん [2018/07/31(火) 22:23:11.93 ID:CfkG900T.net]
プログラマならバグの素を毛嫌いするのは当たり前じゃん
あくまでリーダビリティを損ねない範疇でだけども



555 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:24:35.12 ID:omk/SwPI.net]
>>540
途中でクラスが変わるようなメソッド呼び出しを10個も20個もチェインするヤツは知らんが
コレクションに対する操作を数個チェインするぐらいは別に普通じゃね

556 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:27:24.42 ID:10MH4XIN.net]
>>539
ちゃうやろおっさん
型理論的にはn>=2に拡張するために持ち出すのがpair
なのでn=0,1にpairを持ち出す必要がない
別の言い方をすると型理論的にはAと<A>は同じ
そこを区別するのがアドホックにpairを導入した言語ということ
組み込みの土方より

557 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:35:12.06 ID:omk/SwPI.net]
>>541
たとえばコレクションのフィルター関数を実装するようなときに
一時的にミュータブルなコレクション作ってループ回して最後にイミュータブルにして返せばいいようなものを
最初の要素が条件満たさなかったらそれを落とした新しい不変コレクション作って返す関数の再帰で書くようなゴミが純粋病

558 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:37:48.27 ID:vpErkqT1.net]
>>541
バグの元の一番大きなものは可読性のなさだぞ。
測りにくいものを一切無視するのがこの手の輩のダメなとこだな。

559 名前:デフォルトの名無しさん [2018/07/31(火) 22:39:01.83 ID:CfkG900T.net]
>>544
なにそれこわい
それってなんというテクニックなの?

560 名前:デフォルトの名無しさん [2018/07/31(火) 22:39:55.17 ID:CfkG900T.net]
>>545
だから可読性を損ねてはならないって書いてるじゃん
俺のレスは可読性低かったか?

561 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:43:24.72 ID:10MH4XIN.net]
>>542
コレクションの操作ってのが具体的にどういうのかしらんけど
(おもちゃのような例は勘弁)
初見のコードだと返り値が何なのか副作用のありなしもよくわかんないのが嫌い
組み込み屋なんでそういうのに神経質なんですわ

562 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:46:40.79 ID:hpcufxDD.net]
>>543
お前みたいなドカタには同じに見えるんだろうけど
違うものだよ

563 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 22:58:39.97 ID:omk/SwPI.net]
>>548
おもちゃのような例とやらがなんだか知らんが
「配列にフィルタかけてマップしてソート」みたいなのはメソッドチェインで書くのが普通だし
プロダクトコードで頻出するし
言語組み込みとか標準ライブラリの範囲なので仕様知らないのは知らないほうが悪いで終了

564 名前:デフォルトの名無しさん [2018/07/31(火) 23:33:40.73 ID:CfkG900T.net]
組み込み屋だからコードが読めないって言い分が通用するのか



565 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 03:26:51.13 ID:KaW6n03Q.net]
b=a.filter(hoge).sort(piyo)はaが変化しないけど
b=a.sort(piyo).filter(hoge)はaが変化するJavaScriptとかもあるし
気持ちがわからんでもない

566 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 04:53:24.11 ID:52qTUS9q.net]
メソチェ嫌い

567 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 05:46:47.82 ID:Lge0gQj8.net]
c=a
b=a.sort(piyo).filter(hoge)
a=c

568 名前:デフォルトの名無しさん [2018/08/01(水) 06:24:23.31 ID:KofKD7jP.net]
jsのsortはソート結果を戻り値でも返すからよくないんだよね
rustは関数が破壊的な操作をするか一目で分かってよいんだよね

569 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 07:33:14.80 ID:4GZUmxRn.net]
関数の副作用や純粋性が気になるなら
関数型の言語さわるのも良いぞ

F#は宗教論争に発展せず
現場でも実用十分的

570 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 08:04:53.43 ID:mJtUlzgh.net]
>>552
マジかー。副作用あるかないかわかるようにしてほしいわ

571 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 08:39:51.67 ID:hzuJqRKu.net]
JavaScriptはうんこだから仕方ない

572 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 08:54:45.09 ID:/d6Lb+hA.net]
>>550
> 言語組み込みとか標準ライブラリの範囲なので仕様知らないのは知らないほうが悪いで終了

なんでそこで特定の言語前提になってんの?w
標準の範囲なら百歩譲ってありだけど標準だけのデザインという保証はないやろ普通
あといちいちAPIリファレンスで確認しないと使えないってのは言語の可読性低いとも言えるわ

573 名前:デフォルトの名無しさん [2018/08/01(水) 09:19:02.07 ID:Lq6vBG3T.net]
ドキュメント読まずにコード書くプログラマー降誕

574 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 09:29:11.08 ID:IFtOcB8Z.net]
批評家が口だけで問題解決することを理想としているように
可読性は目だけで解決するのが理想的である



575 名前:デフォルトの名無しさん [2018/08/01(水) 10:27:41.74 ID:Lq6vBG3T.net]
そしてハンガリアン記法が産まれた

576 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 10:54:20.08 ID:hzuJqRKu.net]
>>559
土方は古代言語をメモ帳で書いてるのか……

写像や部分集合、ソートなんぞはほとんどの言語で標準で用意されてるし
IDEなりプラグイン入れたエディタならリファレンスはマウスオーバーするかショートカット叩くだけだよ

577 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 11:14:28.61 ID:+WQ1j7Jt.net]
やっぱりCOBOLなんだよなあ

578 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:15:44.23 ID:zZ0QT3av.net]
>>523
> そもそも = が代入って時点で数学と違うんだから

それは単なる記法上の問題であって本質じゃない

C一族みたいないい加減な言語でなくAlgolやPascalのなどの正統派Algol系言語のように代入を表す記号を “:=” で書く言語であっても変数の概念が数学のそれと全く違うという問題はCなどでの変数と同じ
見掛け上の記号の使い方がいい加減という問題と、ある用語で表される概念がいい加減(間違っている)という問題とはレベルが全く違う

579 名前:デフォルトの名無しさん [2018/08/01(水) 22:27:10.95 ID:KofKD7jP.net]
それが何レベルなのか知らんけどどうでもいいじゃん
数学とプログラミングは別物なんだし

580 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:44:31.92 ID:vVTk17fP.net]
>>565
タプルがどうとかも十分同じレベルだろ。
そんなところで誤解して問題起こす奴なんて代入以上にいねーわ。
自分の理解の都合でイチャモンつけてるだけってことにそろそろ気づけや。

581 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 23:08:34.73 ID:KaW6n03Q.net]
>>554
c=aではオブジェクトは作られないので、そうやってもaは変化する

更に言うと
c=a
b=c.sort(piyo).filter(hoge)
でaが変化する

582 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 00:36:50.69 ID:RmPassIF.net]
こういう話を見ると言語としてイミュータブルな変数しかない言語が良い気がしてくる。

583 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 03:06:06.93 ID:68/YZkTI.net]
「いふ」とか言っちゃうイタイ奴にろくなのはいないな

584 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 03:23:08.65 ID:7JMdFE06.net]
>>518
いつ誰が「メソッドチェーン vs 内包表記」なんて下らん比較したんだよ

内包表記は内包表記で便利だっつっただけで、
メソッドチェーンつーかポイントフリースタイルが内包表記があれば不要なんて言った記憶は少なくとも俺にはないな

つーか>>478下段、まさにPythonにはポイントフリースタイル実現する記法が足りねえっつってんのが読み取れねえのか?

今時エセ歴史的仮名遣いで書き込むクルクルパーは国語の勉強しなおした方がいいぞ



585 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 03:24:30.81 ID:uTIVZVJH.net]
ずっと数学言ってるやついい加減うぜえわ
別スレ立ててそっちでやれやボケが

586 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 06:18:26.62 ID:iydYt4gP.net]
JavaScriptのsortとreverseが破壊的なのがぱっと見わからないのも、
JavaScriptの命名規則がうんこなだけでメソッドチェーン自体の良し悪しとは関係ない

587 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 06:58:50.64 ID:NbZtWKau.net]
関数合成大好きな関数型バカがメソッドチェーン腐すの、マジ笑えるww

588 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 08:25:49.67 ID:j9EqWGQJ.net]
>>573
こればっかりはなぁ。後発の言語は、副作用有無が明示されるようになってほしい。命名規則とか人間が頑張るタイプはやめて

589 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 09:00:45.23 ID:St12vf3Y.net]
やはりRustだな

590 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 09:09:27.15 ID:eWP0KV4o.net]
webサービス作るとき。というかrdbとの連携って静的言語より動的言語のほうが向いてる気がするんだけど、そんなことはない?

591 名前:デフォルトの名無しさん [2018/08/02(木) 13:33:10.21 ID:2LzP698W.net]
そんなことなかっぺ

592 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 21:52:10.29 ID:yHWyeNWP.net]
TypeScriptは事実上死んだだろ

593 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 21:54:23.55 ID:RP1FF5pC.net]
>>579
>>513

594 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 21:55:36.74 ID:0KRWeg2T.net]
>>579
新しいのが出たんだが



595 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 22:57:15.05 ID:U+SwOe4H.net]
typescriptなしにjavascriptを書こうとは思わないからな

596 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 23:26:38.99 ID:xmgsCqay.net]
頑なに副作用嫌ってる人意味分からん
java.awt.Graphi






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<218KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef