「プログラミング言語について」について
英語不得手な私としてはこの記事で延々と聞かせられる「愚痴」に深く同情はするが,しょせん「愚痴」は「愚痴」でしかない。
ちょうど「小学生の学校教育カリキュラムに『プログラミング』を導入する」などという頭の悪い教育政策を聞かされた頃だったので反発する意味で書いたのだが
日本語や英語を習得するのに文法から習う人はいないだろう(日本の学校教育は違うかもw)。 たくさんの言葉を聞いて話して書いて読んで,そうして少しずつ語彙を飲み込んでいって習得していくものだ。
プログラミング言語は違う。 プログラミング言語で決定的に重要なのは言語仕様つまり文法である。 何故ならプログラミングとは,究極的には,ゼロ知識から論理を積み上げていくことであり,プログラミング言語はそのための道具であり手段なのだ。
が主張の全てである。
「プログラミング言語について」で唯一面白かった指摘は,プログラミング言語には,言語仕様とは別に暗黙的に決められているルールというか規範のようなものが存在するという点。それが「名前」である。この点については日本語圏でも参考になるページが色々ある。たとえば以下のページ。 実は Go 言語にも「名前」に関する議論がある。たとえば
のような話だが,ここでも英語の語彙が暗黙的に組み込まれている(ということに今気がついた)。
つまり,英語圏で作られたプログラミング言語では暗黙的に英語の語彙を要求しているのである。こればっかりはいくらプログラミングを勉強しても身につかないし,英語を無視して作ったものはまさに「中国語の部屋」と同じく機械的なものにならざるを得ない。 (言い換えれば日本語のプログラミング言語は日本語の語彙を前提にしているわけで,そんなもん日本(語圏)人以外には使えない。ただでさえ日本語は難しいと外国語圏からは言われているのに。いまや IT 後進国の日本が自国語のプログラミング言語を作るとかヘソで茶が沸いてしまう)
だから若者たちよ。悪いことは言わないから英語を習得しろ。
そして親たちよ。言語の習得でもっとも重要なのは「語彙力」である。語彙を育むのは幼児期から小学校低学年までの貴重な期間である。その期間に母国語以外の言語に執着するとか,ましてやプログラミングを学ばせるなどは愚の骨頂なので止めなさい。語彙を育むためには
たくさんの言葉を聞いて話して書いて読んで,そうして少しずつ語彙を飲み込んでいって習得していく
しかないのだ。(私はこれが大変苦手なのだが。だからこの歳でもいまだ英語不得手のままである)