Commits

kuen...@shuna.local  committed 39b9085

tutorial

  • Participants
  • Parent commits 39bced7

Comments (0)

Files changed (2)

+== Welcome ==
 
+YATCE is Yet Another Tokyo Cabinet-Erlang binding. Pronounces like <catch>. 
+ようこそ! YATCEは「やっちぇ」と読んでいます。もっといい名前があったら教えてください。
+
+== Why Yatce? ==
+
+この手のバインディングはtcerlとかさんざんガイシュツなんですが、勢いで作り始めてしまいました。これまでのものとちょっと違うのは、これまでのはいわゆる普通のportとメッセージング(!のやつ)を使ったものが多いのですが、!を使うためコンテキスト切り替えとかメッセージングとかいろいろ余計なコストがかかっていたのですが、erlang:port_control/3という関数を使うことによってそういったものをすっ飛ばしていきなりCのコードを実行してしまうという素人にはオススメできない機能を素人の僕が使っていたりします。
+
+== Features ==
+
+* erlang:port_control/3を使っているので(多分)速い
+* もちろんconcurrentな実装。マルチコアの性能を使い切っている(はず)
+* OO-friendlyなインターフェース(tokyocabinet.idlになんちゃって準拠)
+* いちどリンクするだけで複数のTCのDBファイルを更新可能
+* LGPL(ただし提供形態は応相談、ゆくゆくはどうしようか悩んでいる)
+* Works on Linux(*nix-like OSes) and Mac Leopard / erlang R13B01 / TC 1.4.24
+
+== Current Status ==
+
+* Latest Version: 0.7.1
+* port_controlで動作するっぽいところを確認
+* tcadb系の大体のオペレーションをサポート
+** CRUD, tcadbsync, tcadbpath
+* CRUをかなり回してみたけどメモリが漏れていないことを確認
+* タプルとかリストのCRUDは未対応
+* コミッタ、絶賛募集中(looking for commiters!)
+
+== Future Works
+
+see [[http://bitbucket.org/kuenishi/yatce/issues/?status=new&status=open|Issues]].
 
 == Sample Code and little Tutorial ==
 

File Tutorial.wiki

+== Welcome ==
+
+YATCE is Yet Another Tokyo Cabinet-Erlang binding. Pronounces like <catch>. 
+ようこそ! YATCEは「やっちぇ」と読んでいます。もっといい名前があったら教えてください。
+
+== Why Yatce? ==
+
+この手のバインディングはtcerlとかさんざんガイシュツなんですが、勢いで作り始めてしまいました。これまでのものとちょっと違うのは、これまでのはいわゆる普通のportとメッセージング(!のやつ)を使ったものが多いのですが、!を使うためコンテキスト切り替えとかメッセージングとかいろいろ余計なコストがかかっていたのですが、erlang:port_control/3という関数を使うことによってそういったものをすっ飛ばしていきなりCのコードを実行してしまうという素人にはオススメできない機能を素人の僕が使っていたりします。
+
+== Features ==
+
+* erlang:port_control/3を使っているので(多分)速い
+* もちろんconcurrentな実装。マルチコアの性能を使い切っている(はず)
+* OO-friendlyなインターフェース(tokyocabinet.idlになんちゃって準拠)
+* いちどリンクするだけで複数のTCのDBファイルを更新可能
+* LGPL(ただし提供形態は応相談、ゆくゆくはどうしようか悩んでいる)
+* Works on Linux(*nix-like OSes) and Mac Leopard / erlang R13B01 / TC 1.4.24
+
+== Current Status ==
+
+* Latest Version: 0.7.1
+* port_controlで動作するっぽいところを確認
+* tcadb系の大体のオペレーションをサポート
+** CRUD, tcadbsync, tcadbpath
+* CRUをかなり回してみたけどメモリが漏れていないことを確認
+* タプルとかリストのCRUDは未対応
+* コミッタ、絶賛募集中(looking for commiters!)
+
+== Future Works
+
+see [[http://bitbucket.org/kuenishi/yatce/issues/?status=new&status=open|Issues]].
+
+== Sample Code and little Tutorial ==
+
+# ダウンロード、展開 (`hg clone http://bitbucket.org/kuenishi/yatce`とか)
+# 環境に合わせてMakefileを書き換える
+## `make` -> shows usage
+## `make b` -> builds all source code
+## `make t` -> regression test
+## `make c` -> cleans object files
+# ebin/tctest.erlを試しに実行してみるなど
+# 自分のプログラムを書こう!
+{{{
+#!erlang
+
+simple_test()->
+  ok = yatce:init([{libdir, "../c_src/libyatce.so"}]),
+  T = yatce:newdb('/tmp/tablename.tch', []),
+  Key = "somekey",
+  Value = "somevalue",
+  {ok, inserted} = T:put(Key, Value),
+  {ok, Value} = T:get(Key),
+  {ok, inserted} = T:put("key2", <<"keyhoge">>),
+  {ok, closed} = T:close(),
+  yatce:fini().
+}}}
+
+== History / ChangeLogs ==
+
+See [[http://bitbucket.org/kuenishi/yatce/src/tip/ChangeLog|ChangeLog]].
+
+== Others == 
+
+See [[http://erlang.g.hatena.ne.jp/kuenishi|my erlang development diary]] for fresh information. sorry it's written in Japanese. I'll re-think, if there are much needs for English information.
+
+----
+
+=== Syntax highlighting ===
+
+You can also highlight snippets of text, we use the excellent [[http://www.pygments.org/|Pygments]] library.
+
+You can check out the source of this page to see how that's done, and make sure to bookmark [[http://pygments.org/docs/lexers/|the vast library of Pygment lexers]], we accept the 'short name' or the 'mimetype' of anything in there.
+
+Have fun!