title: builtins

(2007,07/04作成)

JenaEngineビルトイン一覧
========================================

JenaEngine(jp.ac.do_johodai.j314.sw.jeパッケージ)で
提供しているビルトインの一覧です．箇条書きの最初の
項目がビルトイン名次の括弧の中はそのビルトインを
提供するJavaのクラス名です．ビルトインの引数などの
詳細は，javadocのクラスの説明の部分に記述することに
してゆくので，そちらを参照下さい．

Javaのクラス名はJenaEngineを自前で作成するプログラムを
作成する場合にも必要な情報です．詳細は
[JenaEngine.mm](./JenaEngine.mm)に記述があります．

基本的な処理のビルトイン
----------------------------------------

* bind(BindBuiltin)
* read(ReadBuiltin)
* rand_int(RandIntBuiltin)

絶対に必要だろうと思っていたbindビルトインは実際には
あまり使う機会が無いようです．readはルールの進行をブロック
してしまうので，特に前向き推論の場合は非推奨ビルトイン
になります．かわりに三つ組み入力を使って下さい．

簡易通信のビルトイン
----------------------------------------

* send_n3(SendN3Builtin)

3DCG キャラクタ関係のビルトイン
----------------------------------------

* a3new(A3NewBuiltin)
* a3setVisible(A3SetVisibleBuiltin)
* a3change(A3ChangeBuiltin)
* a3print(A3PrintBuiltin)
* a3read(A3ReadBuiltin)
* a3yesno(A3YesNoBuiltin)

a3readビルトインはreadビルトインと同様
の理由で非推奨です．

リスト処理関係のビルトイン
----------------------------------------

* list(ListBuiltin)
* cons(ConsBuiltin)
* list_append(ListAppendBuiltin)
* list2string(List2StringBuiltin)
* print_list(PrintListBuiltin)

他にもJenaがデフォルトで提供するビルトイン
があります．詳細は[list.mm](./list.mm)を参照
して下さい．

文字列処理関係のビルトイン
----------------------------------------

* startsWith(StartsWithBuiltin)
* endsWith(EndsWithBuiltin)
* notStartsWith(NotStartsWithBuiltin)
* notEndsWith(NotEndsWithBuiltin)
* int2string(Int2StringBuiltin)
* string2int(String2IntBuiltin)
* stringConcat(StringConcatBuiltin)
* stringFormat(StringFormatBuiltin)

ほとんど名前から機能が予想できると思いますが，
最後のstringFormatはjava.lang.String.format
を使って文字列をフォーマットするためのビルトイン
です．

形態素解析のためのビルトイン
----------------------------------------

* KeitaisoInitBuiltin
* KeitaisoBuiltin
* KeitaisokaisekiBuiltin

詳細は[keitaiso.mm](./keitaiso.mm)で説明
しています．

状態変数のためのビルトイン
----------------------------------------

* state_set(StateSetBuiltin)
* state_get(StateGetBuiltin)
* state_print(StatePrintBuiltin)

詳しくは，[fms2.mm](./fms2.mm)に記述してゆく
予定です．
