プログラミングは数学ではない
プログラミング言語は、数学ではないし、もちろん自然言語でもないので、その中で使われる記号の意味が数学や自然言語と異なっていたとしても何ら問題はありません。
プログラムはコンピュータに対する命令の羅列にすぎません。そして、プログラミングで使われる記号の意味は、そのプログラミング言語の作者が、「この記号はこういう命令として解釈しますよ」と定義したものに過ぎないので、数学的な意味とも自然言語的な意味ともなんの関係もないのです。
もちろん、数学的な計算を行うプログラムを作るなら数学に関する知識も必要でしょうが、プログラミング自体は命令文を順番に書いていくだけなので、数学の才能も、数学の知識も必要はありません。数学とプログラミングは別のものなのです。
歴史的にみて、当初は数学的な計算にコンピュータを利用することが多かったため、世間では数学とプログラミングに何か関係のあるようなことのように思われていますが、実際はあまり関係ないというのが実態です。
a = a + 1; /* って違和感あるはずなのに */
数学では「なんとかなのに」という言い方で数学とプログラミングが何か関係あるような言い回しには違和感を感じます。
大体、プログラミング言語の中での記号の意味と他の世界での意味が違うのがおかしいなどと言い出したら、プログラムなど組めないですよね。
プログラミングできる人とできない人との間の深い溝
プログラムはコンピュータに対する命令の羅列にすぎません。そして、プログラミングで使われる記号の意味は、そのプログラミング言語の作者が、「この記号はこういう命令として解釈しますよ」と定義したものに過ぎないので、数学的な意味とも自然言語的な意味ともなんの関係もないのです。
もちろん、数学的な計算を行うプログラムを作るなら数学に関する知識も必要でしょうが、プログラミング自体は命令文を順番に書いていくだけなので、数学の才能も、数学の知識も必要はありません。数学とプログラミングは別のものなのです。
歴史的にみて、当初は数学的な計算にコンピュータを利用することが多かったため、世間では数学とプログラミングに何か関係のあるようなことのように思われていますが、実際はあまり関係ないというのが実態です。
a = a + 1; /* って違和感あるはずなのに */
でまともに数学を習った人ならつっかかるはずだし、実際つっかかるなのに、ほとんどの言語が代入演算子として=を採用しているのはなぜなのだろう?そういうわけで、私は「a = a + 1;」に対しては何のつっかかりも違和感も感じないのですが、むしろ、
数学では「なんとかなのに」という言い方で数学とプログラミングが何か関係あるような言い回しには違和感を感じます。
大体、プログラミング言語の中での記号の意味と他の世界での意味が違うのがおかしいなどと言い出したら、プログラムなど組めないですよね。
プログラミングできる人とできない人との間の深い溝
プログラムはなぜ動くのか 第2版 知っておきたいプログラミングの基礎知識 著者:矢沢 久雄 価格:2,520円 日経BP社 by Amalink |
[1369] Posted by kagahiro at 2009/07/10 19:06:13
オープン | 1 point | Link (1) | Trackback (1) | Comment (0)
オープン | 1 point | Link (1) | Trackback (1) | Comment (0)
キーワード
プログラミングは数学ではない 関連リンク
プログラミング | |
プログラミングとは、コンピュータが情報処理を行うための動作手順を、プログラム言語を用いて命令形式で記述することである。コンピュータはプログラム言語で記述されたプログラムを直接理解することはできないので... |
プログラミングは数学ではない トラックバック
トラックバックURL :
Linked from マークジェイコブス 通販 : マークジェイコブス 通販 at 2013/04/23 22:10:39 | |
プログラミングは数学ではない |
プログラミングは数学ではないへのコメント
アクセスランキング
今日のアクセスランキング TOP 10
- 完全無料のMT4向けナンピンEA「Nanpin K(ナンピンケイ)」 (7 PV)
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (6 PV)
- DECOLOG(デコログ) (2 PV)
- 「Repeat K」高値安値の中間レートを基準に逆張りポジションを持つMT4向けリピート系(ナンピン)無料EA #自動売買 (2 PV)
- 裁量トレードを半自動化する無料のMT5向け裁量トレード支援ツール(EA)「PositionKeeper MT5」 #FX (2 PV)
- Google News (グーグルニュース)日本版 (2 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (1 PV)
- Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (1 PV)
- Google 検索(www.google.com)英語版が表示できるURL (1 PV)
- [Perl]UTF-8でエンコードされた英数字の全角半角変換を行うコード (1 PV)
今月のアクセスランキング TOP 10
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (862 PV)
- Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (169 PV)
- 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (110 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (80 PV)
- 完全無料のMT4向けナンピンEA「Nanpin K(ナンピンケイ)」 (70 PV)
- [FX]高値更新・安値更新でエントリー、MT4向け無料スキャルピングEA「1Scalper」#システムトレード (65 PV)
- SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (59 PV)
- Google News (グーグルニュース)日本版 (58 PV)
- 裁量トレードを半自動化する無料のMT5向け裁量トレード支援ツール(EA)「PositionKeeper MT5」 #FX (53 PV)
- [Perl]メールフォームCGIの作り方 (51 PV)
アクセス統計
ディレクトリ
関連サイト