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.
(このエントリはLisp Advent Calendar 2012 1日目の記事です。) はじめに 2年ほど前に、「◯◯言語基礎文法最速マスター」という、それぞれの言語の基本的な文法を説明したブログ記事を書くのが大流行した時期がありました。その流行り具合は、まとめ記事にまとめられた記事の数を見てもうかがい知ることができると思います(たとえば、こことか→プログラミング基礎文法最速マスターまとめ - ネットサービス研究室)。 それで、これだけたくさんの言語がカバーされてれば当然Clojureもあるだろうと思ってググってみましたが、意外にも2年経った今も「Clojure基礎文法最速マスター」はないみたいです。で、僕は入門記事みたいなのは書くのが苦手なのでやらないんですが、「Clojureの基礎文法とは何ぞや」ということを改めて考えてみました。 で、「基礎」をfoundationと考えれば、コンパ
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オブジェクトとか関数オブジェクトとか)を指す
cles::blog 平常心是道 blogs: cles::blog NP_cles() « 演習で身につくソフトウェア設計入門 :: 1台のキーボードを PC とモバイル機器で共用する » 2013/12/23 Deprecated と Obsolete english programming rfc 1746 1へぇ プログラミングしていて API を眺めていると、よく出てくるのが"Deprecated" と "Obsolete"。 どちらも特定の API が古くなって新規に使うことが「推奨されない」、もしくは既に廃止済みになっていて「使うことができない」ことを表していますが、一度も英和辞典を引いたことがなかったので、ちょっと調べてみることに。ちなみに僕は前者が非推奨、後者が廃止という意味だと思っていましたが、元の意味は全然違いました。 deprecateの意味 - 英和辞典 W
リスト、ハッシュマップ、ベクタ、集合のリテラルがある ;リスト (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
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く