XLT_PAIR(ペア型、リスト型)

Author: 森 洋久 / joshua@globalbase.org +

PROTOTYPE

LISP形式

XLT_PAIR_lisp ::= '(' SP XLT_SEXP_lisp[car] sp '.' sp XLT_SEXP_lisp[cdr] sp ')'

XLT_LIST_lisp ::= '(' sp xlt_list sp ')'

xlt_list ::= XLT_SEXP_lisp

      | XLT_SEXP_lisp SP xlt_list;

XML形式

先頭がシンボルであるリストはXMLの要素として表現可能

cdr要素が XLT_NULL でないペアは表現出来ない.

先頭がシンボルでないリストは表現出来ない。

XLT_LIST_xml ::= TAG XLT_SEXP_xml END_TAG

TAG ::= '<' XLT_SYMBOL_lisp sp ATTRIBUTES '>'

END_TAG ::= '<' '/' XLT_SYMBOL_lisp '>'

INTERNAL ELEMENTS

sp はスペースやタブ。

XLT_SEXP_lisp はLISP形式で記述された任意の型のデータを示す。

XLT_SEXP_xml はXML形式で記述された任意の型のデータを示す。

ATTRIBUTES

AGENT(S) BELONGS

xl

ELEMENTS PATHES

なし

EXPLANATION

XLT_PAIR は任意の型のデータへの2つのポインタcarとcdrからなるポインタのペアである。しかし、XLでは純粋なペアとして使うことはない。ペアを組み合わせたリストとして利用する。リストとは、内部データ的には、

	xlt_list_ ::= ^"'('" SP XLT_SEXP_lisp[car] SP '.' SP xlt_list_ ')'
		| XLT_NULL
	 

という最後が XLT_NULL のペアの連続と同値と考えることが出来る。

[UP] Go To Page Top

REFERENCE

BUGS



[UP] Go To Page Top
  GLOBALBASE has particated in the open source software support program SORCE FORGE SourceForge.jp SourceForge.net Logo