タグ

ブックマーク / qiita.com/k1complete (3)

  • [翻訳]Announcing GenStage - Qiita

    はじめに の翻訳です。これまでみんな大好き pipeline 演算子は後味の悪いシンタックスシュガーに思えててあまり使ってなかったのですが、このGenStage(正確にはGenStage.Flow)は、後味の悪さを解消してくれそうです。 GenStageは、現在 https://github.com/elixir-lang/gen_stage にあります。 当にElixir(というかBeam)の良さを引き出すためには必須となるフレームワークだと思い、勢いで翻訳しました。 layout: post title: Announcing GenStage author: José Valim category: Announcements excerpt: GenStage is a new Elixir behaviour for exchanging events with back-pr

    [翻訳]Announcing GenStage - Qiita
  • mnesiaをelixirから使ってみる - Qiita

    はじめに 記事はElixir Advent Calendar 2017の21日目です。 mnesiaはErlang/OTPについてくる高速、高可用性が売りのRDBMSです。 今回はこれをElixirで少し便利に使ってみようという話です。Elixir特有というよりmnesia特有の話かつhow to的なものになっています。内容は - テーブルの作成 - 分散モードへの移行とレプリケーションの構成 - 障害復旧方法 - シャーディング その他曰く云い難い何かになります。 分散モード elixir/erlangランタイムOSプロセス(群)はノードと呼ばれ、スタンドアローンと分散の二つのモードがあり、分散モードのノードはさらに、ホスト内で有効なショートネームとホストを超えて有効なロングネームのモードがあります。 モードの切り替えは、

    mnesiaをelixirから使ってみる - Qiita
    nabinno
    nabinno 2017/12/22
    LYSE本によるとMnesiaはCPのNoSQLよりなので、RDBMSとか高可用性 (A) とか言ってしまうのはどうなんだろう😶💭
  • Elixirでの継続渡しマクロと非決定性オペレータの実装 - Qiita

    はじめに この記事は on lisp を参考にelixir向けにカスタマイズしています。 まず、継続の説明を行った後、継続渡しマクロを実装し、その後、非決定性オペレータの実装を行っています。 継続(continuation) 継続 とは、ある時点での、計算の未来といえます。例えば、REPLから式a + double(b) を評価しているとすると、double(b)の評価を完了してその値がretだとして、その継続は a+(ret) となります。つまり、fn(x) -> a + x end が 式a + double(b) の double(b)の評価が完了した時点 での継続となります。 schemeでは、任意の時点で継続をとりだし、一変数の無名関数としてあつかうことができますが、Elixirでは残念ながら継続をサポートしていません。 ところで、クロージャはある時点での計算に必要な資源をまとめ

    Elixirでの継続渡しマクロと非決定性オペレータの実装 - Qiita
  • 1