[過去ログ] 「数学」をプログラミングするには (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
56
(3): デフォルトの名無しさん [] 2024/03/22(金) 15:38:04.26 ID:m8Pakijg(1) AAS
現代数学は集合と写像の言葉で書かれている
写像は関数の一般化だからC言語やHaskellなどの関数型言語では数学をプログラミングできない
RubyやPythonなどにはsetやmapといった機能があるから
これで数学をプログラミングできると思われる
57: デフォルトの名無しさん [sage] 2024/03/22(金) 15:41:43.35 ID:BpbPyhcF(1/2) AAS
厨二の夢だったのさ
58: デフォルトの名無しさん [] 2024/03/22(金) 22:21:33.16 ID:LL1SYasV(1/2) AAS
>>56
それは違う
数学ができるプログラミング言語のコンパイラをCで書くことができる
そもそもすべてのプログラム言語はチューリング完全だからCで書けてハスケルに書けないなどということは無い
59: デフォルトの名無しさん [sage] 2024/03/22(金) 22:53:17.07 ID:BpbPyhcF(2/2) AAS
所詮プログラムは人が書くもの
60
(1): デフォルトの名無しさん [sage] 2024/03/22(金) 23:30:06.22 ID:CJ8mvd1G(1) AAS
>>56
それ逆だね
mapは関数型言語で登場した
そのRubyやPythonといったスクリプト言語は後からそれを導入した
61: デフォルトの名無しさん [] 2024/03/22(金) 23:57:05.24 ID:LL1SYasV(2/2) AAS
はあ??
マップは車窓だろ!!
62: デフォルトの名無しさん [] 2024/03/23(土) 00:02:01.40 ID:0VbIgFfj(1/2) AAS
マップは関数の集合直積に過ぎない
c言語でも有限アルゴリズムで数学プログラミングが出来る
パイソンは構文をパースできるがスクリプト言語ゆえ数学プログラミングは無理
63
(1): デフォルトの名無しさん [] 2024/03/23(土) 00:32:34.16 ID:0VbIgFfj(2/2) AAS
>>60
跡から登場したってことはRubyやPythonのほうが優れているってことやろが
64: デフォルトの名無しさん [sage] 2024/03/23(土) 01:14:32.77 ID:O64Y227M(1/5) AAS
まともなプログラマーがスクリプト言語でプログラミング開発することはない
スクリプト言語はスクリプトを書く程度のことをするだけのおもちゃ
65: デフォルトの名無しさん [] 2024/03/23(土) 04:20:19.88 ID:rvJB/m9a(1) AAS
CやPYTONはスクリプト言語だから単純なことしかできない
66: デフォルトの名無しさん [] 2024/03/23(土) 04:41:11.89 ID:IdPmAPnB(1) AAS
スレタイ
集合と写像が数学の基本らしい
写像というのは関数の一般化だからCは関数言語だから数学できないということになる
Javaのmainは写像だからJavaは数学できる。Rubyにも写像ある
67: デフォルトの名無しさん [] 2024/03/23(土) 07:48:29.25 ID:LhcvAfdM(1) AAS
数学に副作用はないがモナドは副作用があるのでハスケルでは数学はできない
68: デフォルトの名無しさん [] 2024/03/23(土) 12:22:12.37 ID:g/HfMmmn(1/9) AAS
>>56
Cでは関数の引数として関数ポインタを渡せるから、map関数を簡単に自作できる。
69
(1): デフォルトの名無しさん [sage] 2024/03/23(土) 12:23:33.26 ID:TQ7fzTlo(1/3) AAS
空論、絵に描いた餅、機械語にだってできるだろwww
70
(3): デフォルトの名無しさん [] 2024/03/23(土) 12:47:39.65 ID:g/HfMmmn(2/9) AAS
>>69
機械語に識別子はないからできないだろ。Cでは長さnの配列aの各要素に関数fを適用した結果を
配列bに格納する関数 map(f, a, n, b) を簡単に自作できる。
71: デフォルトの名無しさん [sage] 2024/03/23(土) 13:55:22.78 ID:TQ7fzTlo(2/3) AAS
C言語は機械語にアセンブルされて実行されるんだよ
72
(4): デフォルトの名無しさん [sage] 2024/03/23(土) 14:11:05.89 ID:O64Y227M(2/5) AAS
>>70
普通mapは配列に対してではなく
もっと一般的にイテレータに対して適用
結果もイテレータとする

その結果を例えばfor文で使う場合
わざわざ結果を配列に入れても無意味だったことになるからだ
mapを多段にした使った場合も同様で中間結果配列は無意味になる
だからmapの入力も出力もイテレータが使われる
73
(1): デフォルトの名無しさん [] 2024/03/23(土) 14:44:44.84 ID:g/HfMmmn(3/9) AAS
>>72
それは実装上の効率化のための操作で、本当の写像ではない。本当の写像は配列から配列を作る。
C#で言えばSelectしただけでは写像にならず、ToArrayしないと写像にならない。
74
(3): デフォルトの名無しさん [sage] 2024/03/23(土) 15:36:22.16 ID:O64Y227M(3/5) AAS
>>73
配列から配列なんて嘘つきだな
例えば写像の入力を数学でもよくある自然数とする
これは配列では表現できない
イテレータならば表現できる
出力も同様で配列は不可能だがイテレータなら可能
75: デフォルトの名無しさん [sage] 2024/03/23(土) 16:14:29.71 ID:TQ7fzTlo(3/3) AAS
そもそもそんなレベルの話をしてるんではないが
76
(1): デフォルトの名無しさん [] 2024/03/23(土) 16:43:39.42 ID:g/HfMmmn(4/9) AAS
>>74
自然数は要素数が無限大の配列だが、コンピュータではメモリが有限なので表現できないだけ。
イタレータによる遅延評価は問題を先送りしただけで、本当の写像である配列を作ろうとすると
メモリが途中で尽きて作れない。
77
(1): デフォルトの名無しさん [sage] 2024/03/23(土) 17:05:10.16 ID:O64Y227M(4/5) AAS
>>76
配列なんていう間違った考えをするからそのように失敗する
正しくイテレータと捉えれば自然数もそこからの写像も扱える
78
(2): デフォルトの名無しさん [] 2024/03/23(土) 17:30:00.10 ID:g/HfMmmn(5/9) AAS
>>77
イタレータは配列の各要素を走査しながら操作する道具、つまり写像を逐次的に作っていくための操作手順を表したものに過ぎない。
79: デフォルトの名無しさん [sage] 2024/03/23(土) 18:46:13.42 ID:O64Y227M(5/5) AAS
>>78
イテレータとは何かを学び直しなさい
それは配列に対するイテレータ
イテレータに配列なんていうものは必要ない
80: デフォルトの名無しさん [sage] 2024/03/23(土) 19:02:25.28 ID:/RLS51iM(1) AAS
イテレータなんぞプログラミング側の都合でしかないやろw
数学のどこにイテレーションって概念があるの?
もとは集合の話だっけ? 集合のどこにイテレータ出てくる?
1-
あと 922 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.024s