アカウント名:
パスワード:
とりあえず、ここにぶら下げておくか
7bit文字コード自体を引きずって、変数名に英語だけ使うのは古い。今時は日本語のひらがなや漢字混じり変数名を使う。分かり易さが一番だろ今時。
#オープンソース界隈ではgccもまともに対応できていなかったけど、もう大丈夫なかぁ
んでもって数年後には「変数名の誤変換はいい加減にしてほしい」って話題でもりあがるのですね。
「Dim 返り値 As Boolean」というコードを巡って..
・「普通は戻り値だろう?」・「返り値でも日本語としては間違えてはいない(根拠を示しながら)」・「いや、どうでもいいから返り血だけはやめてほしい」
とか
英語の変数名のつけ方でも同じ事が言えるけどBooleanで"返り値"という変数名はわかりずらい。例えば"○○が存在"とか"入力エラー"だとtrueのとき存在するんだなとか入力エラーなんだなってわかる。
そりゃそうなんですが、英語だって、
●同じ問題は英語で書いても起きる。●母国語で書いてあるほうがまだしも当事者がその語の選択のよしあしを検証し易い。母国語以外だと誤訳というハードルが1つ増える。
という問題も。あと、
●システム用語(プログラム言語の用語とか)なら英語ベースなことが多いが、業務用語は思いっきり母国語べったりなほうが便利。
という面もあるので、その言葉がどっちに属するかで住み分けるという手もある。
マルチバイトな変数は入力しづらいのがね。Enumみたいな、コード補完で一覧表示されるようなのは、一切打ち込むこと無いから良いと思うんだけど。
こんな感じ?
#include <stdio.h>#include "jident.h" 整数 主関数(空虚){ 整数 い; 於 (い = 0; い <= 100; ++い) { 若 (い % 3 == 0 && い % 5 == 0) 整形印字("ひずばず\n"); 或 若 (い % 3 == 0) 整形印字("ひず\n"); 或 若 (い % 5 == 0) 整形印字("ばず\n");
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家
ハンガリアン記法とか (スコア:0)
変数名 (スコア:0)
とりあえず、ここにぶら下げておくか
7bit文字コード自体を引きずって、変数名に英語だけ使うのは古い。
今時は日本語のひらがなや漢字混じり変数名を使う。分かり易さが一番だろ今時。
#オープンソース界隈ではgccもまともに対応できていなかったけど、もう大丈夫なかぁ
Re:変数名 (スコア:1, おもしろおかしい)
Re:変数名 (スコア:1)
んでもって数年後には「変数名の誤変換はいい加減にしてほしい」って話題でもりあがるのですね。
「Dim 返り値 As Boolean」というコードを巡って..
・「普通は戻り値だろう?」
・「返り値でも日本語としては間違えてはいない(根拠を示しながら)」
・「いや、どうでもいいから返り血だけはやめてほしい」
とか
Re:変数名 (スコア:1)
英語の変数名のつけ方でも同じ事が言えるけど
Booleanで"返り値"という変数名はわかりずらい。
例えば"○○が存在"とか"入力エラー"だとtrueのとき存在するんだなとか入力エラーなんだなってわかる。
Re: (スコア:0)
そりゃそうなんですが、英語だって、
●同じ問題は英語で書いても起きる。
●母国語で書いてあるほうがまだしも当事者がその語の選択のよしあしを検証し易い。母国語以外だと誤訳というハードルが1つ増える。
という問題も。
あと、
●システム用語(プログラム言語の用語とか)なら英語ベースなことが多いが、業務用語は思いっきり母国語べったりなほうが便利。
という面もあるので、その言葉がどっちに属するかで住み分けるという手もある。
Re: (スコア:0)
マルチバイトな変数は入力しづらいのがね。
Enumみたいな、コード補完で一覧表示されるようなのは、一切打ち込むこと無いから良いと思うんだけど。
Re: (スコア:0)
こんな感じ?
Re:変数名 (スコア:1)
(define-syntax 算法
(syntax-rules ()
((_ x ...) (lambda x ...))))
(define 表示する display)
(define-syntax 条件は
(syntax-rules (他)
((_ (他 x ...)) (begin x ...))
((_ (e1 e2 ...)) (when e1 e2 ...))
((_ (e1 e2 ...) e3 ...)
(if e1
(begin e2 ...)
(条件は e3 ...)))))
(define-syntax 論理和
(syntax-rules ()
((_ x ...) (and x ...))))
(define 零ですか zero?)
(define 余り modulo)
(define 改行 newline)
(define-syntax する
(syntax-rules ()
((_ x ...) (let x ...))))
(define-syntax これが
(syntax-rules ()
((_ x ...) (if x ...))))
(define 減 -)
(define 対 cons)
(それぞれで (算法 (い)
(表示する
(条件は ((論理和 (零ですか (余り い 3)) (零ですか (余り い 5))) "ひずばず")
((零ですか (余り い 3)) "ひず")
((零ですか (余り い 5)) "ばず")
(他 い)))
(改行))
(する 繰り返し
((元 100) (結果 '()))
(これが (零ですか 元)
結果
(繰り返し (減 元 1) (対 元 結果)))))
;; MzschemeとGaucheで動きます。Gaucheだと最後にエラーが出ますが。何でだろう。
Re: (スコア:0)