2021年3月25日のブックマーク (3件)

  • 第11回 クロージャによる超軽量並行プロセスの簡単実装法

    最近,ネットの一部で「Erlang」(発音はアーランまたはエアラン)というプログラミング言語が流行している(参考リンク)。Erlangはスウェーデンの通信機器メーカーであるエリクソンにて開発された言語で,エリクソン内部や通信業界はもちろん,Twitter(関連記事)などのオンライン・サービスでも採用されているという。 Erlangの特徴は,複数のプロセスが通信をしながら計算をする「並行プログラミング」を,言語の機能として強力にサポートしていることだ。C言語などの逐次プログラミング言語は,プロセスや通信の機能を内蔵しておらず,こうした機能をオペレーティング・システムに「外注」している。しかし,そのような外付けの仕組みは,メモリー消費量や速度,開発効率などの点でオーバーへッドが大きい。Erlangのような並行プログラミング言語では,プロセスや通信といった機能をプリミティブとして実装することによ

    第11回 クロージャによる超軽量並行プロセスの簡単実装法
  • Wikipedia:一覧の一覧 - Wikipedia

    このページでは、日語版における各分野の主要な一覧記事を列挙しています。記事の分類は日十進分類法 (NDC) に基づいています。 このページではウィキペディア日語版における主要な一覧記事を分野別に整理し、一覧の総目次として機能するように作成されたものであり、ウィキペディア日語版に存在する全ての一覧記事を網羅したもの(総索引)ではありません。なお、ウィキペディアにある全ての一覧記事は、Category:一覧以下のカテゴリから参照できます。 その他、いずれも一覧記事ではありませんが、同名の人物・事物を羅列した記事(曖昧さ回避)の一覧はCategory:曖昧さ回避以下から、年代順の一覧である年表の体裁をもつ記事の一覧はCategory:年表以下から、各々参照可能です。 お探しの一覧記事がどこに分類されているかわからないときは、お使いのブラウザのページ内検索機能をご活用下さい。

  • 引数の型を推論してから受け付けるかどうかを決める後出しパターン - Object.create(null)

    2023-05-24 追記 改訂 + α 版を書きました. お題 具体例として, ちょうど長さ 3 の文字列のみを引数として受け付ける関数を作ります. こんな関数を作って何がしたいのかは不明. 先出しパターン よくある手段としては「ちょうど長さ 3 の文字列」のような制約を満たす型をあらかじめ定義しておいて, 引数の型としてそれを使うという方法です. type StringOfThreeChars = /* ちょうど長さ 3 の文字列 */; declare function myFunc(str: StringOfThreeChars): void; myFunc("ab"); // error myFunc("abc"); // ok myFunc("abcd"); // error では StringOfThreeChars はどう定義するとよいでしょうか? おそらく現時点 (Typ

    引数の型を推論してから受け付けるかどうかを決める後出しパターン - Object.create(null)
    Krouton
    Krouton 2021/03/25
    type Char = "\u0000" | "\u0001" | ... | "\uFFFF"; の件を実際にやったらコンパイル爆発して楽しかった