tag:blogger.com,1999:blog-3636872937372639901.post3747783451524191043..comments2024-03-27T21:24:43.584+09:00Comments on 本の虫: DartのOptional Typeについて江添亮http://www.blogger.com/profile/13387122818743087721noreply@blogger.comBlogger5125tag:blogger.com,1999:blog-3636872937372639901.post-86581735829290517852011-10-15T21:40:36.404+09:002011-10-15T21:40:36.404+09:00まあ、そこまでいうなら直しておきましたが。まあ、そこまでいうなら直しておきましたが。江添亮https://www.blogger.com/profile/13387122818743087721noreply@blogger.comtag:blogger.com,1999:blog-3636872937372639901.post-78531110116832854792011-10-15T21:21:04.838+09:002011-10-15T21:21:04.838+09:00既存のクソ言語 = JavaScriptなのですね.
てっきり, 既存のすべての言語をクソだと言って...既存のクソ言語 = JavaScriptなのですね.<br />てっきり, 既存のすべての言語をクソだと言っているのだと勘違いしてしまいました. JavaScriptのことだけ書いているのだったら, JavaScriptと書いてくれたら良かったです. ユーモアを利かすのであれば, Javaクソリプトでもいいです.<br /><br />あなたは, 日本語は技術的な文書を書くのに向いていないという主張を別の記事でしていますが, それは私も同意で, 例えばこのような勘違いは英語では起こりません. 日本語は複数形を自然に表現することが出来ないのです. これは私が日本語訳された技術書を読むときに悩まされる一番の問題です. どうしたらこれを克服することが出来るか, 何か良い方法があったらブログで報告してもらえるとみなさん助かると思います (もっとも, このような問題意識を持っている人がそれほど多いとは思いませんけど).<br /><br />返答どうもありがとうございました.akiranoreply@blogger.comtag:blogger.com,1999:blog-3636872937372639901.post-53682386531568152011-10-15T20:14:28.442+09:002011-10-15T20:14:28.442+09:00↑↑
言語が動的かどうかよりも、対話的な開発スタイルの中では変数の型が邪魔になりがちだと感じますね。...↑↑<br />言語が動的かどうかよりも、対話的な開発スタイルの中では変数の型が邪魔になりがちだと感じますね。<br />JavaScript は動いている環境を動かしたままいじっていくことがあります。 わかりやすい例でいえば、ブラウザのコンソールを開いてコードを置き換えたりしますし、ブックマークレットもそうです。 (問題なければ元になるソースコードに反映していきます。) 動かしながら各部分を拡張していくので、一部を変えてそれと整合性が合うように型を付け替えていくというのは面倒です。 それに、「まさに今動いているもの」なので整合性がとれていなければその場でわかりますから型に頼らなくてもいいのです。<br />ただ、拡張する都度には問題なくても長期的な保守をすることを考えると型に頼れないというのは不安があります。 JavaScript と同じようにプログラムが動いているままで開発するスタイルをとる Lisp 系言語では関数や仮引数に長い名前をつける習慣があるのはそれをカバーするためであると言われています。 一部の Lisp 系言語ではまさに Dart のような annotation 方式を採用しているので、動的言語の便利な部分を壊さないように型をつけるには妥当な方法なのかもしれません。齊藤https://www.blogger.com/profile/07209555400516901861noreply@blogger.comtag:blogger.com,1999:blog-3636872937372639901.post-79372859962798095812011-10-15T19:21:53.494+09:002011-10-15T19:21:53.494+09:00変数というのが、すべてメモリ上のストレージへの参照なので、そもそも変数自体に型を設けるのが不思議なの...変数というのが、すべてメモリ上のストレージへの参照なので、そもそも変数自体に型を設けるのが不思議なのです。<br />それこそ、C++でいえば、変数はすべてvoid *であるようなものです。もちろん、何を指しているかという型情報はありますが、不変ではありません<br /><br />Haskellなどの諸言語との比較がないのは、まずHaskellを知らないということと、Dartの主目的はJavascriptの置き換え(移行措置としてJavascriptへのコンパイル)なので、Javascriptと比較するのは自然なのです。江添亮https://www.blogger.com/profile/13387122818743087721noreply@blogger.comtag:blogger.com,1999:blog-3636872937372639901.post-40284736804897096582011-10-15T18:47:47.884+09:002011-10-15T18:47:47.884+09:00Dartを非常に推していますね.
私はJavaScriptについて知りません. それが広く使われてい...Dartを非常に推していますね.<br />私はJavaScriptについて知りません. それが広く使われているということや, 何かの短所があり, 故に一部の人から嫌われいてるということは知っていますがその詳細は知りません.<br />引き続きDartの他言語に対する長所の記事を期待します.<br /><br />この記事に対するコメントとしては, JavaScriptに対して優れるということは何となく分かるのですが,<br />1) 「しかし動的な言語ではむしろ邪魔にすら感じる」ということに対する根拠がいまいち分からないです.<br />2) 既存のクソ言語より優れてるか示すと書いてあるのに, Haskellなどの言語と比較が一切なく一方的にJSを叩いてるだけなのはなぜか.<br />という点に疑問を持ちました. 別に返答する必要はありません.akiranoreply@blogger.com