タグ

clojureに関するyuroyoroのブックマーク (7)

  • Clojureの世界観 - 紙箱

    ブログを書くのは久々です。 京都で小さな会社をやっていて、自社開発でClojureとClojureScriptを使用し続けて、概ね3年くらい使い続けています。その過程で、Clojure自体にも小さいながらソースレベルの貢献ができたりして、オープンソースプロジェクトとしても面白かったのですが、もともとオブジェクト指向言語ばかりやってきたところから、Clojureという、まったくオブジェクト指向言語ではない言語に飛び込んだ経験や考えたことなんかを、ブログにストックすると、何か他の人にも役立つこともあるかと思って、ブログに書くことにしました。 このところずっと、自社の仕事とは別に、恵比寿にある 株式会社ユーザベース さんのお仕事に参加しています(私が法人を作る前からなので、もう5、6年くらいになります)。そちらの方でもClojureやシステム設計の話(プレゼンなど)などを何度かさせてもらったり、

    Clojureの世界観 - 紙箱
  • RubyistのためのClojure入門 - Qiita

    PuppetがRubyからClojureへ乗り換えていくようです。 そんなRubyistが他にもいるかもしれないので、Rubyist向けにClojureだとどう書くか、みたいなガイドを書いてみます。 イディオム jnchitoさんのRubyイディオム記事をClojureで書くとどうなるか、まず説明したいと思います。 後置if で行数を減らす

    RubyistのためのClojure入門 - Qiita
  • Clojure/Incanter/clj-mlでデータマイニング入門 - あんちべ!

    概要 Clojureでデータマイニングに必要な各手法を解説する記事です。 記事を読むと、全くClojureを知らない方でも データ抽出・集計 可視化 機械学習(決定木、ランダムフォレスト、k-meansクラスタリング) をClojureで実行できるようになります。 はじめに ClojureとはJVM上で動く(つまりOSを問わず沢山の環境で動く上に Java資産をそのまま使える)Lisp系の言語です。 Clojureではデータマイニングを行う際、 Incanterとclj-mlという2つの便利なツールがあります。 Incanterは統計処理用の専門ライブラリで、 単体で様々な統計分析を行ったり集計を便利にしたりする機能が沢山用意されています。 clj-mlはwekaという機械学習系のツールをClojureで簡単に使えるようにしたラッパーで、 決定木やランダムフォレストなどの分類器や 各種ク

    Clojure/Incanter/clj-mlでデータマイニング入門 - あんちべ!
  • Consistent Hashing with Clojure

    Consistent Hashing with Clojure Let's say you want to distribute some objects to a number of nodes. The Naive approach to this problem would be to hash the object you want to store, then using the modulus operator pick a node and store it there, (mod (hash obj) n) This scheme would work until you add or remove nodes from the cache, now because you pick nodes from a pool of (+ n 1) or (- n 1) nodes

  • Clojureの作者が作ったデータベースDatomicが凄い

    プログラミング言語Clojureの作者Rich Hickey氏率いるClojure HackerのチームがDatomic(デートミックと発音するらしい)というデータベースをリリースしました。これが何やらとてつもないです。10年先を行ってる技術じゃないでしょうか。 まだ番サービスは始まっていませんが開発環境用のライブラリが配布されています。 Datomicは斬新なアーキテクチャなので一言で説明するのはとても難しいです。 私が理解できたことを簡単に説明します。 2014/1/20追記 ライセンスモデル、サポートストレージ、サービスとしてではなく独立して使用する形になるなど記事作成時の内容から色々変更が合った部分を更新しました。 変更不可なAppend-onlyデータベース 従来のデータベースで、あるレコードを変更するというのはそのレコードに対応した場所があり、そこのデータを書き換えるというこ

  • 不自然なcar/ナチュラルにconsして

    This document appears to be notes from a presentation on Clojure. It discusses key features of Clojure like how it differs from Lisp, its use of REPL for documentation, lambda functions and macros. A large portion of the document covers concurrency in Clojure, explaining concepts like STM, atoms and agents. It provides examples of using Clojure's STM functions like ref, deref, alter and compares t

    不自然なcar/ナチュラルにconsして
    yuroyoro
    yuroyoro 2010/07/16
    STMおもろい!/Scalaでも実装は出来そうだが…/ところでTwitterのkestorelやgizzardではScalaからヘビーにjava.util.concurrentを使ってますよ
  • Scaling Clojure Web Apps with Google AppEngine

    InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architects. View an example Memorial Day Sale: Save up to 60% on InfoQ Dev Summit Boston (June 24-25)

    Scaling Clojure Web Apps with Google AppEngine
  • 1