タグ

clojureに関するaerealのブックマーク (17)

  • Transducers are Coming

    Transducers are a powerful and composable way to build algorithmic transformations that you can reuse in many contexts, and they're coming to Clojure core and core.async. Two years ago, in a blog post describing how reducers work, I described the reducing function transformers on which they were based, and provided explicit examples like 'mapping', 'filtering' and 'mapcatting'. Because the reducer

    Transducers are Coming
  • 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でデータマイニング入門 - あんちべ!
  • http://http-kit.org/

  • パスワード問合せシステムを作る (clojureのreducers) - Qiita

    現在のパスワードを教えてくれるからといって、「平文で保存してる!くぁwせdrftgyふじこlp‎」と脊髄反射してはいけません。 JALの6桁数字パスワードがどう格納されているか? 古いシステムなのでMD5でハッシュ化していると想定しますが、もちろんsaltは付けているでしょう。 さて、そんなパスワード保管方式で、現在のパスワード問合せに応答するシステムを作ってみます。 パスワードを「567890」、saltを「hoge」として、データベースには"hoge$567890"のMD5値"4b364677946ccf79f841114e73ccaf4f"が格納されているとします。 総当りしてみましょう。 (ns six-length.core (:require [clojure.core.reducers :as r]) (:import [java.security MessageDigest

    パスワード問合せシステムを作る (clojureのreducers) - Qiita
    aereal
    aereal 2014/02/09
    reducers 便利
  • Clojureコンパイラの型推論器をとりだしてみる - Homoiconic Days

    clojure.orgには,Clojureについて次のような説明がある。 Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection. http://clojure.org/ この型推論(type inference)は,Clojureの説明でたまに名前だけは出てくるものの,その実態についての説明にはほとんどお目にかかったことがない。そこで今回は,Clojureの型推論の機能をClojureから触れるようにして遊んでみよう。 Clojureになぜ型推論が必要か まずはじめに注意しておかないといけないのは,Clojureの型推論はMLやHaskellなどの静的

    Clojureコンパイラの型推論器をとりだしてみる - Homoiconic Days
  • why-we-broke-our-philosophical-vows-to-bring-you-circleci-2-0

    New CircleCI now supports GitLab SaaS and self-managed code repositories. Connect now

    why-we-broke-our-philosophical-vows-to-bring-you-circleci-2-0
    aereal
    aereal 2014/01/13
    Circle CI って Clojure で書かれていたのか
  • instaparseで遊ぶ - みどりねこ日記

    この記事はClojure Advent Calendar 2013 - Qiita [キータ]19日目の記事です。 instaparse 記事ではinstaparseというライブラリを使って遊んでみます。 instaparseはEBNFやABNFで記述された文脈自由文法から自動的にパーサを生成してくれます。 左再帰、右再帰、曖昧性など、いかなる文脈自由文法でも動作します。 生成されたパーサは文字列からenliveまたはhiccup風の木構造を生成します。 今回は型なしラムダ計算を題材にします。 型なしラムダ計算 型なしラムダ計算は、型がない(または型がひとつしかない)ラムダ計算です。 ラムダ計算はとてもシンプルで、すべての計算が関数定義と関数適用だけで実現可能です。 ラムダ計算の構文は以下の3つからなります。 t ::= 項 x 変数 | \x . t ラムダ抽象 | t t 関数適用

    instaparseで遊ぶ - みどりねこ日記
  • GitHub - bdesham/clj-plist: A property list (.plist) parser for Clojure

  • Clojureをつくったわけ

    The original document appears at http://clojure.org/rationale. The translation is based on November 27, 2009 version of the page. 読みにくくて申し訳ないです。数多くの間違いがあると思いますので、ご指摘ください。 顧客や出資家は、業界標準のプラットフォームであるJava仮想マシン (Java Virtual Machine; JVM) に相当な投資をしており、そのパフォーマンス、セキュリティ、安定性などに満足している。Java開発者は、動的言語の簡潔さ、柔軟さ、生産性をうらやましく思うものの、顧客の環境で動かせるかどうか、既存のコードやライブラリが使えるかどうか、そして動作速度などについて心配するかもしれない。また、ネイティブ・スレッドやロッキングによる並行処理に

  • マクロとモナドをいつ使うかという個人的ルール - tnoda-clojure

    できればマクロもモナドも使いたくないのですが,いつ使うかということについて個人的に決めているルールを言語化してみると,どちらのルールも似ているということに気づきました. マクロクラブとモナドクラブたしか「プログラミング Clojure」というに「マクロ・クラブ」と題したマクロ利用に関するルールが書かれており,それと同じことをモナドについても考えているのだということに気づいて,書き出してみました. マクロ・クラブマクロクラブのルールは次のようなものでした. マクロを書くな (言い換えると定義済みのマクロを使う分には構わない)それが,パターンをカプセル化する唯一の方法ならば,マクロを書けただし,同等の関数呼び出しと比較して簡単に書けるのならマクロを書いても構わないモナド・クラブ「モナド・クラブ」というのは今私が勝手につけた名前ですが,ルールはマクロ・クラブに似通っています. 新しいモナドを作

    マクロとモナドをいつ使うかという個人的ルール - tnoda-clojure
  • Light Table

    ON WHICH PLATFORM WOULD YOU LIKE TO INSTALL LIGHT TABLE? For Mac OS X, see the installation instructions.

  • ClojureでWebApp開発に必要なN個のこと - Let's write β

    PerlでWebAppの開発に必要なN個のこと - Islands in the byte streamのClojure版です。 あるプログラミング言語で実際にWebAppを開発できるようになるまで、何が必要だろうか。言語仕様の習得は終えているとしよう。おそらく、最低限以下のような知識が必要だと思われる。とりあえずClojureについて知っていることを書いた。←ここまで引用 パッケージマネージャ パッケージマネージャというか、プロジェクトマネージャであるLeiningenをつかいましょう。 このツールはもうデファクトスタンダードです。 アプリケーションサーバー WebサーバーへのインターフェースとしてはRing というのがデファクトスタンダードとなっている。バックエンドとしてはJettyやTomcatなどが利用できる。またHerokuAWSへのデプロイも可能だ。Ringを使う利点は多用な

    ClojureでWebApp開発に必要なN個のこと - Let's write β
  • Clojure の パーサコンビネータライブラリ Kern - みどりねこ日記

    Clojure でパースするとき、みんなどうしてるんだろう。 Parsec のようなものがあればいいのに〜、と思って探してみたところ、この Kern が一番よさげだった。 特徴 状態モナドベースのコンビネータ群 C, Java, Haskell, Shell の構文をサポート パースと式の評価をサポート 正確で詳しいエラーメッセージ エラーメッセージは簡単に多言語化可能 パーサの内部状態にクライアントコードからアクセス可能 サンプルあり セットアップ leiningen がインストールされているなら、 project.clj の :dependencies に [org.blancas/kern "0.6.1"] で、コード中に (use 'blancas.kern.core) Haskell の Parsec っぽい HaskellのParsecですねという感じ。というか記号とかもそのま

    Clojure の パーサコンビネータライブラリ Kern - みどりねこ日記
  • GitHub - blancas/kern: A Parser Combinators Library for Clojure

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - blancas/kern: A Parser Combinators Library for Clojure
  • google/hesokuri · GitHub

    Rather than delete any peer branch that is merged to HEAD (the behavior of git branch -d), we delete any peer branch where the local branch is a fast-forward commit or equivalent commit.

  • うごメモはてなの情報取得 API サンプルコード. - tnoda-clojure

    うごメモはてなのユーザ情報を API から取得します. 残念なことに, うごメモはてなが今年の 5 月 31 日でサービスを終了するそうです. しかし,そこははてなで,サービスが終了する前にバックアップできるようにと, 「うごメモはてなの情報取得APIを公開しました」 してくれました.しかも, 某政府機関 とは違って,エクセルではなく JSON で返ってきます.素晴らしいの一言です. 「うごメモはてなの情報取得APIを公開しました」のページには Perl と Common Lisp のサンプルコードはあるものの, なぜか Clojure のサンプルコードが無かったので書いてみました. (ns ugomemo-hatena.example (:require [clojure.data.json :as json])) (defn- api-request [url] (-> url slu

    うごメモはてなの情報取得 API サンプルコード. - tnoda-clojure
  • Island Life - Clojureの選択

    About 南の島のプログラマ。 たまに役者。 Practical Schemeの主。 WiLiKi:Shiro 最近のエントリ 無限cxr高校受験Defense振り返ってみると2019年は色々学んで楽...覚えるより忘れる方が難しい(こともある)眼鏡のつると3DプリンタIris Klein Acting ClassSAG-AFTRA conservatory: Voice Acting創作活動って自分を晒け出さねばならないと...ループを使わずに1から100までMore... 最近のコメント shiro on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/14)1357 on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/01)ベアトリーチェ on ハイポハイポハイポのシューリンガン (2022/04/02)ベアトリーチ

    Island Life - Clojureの選択
  • 1