ノート:関数型プログラミング
表示
過去ログ一覧 |
---|
|
歴史の節での見出しをどうすればよいのか
歴史の節を執筆しています。その中で、いくつかの時代に分けて見出しを付けたいのですが、そのやり方に悩んでいます。現在は Hudak 1989 を参照しており、これが前提になっています。
内容 | ラムダ計算について | LISP について | ISWIM について | APL について | FP について | 問題点 |
---|---|---|---|---|---|---|
1 | 1930 年代 | 1950 年代 | 1960 年代 | 1960 年代 | 1970 年代 | 重要な出来事が強調されない。年代を跨ぐ記述が起こり得るため、その時にどうすればいいのか分からない。ただし、プログラミング言語界隈は変化が早いため、出来事が始まった年を使えば問題ないかもしれない。 |
2 | ラムダ計算 | LISP | ISWIM | APL | FP | 言語で分割すると、 LISP などは開発が長期間に渡っているため、記述が時系列順にならない可能性がある。 Hudak 1989 は、この形式であるため、これを参照する限りは問題が起こらないが、別の出典を使うときに言語の分類などの微妙な問題が起こる可能性がある。 |
3 | コンピュータ以前 | ラムダ計算以降 | LISP 以降 | LISP 以降 | ISWIM 以降 | 独自研究である。その期間に起こった出来事ではなく、直前に起こった出来事に見出しが依存してしまう。 |
4 | ラムダ計算の登場 | LISP の登場 | ISWIM の登場 | ISWIM の登場 | FP の登場 | 独自研究である。重要な出来事が強調される。案 3 での問題は起こらない。 |
私としては案 1 か案 4 を選びたいと思います。取り敢えずは案 1 にしています。--Hexirp(会話) 2021年3月14日 (日) 13:27 (UTC)
出典が明示されていない記述の追加について
利用者:82chidnoels(会話 / 投稿記録 / 記録) さんによって行われた一連の編集 (Special:Diff/83712225/87264028) ですが、出典が明示されていない記述が大幅に増えております。方針「五本の柱」と方針「検証可能性」とガイドライン「出典を明記する」に照らし合わせて望ましくない変更であるため、内容を Special:Permalink/83712225 にまで差し戻すことを提案します。 -- Hexirp(会話) 2021年12月30日 (木) 12:47 (UTC)
- コメント 非専門家なので一旦賛否は避けますが、出典付き記述も微妙に表現が変えられている点がとても気になっています。例えば冒頭の「関数型プログラミング言語」について「本間, 類地 & 逢坂 2017, p. 3」を引いて、変更前は「関数型プログラミングを推奨しているプログラミング言語」から、変更後は「このスタイルに準拠した言語」(※このスタイル=数学的な関数の適用を中心としたスタイル)と変更されています。この出典が手元にあるわけではないので確認したいんですが、この変更は許容されるレベルのものなのでしょうか?一般論として「推奨」と「準拠」では厳しさに差があると思うのですが。最悪パターンとして、変更前もしくは後の執筆者が、出典の中身を一切確認せず出典として載せており、出典になっていることが嘘である状態になっていないかを、一番危惧しています。--青子守歌(会話/履歴) 2021年12月30日 (木) 14:27 (UTC)
- 「本間, 類地 & 逢坂 2017, p. 3」の所だけなら技術評論社のページのサンプルで確認できます。「を推奨している」から「に準拠している」への変更については青子守歌さんに同意します。やはり、「推奨」と「準拠」ではニュアンスが違いすぎて許容されないと思います。なお、余談ですが、当時の私は「関数型プログラミングは数学的な関数を利用するスタイルである」と「数学的な関数を利用するのを推奨するのが関数型プログラミング言語である」という旨の記述を組み合わせて「関数型プログラミング言語は、関数型プログラミングを推奨しているプログラミング言語である」というようにしたのだと思います。 -- Hexirp(会話) 2021年12月31日 (金) 04:04 (UTC)
- サンプルのリンクありがとうございます。確認しました。「一般に関数型プログラミング言語と呼ぶときは、数学的な関数の利用を推奨しているプログラミング言語を指します」と書かれている以上、元の記述が正しく、変更後は誤りであると考えざるを得ませんね。他にも同様に出典そのままで変更された記述が多くあることを考えると誤りがたくさん残っている可能性を否定できません。誤りのあるかもしれない状態を放置するわけにはいかないことと、出典を示す義務を負うのは、書き加えようとする側であることも考慮して、一旦全て差し戻すことに賛成します。差し戻し後に、改めて加筆側の@82chidnoelsさんによって正しく書き直されるべきと思います。--青子守歌(会話/履歴) 2021年12月31日 (金) 05:56 (UTC)
- 「本間, 類地 & 逢坂 2017, p. 3」の所だけなら技術評論社のページのサンプルで確認できます。「を推奨している」から「に準拠している」への変更については青子守歌さんに同意します。やはり、「推奨」と「準拠」ではニュアンスが違いすぎて許容されないと思います。なお、余談ですが、当時の私は「関数型プログラミングは数学的な関数を利用するスタイルである」と「数学的な関数を利用するのを推奨するのが関数型プログラミング言語である」という旨の記述を組み合わせて「関数型プログラミング言語は、関数型プログラミングを推奨しているプログラミング言語である」というようにしたのだと思います。 -- Hexirp(会話) 2021年12月31日 (金) 04:04 (UTC)
- > 関数
func
は参照透過であり再帰を用いており、その再帰関数は二項演算子-
を引数に取っている高階関数になっている。-
は第一級関数と同等である。再帰での0
とそれ以外の分岐および停止性問題はパターンマッチングで解決されている - という記述が追加されていますが、funcの引数に渡しているのは
n - 1
であり関数でないので明らかな誤りですね。「停止性問題」も何の脈絡もない言葉のため、正確性に問題があるというレベルではなく、もはやワードサラダの状態です。差し戻しに賛成します。--Fumiexcel (会話|履歴|メール) 2022年1月5日 (水) 06:17 (UTC)