|
A.4.1 標準の評価手順
Mathematicaはh[ , , ... ]の形式の式の評価を以下の手順で行う.式が変化するごとに,同じ手順による評価処理が行われる.
式が基本的なオブジェクト(Integer,String等)のときは,そのままにしておく.
式の頭部hを評価する.
式の各要素 を順番に評価する.もしhがHoldFirst,HoldRest,HoldAll,HoldAllCompleteの属性をもつならば,対応する要素は評価しない.
hにHoldAllCompleteの属性がない限り,要素 にかかっているUnevaluatedを取り外す.
hにSequenceHoldの属性がない限り,要素 中のSequenceオブジェクトを平坦化する.
hにFlatの属性があるならば,頭部hについてネストしている式をすべて平坦化する.
hにListableの属性があるならば,リストの要素 のそれぞれに対してhを分配する.
hにOrderlessの属性があるならば,成分 を順番に並べる.
hにHoldAllCompleteの属性がない限り,h[ f[ , ... ], ... ]形式のオブジェクトについて定義された,fに関する変換規則で可能なものはすべて適用する.
h[ f[ , ... ], ... ]形式のオブジェクトに,fに関する組込み変換規則を適用する.
h[ , , ... ],またはh[ ... ][ ... ]について定義された変換規則で可能なものを適用する.
h[ , , ... ],またはh[ ... ][ ... ]について組込みの変換規則を適用する.
|