ゆか 2021/06/14 16:21

JavaScriptを学びます and algebraic datatypes emulation

動機

ようやくSafariのWebGL 2.0実装が実用レベルに近づいてきたので、近々主要ブラウザ全てがWebGL 2.0をサポートすることになります。これによってブラウザをクロスプラットフォームのゲーム実行環境として本格的に使っていけそうな気配が出てきました。
そこでフロントエンドweb開発での事実上の標準言語であるJavaScriptを学んでいきたいと思います。

Algebraic data types emulation in JavaScript

https://github.com/yuka-xxx/experimental/blob/main/adt.js
Ci-enのコード記法はsyntax highlitingが無くて読みにくいので、実験コードはGitHubに上げることにします。
Algebraic data typesを模倣する上でpattern matchingによるdestructingが行えないと片手落ちなので、今回はこの部分が一番悩みました。
空のMaybeやListをprototypeに設定しているのは、今後これらをtype class instantiationに利用しようと目論んでいるからで、今回に限れば不要です。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

記事のタグから探す

月別アーカイブ

限定特典から探す

記事を検索