希哲13年8月18日

描主宇田川浩行K#F85E
下描き希哲13年(2019年)
08月18日 06:57
利承
ライセンス
希哲館普通利承(KULクール
「なんでもメモ」サービス、デライト公開中!
https://dlt.kitetu.com

広告

一覧

=}{*}

サッカーで喩えると,ゴールの10cm前にボールを置いて,キーパーには10メートル離れててもらった PK で得点出来なかった,というのに等しい。

=}{*}

これは野球で喩えると,高卒帰宅部野球未経験者がひょんなことから MLB デビューして年俸10億円と一流コーチの指導を受け50年間無条件で出場出来る権利を得たにもかかわらず生涯で一回もヒットを打てなかった,というのに等しい。

=}{*}

これだけ自分のやりたいように柔品(ソフトウェア)開発に専念出来る自由な環境を持った男というのは,これまで世界に存在してこなかった。それを考えると自分の無能さばかりが際立つ。

=}{*}{*}

=}{*}

アイデアあり,環境あり,時間あり,これ以上何が必要だと言うんだ……。能力と言われればそれまでだが。

=}{*}

あとは own 演算子の導入とか理想 DOM(Ideal DOM)における「仮想要素」の導入とか,面白いネタがあったのだが,思いのほか備立子ビルダー)が長くなったのでまたの機会に。

=}{*}

たまに「動的」「静的」って面白い用語だなと思う。何らかの性質が変化するかどうかを表現する抽象性の高さ。

=}{*}

そこで思いついたのが bld() だった。これは最初,血筋系統の意味を持つ〈blood〉の略として思いついて,〈build〉にかかることに気付いた。Builder パターンがあるように技術表現としても自然。これなら new foo.bld は「foo の系統(blood)で新しい個体を作る(build)」,instanceof foo.bld や is foo.bld は「foo の系統に属するかどうか」という意味でも読める。

=}{*}

例えば foo.self() とする,という案もあった。実体という意味が分かりやすくて良いと思ったのが,よく考えると new foo instanceof foo.self というのも不自然だ。νS だと instanceof は is と書くので,new foo is foo.self となってしまう。new foo は foo 自身を作るわけではない。

=}{*}

これ自体は,ある程度経験のある論組屋プログラマー)なら割と思いつくと思うのだが,難しかったのは,備立子(ビルダー)として自然で直感的な「名前」だ。というのも,JavaScript において構築子客体(オブジェクト)の合い所アイデンティティ)でもあるので,new foo が foo の個体インスタンス)を返さないと例えば new foo instanceof foo が成立しないわけだ。これをどう整合的に表現するか。

=}{*}

foo.bld()客体(オブジェクト)構築に徹することで,foo() はより広範で便宜的な機能を提供しやすくなる。つまり,foo() で客体の新規生成以上の機能を提供し,new foo() で新規生成に限定,さらにオーバーヘッドを避けたければ new foo.bld() と書く,と三段階の使い分けが出来る。「適当なことは適当に書け,厳密なことは厳密に書ける」という輪郭指向に即している。

=}{*}

JavaScript に詳しい人なら気付いたかもしれないが,foo.bld() における備立子(ビルダー)bld() は,foo() とは区別されつつ foo であるかのように振る舞う構築子コンストラクター)だ。これは,foo() を窓口のように使い,実際の客体(オブジェクト)構築ロジックを foo.bld() に凝集させることを可能にする。

=}{*}

まずは,構築子コンストラクター)の一種として「備立子」(ビルダー)というものを考えた。JavaScript のようなプロトタイプベース言語で,例えば foo.bld() が構築子として存在する時,これを客体オブジェクト)foo の備立子という。

=}{*}

昨日,Aejs/νS で面白い閃きがいくつかあったので簡単に解説してみるか。

=}{*}

言い換えれば,論組プログラミング)においてはインターフェイスこそが本質なのであって,実装は後付けでいいということ。

=}{*}

昨日から三浦祐太朗さんの『さよならの向う側』ばっかり聴いているな。まさに「さよならの向う側」な気分だからかもしれない。

=}{*}

最近,希哲社前縁(フロントエンド)技術である JavaScript 改良言語 νS(ニューズ)とライブラリ Aejs(イージス)の発展が目覚ましい。

=}{*}

昨日のツイスト

https://kitetu.com/KNo.F85E/A-5B28-DEDB

一昨日のツイスト

https://kitetu.com/KNo.F85E/A-5B28-498B

出力論組プログラム虎哲*イチ 1.01
制作・運営:希哲社
© K1-13 (2007-2019) KiTetuSha