タグ

clojureに関するir_taktのブックマーク (10)

  • IntelliJ IDEA と Cursive で始める — Clojure の日本語ガイド

    IntelliJ IDEA と Cursive で始める¶ Cursive は Clojure 開発で必要な機能、あるいはあると便利な機能を統合的に提供してくれます。 概要¶ IntelliJ IDEA という日でも人気の IDE の上で動くプラグインです。日ではあまり使用例を見かけませんが、海外では Emacs に次ぐ人気の高い開発環境となっています。 現在 Cursive は IntelliJ IDEA のプラグインとして提供されており、他の JetBrains 製品と同様にバージョン管理システムやインスペクターなどといった機能を使うことができます。 Cursive はそのほぼ全てを Clojure で書かれており、 Clojure エコシステムとの統合も非常にうまく出来ています。そして、 Cursive の開発は Cursive を使って行われているため、 Cursive は C

  • Clojure - Cheatsheet

    Clojure 1.11 Cheat Sheet (v54) Download PDF version / Source repo Many thanks to Steve Tayon for creating it and Andy Fingerhut for ongoing maintenance.

  • Clojure(ある意味)基礎文法最速マスター - Homoiconic Days

    (このエントリはLisp Advent Calendar 2012 1日目の記事です。) はじめに 2年ほど前に、「◯◯言語基礎文法最速マスター」という、それぞれの言語の基的な文法を説明したブログ記事を書くのが大流行した時期がありました。その流行り具合は、まとめ記事にまとめられた記事の数を見てもうかがい知ることができると思います(たとえば、こことか→プログラミング基礎文法最速マスターまとめ - ネットサービス研究室)。 それで、これだけたくさんの言語がカバーされてれば当然Clojureもあるだろうと思ってググってみましたが、意外にも2年経った今も「Clojure基礎文法最速マスター」はないみたいです。で、僕は入門記事みたいなのは書くのが苦手なのでやらないんですが、「Clojureの基礎文法とは何ぞや」ということを改めて考えてみました。 で、「基礎」をfoundationと考えれば、コンパ

    Clojure(ある意味)基礎文法最速マスター - Homoiconic Days
  • GPソフト Wiki - ClojureのVar

    Clojureでは、変更可能(mutable)なオブジェクトは、VarとRefとAgentとAtomの4つだけです。記事では、その中の1つ、Varオブジェクトについて整理します。 Varを作るにはdef特殊フォームを使います。defは、生成したVarオブジェクトを返します。 user=> (def foo "Hello") #'user/foo defの結果として表示された「#'user/foo」は、「userという名前空間の、fooという名前のVarオブジェクト」という意味です。 上記コードでは、fooという名前のVarを作り、値として"Hello"という文字列をバインドしています。図示すると下記のような関係になります。 点線は名付け対象を示しています。実線矢印はバインド先を指します。このように、Varオブジェクトは、何らかの値(Stringオブジェクトとか関数オブジェクトとか)を指す

    ir_takt
    ir_takt 2015/05/22
    varとかbindingとかそのへんの話
  • Clojure のエレガントなところ - hozumiの日記

    リスト、ハッシュマップ、ベクタ、集合のリテラルがある ;リスト (1 2 3 4) ;ハッシュマップ {:a 1, :b 2, :c 3} ;ベクタ [1 2 3 4] ;集合 #{1 2 3 4} よく使う基データ型のリテラルがあるというのはソースコードに図が入ってるみたいで考えるよりも早く理解できる。しかもいじりやすい。他の多くの言語でもこれらの基データ型のリテラルは用意されているが、Clojure ではこれらはとてもよく使う重要なビルディングブロック。 リスト、ハッシュマップ、ベクタ、集合、文字列 をシーケンスとして抽象化 (take 2 '(a b c d)) ;リスト ;=> (a b) (take 2 {:a 1 :b 2 :c 3 :d 4}) ;ハッシュマップ ;=> ([:a 1] [:b 2]) (take 2 [:a :b :c :d]) ;ベクタ ;=> (:a

    Clojure のエレガントなところ - hozumiの日記
  • で、次は何がくるの? - 第2回 TIS Matsuri

    社内イベント向けのスライドです。Clojureモノノフを増やすために若干の他言語比較がありますが、ディスりの意図は決してございません。Read less

    で、次は何がくるの? - 第2回 TIS Matsuri
  • イミュータブル時代の言語としてのClojure - Qiita

    この記事はRich HickeyのClojureのコンセプトを示したリソースへのリンク集です。 このリンクを追っていけば、LISPであることやBetter Javaであることなんてものは表面的な特長に過ぎず、イミュータビリティ(とシンプルさ)こそが最大の特長であるということに気付かされます。 ClojureはOut of the Tar Pit (PDF) という論文に基づいて、状態とふるまいを分離するように言語設計されています。レースコンディションのような偶発的におこりうる問題は、状態とふるまいが一体となった混沌から生まれるのであって、これを分離してどうしても避けることの出来ない状態の管理だけ特別に扱うという考え方です。 オブジェクト指向が状態を安易に変更できてしまうのは、「状態」と「アイデンティティ」が密結合しているためです。ある2つのオブジェクトが同一かどうかは、問題領域に依存してい

    イミュータブル時代の言語としてのClojure - Qiita
  • 渋谷JVM#1 Immutable時代のプログラミング言語 Clojure

    2019/11/23 JJUG CCC 2019 Fall 「多言語対応の仮想マシンGraalVMが照らす未来」のセッションスライドです。 --- オラクル社からGraalVMというOSSプロダクトが発表され、話題を呼んでいます。GraalVMは、Javaで書かれたJITコンパイラ、Graalを搭載しています。さらに、言語実装用のフレームワークTruffleを提供しており、そのフレームワークを使って実装したJavaScriptRubyPythonなど他の言語を、GraalVMは高いパフォーマンス実行できます。GraalVMを多言語対応の仮想マシンと呼ぶ理由です。加えて、それらすべての言語間で、相互に呼び出しができます。また、ネイティブイメージを作成し、JVMを利用せずにアプリケーションを実行できます。MicronautやQuarkus、Helidonといった最新のフレームワークが、この

    渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
  • Home - CL-TryJ

    The IT sphere, which is constantly changing and developing. New professions and directions regularly appear here, and therefore the need for experienced specialists is very high.

  • Clojure入門

    Стажировка 2016-07-27 02 Денис Нелюбин. PostgreSQL и jsonb

    Clojure入門
  • 1