home *** CD-ROM | disk | FTP | other *** search
/ FreeWare Collection 3 / FreeSoftwareCollection3pd199x-jp.img / towns_os / quasar / referenc.doc < prev    next >
Text File  |  1980-01-02  |  83KB  |  3,592 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.             Quasar Prolog リファレンス・マニュアル
  22.                         (Version 0.36)
  23.  
  24.                              1990年 9月版
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.                              Copyright (C) 1990
  45.                                  硴崎 賢一
  46.                             All rights reserved.
  47.  
  48.                              電子メイルアドレス
  49.                                 junet: kakizaki@cse.kyutech.ac.jp
  50.                           NIFTY-Serve: PBB00353
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108. ----------------------------------------------------------------------------
  109. 商標
  110. ----------------------------------------------------------------------------
  111.  
  112.  MS-DOS は米国マイクロソフト社の登録商標です.
  113.  UNIX オペレーティング・システムは,AT&T のベル研究所が開発し,AT&T がライセ
  114. ンスしています.
  115.  PS/55 は米国 IBM 社の商標です.
  116.  その他,本文書で使用しているシステム名,製品名は一般に各開発メーカーの登録
  117. 商標です.
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129. Quasar Prolog リファレンスマニュアル                                    目次
  130.  
  131.  
  132.                             -  目  次  -
  133.  
  134.  
  135.  
  136.  
  137. 1. プログラム管理   .................................................    1
  138.  
  139. 2. プログラムの実行制御   ...........................................    5
  140.  
  141. 3. 内部データベース   ...............................................   10
  142.  
  143. 4. 入出力   .........................................................   13
  144.   4.1 ファイルとストリーム   ..........................................   13
  145.   4.2 標準入出力操作   ................................................   16
  146.   4.3 入出力制御   ....................................................   18
  147.   4.4 入力   ..........................................................   19
  148.   4.5 出力   ..........................................................   23
  149.   4.6 使用者への問い合わせ   ..........................................   30
  150.  
  151. 5. ファイルシステム   ...............................................   32
  152.   5.1 ファイル   ......................................................   32
  153.   5.2 ディレクトリ   ..................................................   32
  154.  
  155. 6. 算術演算   .......................................................   34
  156.  
  157. 7. データ型   .......................................................   37
  158.   7.1 データ型の判定   ................................................   37
  159.   7.2 データ型の変換   ................................................   42
  160.  
  161. 8. デバッガ   .......................................................   44
  162.  
  163. 9. その他の機能   ...................................................   48
  164.   9.1 外部コマンドの実行   ............................................   48
  165.   9.2 環境の照会   ....................................................   48
  166.   9.3 対話記録   ......................................................   50
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.                                 - 1 -
  190.  
  191.  
  192. Quasar Prolog リファレンスマニュアル                          プログラム管理
  193.  
  194.  
  195. ----------------------------------------------------------------------------
  196. 1. プログラム管理
  197. ----------------------------------------------------------------------------
  198.  
  199. ----------------------------------------------------------------------------
  200. consult(+File)
  201. ----------------------------------------------------------------------------
  202.  
  203. ●概要
  204.  指定されたプログラムを読み込みます.
  205.  
  206. ●解説
  207.  ファイル名は,シンボル型でなければなりません.
  208.  指定されたファイルの中に定義されている述語を内部データベースに読み込みます.
  209. 読み込む前に,内部データベースの中に同じファンクタとアリティの述語があった場
  210. 合には,新たに読み込む定義を以前のものに追加します.
  211.  読み込み中のファイルに文法エラーがあった場合には,エラーが報告されますが,
  212. ファイルの読み込みは中断されず,最後まで読み込まれます.
  213.  ファイルを読み込むと成功しますが,ファイルが存在しないなどで読み込むことが
  214. できなかった場合には失敗します.
  215.  
  216. ●エラー条件
  217.  File がシンボル型でない場合には,エラーになります.
  218.  
  219. ●その他
  220.  
  221.  
  222. ----------------------------------------------------------------------------
  223. reconsult(+File)
  224. ----------------------------------------------------------------------------
  225.  
  226. ●概要
  227.  指定されたプログラムを読み込みます.
  228.  
  229. ●解説
  230.  reconsult/1 は,下記の処理を除き,consult/1 と同様な処理をおこないます.
  231.  指定されたファイルの中に定義されている述語を内部データベースに読み込みます.
  232. 読み込む前に,内部データベースの中に同じファンクタとアリティの述語があった場
  233. 合には,新たに読み込む定義を以前のと置き換えます.
  234.  
  235. ●エラー条件
  236. ●その他
  237.  
  238.  
  239. ----------------------------------------------------------------------------
  240. [+Files]
  241. ----------------------------------------------------------------------------
  242.  
  243. ●概要
  244.  指定されたプログラムを読み込みます.
  245.  
  246. ●解説
  247.  単にファイル名が与えられた場合には,そのファイルを consult/1 と同様に読み込
  248. み,ファイル名の前に - が付加されている場合には,そのファイルを reconsult/1 
  249. と同様に読み込みます.リストの要素として複数のファイル名を記述した場合には,
  250.  
  251.  
  252.                                 - 1 -
  253.  
  254.  
  255. Quasar Prolog リファレンスマニュアル                          プログラム管理
  256.  
  257.  
  258. それらのファイルが順に読み込まれます.
  259.  
  260. ●エラー条件
  261. ●その他
  262.  
  263.  
  264. ----------------------------------------------------------------------------
  265. save(+File)
  266. ----------------------------------------------------------------------------
  267.  
  268. ●概要
  269.  現在の Quasar Prolog の状態をファイルに保存します.
  270.  
  271. ●解説
  272.  まだ用意されていません.
  273.  
  274. ●エラー条件
  275. ●その他
  276.  
  277.  
  278. ----------------------------------------------------------------------------
  279. listing
  280. ----------------------------------------------------------------------------
  281.  
  282. ●概要
  283.  すべての述語の定義を出力します.
  284.  
  285. ●解説
  286.  内部データベースに格納されているすべての述語定義を出力します.
  287.  listing は必ず成功します.
  288.  
  289. ●エラー条件
  290. ●その他
  291.  Quasar Prolog の組み込み述語などの,使用者が定義した述語以外は表示されませ
  292. ん.
  293.  
  294.  
  295. ----------------------------------------------------------------------------
  296. listing(+Pred)
  297. ----------------------------------------------------------------------------
  298.  
  299. ●概要
  300.  指定された述語の定義を出力します.
  301.  
  302. ●解説
  303.  Pred で指定された述語の定義を出力します.
  304.  
  305. ●エラー条件
  306. ●その他
  307.  Quasar Prolog の組み込み述語などの,使用者が定義した述語以外は表示されませ
  308. ん.
  309.  
  310.  
  311. ----------------------------------------------------------------------------
  312. apropos
  313.  
  314.  
  315.                                 - 2 -
  316.  
  317.  
  318. Quasar Prolog リファレンスマニュアル                          プログラム管理
  319.  
  320.  
  321. ----------------------------------------------------------------------------
  322.  
  323. ●概要
  324.  処理系内部に記録されているシンボル型データに関する情報を表示します.
  325.  
  326. ●解説
  327. ●エラー条件
  328. ●その他
  329.  
  330.  
  331. ----------------------------------------------------------------------------
  332. apropos(+Name)
  333. ----------------------------------------------------------------------------
  334.  
  335. ●概要
  336.  指定された文字列を含むシンボルアトムの情報を出力します.
  337.  
  338. ●解説
  339.  Name はシンボル型か文字リスト型の引数で,Name で指定された文字列を含むシン
  340. ボル型データに関する情報を表示します.
  341.  
  342. ●エラー条件
  343. ●その他
  344.  
  345.  
  346. ----------------------------------------------------------------------------
  347. current_symbol(?Symbol)
  348. ----------------------------------------------------------------------------
  349.  
  350. ●概要
  351.  システム内部に記録されているシンボル型データを取得します.
  352.  
  353. ●解説
  354. ●エラー条件
  355. ●その他
  356.  
  357.  
  358. ----------------------------------------------------------------------------
  359. current_structure(?Symbol, ?Struct)
  360. ----------------------------------------------------------------------------
  361.  
  362. ●概要
  363.  システム内部に記録されている構造を取得します.
  364.  
  365. ●解説
  366. ●エラー条件
  367. ●その他
  368.  
  369.  
  370. ----------------------------------------------------------------------------
  371. current_predicate(?Symbol, ?Pred)
  372. ----------------------------------------------------------------------------
  373.  
  374. ●概要
  375.  システム内部に記録されているユーザ定義述語を取得します.
  376.  
  377.  
  378.                                 - 3 -
  379.  
  380.  
  381. Quasar Prolog リファレンスマニュアル                          プログラム管理
  382.  
  383.  
  384.  
  385. ●解説
  386. ●エラー条件
  387. ●その他
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.                                 - 4 -
  442.  
  443.  
  444. Quasar Prolog リファレンスマニュアル                                実行制御
  445.  
  446.  
  447. ----------------------------------------------------------------------------
  448. 2. プログラムの実行制御
  449. ----------------------------------------------------------------------------
  450.  
  451.  
  452. ----------------------------------------------------------------------------
  453. +Goal1, +Goal2
  454. ----------------------------------------------------------------------------
  455.  
  456. ●概要
  457.  2つのゴールがともに成功した場合に成功します.
  458.  
  459. ●解説
  460.  この述語は,Goal1, Goal2 の順でゴールの実行を行います.Goal1 が失敗した場合
  461. には,Goal2 は実行されることなく失敗します.
  462.  Goal1 が成功し Goal2 が失敗した場合には,Goal1 の別解を求め,再度 Goal2 を
  463. 実行します.再び Goal2 が失敗した場合には,Goal1 に別解がある限り繰り返し Go
  464. al1 の別解を求め,Goal2 を実行します.Goal1 に別解がなくなった場合には,この
  465. 述語は失敗します.
  466.  
  467. ●エラー条件
  468. ●その他
  469.  
  470.  
  471. ----------------------------------------------------------------------------
  472. +Goal1 ; +Goal2
  473. ----------------------------------------------------------------------------
  474.  
  475. ●概要
  476.  2つのゴールのどちらかが成功した場合に成功します.
  477.  
  478. ●解説
  479.  この述語は,Goal1 が成功した場合には,Goal2 を実行することなく成功します.
  480. Goal1 が失敗した場合には Goal2 が実行され,Goal2 が成功した時にはこの述語も成
  481. 功し,Goal2 が失敗したときにはこの述語も失敗します.
  482.  
  483. ●エラー条件
  484. ●その他
  485.  
  486.  
  487. ----------------------------------------------------------------------------
  488. +If -> +Then
  489. ----------------------------------------------------------------------------
  490.  
  491. ●概要
  492.  IF~THEN形式の条件判断処理を行います.
  493.  
  494. ●解説
  495.  If が成功した場合には,Then を実行します.この述語は If, Then の両者が成功
  496. した場合にのみ成功します.
  497.  
  498. ●エラー条件
  499. ●その他
  500.  
  501.  
  502.  
  503.  
  504.                                 - 5 -
  505.  
  506.  
  507. Quasar Prolog リファレンスマニュアル                                実行制御
  508.  
  509.  
  510. ----------------------------------------------------------------------------
  511. +If -> +Then ; +Else
  512. ----------------------------------------------------------------------------
  513.  
  514. ●概要
  515.  IF~THEN~ELSE形式の条件判断処理を行います.
  516.  
  517. ●解説
  518.  この述語は,If が成功した時には Then を実行し,Ig が失敗した時には Else を
  519. 実行します.If の実行結果によって選ばれた Then あるいは Else が成功した場合に
  520. 成功し,失敗した場合に失敗します.
  521.  If が成功して選択された Then の実行が失敗した場合には,Else は実行されるこ
  522. とはありません.
  523.  
  524. ●エラー条件
  525. ●その他
  526.  
  527.  
  528. ----------------------------------------------------------------------------
  529. !
  530. ----------------------------------------------------------------------------
  531.  
  532. ●概要
  533.  他の候補節を削除します.
  534.  
  535. ●解説
  536. ●エラー条件
  537. ●その他
  538.  
  539.  
  540. ----------------------------------------------------------------------------
  541. true
  542. ----------------------------------------------------------------------------
  543.  
  544. ●概要
  545.  必ず成功します.
  546.  
  547. ●解説
  548. ●エラー条件
  549. ●その他
  550.  
  551.  
  552. ----------------------------------------------------------------------------
  553. fail
  554. ----------------------------------------------------------------------------
  555.  
  556. ●概要
  557.  必ず失敗します.
  558.  
  559. ●解説
  560. ●エラー条件
  561. ●その他
  562.  
  563.  
  564. ----------------------------------------------------------------------------
  565.  
  566.  
  567.                                 - 6 -
  568.  
  569.  
  570. Quasar Prolog リファレンスマニュアル                                実行制御
  571.  
  572.  
  573. call(+Goals)
  574. ----------------------------------------------------------------------------
  575.  
  576. ●概要
  577.  引数をゴールとして実行します.
  578.  
  579. ●解説
  580. ●エラー条件
  581. ●その他
  582.  
  583.  
  584. ----------------------------------------------------------------------------
  585. not(+Goals)
  586. ----------------------------------------------------------------------------
  587.  
  588. ●概要
  589.  引数のゴールが成功する場合に失敗します.
  590.  
  591. ●解説
  592. ●エラー条件
  593. ●その他
  594.  
  595.  
  596. ----------------------------------------------------------------------------
  597. repeat
  598. ----------------------------------------------------------------------------
  599.  
  600. ●概要
  601.  繰り返し処理を行います.
  602.  
  603. ●解説
  604.  fail と組み合わせて繰り返し処理を行います.
  605.  
  606. ●エラー条件
  607. ●その他
  608.  
  609.  
  610. ----------------------------------------------------------------------------
  611. repeat(+Num)
  612. ----------------------------------------------------------------------------
  613.  
  614. ●概要
  615.  指定回数の繰り返し処理を行います.
  616.  
  617. ●解説
  618.  fail と組み合わせてNumで指定された回数の繰り返し処理を行います.
  619.  
  620. ●エラー条件
  621. ●その他
  622.  
  623.  
  624. ----------------------------------------------------------------------------
  625. for(-Var, +Start, +End)
  626. ----------------------------------------------------------------------------
  627.  
  628.  
  629.  
  630.                                 - 7 -
  631.  
  632.  
  633. Quasar Prolog リファレンスマニュアル                                実行制御
  634.  
  635.  
  636. ●概要
  637.  制御変数を利用する繰り返し処理を行います.
  638.  
  639. ●解説
  640. ●エラー条件
  641. ●その他
  642.  
  643.  
  644. ----------------------------------------------------------------------------
  645. for(-Var, +Start, +End, +Step)
  646. ----------------------------------------------------------------------------
  647.  
  648. ●概要
  649.  増減値を指定した制御変数を利用する繰り返し処理を行います.
  650.  
  651. ●解説
  652. ●エラー条件
  653. ●その他
  654.  
  655.  
  656. ----------------------------------------------------------------------------
  657. catch(+Tag, -Value)
  658. ----------------------------------------------------------------------------
  659.  
  660. ●概要
  661.  大域脱出の受け手を設定します.
  662.  
  663. ●解説
  664.  throw/2 によって行う大域脱出の受け手を設定します.Tag は,シンボル型,整数
  665. 型,浮動小数型のいずれかのデータを指定します.catch/2 は,この Tag のデータと
  666. 一致する値を第1引数に持つ throw/2 の受け手となります.
  667.  Value は,変数型のデータを取ります.Value は,最初に catch/2 が成功した場合
  668. には変数のままですが,throw/2 の大域脱出先として成功した場合には,throw/2 の
  669. 第2引数で指定された値に具体化されます.
  670.  
  671. ●エラー条件
  672. ●その他
  673.  
  674.  
  675. ----------------------------------------------------------------------------
  676. throw(+Tag, +Value)
  677. ----------------------------------------------------------------------------
  678.  
  679. ●概要
  680.  大域脱出を行います.
  681.  
  682. ●解説
  683.  Tag と同一の値を第1引数に持ち,もっとも最近に実行され,有効な catch/2 に大
  684. 域脱出を行います.受け手となった catch/2 の第2引数の値として Value を渡しま
  685. す.Tag, Value は,シンボル型,整数型,浮動小数型のいずれかでなければなりませ
  686. ん.
  687.  
  688. ●エラー条件
  689. ●その他
  690.  
  691.  
  692.  
  693.                                 - 8 -
  694.  
  695.  
  696. Quasar Prolog リファレンスマニュアル                                実行制御
  697.  
  698.  
  699.  
  700. ----------------------------------------------------------------------------
  701. break
  702. ----------------------------------------------------------------------------
  703.  
  704. ●概要
  705.  ブレークモードに入ります.
  706.  
  707. ●解説
  708. ●エラー条件
  709. ●その他
  710.  まだ機能していません.
  711.  
  712.  
  713. ----------------------------------------------------------------------------
  714. abort
  715. ----------------------------------------------------------------------------
  716.  
  717. ●概要
  718.  処理を中断します.
  719.  
  720. ●解説
  721. ●エラー条件
  722. ●その他
  723.  
  724.  
  725. ----------------------------------------------------------------------------
  726. exit
  727. ----------------------------------------------------------------------------
  728.  
  729. ●概要
  730.  Quasar Prolog を終了します.
  731.  
  732. ●解説
  733. ●エラー条件
  734. ●その他
  735.  
  736.  
  737. ----------------------------------------------------------------------------
  738. halt
  739. ----------------------------------------------------------------------------
  740.  
  741. ●概要
  742.  Quasar Prolog を終了します.
  743.  
  744. ●解説
  745. ●エラー条件
  746. ●その他
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.                                 - 9 -
  757.  
  758.  
  759. Quasar Prolog リファレンスマニュアル                            データベース
  760.  
  761.  
  762. ----------------------------------------------------------------------------
  763. 3. 内部データベース
  764. ----------------------------------------------------------------------------
  765.  
  766.  
  767. ----------------------------------------------------------------------------
  768. assert(+Term)
  769. ----------------------------------------------------------------------------
  770.  
  771. ●概要
  772.  節を内部データベースに登録します.
  773.  
  774. ●解説
  775.  assertz/1 と等価です.
  776.  
  777. ●エラー条件
  778. ●その他
  779.  
  780.  
  781. ----------------------------------------------------------------------------
  782. asserta(+Term)
  783. ----------------------------------------------------------------------------
  784.  
  785. ●概要
  786.  節を内部データベースの最初に登録します.
  787.  
  788. ●解説
  789.  Term で指定される節を内部データベースの最初に登録します.節を登録できた場合
  790. には成功します.
  791.  
  792. ●エラー条件
  793.  動的述語として宣言されていない述語の節を登録しようとした場合には,エラーが
  794. 検出されます.
  795.  システム組み込み述語と同一のファンクタ/アリティを頭部に持つ節を登録しよう
  796. とした場合には,エラーが検出されます.
  797.  節の頭部として不適切な項が使用されている場合には,エラーが生じます.
  798.  
  799. ●その他
  800.  
  801.  
  802. ----------------------------------------------------------------------------
  803. assertz(+Term)
  804. ----------------------------------------------------------------------------
  805.  
  806. ●概要
  807.  節を内部データベースの最後に登録します.
  808.  
  809. ●解説
  810.  Term で指定される節を内部データベースの最後に登録します.節を登録できた場合
  811. には成功します.
  812.  
  813. ●エラー条件
  814.  asserta/1 と同様です.
  815.  
  816. ●その他
  817.  
  818.  
  819.                                 - 10 -
  820.  
  821.  
  822. Quasar Prolog リファレンスマニュアル                            データベース
  823.  
  824.  
  825.  
  826.  
  827. ----------------------------------------------------------------------------
  828. retract(+Term)
  829. ----------------------------------------------------------------------------
  830.  
  831. ●概要
  832.  節をデータベースから削除します.
  833.  
  834. ●解説
  835.  Term で指定された節と単一化可能な節を内部データベースから削除します.節を削
  836. 除できた場合には成功します.単一化可能な節が複数ある場合には,retract/1 は複
  837. 数回成功し,成功するたびに,はじめの方から節を削除します.削除する節がない場
  838. 合には,retract/1 は失敗します.
  839.  
  840. ●エラー条件
  841.  動的述語として宣言されていない述語の節を削除しようとした場合には,エラーが
  842. 検出されます.
  843.  システム組み込み述語と同一のファンクタ/アリティを頭部に持つ節を削除しよう
  844. とした場合には,エラーが検出されます.
  845.  節の頭部として不適切な項が使用されている場合には,エラーが生じます.
  846.  
  847. ●その他
  848.  
  849.  
  850. ----------------------------------------------------------------------------
  851. retract_all(+Term)
  852. ----------------------------------------------------------------------------
  853.  
  854. ●概要
  855.  引数と単一化可能な節の全てを内部データベースから削除します.
  856.  
  857. ●解説
  858.  Term で指定された節と単一化可能な節のすべてを内部データベースから削除しま
  859. す.節を削除できた場合には成功します.
  860.  
  861. ●エラー条件
  862.  retract/1 と同様です.
  863.  
  864. ●その他
  865.  
  866.  
  867. ----------------------------------------------------------------------------
  868. abolish(+Func, +Arity)
  869. ----------------------------------------------------------------------------
  870.  
  871. ●概要
  872.  述語を内部データベースから削除します.
  873.  
  874. ●解説
  875.  Func, Arity で指定されたファンクタとアリティに合致する述語を内部データベー
  876. スから削除します.
  877.  
  878. ●エラー条件
  879.  動的述語として宣言されていない述語の節を削除しようとした場合には,エラーが
  880.  
  881.  
  882.                                 - 11 -
  883.  
  884.  
  885. Quasar Prolog リファレンスマニュアル                            データベース
  886.  
  887.  
  888. 検出されます.
  889.  システム組み込み述語と同一のファンクタ/アリティを頭部に持つ節を削除しよう
  890. とした場合には,エラーが検出されます.
  891.  
  892. ●その他
  893.  
  894.  
  895. ----------------------------------------------------------------------------
  896. clause(+Head, ?Body)
  897. ----------------------------------------------------------------------------
  898.  
  899. ●概要
  900.  引数と単一化可能な節の定義を内部データベースから取り出します.
  901.  
  902. ●解説
  903.  Head で指定された頭部を持つ節の,頭部と Head,本体と Body を単一化します.
  904. 単一化できた場合には成功します.単一化可能な節が複数ある場合には,clause/2 は
  905. 複数回成功し,成功するたびに,はじめの方から節を単一化した結果を得ます.単一
  906. 化可能な節がない場合には,clause/2 は失敗します.
  907.  
  908. ●エラー条件
  909. ●その他
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.                                 - 12 -
  946.  
  947.  
  948. Quasar Prolog リファレンスマニュアル                                  入出力
  949.  
  950.  
  951. ----------------------------------------------------------------------------
  952. 4. 入出力
  953. ----------------------------------------------------------------------------
  954.  
  955.  
  956. ----------------------------------------------------------------------------
  957. 4.1 ファイルとストリーム
  958. ----------------------------------------------------------------------------
  959.  
  960. ----------------------------------------------------------------------------
  961. open(+File, +Mode, -Stream)
  962. ----------------------------------------------------------------------------
  963.  
  964. ●概要
  965.  ファイルをオープンします.
  966.  
  967. ●解説
  968. ●エラー条件
  969. ●その他
  970.  
  971.  
  972. ----------------------------------------------------------------------------
  973. close(+File)
  974. ----------------------------------------------------------------------------
  975.  
  976. ●概要
  977.  オープンされているファイルをクローズします.
  978.  
  979. ●解説
  980. ●エラー条件
  981. ●その他
  982.  
  983.  
  984. ----------------------------------------------------------------------------
  985. close_all
  986. ----------------------------------------------------------------------------
  987.  
  988. ●概要
  989.  オープンされているファイルを全てクローズします.
  990.  
  991. ●解説
  992. ●エラー条件
  993. ●その他
  994.  
  995.  
  996. ----------------------------------------------------------------------------
  997. clear_input(+Stream)
  998. ----------------------------------------------------------------------------
  999.  
  1000. ●概要
  1001.  入力ストリームのバッファの内容を消去します.
  1002.  
  1003. ●解説
  1004. ●エラー条件
  1005. ●その他
  1006.  
  1007.  
  1008.                                 - 13 -
  1009.  
  1010.  
  1011. Quasar Prolog リファレンスマニュアル                                  入出力
  1012.  
  1013.  
  1014.  
  1015.  
  1016. ----------------------------------------------------------------------------
  1017. clear_input
  1018. ----------------------------------------------------------------------------
  1019.  
  1020. ●概要
  1021.  標準入力ストリームのバッファの内容を消去します.
  1022.  
  1023. ●解説
  1024. ●エラー条件
  1025. ●その他
  1026.  
  1027.  
  1028. ----------------------------------------------------------------------------
  1029. force_output(+Stream)
  1030. ----------------------------------------------------------------------------
  1031.  
  1032. ●概要
  1033.  出力ストリームのバッファの内容を強制的に書き出します.
  1034.  
  1035. ●解説
  1036. ●エラー条件
  1037. ●その他
  1038.  
  1039.  
  1040. ----------------------------------------------------------------------------
  1041. force_output
  1042. ----------------------------------------------------------------------------
  1043.  
  1044. ●概要
  1045.  標準出力ストリームのバッファの内容を強制的に書き出します.
  1046.  
  1047. ●解説
  1048. ●エラー条件
  1049. ●その他
  1050.  
  1051.  
  1052. ----------------------------------------------------------------------------
  1053. flash_all
  1054. ----------------------------------------------------------------------------
  1055.  
  1056. ●概要
  1057. ●解説
  1058. ●エラー条件
  1059. ●その他
  1060.  
  1061.  
  1062. ----------------------------------------------------------------------------
  1063. current_stream(?File, ?Mode, ?Stream)
  1064. ----------------------------------------------------------------------------
  1065.  
  1066. ●概要
  1067. ●解説
  1068. ●エラー条件
  1069.  
  1070.  
  1071.                                 - 14 -
  1072.  
  1073.  
  1074. Quasar Prolog リファレンスマニュアル                                  入出力
  1075.  
  1076.  
  1077. ●その他
  1078.  
  1079.  
  1080. ----------------------------------------------------------------------------
  1081. current_input(-Stream)
  1082. ----------------------------------------------------------------------------
  1083.  
  1084. ●概要
  1085.  現在の標準入力のストリームを返します.
  1086.  
  1087. ●解説
  1088. ●エラー条件
  1089. ●その他
  1090.  
  1091.  
  1092. ----------------------------------------------------------------------------
  1093. current_output(-Stream)
  1094. ----------------------------------------------------------------------------
  1095.  
  1096. ●概要
  1097.  現在の標準出力のストリームを返します.
  1098.  
  1099. ●解説
  1100. ●エラー条件
  1101. ●その他
  1102.  
  1103.  
  1104. ----------------------------------------------------------------------------
  1105. line_count(+Stream, -Count)
  1106. ----------------------------------------------------------------------------
  1107.  
  1108. ●概要
  1109.  現在までに入出力を行った行数を返します.
  1110.  
  1111. ●解説
  1112. ●エラー条件
  1113. ●その他
  1114.  
  1115.  
  1116. ----------------------------------------------------------------------------
  1117. line_position(+Stream, -Pos)
  1118. ----------------------------------------------------------------------------
  1119.  
  1120. ●概要
  1121.  現在の行において入出力を行ったバイト数を返します.
  1122.  
  1123. ●解説
  1124. ●エラー条件
  1125. ●その他
  1126.  
  1127.  
  1128.  
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134.                                 - 15 -
  1135.  
  1136.  
  1137. Quasar Prolog リファレンスマニュアル                                  入出力
  1138.  
  1139.  
  1140. ----------------------------------------------------------------------------
  1141. 4.2 標準入出力操作
  1142. ----------------------------------------------------------------------------
  1143.  
  1144. ----------------------------------------------------------------------------
  1145. see(+File)
  1146. ----------------------------------------------------------------------------
  1147.  
  1148. ●概要
  1149.  入力用のファイルをオープンします.
  1150.  
  1151. ●解説
  1152. ●エラー条件
  1153. ●その他
  1154.  
  1155.  
  1156. ----------------------------------------------------------------------------
  1157. seeing(-File)
  1158. ----------------------------------------------------------------------------
  1159.  
  1160. ●概要
  1161.  現在入力用にオープンされているファイルを問い合わせます.
  1162.  
  1163. ●解説
  1164. ●エラー条件
  1165. ●その他
  1166.  
  1167.  
  1168. ----------------------------------------------------------------------------
  1169. seen
  1170. ----------------------------------------------------------------------------
  1171.  
  1172. ●概要
  1173.  入力用にオープンされているファイルをクローズします.
  1174.  
  1175. ●解説
  1176. ●エラー条件
  1177. ●その他
  1178.  
  1179.  
  1180. ----------------------------------------------------------------------------
  1181. tell(+File)
  1182. ----------------------------------------------------------------------------
  1183.  
  1184. ●概要
  1185.  出力用のファイルをオープンします.
  1186.  
  1187. ●解説
  1188. ●エラー条件
  1189. ●その他
  1190.  
  1191.  
  1192. ----------------------------------------------------------------------------
  1193. telling(-File)
  1194. ----------------------------------------------------------------------------
  1195.  
  1196.  
  1197.                                 - 16 -
  1198.  
  1199.  
  1200. Quasar Prolog リファレンスマニュアル                                  入出力
  1201.  
  1202.  
  1203.  
  1204. ●概要
  1205.  現在出力用にオープンされているファイルを問い合わせます.
  1206.  
  1207. ●解説
  1208. ●エラー条件
  1209. ●その他
  1210.  
  1211.  
  1212. ----------------------------------------------------------------------------
  1213. told
  1214. ----------------------------------------------------------------------------
  1215.  
  1216. ●概要
  1217.  出力用にオープンされているファイルをクローズします.
  1218.  
  1219. ●解説
  1220. ●エラー条件
  1221. ●その他
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.                                 - 17 -
  1261.  
  1262.  
  1263. Quasar Prolog リファレンスマニュアル                                  入出力
  1264.  
  1265.  
  1266. ----------------------------------------------------------------------------
  1267. 4.3 入出力制御
  1268. ----------------------------------------------------------------------------
  1269.  
  1270. ----------------------------------------------------------------------------
  1271. operator(+Ops, +Type, +Num)
  1272. ----------------------------------------------------------------------------
  1273.  
  1274. ●概要
  1275.  演算子を定義します.
  1276.  
  1277. ●解説
  1278. ●エラー条件
  1279. ●その他
  1280.  
  1281.  
  1282. ----------------------------------------------------------------------------
  1283. current_operator(+Ops, +Type, +Num)
  1284. ----------------------------------------------------------------------------
  1285.  
  1286. ●概要
  1287.  定義されている演算子を調べます.
  1288.  
  1289. ●解説
  1290. ●エラー条件
  1291. ●その他
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.                                 - 18 -
  1324.  
  1325.  
  1326. Quasar Prolog リファレンスマニュアル                                  入出力
  1327.  
  1328.  
  1329. ----------------------------------------------------------------------------
  1330. 4.4 入力
  1331. ----------------------------------------------------------------------------
  1332.  
  1333. ----------------------------------------------------------------------------
  1334. read(-Term, +Stream)
  1335. ----------------------------------------------------------------------------
  1336.  
  1337. ●概要
  1338.  指定されたストリームから項を読み込みます.
  1339.  
  1340. ●解説
  1341.  
  1342.  コンソール入出力の場合には,プロンプト '|: ' が出力されます.
  1343.  
  1344.  入力の終了には,フルストップを忘れないようにしてください.
  1345.  
  1346. ●エラー条件
  1347.  エラーが検出された場合には,エラーメッセージを出力した後に read/1 が失敗し
  1348. ます.他の述語におけるエラーのようにトップレベルに戻らないので注意してくださ
  1349. い.
  1350.  
  1351. ●その他
  1352.  
  1353.  
  1354. ----------------------------------------------------------------------------
  1355. read(-Term)
  1356. ----------------------------------------------------------------------------
  1357.  
  1358. ●概要
  1359.  標準入力から項を読み込みます.
  1360.  
  1361. ●解説
  1362. ●エラー条件
  1363. ●その他
  1364.  
  1365.  
  1366. ----------------------------------------------------------------------------
  1367. read_line(-String)
  1368. ----------------------------------------------------------------------------
  1369.  
  1370. ●概要
  1371. ●解説
  1372. ●エラー条件
  1373. ●その他
  1374.  まだ利用できません.
  1375.  
  1376.  
  1377. ----------------------------------------------------------------------------
  1378. read_string(-String)
  1379. ----------------------------------------------------------------------------
  1380.  
  1381. ●概要
  1382. ●解説
  1383. ●エラー条件
  1384.  
  1385.  
  1386.                                 - 19 -
  1387.  
  1388.  
  1389. Quasar Prolog リファレンスマニュアル                                  入出力
  1390.  
  1391.  
  1392. ●その他
  1393.  まだ利用できません.
  1394.  
  1395.  
  1396. ----------------------------------------------------------------------------
  1397. read_char(-Char, +Stream)
  1398. ----------------------------------------------------------------------------
  1399.  
  1400. ●概要
  1401.  指定されたストリームから文字を読み込みます.
  1402.  
  1403. ●解説
  1404. ●エラー条件
  1405. ●その他
  1406.  
  1407.  
  1408. ----------------------------------------------------------------------------
  1409. read_char(-Char)
  1410. ----------------------------------------------------------------------------
  1411.  
  1412. ●概要
  1413.  標準入力から文字を読み込みます.
  1414.  
  1415. ●解説
  1416. ●エラー条件
  1417. ●その他
  1418.  
  1419.  
  1420. ----------------------------------------------------------------------------
  1421. read_line_chars(-Chars, +Stream)
  1422. ----------------------------------------------------------------------------
  1423.  
  1424. ●概要
  1425.  指定されたストリームから,1行の文字列を文字リスト型として読み込みます.
  1426.  
  1427. ●解説
  1428. ●エラー条件
  1429. ●その他
  1430.  
  1431.  
  1432. ----------------------------------------------------------------------------
  1433. read_line_chars(-Chars)
  1434. ----------------------------------------------------------------------------
  1435.  
  1436. ●概要
  1437.  標準入力から1行の文字列を,文字リスト型として読み込みます.
  1438.  
  1439. ●解説
  1440. ●エラー条件
  1441. ●その他
  1442.  
  1443.  
  1444. ----------------------------------------------------------------------------
  1445. get(-Char)
  1446. ----------------------------------------------------------------------------
  1447.  
  1448.  
  1449.                                 - 20 -
  1450.  
  1451.  
  1452. Quasar Prolog リファレンスマニュアル                                  入出力
  1453.  
  1454.  
  1455.  
  1456. ●概要
  1457. ●解説
  1458. ●エラー条件
  1459. ●その他
  1460.  DEC-10 PROLOGとの互換性維持のために定義しています.
  1461.  classic.qsrを読み込む必要があります.
  1462.  
  1463.  
  1464. ----------------------------------------------------------------------------
  1465. ttyget(-Char)
  1466. ----------------------------------------------------------------------------
  1467.  
  1468. ●概要
  1469. ●解説
  1470. ●エラー条件
  1471. ●その他
  1472.  DEC-10 PROLOGとの互換性維持のために定義しています.
  1473.  classic.qsrを読み込む必要があります.
  1474.  
  1475.  
  1476. ----------------------------------------------------------------------------
  1477. get0(-Char)
  1478. ----------------------------------------------------------------------------
  1479.  
  1480. ●概要
  1481. ●解説
  1482. ●エラー条件
  1483. ●その他
  1484.  DEC-10 PROLOGとの互換性維持のために定義しています.
  1485.  classic.qsrを読み込む必要があります.
  1486.  
  1487.  
  1488. ----------------------------------------------------------------------------
  1489. ttyget0(-Char)
  1490. ----------------------------------------------------------------------------
  1491.  
  1492. ●概要
  1493. ●解説
  1494. ●エラー条件
  1495. ●その他
  1496.  DEC-10 PROLOGとの互換性維持のために定義しています.
  1497.  classic.qsrを読み込む必要があります.
  1498.  
  1499.  
  1500. ----------------------------------------------------------------------------
  1501. skip(+Char)
  1502. ----------------------------------------------------------------------------
  1503.  
  1504. ●概要
  1505. ●解説
  1506. ●エラー条件
  1507. ●その他
  1508.  DEC-10 PROLOGとの互換性維持のために定義しています.
  1509.  classic.qsrを読み込む必要があります.
  1510.  
  1511.  
  1512.                                 - 21 -
  1513.  
  1514.  
  1515. Quasar Prolog リファレンスマニュアル                                  入出力
  1516.  
  1517.  
  1518.  
  1519.  
  1520. ----------------------------------------------------------------------------
  1521. ttyskip(+Char)
  1522. ----------------------------------------------------------------------------
  1523.  
  1524. ●概要
  1525. ●解説
  1526. ●エラー条件
  1527. ●その他
  1528.  DEC-10 PROLOGとの互換性維持のために定義しています.
  1529.  classic.qsrを読み込む必要があります.
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.                                 - 22 -
  1576.  
  1577.  
  1578. Quasar Prolog リファレンスマニュアル                                  入出力
  1579.  
  1580.  
  1581. ----------------------------------------------------------------------------
  1582. 4.5 出力
  1583. ----------------------------------------------------------------------------
  1584.  
  1585. ----------------------------------------------------------------------------
  1586. write(+?Term, +Stream)
  1587. ----------------------------------------------------------------------------
  1588.  
  1589. ●概要
  1590.  指定されたストリームに項を出力します.
  1591.  
  1592. ●解説
  1593. ●エラー条件
  1594. ●その他
  1595.  
  1596.  
  1597. ----------------------------------------------------------------------------
  1598. write(+?Term)
  1599. ----------------------------------------------------------------------------
  1600.  
  1601. ●概要
  1602.  標準出力に項を出力します.
  1603.  
  1604. ●解説
  1605. ●エラー条件
  1606. ●その他
  1607.  
  1608.  
  1609. ----------------------------------------------------------------------------
  1610. writeq(+?Term, +Stream)
  1611. ----------------------------------------------------------------------------
  1612.  
  1613. ●概要
  1614.  指定されたストリームに項を出力します.
  1615.  
  1616. ●解説
  1617. ●エラー条件
  1618. ●その他
  1619.  
  1620.  
  1621. ----------------------------------------------------------------------------
  1622. writeq(+?Term)
  1623. ----------------------------------------------------------------------------
  1624.  
  1625. ●概要
  1626.  標準出力に項を出力します.
  1627.  
  1628. ●解説
  1629. ●エラー条件
  1630. ●その他
  1631.  
  1632.  
  1633. ----------------------------------------------------------------------------
  1634. write_line(+String)
  1635. ----------------------------------------------------------------------------
  1636.  
  1637.  
  1638.                                 - 23 -
  1639.  
  1640.  
  1641. Quasar Prolog リファレンスマニュアル                                  入出力
  1642.  
  1643.  
  1644.  
  1645. ●概要
  1646. ●解説
  1647. ●エラー条件
  1648. ●その他
  1649.  まだ利用できません.
  1650.  
  1651.  
  1652. ----------------------------------------------------------------------------
  1653. write_string(+String)
  1654. ----------------------------------------------------------------------------
  1655.  
  1656. ●概要
  1657. ●解説
  1658. ●エラー条件
  1659. ●その他
  1660.  まだ利用できません.
  1661.  
  1662.  
  1663. ----------------------------------------------------------------------------
  1664. print(+?Term)
  1665. ----------------------------------------------------------------------------
  1666.  
  1667. ●概要
  1668.  標準出力に項を出力します.
  1669.  
  1670. ●解説
  1671. ●エラー条件
  1672. ●その他
  1673.  
  1674.  
  1675. ----------------------------------------------------------------------------
  1676. display(+?Term, +Stream)
  1677. ----------------------------------------------------------------------------
  1678.  
  1679. ●概要
  1680.  指定されたストリームに項を出力します.
  1681.  
  1682. ●解説
  1683. ●エラー条件
  1684. ●その他
  1685.  
  1686.  
  1687. ----------------------------------------------------------------------------
  1688. display(+?Term)
  1689. ----------------------------------------------------------------------------
  1690.  
  1691. ●概要
  1692.  標準出力に項を出力します.
  1693.  
  1694. ●解説
  1695. ●エラー条件
  1696. ●その他
  1697.  
  1698.  
  1699.  
  1700.  
  1701.                                 - 24 -
  1702.  
  1703.  
  1704. Quasar Prolog リファレンスマニュアル                                  入出力
  1705.  
  1706.  
  1707. ----------------------------------------------------------------------------
  1708. write_char(+Char, +Stream)
  1709. ----------------------------------------------------------------------------
  1710.  
  1711. ●概要
  1712.  指定されたストリームに文字を出力します.
  1713.  
  1714. ●解説
  1715. ●エラー条件
  1716. ●その他
  1717.  
  1718.  
  1719. ----------------------------------------------------------------------------
  1720. write_char(+Char)
  1721. ----------------------------------------------------------------------------
  1722.  
  1723. ●概要
  1724.  標準出力に文字を出力します.
  1725.  
  1726. ●解説
  1727. ●エラー条件
  1728. ●その他
  1729.  
  1730.  
  1731. ----------------------------------------------------------------------------
  1732. write_chars(+Chars, +Stream)
  1733. ----------------------------------------------------------------------------
  1734.  
  1735. ●概要
  1736.  指定されたストリームに文字リスト型のデータを出力します.
  1737.  
  1738. ●解説
  1739. ●エラー条件
  1740. ●その他
  1741.  
  1742.  
  1743. ----------------------------------------------------------------------------
  1744. write_chars(+Chars)
  1745. ----------------------------------------------------------------------------
  1746.  
  1747. ●概要
  1748.  標準出力に文字リスト型のデータを出力します.
  1749.  
  1750. ●解説
  1751. ●エラー条件
  1752. ●その他
  1753.  
  1754.  
  1755. ----------------------------------------------------------------------------
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763.  
  1764.                                 - 25 -
  1765.  
  1766.  
  1767. Quasar Prolog リファレンスマニュアル                                  入出力
  1768.  
  1769.  
  1770. ----------------------------------------------------------------------------
  1771.  
  1772. ●概要
  1773.  指定されたストリームに文字リスト型のデータを出力します.
  1774.  
  1775. ●解説
  1776. ●エラー条件
  1777. ●その他
  1778.  
  1779.  
  1780. ----------------------------------------------------------------------------
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786.  
  1787.  
  1788.  
  1789.  
  1790.  
  1791.  
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.  
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806.  
  1807.  
  1808.  
  1809.  
  1810.  
  1811.  
  1812.  
  1813.  
  1814.  
  1815.  
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.                                 - 26 -
  1828.  
  1829.  
  1830. Quasar Prolog リファレンスマニュアル                                  入出力
  1831.  
  1832.  
  1833. ----------------------------------------------------------------------------
  1834.  
  1835. ●概要
  1836.  標準出力に文字リスト型のデータを出力します.
  1837.  
  1838. ●解説
  1839. ●エラー条件
  1840. ●その他
  1841.  
  1842.  
  1843. ----------------------------------------------------------------------------
  1844. terpri(+Stream)
  1845. ----------------------------------------------------------------------------
  1846.  
  1847. ●概要
  1848.  指定されたストリームで改行します.
  1849.  
  1850. ●解説
  1851. ●エラー条件
  1852. ●その他
  1853.  
  1854.  
  1855. ----------------------------------------------------------------------------
  1856. terpri
  1857. ----------------------------------------------------------------------------
  1858.  
  1859. ●概要
  1860.  標準出力で改行します.
  1861.  
  1862. ●解説
  1863. ●エラー条件
  1864. ●その他
  1865.  
  1866.  
  1867. ----------------------------------------------------------------------------
  1868. fresh_line(+Stream)
  1869. ----------------------------------------------------------------------------
  1870.  
  1871. ●概要
  1872.  カーソルが行の先頭(左端)にない場合に改行します.
  1873.  
  1874. ●解説
  1875. ●エラー条件
  1876. ●その他
  1877.  
  1878.  
  1879. ----------------------------------------------------------------------------
  1880. fresh_line
  1881. ----------------------------------------------------------------------------
  1882.  
  1883. ●概要
  1884.  カーソルが行の先頭(左端)にない場合に改行します.
  1885.  
  1886. ●解説
  1887. ●エラー条件
  1888.  
  1889.  
  1890.                                 - 27 -
  1891.  
  1892.  
  1893. Quasar Prolog リファレンスマニュアル                                  入出力
  1894.  
  1895.  
  1896. ●その他
  1897.  
  1898.  
  1899. ----------------------------------------------------------------------------
  1900. nl
  1901. ----------------------------------------------------------------------------
  1902.  
  1903. ●概要
  1904.  改行します.
  1905.  
  1906. ●解説
  1907. ●エラー条件
  1908. ●その他
  1909.  DEC-10 PROLOGとの互換性のために用意されています.
  1910.  この述語を利用する場合には,classic.qsrを読み込む必要があります.
  1911.  
  1912.  
  1913.  
  1914. ----------------------------------------------------------------------------
  1915. ttynl
  1916. ----------------------------------------------------------------------------
  1917.  
  1918. ●概要
  1919.  改行します.
  1920.  
  1921. ●解説
  1922. ●エラー条件
  1923. ●その他
  1924.  DEC-10 PROLOGとの互換性のために用意されています.
  1925.  この述語を利用する場合には,classic.qsrを読み込む必要があります.
  1926.  
  1927.  
  1928.  
  1929. ----------------------------------------------------------------------------
  1930. tab(+Num)
  1931. ----------------------------------------------------------------------------
  1932.  
  1933. ●概要
  1934. ●解説
  1935. ●エラー条件
  1936. ●その他
  1937.  
  1938.  
  1939. ----------------------------------------------------------------------------
  1940. ttytab(+Num)
  1941. ----------------------------------------------------------------------------
  1942.  
  1943. ●概要
  1944. ●解説
  1945. ●エラー条件
  1946. ●その他
  1947.  
  1948.  
  1949. ----------------------------------------------------------------------------
  1950. format(+Stream, +Format, +Args)
  1951.  
  1952.  
  1953.                                 - 28 -
  1954.  
  1955.  
  1956. Quasar Prolog リファレンスマニュアル                                  入出力
  1957.  
  1958.  
  1959. ----------------------------------------------------------------------------
  1960.  
  1961. ●概要
  1962.  書式指定に合わせた出力を行います.
  1963.  
  1964. ●解説
  1965. ●エラー条件
  1966. ●その他
  1967.  
  1968.  
  1969. ----------------------------------------------------------------------------
  1970. format(+Format, +Args)
  1971. ----------------------------------------------------------------------------
  1972.  
  1973. ●概要
  1974.  書式指定に合わせた出力を行います.
  1975.  
  1976. ●解説
  1977. ●エラー条件
  1978. ●その他
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.  
  1988.  
  1989.  
  1990.  
  1991.  
  1992.  
  1993.  
  1994.  
  1995.  
  1996.  
  1997.  
  1998.  
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.  
  2015.  
  2016.                                 - 29 -
  2017.  
  2018.  
  2019. Quasar Prolog リファレンスマニュアル                                  入出力
  2020.  
  2021.  
  2022. ----------------------------------------------------------------------------
  2023. 4.6 使用者への問い合わせ
  2024. ----------------------------------------------------------------------------
  2025.  
  2026. ----------------------------------------------------------------------------
  2027. y_or_n_p
  2028. ----------------------------------------------------------------------------
  2029.  
  2030. ●概要
  2031.  ユーザに可否の問い合わせを行います.
  2032.  
  2033. ●解説
  2034. ●エラー条件
  2035. ●その他
  2036.  
  2037.  
  2038. ----------------------------------------------------------------------------
  2039. y_or_n_p(+Format)
  2040. ----------------------------------------------------------------------------
  2041.  
  2042. ●概要
  2043.  ユーザに可否の問い合わせを行います.
  2044.  
  2045. ●解説
  2046. ●エラー条件
  2047. ●その他
  2048.  
  2049.  
  2050. ----------------------------------------------------------------------------
  2051. y_or_n_p(+Format, +Args)
  2052. ----------------------------------------------------------------------------
  2053.  
  2054. ●概要
  2055.  ユーザに可否の問い合わせを行います.
  2056.  
  2057. ●解説
  2058. ●エラー条件
  2059. ●その他
  2060.  
  2061.  
  2062. ----------------------------------------------------------------------------
  2063. yes_or_no_p
  2064. ----------------------------------------------------------------------------
  2065.  
  2066. ●概要
  2067.  ユーザに可否の問い合わせを行います.
  2068.  
  2069. ●解説
  2070. ●エラー条件
  2071. ●その他
  2072.  
  2073.  
  2074. ----------------------------------------------------------------------------
  2075. yes_or_no_p(+Format)
  2076. ----------------------------------------------------------------------------
  2077.  
  2078.  
  2079.                                 - 30 -
  2080.  
  2081.  
  2082. Quasar Prolog リファレンスマニュアル                                  入出力
  2083.  
  2084.  
  2085.  
  2086. ●概要
  2087.  ユーザに可否の問い合わせを行います.
  2088.  
  2089. ●解説
  2090. ●エラー条件
  2091. ●その他
  2092.  
  2093.  
  2094. ----------------------------------------------------------------------------
  2095. yes_or_no_p(+Format, +Args)
  2096. ----------------------------------------------------------------------------
  2097.  
  2098. ●概要
  2099.  ユーザに可否の問い合わせを行います.
  2100.  
  2101. ●解説
  2102. ●エラー条件
  2103. ●その他
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118.  
  2119.  
  2120.  
  2121.  
  2122.  
  2123.  
  2124.  
  2125.  
  2126.  
  2127.  
  2128.  
  2129.  
  2130.  
  2131.  
  2132.  
  2133.  
  2134.  
  2135.  
  2136.  
  2137.  
  2138.  
  2139.  
  2140.  
  2141.  
  2142.                                 - 31 -
  2143.  
  2144.  
  2145. Quasar Prolog リファレンスマニュアル                                ファイル
  2146.  
  2147.  
  2148. ----------------------------------------------------------------------------
  2149. 5. ファイルシステム
  2150. ----------------------------------------------------------------------------
  2151.  
  2152.  
  2153. ----------------------------------------------------------------------------
  2154. 5.1 ファイル
  2155. ----------------------------------------------------------------------------
  2156.  
  2157. ----------------------------------------------------------------------------
  2158. probe_file(+File)
  2159. ----------------------------------------------------------------------------
  2160.  
  2161. ●概要
  2162.  ファイルがあるかどうか調べます.
  2163.  
  2164. ●解説
  2165. ●エラー条件
  2166. ●その他
  2167.  
  2168.  
  2169. ----------------------------------------------------------------------------
  2170. delete_file(+File)
  2171. ----------------------------------------------------------------------------
  2172.  
  2173. ●概要
  2174.  ファイルを削除します.
  2175.  
  2176. ●解説
  2177. ●エラー条件
  2178. ●その他
  2179.  
  2180.  
  2181. ----------------------------------------------------------------------------
  2182. rename_file(+Old, +New)
  2183. ----------------------------------------------------------------------------
  2184.  
  2185. ●概要
  2186.  ファイル名を変更します.
  2187.  
  2188. ●解説
  2189. ●エラー条件
  2190. ●その他
  2191.  
  2192.  
  2193. ----------------------------------------------------------------------------
  2194. 5.2 ディレクトリ
  2195. ----------------------------------------------------------------------------
  2196.  
  2197. ----------------------------------------------------------------------------
  2198. user_homedir_pathname(-Path)
  2199. ----------------------------------------------------------------------------
  2200.  
  2201. ●概要
  2202.  使用者のホームディレクトリを取得します.
  2203.  
  2204.  
  2205.                                 - 32 -
  2206.  
  2207.  
  2208. Quasar Prolog リファレンスマニュアル                                ファイル
  2209.  
  2210.  
  2211.  
  2212. ●解説
  2213. ●エラー条件
  2214. ●その他
  2215.  
  2216.  
  2217. ----------------------------------------------------------------------------
  2218. full_pathname(+Path, -FullPath)
  2219. ----------------------------------------------------------------------------
  2220.  
  2221. ●概要
  2222.  ファイルのフルパス名を取得します.
  2223.  
  2224. ●解説
  2225. ●エラー条件
  2226. ●その他
  2227.  
  2228.  
  2229. ----------------------------------------------------------------------------
  2230. change_directory(+Dir)
  2231. ----------------------------------------------------------------------------
  2232.  
  2233. ●概要
  2234.  指定されたディレクトリに移動します.
  2235.  
  2236. ●解説
  2237. ●エラー条件
  2238. ●その他
  2239.  
  2240.  
  2241. ----------------------------------------------------------------------------
  2242. make_directory(+Dir)
  2243. ----------------------------------------------------------------------------
  2244.  
  2245. ●概要
  2246.  指定されたディレクトリを作成します.
  2247.  
  2248. ●解説
  2249. ●エラー条件
  2250. ●その他
  2251.  
  2252.  
  2253.  
  2254.  
  2255.  
  2256.  
  2257.  
  2258.  
  2259.  
  2260.  
  2261.  
  2262.  
  2263.  
  2264.  
  2265.  
  2266.  
  2267.  
  2268.                                 - 33 -
  2269.  
  2270.  
  2271. Quasar Prolog リファレンスマニュアル                                算術演算
  2272.  
  2273.  
  2274. ----------------------------------------------------------------------------
  2275. 6. 算術演算
  2276. ----------------------------------------------------------------------------
  2277.  
  2278.  
  2279. ----------------------------------------------------------------------------
  2280. ?Result := +Exp
  2281. ----------------------------------------------------------------------------
  2282.  
  2283. ●概要
  2284.  算術式を評価して結果を返します.
  2285.  
  2286. ●解説
  2287.  算術式 Exp を評価して,計算結果と Result を単一化します.
  2288.  
  2289. ●エラー条件
  2290.  算術式の中に具体化されていない変数や,定義されていない関数,演算子などがあ
  2291. る場合にエラーが生じます.
  2292.  
  2293. ●その他
  2294.  以下に,算術式の中で使用できる演算子,関数,定数,システム変数を示します.
  2295.  
  2296. 1)演算子
  2297.     単項演算子
  2298.         + 式
  2299.         - 式
  2300.  
  2301.     二項演算子
  2302.         式1 + 式2    式1 - 式2    式1 * 式2    式1 / 式2
  2303.         式1 // 式2
  2304.         式1 /\ 式2    式1 \/ 式2    式1 << 式2    式1 >> 式2
  2305.  
  2306. 2)関数
  2307.     三角関数
  2308.         sin(式)        cos(式)        tan(式)
  2309.         asin(式)    acos(式)    atan(式)
  2310.         sinh(式)    cosh(式)    tanh(式)
  2311.  
  2312.     指数対数関数
  2313.         exp(式)        expt(式1,式2)
  2314.         log(式)        log(式1,式2)
  2315.  
  2316.     型変換
  2317.         integer(式)    float(式)
  2318.  
  2319.     その他
  2320.         abs(式)        sqrt(式)    floor(式)    ceiling(式)
  2321.         mod(式1,式2)    neg(式)        not(式)
  2322.  
  2323. 3)定数
  2324.         e        pi
  2325.  
  2326. 4)システム変数
  2327.         runtime        cputime
  2328.  
  2329.  
  2330.  
  2331.                                 - 34 -
  2332.  
  2333.  
  2334. Quasar Prolog リファレンスマニュアル                                算術演算
  2335.  
  2336.  
  2337.  
  2338. ----------------------------------------------------------------------------
  2339. +Exp1 =:= +Exp2
  2340. ----------------------------------------------------------------------------
  2341.  
  2342. ●概要
  2343.  2つの算術式を評価し,両者の計算結果が等しいかどうかを比較します.
  2344.  
  2345. ●解説
  2346.  Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.等しい場合には成
  2347. 功し,異なっている場合には失敗します.
  2348.  
  2349. ●エラー条件
  2350. ●その他
  2351.  
  2352.  
  2353. ----------------------------------------------------------------------------
  2354. +Exp1 \== +Exp2
  2355. ----------------------------------------------------------------------------
  2356.  
  2357. ●概要
  2358.  2つの算術式を評価し,両者の計算結果が異なっているかどうかを比較します.
  2359.  
  2360. ●解説
  2361.  Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.異なっている場合
  2362. には成功し,等しい場合には失敗します.
  2363.  
  2364. ●エラー条件
  2365. ●その他
  2366.  
  2367.  
  2368. ----------------------------------------------------------------------------
  2369. +Exp1 > +Exp2
  2370. ----------------------------------------------------------------------------
  2371.  
  2372. ●概要
  2373.  2つの算術式を評価し,左辺の値が右辺の値よりも大きいかどうかを比較します.
  2374.  
  2375. ●解説
  2376.  Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
  2377. 値よりも大きい場合には成功し,そうでない場合には失敗します.
  2378.  
  2379. ●エラー条件
  2380. ●その他
  2381.  
  2382.  
  2383. ----------------------------------------------------------------------------
  2384. +Exp1 >= +Exp2
  2385. ----------------------------------------------------------------------------
  2386.  
  2387. ●概要
  2388.  2つの算術式を評価し,左辺の値が右辺の値以上かどうかを比較します.
  2389.  
  2390. ●解説
  2391.  Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
  2392.  
  2393.  
  2394.                                 - 35 -
  2395.  
  2396.  
  2397. Quasar Prolog リファレンスマニュアル                                算術演算
  2398.  
  2399.  
  2400. 値以上の場合には成功し,そうでない場合には失敗します.
  2401.  
  2402. ●エラー条件
  2403. ●その他
  2404.  
  2405.  
  2406. ----------------------------------------------------------------------------
  2407. +Exp1 < +Exp2
  2408. ----------------------------------------------------------------------------
  2409.  
  2410. ●概要
  2411.  2つの算術式を評価し,左辺の値が右辺の値よりも小さいかどうかを比較します.
  2412.  
  2413. ●解説
  2414.  Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
  2415. 値よりも小さい場合には成功し,そうでない場合には失敗します.
  2416.  
  2417. ●エラー条件
  2418. ●その他
  2419.  
  2420.  
  2421. ----------------------------------------------------------------------------
  2422. +Exp1 =< +Exp2
  2423. ----------------------------------------------------------------------------
  2424.  
  2425. ●概要
  2426.  2つの算術式を評価し,左辺の値が右辺の値以下かどうかを比較します.
  2427.  
  2428. ●解説
  2429.  Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
  2430. 値以下の場合には成功し,そうでない場合には失敗します.
  2431.  
  2432. ●エラー条件
  2433. ●その他
  2434.  
  2435.  
  2436. ----------------------------------------------------------------------------
  2437. compare(?Rel, +?Term1, +?Term2)
  2438. ----------------------------------------------------------------------------
  2439.  
  2440. ●概要
  2441.  項の標準順位を比較します.
  2442.  
  2443. ●解説
  2444. ●エラー条件
  2445. ●その他
  2446.  
  2447.  
  2448.  
  2449.  
  2450.  
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456.  
  2457.                                 - 36 -
  2458.  
  2459.  
  2460. Quasar Prolog リファレンスマニュアル                                データ型
  2461.  
  2462.  
  2463. ----------------------------------------------------------------------------
  2464. 7. データ型
  2465. ----------------------------------------------------------------------------
  2466.  
  2467.  
  2468. ----------------------------------------------------------------------------
  2469. 7.1 データ型の判定
  2470. ----------------------------------------------------------------------------
  2471.  
  2472. ----------------------------------------------------------------------------
  2473. boundp(-?Var)
  2474. ----------------------------------------------------------------------------
  2475.  
  2476. ●概要
  2477.  変数が具体化されているかどうか調べます.
  2478.  
  2479. ●解説
  2480.  Var が具体化された変数であれば成功し,そうでなければ失敗します.
  2481.  Var に変数以外が与えられた場合には,常に成功します.
  2482.  
  2483. ●エラー条件
  2484.  エラーは生じません.
  2485.  
  2486. ●その他
  2487.  
  2488.  
  2489. ----------------------------------------------------------------------------
  2490. unboundp(-?Var)
  2491. ----------------------------------------------------------------------------
  2492.  
  2493. ●概要
  2494.  変数が具体化されていないかどうか調べます.
  2495.  
  2496. ●解説
  2497.  Var が具体化されていない変数であれば成功し,そうでなければ失敗します.
  2498.  Var に変数以外が与えられた場合には,常に失敗します.
  2499.  
  2500. ●エラー条件
  2501. ●その他
  2502.  
  2503.  
  2504. ----------------------------------------------------------------------------
  2505. symbolp(+?Symbol)
  2506. ----------------------------------------------------------------------------
  2507.  
  2508. ●概要
  2509.  シンボル型のデータかどうかを調べます.
  2510.  
  2511. ●解説
  2512.  Symbol がシンボル型のデータの場合には成功し,そうでなければ失敗します.
  2513.  
  2514. ●エラー条件
  2515.  エラーは生じません.
  2516.  
  2517. ●その他
  2518.  
  2519.  
  2520.                                 - 37 -
  2521.  
  2522.  
  2523. Quasar Prolog リファレンスマニュアル                                データ型
  2524.  
  2525.  
  2526.  
  2527.  
  2528. ----------------------------------------------------------------------------
  2529. atom(+?Atom)
  2530. ----------------------------------------------------------------------------
  2531.  
  2532. ●概要
  2533.  アトムかどうかを調べます.
  2534.  
  2535. ●解説
  2536.  Atom のデータ型がい化の1つに一致する場合に成功し,そうでなければ失敗しま
  2537. す.
  2538. 1)シンボル型
  2539. 2)整数型
  2540. 3)浮動小数型
  2541. 4)文字型
  2542.  
  2543. ●エラー条件
  2544.  エラーは生じません.
  2545.  
  2546. ●その他
  2547.  
  2548.  
  2549. ----------------------------------------------------------------------------
  2550. integerp(+?Num)
  2551. ----------------------------------------------------------------------------
  2552.  
  2553. ●概要
  2554.  整数型のデータかどうか調べます.
  2555.  
  2556. ●解説
  2557.  Num が整数型であれば成功し,そうでなければ失敗します.
  2558.  
  2559. ●エラー条件
  2560.  エラーは生じません.
  2561.  
  2562. ●その他
  2563.  
  2564.  
  2565. ----------------------------------------------------------------------------
  2566. floatp(+?Num)
  2567. ----------------------------------------------------------------------------
  2568.  
  2569. ●概要
  2570.  実数型のデータかどうか調べます.
  2571.  
  2572. ●解説
  2573.  Num が整数型であれば成功し,そうでなければ失敗します.
  2574.  
  2575. ●エラー条件
  2576.  エラーは生じません.
  2577.  
  2578. ●その他
  2579.  
  2580.  
  2581.  
  2582.  
  2583.                                 - 38 -
  2584.  
  2585.  
  2586. Quasar Prolog リファレンスマニュアル                                データ型
  2587.  
  2588.  
  2589. ----------------------------------------------------------------------------
  2590. numberp(+?Num)
  2591. ----------------------------------------------------------------------------
  2592.  
  2593. ●概要
  2594.  整数型か実数型のデータかどうか調べます.
  2595.  
  2596. ●解説
  2597.  Num が整数型か実数型であれば成功し,そうでなければ失敗します.
  2598.  
  2599. ●エラー条件
  2600.  エラーは生じません.
  2601.  
  2602. ●その他
  2603.  
  2604.  
  2605. ----------------------------------------------------------------------------
  2606. structurep(+?Struct)
  2607. ----------------------------------------------------------------------------
  2608.  
  2609. ●概要
  2610.  構造型のデータかどうかを調べます.
  2611.  
  2612. ●解説
  2613.  Struct が構造型であれば成功し,そうでなければ失敗します.
  2614.  
  2615. ●エラー条件
  2616.  エラーは生じません.
  2617.  
  2618. ●その他
  2619.  
  2620.  
  2621. ----------------------------------------------------------------------------
  2622. listp(+?List)
  2623. ----------------------------------------------------------------------------
  2624.  
  2625. ●概要
  2626.  リスト型(コンスかニル)のデータかどうかを調べます.
  2627.  
  2628. ●解説
  2629.  List がリスト型(コンスかニル)であれば成功し,そうでなければ失敗します.
  2630.  
  2631. ●エラー条件
  2632.  エラーは生じません.
  2633.  
  2634. ●その他
  2635.  
  2636.  
  2637. ----------------------------------------------------------------------------
  2638. consp(+?Cons)
  2639. ----------------------------------------------------------------------------
  2640.  
  2641. ●概要
  2642.  リスト型(コンスのみ)のデータかどうかを調べます.
  2643.  
  2644.  
  2645.  
  2646.                                 - 39 -
  2647.  
  2648.  
  2649. Quasar Prolog リファレンスマニュアル                                データ型
  2650.  
  2651.  
  2652. ●解説
  2653.  Const がリスト型(コンスのみ)であれば成功し,そうでなければ失敗します.
  2654.  
  2655. ●エラー条件
  2656.  エラーは生じません.
  2657.  
  2658. ●その他
  2659.  
  2660.  
  2661. ----------------------------------------------------------------------------
  2662. endp(+?Nil)
  2663. ----------------------------------------------------------------------------
  2664.  
  2665. ●概要
  2666.  リストの終端かどうかを調べます.
  2667.  
  2668. ●解説
  2669.  Nil がリストの終端(ニル)であれば成功し,そうでなければ失敗します.
  2670.  
  2671. ●エラー条件
  2672.  エラーは生じません.
  2673.  
  2674. ●その他
  2675.  
  2676.  
  2677. ----------------------------------------------------------------------------
  2678. streamp(+?Stream)
  2679. ----------------------------------------------------------------------------
  2680.  
  2681. ●概要
  2682.  ストリームかどうかを調べます.
  2683.  
  2684. ●解説
  2685.  Stream がストリーム型であれば成功し,そうでなければ失敗します.
  2686.  
  2687. ●エラー条件
  2688.  エラーは生じません.
  2689.  
  2690. ●その他
  2691.  
  2692.  
  2693. ----------------------------------------------------------------------------
  2694. input_stream_p(+?Stream)
  2695. ----------------------------------------------------------------------------
  2696.  
  2697. ●概要
  2698.  入力ストリームかどうかを調べます.
  2699.  
  2700. ●解説
  2701. ●エラー条件
  2702. ●その他
  2703.  
  2704.  
  2705. ----------------------------------------------------------------------------
  2706. output_stream_p(+?Stream)
  2707.  
  2708.  
  2709.                                 - 40 -
  2710.  
  2711.  
  2712. Quasar Prolog リファレンスマニュアル                                データ型
  2713.  
  2714.  
  2715. ----------------------------------------------------------------------------
  2716.  
  2717. ●概要
  2718.  出力ストリームかどうかを調べます.
  2719.  
  2720. ●解説
  2721. ●エラー条件
  2722. ●その他
  2723.  
  2724.  
  2725. ----------------------------------------------------------------------------
  2726. type_of(+?Term, -?Type)
  2727. ----------------------------------------------------------------------------
  2728.  
  2729. ●概要
  2730.  項のデータ型を得ます.
  2731.  
  2732. ●解説
  2733.  Termに与えられた項のデータ型をTypeに返します.
  2734.  
  2735. ●エラー条件
  2736. ●その他
  2737.  
  2738.  
  2739. ----------------------------------------------------------------------------
  2740. atomic(+?Atomic)
  2741. ----------------------------------------------------------------------------
  2742.  
  2743. ●概要
  2744. ●解説
  2745. ●エラー条件
  2746. ●その他
  2747.  DEC-10 PROLOGとの互換性のために用意されています.
  2748.  この述語を利用する場合には,classic.qsrを読み込んでください.
  2749.  
  2750.  
  2751.  
  2752.  
  2753.  
  2754.  
  2755.  
  2756.  
  2757.  
  2758.  
  2759.  
  2760.  
  2761.  
  2762.  
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  
  2772.                                 - 41 -
  2773.  
  2774.  
  2775. Quasar Prolog リファレンスマニュアル                                データ型
  2776.  
  2777.  
  2778. ----------------------------------------------------------------------------
  2779. 7.2 データ型の変換
  2780. ----------------------------------------------------------------------------
  2781.  
  2782. ----------------------------------------------------------------------------
  2783. functor(?Struct, ?Functor, ?Arity)
  2784. ----------------------------------------------------------------------------
  2785.  
  2786. ●概要
  2787.  構造のファンクタとアリティを得ます.
  2788.  
  2789. ●解説
  2790. ●エラー条件
  2791. ●その他
  2792.  
  2793.  
  2794. ----------------------------------------------------------------------------
  2795. arg(+Num, +Struct, ?Arg)
  2796. ----------------------------------------------------------------------------
  2797.  
  2798. ●概要
  2799.  構造型データの引数とデータを単一化します.
  2800.  
  2801. ●解説
  2802. ●エラー条件
  2803. ●その他
  2804.  
  2805.  
  2806. ----------------------------------------------------------------------------
  2807. structure_list(?Struct, ?list)
  2808. ----------------------------------------------------------------------------
  2809.  
  2810. ●概要
  2811.  構造型のデータとリスト型のデータとの型変換を行います.
  2812.  
  2813. ●解説
  2814. ●エラー条件
  2815. ●その他
  2816.  
  2817.  
  2818. ----------------------------------------------------------------------------
  2819. symbol_chars(?Symbol, ?List)
  2820. ----------------------------------------------------------------------------
  2821.  
  2822. ●概要
  2823.  シンボル型と文字型リストとの型変換を行います.
  2824.  
  2825. ●解説
  2826. ●エラー条件
  2827. ●その他
  2828.  
  2829.  
  2830. ----------------------------------------------------------------------------
  2831. number_chars(?Num, ?List)
  2832. ----------------------------------------------------------------------------
  2833.  
  2834.  
  2835.                                 - 42 -
  2836.  
  2837.  
  2838. Quasar Prolog リファレンスマニュアル                                データ型
  2839.  
  2840.  
  2841.  
  2842. ●概要
  2843.  数値データと文字型リストとの型変換を行います.
  2844.  
  2845. ●解説
  2846. ●エラー条件
  2847. ●その他
  2848.  
  2849.  
  2850. ----------------------------------------------------------------------------
  2851. name(?Symbol, ?List)
  2852. ----------------------------------------------------------------------------
  2853.  
  2854. ●概要
  2855. ●解説
  2856. ●エラー条件
  2857. ●その他
  2858.  DEC-10 PROLOGとの互換性維持のために用意されています.
  2859.  この述語を利用する場合には,classic.qsrを読み込んでください.
  2860.  
  2861.  
  2862. ----------------------------------------------------------------------------
  2863. char_int(?Char, ?Int)
  2864. ----------------------------------------------------------------------------
  2865.  
  2866. ●概要
  2867.  文字型データと整数型データの型変換を行います.
  2868.  
  2869. ●解説
  2870.  Char が文字型データで Int が変数の場合には,文字型データの文字コードに対応
  2871. した整数値を Int に返します.Int が整数型データで Char が変数の場合には,整数
  2872. 型データを文字コードとする文字型データを Char に返します.
  2873.  Char が文字型データで,Int が整数型データの場合には,文字型データに対応する
  2874. 文字コードと整数型の値が等しい時に成功します.
  2875.  
  2876. ●エラー条件
  2877. ●その他
  2878.  
  2879.  
  2880. ----------------------------------------------------------------------------
  2881. ?Struct =.. ?List
  2882. ----------------------------------------------------------------------------
  2883.  
  2884. ●概要
  2885.  structure_list/2 と同様の機能です.
  2886.  
  2887. ●解説
  2888. ●エラー条件
  2889. ●その他
  2890.  DEC-10 PROLOGとの互換性のために用意されています.
  2891.  この述語を利用する場合には,classic.qsrを読み込んでください.
  2892.  
  2893.  
  2894.  
  2895.  
  2896.  
  2897.  
  2898.                                 - 43 -
  2899.  
  2900.  
  2901. Quasar Prolog リファレンスマニュアル                                デバッガ
  2902.  
  2903.  
  2904. ----------------------------------------------------------------------------
  2905. 8. デバッガ
  2906. ----------------------------------------------------------------------------
  2907.  
  2908.  
  2909. ----------------------------------------------------------------------------
  2910. debug
  2911. ----------------------------------------------------------------------------
  2912.  
  2913. ●概要
  2914.  デバッグモードに入ります.
  2915.  
  2916. ●解説
  2917.  デバッグモードに入り,プログラムの実行時にデバッグに必要な情報を記録するよ
  2918. うにします.
  2919.  トレース時にデバッグプロンプトを出力するポートは,既定値に設定されます.こ
  2920. の既定値は,leash_default/1 で変更することができます.
  2921.  すでにデバッグモードに入っている場合には,その旨を表示し,現在の leash ポー
  2922. トを表示します.
  2923.  
  2924. ●エラー条件
  2925. ●その他
  2926.  デバッグモードに入ると,制御スタック領域が大量に消費されます.
  2927.  
  2928.  
  2929. ----------------------------------------------------------------------------
  2930. nodebug
  2931. ----------------------------------------------------------------------------
  2932.  
  2933. ●概要
  2934.  デバッグモードを終了します.
  2935.  
  2936. ●解説
  2937.  デバッグモードを終了します.すでにデバッグモードを終了している場合には,そ
  2938. の旨を表示します.
  2939.  
  2940. ●エラー条件
  2941. ●その他
  2942.  
  2943.  
  2944. ----------------------------------------------------------------------------
  2945. debugging
  2946. ----------------------------------------------------------------------------
  2947.  
  2948. ●概要
  2949.  デバッグモードかどうかを調べます.
  2950.  
  2951. ●解説
  2952. ●エラー条件
  2953. ●その他
  2954.  
  2955.  
  2956. ----------------------------------------------------------------------------
  2957. trace
  2958. ----------------------------------------------------------------------------
  2959.  
  2960.  
  2961.                                 - 44 -
  2962.  
  2963.  
  2964. Quasar Prolog リファレンスマニュアル                                デバッガ
  2965.  
  2966.  
  2967.  
  2968. ●概要
  2969.  トレースモードに入ります.
  2970.  
  2971. ●解説
  2972.  トレースモードに入り,プログラムの実行時にデバッグに必要な情報を記録するよ
  2973. うにします.
  2974.  トレース時にデバッグプロンプトを出力するポートは,既定値に設定されます.こ
  2975. の既定値は,leash_default/1 で変更することができます.
  2976.  すでにトレースモードに入っている場合には,その旨を表示し,現在の leash ポー
  2977. トを表示します.
  2978.  
  2979. ●エラー条件
  2980. ●その他
  2981.  
  2982.  
  2983. ----------------------------------------------------------------------------
  2984. notrace
  2985. ----------------------------------------------------------------------------
  2986.  
  2987. ●概要
  2988.  トレースモードを終了します.
  2989.  
  2990. ●解説
  2991.  トレースモードを終了します.すでにトレースモードを終了している場合には,そ
  2992. の旨を表示します.
  2993.  notrace/0 は,トレースモードを終了するのみで,デバッグモードからは抜けませ
  2994. ん.デバッグモードからも抜けたい場合には,notrace/0 ではなく,nodebug/0 を使
  2995. 用する必要があります.
  2996.  
  2997. ●エラー条件
  2998. ●その他
  2999.  
  3000.  
  3001. ----------------------------------------------------------------------------
  3002. trace_default(+Mode)
  3003. ----------------------------------------------------------------------------
  3004.  
  3005. ●概要
  3006. ●解説
  3007. ●エラー条件
  3008. ●その他
  3009.  
  3010.  
  3011. ----------------------------------------------------------------------------
  3012. leash(+Mode)
  3013. ----------------------------------------------------------------------------
  3014.  
  3015. ●概要
  3016.  デバッグ時のプロンプトを出力するポートを指定します.
  3017.  
  3018. ●解説
  3019.  
  3020. full,tight,half,loose,off
  3021. call,exit,redo,fail
  3022.  
  3023.  
  3024.                                 - 45 -
  3025.  
  3026.  
  3027. Quasar Prolog リファレンスマニュアル                                デバッガ
  3028.  
  3029.  
  3030.  
  3031. ●エラー条件
  3032. ●その他
  3033.  
  3034.  
  3035. ----------------------------------------------------------------------------
  3036. leash_default(+Mode)
  3037. ----------------------------------------------------------------------------
  3038.  
  3039. ●概要
  3040.  デバッグ時のプロンプトを出力するポートを指定します.
  3041.  
  3042. ●解説
  3043.  
  3044. call,exit,redo,fail
  3045. full,tight,half,loose,off
  3046.  
  3047. ●エラー条件
  3048. ●その他
  3049.  
  3050.  
  3051. ----------------------------------------------------------------------------
  3052. spy
  3053. ----------------------------------------------------------------------------
  3054.  
  3055. ●概要
  3056.  スパイポイントが設定されている述語を表示します.
  3057.  
  3058. ●解説
  3059. ●エラー条件
  3060. ●その他
  3061.  
  3062.  
  3063. ----------------------------------------------------------------------------
  3064. spy(+Preds)
  3065. ----------------------------------------------------------------------------
  3066.  
  3067. ●概要
  3068.  述語にスパイポイントを設定します.
  3069.  
  3070. ●解説
  3071. ●エラー条件
  3072. ●その他
  3073.  
  3074.  
  3075. ----------------------------------------------------------------------------
  3076. nospy
  3077. ----------------------------------------------------------------------------
  3078.  
  3079. ●概要
  3080.  すべての述語のスパイポイントを除去します.
  3081.  
  3082. ●解説
  3083. ●エラー条件
  3084. ●その他
  3085.  
  3086.  
  3087.                                 - 46 -
  3088.  
  3089.  
  3090. Quasar Prolog リファレンスマニュアル                                デバッガ
  3091.  
  3092.  
  3093.  
  3094.  
  3095. ----------------------------------------------------------------------------
  3096. nospy(+Preds)
  3097. ----------------------------------------------------------------------------
  3098.  
  3099. ●概要
  3100.  述語のスパイポイントを除去します.
  3101.  
  3102. ●解説
  3103. ●エラー条件
  3104. ●その他
  3105.  
  3106.  
  3107.  
  3108.  
  3109.  
  3110.  
  3111.  
  3112.  
  3113.  
  3114.  
  3115.  
  3116.  
  3117.  
  3118.  
  3119.  
  3120.  
  3121.  
  3122.  
  3123.  
  3124.  
  3125.  
  3126.  
  3127.  
  3128.  
  3129.  
  3130.  
  3131.  
  3132.  
  3133.  
  3134.  
  3135.  
  3136.  
  3137.  
  3138.  
  3139.  
  3140.  
  3141.  
  3142.  
  3143.  
  3144.  
  3145.  
  3146.  
  3147.  
  3148.  
  3149.  
  3150.                                 - 47 -
  3151.  
  3152.  
  3153. Quasar Prolog リファレンスマニュアル                            その他の機能
  3154.  
  3155.  
  3156. ----------------------------------------------------------------------------
  3157. 9. その他の機能
  3158. ----------------------------------------------------------------------------
  3159.  
  3160.  
  3161. ----------------------------------------------------------------------------
  3162. 9.1 外部コマンドの実行
  3163. ----------------------------------------------------------------------------
  3164.  
  3165. ----------------------------------------------------------------------------
  3166. shell(+Command)
  3167. ----------------------------------------------------------------------------
  3168.  
  3169. ●概要
  3170.  指定されたコマンドを UNIX のコマンドとして実行します.
  3171.  
  3172. ●解説
  3173.  Command を UNIX のコマンドとして実行します.Command は,シンボル型か文字リ
  3174. スト型でなければなりません.
  3175.  コマンドを実行できた場合には shell/1 は成功し,実行できなかった場合には失敗
  3176. します.
  3177.  
  3178. ●エラー条件
  3179.  Command がシンボル型か文字リスト型でない場合には,エラーが生じます.
  3180.  
  3181. ●その他
  3182.  MS-DOS 版では,メモリ容量の制約で使用できません.
  3183.  
  3184.  
  3185. ----------------------------------------------------------------------------
  3186. 9.2 環境の照会
  3187. ----------------------------------------------------------------------------
  3188.  
  3189. ----------------------------------------------------------------------------
  3190. machine_type(-?Type)
  3191. ----------------------------------------------------------------------------
  3192.  
  3193. ●概要
  3194.  マシンの種類を取得します.
  3195.  
  3196. ●解説
  3197.  Quasar Prolog を実行しているマシンの種類を示すシンボル型のデータを Type に
  3198. 返します.
  3199.  
  3200. ●エラー条件
  3201. ●その他
  3202.  
  3203.  
  3204. ----------------------------------------------------------------------------
  3205. machine_instance(-?Host)
  3206. ----------------------------------------------------------------------------
  3207.  
  3208. ●概要
  3209.  マシンのホスト名を取得します.
  3210.  
  3211.  
  3212.  
  3213.                                 - 48 -
  3214.  
  3215.  
  3216. Quasar Prolog リファレンスマニュアル                            その他の機能
  3217.  
  3218.  
  3219. ●解説
  3220.  ワークステーション版では,Quasar Prolog を実行しているマシンのホスト名を示
  3221. すシンボル型のデータを Host に返します.パーソナルコンピュータ版では,quasar
  3222. _machine を返します.
  3223.  
  3224. ●エラー条件
  3225. ●その他
  3226.  
  3227.  
  3228. ----------------------------------------------------------------------------
  3229. room
  3230. ----------------------------------------------------------------------------
  3231.  
  3232. ●概要
  3233.  メモリの使用状況を出力します.
  3234.  
  3235. ●解説
  3236.  メモリの領域別の使用状況と,利用時間,CPU 時間を表示します.
  3237.  room は常に成功します.
  3238.  
  3239. ●エラー条件
  3240. ●その他
  3241.  
  3242.  
  3243. ----------------------------------------------------------------------------
  3244. room(?Area, -Info)
  3245. ----------------------------------------------------------------------------
  3246.  
  3247. ●概要
  3248.  メモリの使用状況を取得します.
  3249.  
  3250. ●解説
  3251.  引数 Area に与えることができるのは,Quasar Prolog の記憶領域を示すシンボル
  3252. 型のデータで半角文字で記述された以下の5種類だけです.
  3253. 1)atom
  3254. 2)code
  3255. 3)control
  3256. 4)heap
  3257. 5)trail
  3258.  これらの値を Area の値として room/2 を呼び出した場合には,info に以下のよう
  3259. な記憶容量に関するリストを返します.
  3260.     [確保容量, 未使用容量]
  3261. それぞれの値は整数型で,バイト単位の容量を示します.
  3262.  2つの引数が両方とも具体化されていない変数の場合には,room/2 は複数回成功
  3263. し,そのつど Area に記憶領域と Info に記憶容量に関するリストの組を返します.
  3264.  引数に正しくない値が与えられた場合には room/2 は失敗します.
  3265.  
  3266. ●エラー条件
  3267. ●その他
  3268.  
  3269.  
  3270.  
  3271.  
  3272.  
  3273.  
  3274.  
  3275.  
  3276.                                 - 49 -
  3277.  
  3278.  
  3279. Quasar Prolog リファレンスマニュアル                            その他の機能
  3280.  
  3281.  
  3282. ----------------------------------------------------------------------------
  3283. 9.3 対話記録
  3284. ----------------------------------------------------------------------------
  3285.  
  3286. ----------------------------------------------------------------------------
  3287. log
  3288. ----------------------------------------------------------------------------
  3289.  
  3290. ●概要
  3291.  使用者とシステムとの対話内容をファイルへ記録する処理を開始します.
  3292.  
  3293. ●解説
  3294.  使用者とシステムとの対話内容をファイル quasar.log へ記録する処理を開始しま
  3295. す.quasar.log がすでに存在する場合には,新たな記録は,そのファイルに追加され
  3296. ます.
  3297.  記録を開始できた場合には log/0 は成功します.
  3298.  
  3299. ●エラー条件
  3300.  記録ファイルをオープンできない場合に,エラーが生じます.
  3301.  
  3302. ●その他
  3303.  
  3304.  
  3305. ----------------------------------------------------------------------------
  3306. nolog
  3307. ----------------------------------------------------------------------------
  3308.  
  3309. ●概要
  3310.  使用者とシステムとの対話内容をファイルへ記録する処理を終了します.
  3311.  
  3312. ●解説
  3313.  使用者とシステムとの対話内容をファイルへ記録する処理を終了します.
  3314.  nolog/0 は常に成功します.
  3315.  
  3316. ●エラー条件
  3317. ●その他
  3318.  
  3319.  
  3320. ----------------------------------------------------------------------------
  3321. logging
  3322. ----------------------------------------------------------------------------
  3323.  
  3324. ●概要
  3325.  使用者とシステムとの対話内容を記録中かどうかを表示します.
  3326.  
  3327. ●解説
  3328.  使用者とシステムとの対話内容を記録中かどうかを表示します.
  3329.  logging/0 は常に成功します.
  3330.  
  3331. ●エラー条件
  3332. ●その他
  3333.  
  3334.  
  3335.  
  3336.  
  3337.  
  3338.  
  3339.                                 - 50 -
  3340.  
  3341.  
  3342. Quasar Prolog リファレンスマニュアル                                述語索引
  3343.  
  3344.  
  3345.                             -  索  引  -
  3346.  
  3347.  
  3348.  
  3349. !   ...................................................................    6
  3350. +Exp1 < +Exp2   .......................................................   36
  3351. +Exp1 =:= +Exp2   .....................................................   35
  3352. +Exp1 =< +Exp2   ......................................................   36
  3353. +Exp1 > +Exp2   .......................................................   35
  3354. +Exp1 >= +Exp2   ......................................................   35
  3355. +Exp1 \== +Exp2   .....................................................   35
  3356. +Goal1 ; +Goal2   .....................................................    5
  3357. +Goal1, +Goal2   ......................................................    5
  3358. +If -> +Then   ........................................................    5
  3359. +If -> +Then ; +Else   ................................................    6
  3360. ?Result := +Exp   .....................................................   34
  3361. ?Struct =.. ?List   ...................................................   43
  3362. [+Files]   ............................................................    1
  3363.  
  3364. [ a ]
  3365. abolish(+Func, +Arity)   ..............................................   11
  3366. abort   ...............................................................    9
  3367. apropos   .............................................................    2
  3368. apropos(+Name)   ......................................................    3
  3369. arg(+Num, +Struct, ?Arg)   ............................................   42
  3370. assert(+Term)   .......................................................   10
  3371. asserta(+Term)   ......................................................   10
  3372. assertz(+Term)   ......................................................   10
  3373. atom(+?Atom)   ........................................................   38
  3374. atomic(+?Atomic)   ....................................................   41
  3375.  
  3376. [ b ]
  3377. boundp(-?Var)   .......................................................   37
  3378. break   ...............................................................    9
  3379.  
  3380. [ c ]
  3381. call(+Goals)   ........................................................    7
  3382. catch(+Tag, -Value)   .................................................    8
  3383. change_directory(+Dir)   ..............................................   33
  3384. char_int(?Char, ?Int)   ...............................................   43
  3385. clause(+Head, ?Body)   ................................................   12
  3386. clear_input   .........................................................   14
  3387. clear_input(+Stream)   ................................................   13
  3388. close(+File)   ........................................................   13
  3389. close_all   ...........................................................   13
  3390. compare(?Rel, +?Term1, +?Term2)   .....................................   36
  3391. consp(+?Cons)   .......................................................   39
  3392. consult(+File)   ......................................................    1
  3393. current_input(-Stream)   ..............................................   15
  3394. current_operator(+Ops, +Type, +Num)   .................................   18
  3395. current_output(-Stream)   .............................................   15
  3396. current_predicate(?Symbol, ?Pred)   ...................................    3
  3397. current_stream(?File, ?Mode, ?Stream)   ...............................   14
  3398. current_structure(?Symbol, ?Struct)   .................................    3
  3399. current_symbol(?Symbol)   .............................................    3
  3400.  
  3401.  
  3402.                                 - 1 -
  3403.  
  3404.  
  3405. Quasar Prolog リファレンスマニュアル                                述語索引
  3406.  
  3407.  
  3408.  
  3409. [ d ]
  3410. debug   ...............................................................   44
  3411. debugging   ...........................................................   44
  3412. delete_file(+File)   ..................................................   32
  3413. display(+?Term)   .....................................................   24
  3414. display(+?Term, +Stream)   ............................................   24
  3415.  
  3416. [ e ]
  3417. endp(+?Nil)   .........................................................   40
  3418. exit   ................................................................    9
  3419.  
  3420. [ f ]
  3421. fail   ................................................................    6
  3422. flash_all   ...........................................................   14
  3423. floatp(+?Num)   .......................................................   38
  3424. for(-Var, +Start, +End)   .............................................    7
  3425. for(-Var, +Start, +End, +Step)   ......................................    8
  3426. force_output   ........................................................   14
  3427. force_output(+Stream)   ...............................................   14
  3428. format(+Format, +Args)   ..............................................   29
  3429. format(+Stream, +Format, +Args)   .....................................   28
  3430. fresh_line   ..........................................................   27
  3431. fresh_line(+Stream)   .................................................   27
  3432. full_pathname(+Path, -FullPath)   .....................................   33
  3433. functor(?Struct, ?Functor, ?Arity)   ..................................   42
  3434.  
  3435. [ g ]
  3436. get(-Char)   ..........................................................   20
  3437. get0(-Char)   .........................................................   21
  3438.  
  3439. [ h ]
  3440. halt   ................................................................    9
  3441.  
  3442. [ i ]
  3443. input_stream_p(+?Stream)   ............................................   40
  3444. integerp(+?Num)   .....................................................   38
  3445.  
  3446. [ l ]
  3447. leash(+Mode)   ........................................................   45
  3448. leash_default(+Mode)   ................................................   46
  3449. line_count(+Stream, -Count)   .........................................   15
  3450. line_position(+Stream, -Pos)   ........................................   15
  3451. listing   .............................................................    2
  3452. listing(+Pred)   ......................................................    2
  3453. listp(+?List)   .......................................................   39
  3454. log   .................................................................   50
  3455. logging   .............................................................   50
  3456.  
  3457. [ m ]
  3458. machine_instance(-?Host)   ............................................   48
  3459. machine_type(-?Type)   ................................................   48
  3460. make_directory(+Dir)   ................................................   33
  3461.  
  3462. [ n ]
  3463.  
  3464.  
  3465.                                 - 2 -
  3466.  
  3467.  
  3468. Quasar Prolog リファレンスマニュアル                                述語索引
  3469.  
  3470.  
  3471. name(?Symbol, ?List)   ................................................   43
  3472. nl   ..................................................................   28
  3473. nodebug   .............................................................   44
  3474. nolog   ...............................................................   50
  3475. nospy   ...............................................................   46
  3476. nospy(+Preds)   .......................................................   47
  3477. not(+Goals)   .........................................................    7
  3478. notrace   .............................................................   45
  3479. number_chars(?Num, ?List)   ...........................................   42
  3480. numberp(+?Num)   ......................................................   39
  3481.  
  3482. [ o ]
  3483. open(+File, +Mode, -Stream)   .........................................   13
  3484. operator(+Ops, +Type, +Num)   .........................................   18
  3485. output_stream_p(+?Stream)   ...........................................   40
  3486.  
  3487. [ p ]
  3488. print(+?Term)   .......................................................   24
  3489. probe_file(+File)   ...................................................   32
  3490.  
  3491. [ r ]
  3492. read(-Term)   .........................................................   19
  3493. read(-Term, +Stream)   ................................................   19
  3494. read_char(-Char)   ....................................................   20
  3495. read_char(-Char, +Stream)   ...........................................   20
  3496. read_line(-String)   ..................................................   19
  3497. read_line_chars(-Chars)   .............................................   20
  3498. read_line_chars(-Chars, +Stream)   ....................................   20
  3499. read_string(-String)   ................................................   19
  3500. reconsult(+File)   ....................................................    1
  3501. rename_file(+Old, +New)   .............................................   32
  3502. repeat   ..............................................................    7
  3503. repeat(+Num)   ........................................................    7
  3504. retract(+Term)   ......................................................   11
  3505. retract_all(+Term)   ..................................................   11
  3506. room   ................................................................   49
  3507. room(?Area, -Info)   ..................................................   49
  3508.  
  3509. [ s ]
  3510. save(+File)   .........................................................    2
  3511. see(+File)   ..........................................................   16
  3512. seeing(-File)   .......................................................   16
  3513. seen   ................................................................   16
  3514. shell(+Command)   .....................................................   48
  3515. skip(+Char)   .........................................................   21
  3516. spy   .................................................................   46
  3517. spy(+Preds)   .........................................................   46
  3518. streamp(+?Stream)   ...................................................   40
  3519. structure_list(?Struct, ?list)   ......................................   42
  3520. structurep(+?Struct)   ................................................   39
  3521. symbol_chars(?Symbol, ?List)   ........................................   42
  3522. symbolp(+?Symbol)   ...................................................   37
  3523.  
  3524. [ t ]
  3525. tab(+Num)   ...........................................................   28
  3526.  
  3527.  
  3528.                                 - 3 -
  3529.  
  3530.  
  3531. Quasar Prolog リファレンスマニュアル                                述語索引
  3532.  
  3533.  
  3534. tell(+File)   .........................................................   16
  3535. telling(-File)   ......................................................   16
  3536. terpri   ..............................................................   27
  3537. terpri(+Stream)   .....................................................   27
  3538. throw(+Tag, +Value)   .................................................    8
  3539. told   ................................................................   17
  3540. trace   ...............................................................   44
  3541. trace_default(+Mode)   ................................................   45
  3542. true   ................................................................    6
  3543. ttyget(-Char)   .......................................................   21
  3544. ttyget0(-Char)   ......................................................   21
  3545. ttynl   ...............................................................   28
  3546. ttyskip(+Char)   ......................................................   22
  3547. ttytab(+Num)   ........................................................   28
  3548. type_of(+?Term, -?Type)   .............................................   41
  3549.  
  3550. [ u ]
  3551. unboundp(-?Var)   .....................................................   37
  3552. user_homedir_pathname(-Path)   ........................................   32
  3553.  
  3554. [ w ]
  3555. write(+?Term)   .......................................................   23
  3556. write(+?Term, +Stream)   ..............................................   23
  3557. write_char(+Char)   ...................................................   25
  3558. write_char(+Char, +Stream)   ..........................................   25
  3559. write_chars(+Chars)   .................................................   25
  3560. write_chars(+Chars, +Stream)   ........................................   25
  3561. write_line(+String)   .................................................   23
  3562. write_string(+String)   ...............................................   24
  3563. writeq(+?Term)   ......................................................   23
  3564. writeq(+?Term, +Stream)   .............................................   23
  3565.  
  3566. [ y ]
  3567. y_or_n_p   ............................................................   30
  3568. y_or_n_p(+Format)   ...................................................   30
  3569. y_or_n_p(+Format, +Args)   ............................................   30
  3570. yes_or_no_p   .........................................................   30
  3571. yes_or_no_p(+Format)   ................................................   30
  3572. yes_or_no_p(+Format, +Args)   .........................................   31
  3573.  
  3574.  
  3575.  
  3576.  
  3577.  
  3578.  
  3579.  
  3580.  
  3581.  
  3582.  
  3583.  
  3584.  
  3585.  
  3586.  
  3587.  
  3588.  
  3589.  
  3590.  
  3591.                                 - 4 -
  3592.