製品
製品の一覧
Mathematica
Mathematica
学生エディション
Mathematica
ホームエディション
Wolfram
CDF Player
(無料ダウンロード)
CDF(計算可能ドキュメント形式)
web
Mathematica
grid
Mathematica
Wolfram
Workbench
Wolfram
SystemModeler
Wolfram
Finance Platform
Mathematica
アドオン
Wolfram|Alpha関連製品
ソリューション
ソリューションの一覧
工学
航空宇宙工学と防衛
化学工学
制御系
電気工学
画像処理
生産工学
材料科学
機械工学
オペレーションズリサーチ
光学
石油工学
バイオテクノロジーと医学
バイオインフォマティクス
医用画像処理
金融,統計,ビジネスの分析
保険数理
データの解析とマイニング
計量経済学
経済学
金融工学と数学
財務リスク管理
統計
ソフトウェア工学とコンテンツ配信
オーサリングと出版
インターフェース開発
ソフトウェア工学
Web開発
科学
天文学
バイオサイエンス
化学
環境科学
地球科学
社会・行動科学
デザイン,芸術,娯楽
ゲームデザイン・特殊効果・ジェネレーティブアート
教育
高等教育
短大・専門学校
初等・中等教育
学生
テクノロジー
CDF(計算可能ドキュメント形式)
高性能並列計算(HPC)
参照:テクノロジーガイド
ご購入
オンラインストア
他の購入方法
Volumeライセンスとサイトライセンス
販売部へのご連絡
ソフトウェア
サービス
アップグレード
トレーニング
書籍
Wolframグッズ
サポート
テクニカルサポートページ
Mathematica
ドキュメント
知識ベース
ラーニングセンター
テクニカルサービス
コミュニティ & フォーラム
トレーニング
サイトライセンスの確認
Wolframユーザポータル
会社概要
会社概要
ニュースとイベント
Wolframブログ
パートナーシップ
採用情報
Mathematica
の歴史
Stephen Wolframのホームページ
連絡先
Wolfram Webサイト
サイトの一覧
Wolfram|Alpha
デモンストレーションプロジェクト
MathWorld
Integrator
Wolfram Functions Site
Mathematica Journal
Wolfram Media
Wolfram
Tones
Wolfram Science
Stephen Wolfram
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE
DOCUMENTATION CENTER
FOR THE LATEST INFORMATION.
DOCUMENTATION CENTER SEARCH
New to
Mathematica
?
Find your learning path
»
Mathematica
>
コアとなる言語
>
式
>
評価の制御
>
HoldAll
>
MATHEMATICA 組込みシンボル
属性
非標準な評価手順
チュートリアル »
|
Unevaluated
Hold
HoldFirst
HoldRest
NHoldAll
HoldAllComplete
SequenceHold
Extract
関連項目 »
|
属性
評価の制御
式
その他 »
HoldAll
HoldAll
属性であり,関数に与えられたすべての引数を未評価に維持することを指定する.
詳細
Evaluate
を使って
HoldAll
の引数の関数を強制的に評価することができる.
関数が属性
HoldAll
を持っていても,引数に現れる
Sequence
オブジェクトはデフォルトではフラットにされ,
Unevaluated
による「包み込み」は無視される.そして,この引数に関連した上向きの値が使われる.
例題
すべて閉じる
例
(1)
In[1]:=
Out[1]=
In[2]:=
Out[2]=
アプリケーション
(3)
スコーピング動作をする多くの関数が
HoldAll
属性を持つ:
関数のリストをプロットする際は,関数ごとに異なるスタイルが使われる:
リスト構造が明白ではない場合は,異なるスタイルは与えられない:
Evaluate
を使ってリスト構造を明らかにする:
リスト中の異なるベクトル値を持つ関数にもまた異なるスタイルが与えられる:
HoldAll
と
Unevaluated
を使ってどこでも評価が起りそうな場所でのシンボルの評価を抑制する:
シンボルが値を持つ場合にもシンボル名の長さを求める:
ユーザの制御構造を実装する:
特性と関係
(14)
Hold
は
HoldAll
属性を持つ入れ物である:
シンボルに作用する関数は,しばしば
HoldAll
属性を必要とする:
この属性がないと,関数はシンボルの値に作用してしまう:
Table
のような制御構造は引数が評価されないようにプロテクトする:
さもなければ,大域変数がその操作に影響することがあるかもしれない:
Evaluate
を使って
HoldAll
関数の引数の評価を強制する:
遅延的定義の右辺の評価を強制する:
Unevaluated
を使って関数が一時的に
HoldAll
の属性を持つかのように扱う:
ホールドされている式の内側の
Unevaluated
は取り除かれない:
次は評価結果の完全な形である:
次は評価前の入力の完全な形である:
純関数の引数の評価を抑制する:
HoldAll
関数にも一連の接合が行われる:
入れ物である
HoldComplete
を使ってそのような変換も抑制する:
この動作の原因となる属性は
HoldAllComplete
である:
置換はホールドされた式の内側で行われる:
ホールドされた式に挿入する:
NHoldAll
は
N
から引数をプロテクトするが,それ以外は通常と同じようにそれらの引数を評価する:
HoldPattern
はパターンが評価されないようにするが,パターンマッチを妨げることはしない:
関連項目
Unevaluated
Hold
HoldFirst
HoldRest
NHoldAll
HoldAllComplete
SequenceHold
Extract
チュートリアル
属性
非標準な評価手順
その他
属性
評価の制御
式
バージョン 1 の新機能