「NewLisp関数一覧」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
 
(同じ利用者による、間の17版が非表示)
1行目: 1行目:
[[Category:newLISP]]
{{NewLISP}}[[Category:newLISP]]


Newlispの関数一覧
Newlispの関数一覧
99行目: 99行目:


==文字列、変換 関数==
==文字列、変換 関数==
* address  … 数値か文字列のメモリ・アドレスを取得する
* [[address]] … 数値か文字列のメモリ・アドレスを取得する
* append  … リスト、アレイ、文字列を結合し、新しいリスト、アレイ、文字列を形成する
* [[Append (newlisp)|append]] … リスト、アレイ、文字列を結合し、新しいリスト、アレイ、文字列を形成する
* bits  … 数値をバイナリ表現に変換する
* [[bits]] … 数値をバイナリ表現に変換する
* char  … 文字と ASCII コード間の変換をする
* [[char]] … 文字と ASCII コード間の変換をする
* chop  … 文字列の最後から文字を削除する
* [[chop]] … 文字列の最後から文字を削除する
* dostring  … 文字列の各文字列で一回ずつ評価する
* [[dostring]] … 文字列の各文字列で一回ずつ評価する
* dup  … 指定された回数、リストか文字列を複製する
* [[dup]] … 指定された回数、リストか文字列を複製する
* ends-with  … 文字列かリストの終りと同じ型のキーとの一致をチェックする
* [[ends-with]] … 文字列かリストの終りと同じ型のキーとの一致をチェックする
* encrypt  … ワン・タイム・パッド暗号化と文字列の解読をする
* [[encrypt]] … ワン・タイム・パッド暗号化と文字列の解読をする
* eval-string  … 文字列をコンパイル(訳注:すなわち、newLISPソース解析)し、評価する
* [[eval-string]] … 文字列をコンパイル(訳注:すなわち、newLISPソース解析)し、評価する
* explode  … 文字列を文字のリストに変換する
* [[explode]] … 文字列を文字のリストに変換する
* extend  … リストか文字列を拡張する
* [[extend]] … リストか文字列を拡張する
* find  … リストか文字列中の要素を検索する
* [[find]] … リストか文字列中の要素を検索する
* find-all  … 文字列中でパターン・マッチングした全てをリストで返す
* [[find-all]] … 文字列中でパターン・マッチングした全てをリストで返す
* first  … リストか文字列の第一要素を取得する
* [[first]] … リストか文字列の第一要素を取得する
* float  … 文字列か整数を浮動小数点数に変換をする
* [[float]] … 文字列か整数を浮動小数点数に変換をする
* format  … C 言語のように数値と文字列を整形する
* [[format]] … C 言語のように数値と文字列を整形する
* get-char  … メモリ・アドレスから文字を取得する
* [[get-char]] … メモリ・アドレスから文字を取得する
* get-float  … メモリ・アドレスから倍精度浮動小数点を取得する
* [[get-float]] … メモリ・アドレスから倍精度浮動小数点を取得する
* get-int    … メモリ・アドレスから32ビット整数を取得する
* [[get-int]]   … メモリ・アドレスから32ビット整数を取得する
* get-long    … メモリ・アドレスから64ビット整数を取得する
* [[get-long]]   … メモリ・アドレスから64ビット整数を取得する
* get-string  … メモリ・アドレスから文字列を取得する
* [[get-string]] … メモリ・アドレスから文字列を取得する
* int  … 文字列か浮動小数点を整数に変換する
* [[int]] … 文字列か浮動小数点を整数に変換する
* join  … 文字列のリストを結合する
* [[join]] … 文字列のリストを結合する
* last  … リストか文字列の最後の要素を取得する
* [[last]] … リストか文字列の最後の要素を取得する
* lower-case  … 文字列を小文字に変換する
* [[lower-case]] … 文字列を小文字に変換する
* member  … リストか文字列のメンバーを検索する
* [[member]] … リストか文字列のメンバーを検索する
* name  … この関数は、削除されました。代わりに term を使って下さい。
* [[name]] … この関数は、削除されました。代わりに term を使って下さい。
* nth  … リストか文字列のn番目の要素を取得する
* [[nth_(newlisp)|nth]] … リストか文字列のn番目の要素を取得する
* pack  … newLISP の式をバイナリ構造体にパックする
* [[pack]] … newLISP の式をバイナリ構造体にパックする
* parse  … 文字列を トークン(訳注:ソースコードを構成する単語や記号の最小単位)に分解する
* [[parse]] … 文字列を トークン(訳注:ソースコードを構成する単語や記号の最小単位)に分解する
* pop  … 文字列からポップする
* [[pop]] … 文字列からポップする
* push  … 文字列にプッシュする
* [[push]] … 文字列にプッシュする
* regex  … Perlコンパチの正規表現検索を実行する
* [[regex]] … Perlコンパチの正規表現検索を実行する
* regex-comp  … 正規表現パターンを前以てコンパイルする
* [[regex-comp]] … 正規表現パターンを前以てコンパイルする
* replace  … リストか文字列内の要素を置換する
* [[replace]] … リストか文字列内の要素を置換する
* rest  … リストか文字列の第一要素以外を取得する
* [[rest]] … リストか文字列の第一要素以外を取得する
* reverse  … リストか文字列の並びを逆にする
* [[reverse]] … リストか文字列の並びを逆にする
* rotate  … リストか文字列の並びを回転する
* [[rotate]] … リストか文字列の並びを回転する
* select  … リストか文字列から要素を選んで並べ換える
* [[select]] … リストか文字列から要素を選んで並べ換える
* setf setq  … 文字列参照の内容を設定する
* [[setf]] [[setq]] … 文字列参照の内容を設定する
* slice  … 文字列かリストの一部を取り出す
* [[slice]] … 文字列かリストの一部を取り出す
* source  … シンボルに束縛を要求されているソースを文字列で返す
* [[source]] … シンボルに束縛を要求されているソースを文字列で返す
* starts-with  … 文字列かリストの始まりと同じ型のキーとの一致をチェックする
* [[starts-with]] … 文字列かリストの始まりと同じ型のキーとの一致をチェックする
* string  … 何でも文字列に変換する
* [[string]] … 何でも文字列に変換する
* sym  … 文字列をシンボルに変換する
* [[sym]] … 文字列をシンボルに変換する
* title-case  … 文字列の第一文字を大文字に変換する
* [[title-case]] … 文字列の第一文字を大文字に変換する
* trim  … 文字列の一端または両端でトリム(訳注:空白文字を削除)する
* [[trim]] … 文字列の一端または両端でトリム(訳注:空白文字を削除)する
* unicode  … ASCII か UTF-8 を UCS-4 Unicode に変換する
* [[unicode]] … ASCII か UTF-8 を UCS-4 Unicode に変換する
* utf8  … UCS-4 Unicode を UTF-8 に変換する
* [[utf8]] … UCS-4 Unicode を UTF-8 に変換する
* utf8len  … UTF-8 文字列の長さを UTF-8 文字単位で返す
* [[utf8len]] … UTF-8 文字列の長さを UTF-8 文字単位で返す
* unpack  … バイナリ構造体を newLISP 式にアンパックする
* [[unpack]] … バイナリ構造体を newLISP 式にアンパックする
* upper-case  … 文字列を大文字に変換する
* [[upper-case]] … 文字列を大文字に変換する


==数学関数==
==数学関数==
208行目: 208行目:


==行列関数==
==行列関数==
* det  … 行列式
* [[det]] … 行列式
* invert  … 逆行列
* [[invert]] … 逆行列
* mat  … 行列のスカラー演算
* [[mat]] … 行列のスカラー演算
* multiply  … 行列の積
* [[multiply]] … 行列の積
* transpose  … 行列の置換
* [[transpose]]   … 行列の置換


==配列関数==
==配列関数==
266行目: 266行目:


==時間日付関数==
==時間日付関数==
* date  … date-time 値を文字列に変換する
* [[date]] … date-time 値を文字列に変換する
* date-value  … 日付と時刻に対して、1970年1月1日からの秒数を返す
* [[date-value]] … 日付と時刻に対して、1970年1月1日からの秒数を返す
* parse-date  … 日付文字を解析し、1970年1月1日からの秒数を返す
* [[parse-date]] … 日付文字を解析し、1970年1月1日からの秒数を返す
* now  … 現在の日付・時刻の情報をリストで返す
* [[now]] … 現在の日付・時刻の情報をリストで返す
* time  … 式の評価に要する時間をミリ秒単位で計測する
* [[time]] … 式の評価に要する時間をミリ秒単位で計測する
* time-of-day  … その日で経過した時間をミリ秒数で返す
* [[time-of-day]] … その日で経過した時間をミリ秒数で返す


==シミュレーションモデリング関数==
==シミュレーションモデリング関数==
308行目: 308行目:


==I/O、ファイル操作関数==
==I/O、ファイル操作関数==
* append-file  … ファイルにデータを追加する
* [[append-file]] … ファイルにデータを追加する
* close  … ファイルを閉じる
* [[close]] … ファイルを閉じる
* current-line  … 最後の read-line バッファの内容を取り出す
* [[current-line]] … 最後の read-line バッファの内容を取り出す
* device  … 現在の出力デバイスの設定または問合せ
* [[device]] … 現在の出力デバイスの設定または問合せ
* exec  … 別のプログラムを起動し、それに読み書きする
* [[exec]] … 別のプログラムを起動し、それに読み書きする
* load  … newLISP コードのファイルをロードし、評価する
* [[load]] … newLISP コードのファイルをロードし、評価する
* open  … 読み書き用にファイルを開く
* [[open]] … 読み書き用にファイルを開く
* peek  … ファイル記述子に読み取りできるバイト数をチェックする
* [[peek]] … ファイル記述子に読み取りできるバイト数をチェックする
* print  … コンソールかデバイスに出力する
* [[print]] … コンソールかデバイスに出力する
* println  … コンソールかデバイスに改行付きで出力する
* [[println]] … コンソールかデバイスに改行付きで出力する
* read  … ファイルからバイナリ・データを読み取る
* [[read]] … ファイルからバイナリ・データを読み取る
* read-char  … ファイルから8ビット文字を一個読み取る
* [[read-char]] … ファイルから8ビット文字を一個読み取る
* read-file  … 一動作でファイルを全て読み取る
* [[read-file]] … 一動作でファイルを全て読み取る
* read-key  … キーボードのキーを読み取る
* [[read-key]] … キーボードのキーを読み取る
* read-line  … コンソールかファイルから一行読み取る
* [[read-line]] … コンソールかファイルから一行読み取る
* read-utf8  … ファイルからUTF-8文字を読み取る
* [[read-utf8]] … ファイルからUTF-8文字を読み取る
* save  … ワークスペース、コンテキスト、シンボルをファイルに書き込む
* [[save]] … ワークスペース、コンテキスト、シンボルをファイルに書き込む
* search  … 文字列についてファイルを検索する
* [[search]] … 文字列についてファイルを検索する
* seek  … ファイル・ポジションを設定、または読み取る
* [[seek]] … ファイル・ポジションを設定、または読み取る
* write  … ファイルにバイナリ・データを書き込む
* [[write]] … ファイルにバイナリ・データを書き込む
* write-char  … ファイルに一文字書き込む
* [[write-char]] … ファイルに一文字書き込む
* write-file  … 一動作でファイルを書き込む
* [[write-file]] … 一動作でファイルを書き込む
* write-line  … コンソールかファイルに一行書き込む
* [[write-line]] … コンソールかファイルに一行書き込む


==プロセス、Cilk API関数==
==プロセス、Cilk API関数==
* !  … オペレーティング・システムのシェルに出る
* [[!]] … オペレーティング・システムのシェルに出る
* abort  … spawn で開始した子プロセスを中断する
* [[abort]] … spawn で開始した子プロセスを中断する
* destroy  … fork か process で生成したプロセスを破棄する
* [[destroy]] … fork か process で生成したプロセスを破棄する
* exec  … プロセスを走らせ、それに読み書きする
* [[exec]] … プロセスを走らせ、それに読み書きする
* fork  … newLISP 子プロセスを起動する
* [[fork]] … newLISP 子プロセスを起動する
* pipe  … プロセス間通信用パイプを生成する
* [[pipe]] … プロセス間通信用パイプを生成する
* process  … 子プロセスを起動し、標準I/O と 標準エラーを割り当てる
* [[process]] … 子プロセスを起動し、標準I/O と 標準エラーを割り当てる
* receive  … 他のプロセスからのメッセージを受信する
* [[receive]] … 他のプロセスからのメッセージを受信する
* semaphore  … セマフォの生成と制御
* [[semaphore]] … セマフォの生成と制御
* send  … 他のプロセスにメッセージを送信する
* [[send]] … 他のプロセスにメッセージを送信する
* share  … 他のプロセスとメモリを共有する
* [[share]] … 他のプロセスとメモリを共有する
* spawn  … Cilk プロセス管理で子プロセスを起動する
* [[spawn]] … Cilk プロセス管理で子プロセスを起動する
* sync  … で起動した子プロセスを待ち、結果を収集する
* [[sync]] spawn で起動した子プロセスを待ち、結果を収集する
* wait-pid  … 子プロセスが終わるまで待つ
* [[wait-pid]] … 子プロセスが終わるまで待つ


==ファイル、ディレクトリ操作関数==
==ファイル、ディレクトリ操作関数==
* change-dir  … 違うドライブやディレクトリに変更する
* [[change-dir]]   … 違うドライブやディレクトリに変更する
* copy-file  … ファイルをコピーする
* [[copy-file]] … ファイルをコピーする
* delete-file  … ファイルを削除する
* [[delete-file]] … ファイルを削除する
* directory  … ディレクトリ・エントリのリストを返す
* [[directory]] … ディレクトリ・エントリのリストを返す
* file-info  … ファイルのサイズ、時間、属性を取得する
* [[file-info]] … ファイルのサイズ、時間、属性を取得する
* make-dir  … 新ディレクトリを作成する
* [[make-dir]] … 新ディレクトリを作成する
* real-path  … 相対ファイル・パスの絶対ファイル・パスを返す
* [[real-path]] … 相対ファイル・パスの絶対ファイル・パスを返す
* returns the full path of the relative file path
* [[remove-dir]] … 空のディレクトリを削除する
* remove-dir  … 空のディレクトリを削除する
* [[rename-file]] … ファイルまたはディレクトリの名前を変える
* rename-file  … ファイルまたはディレクトリの名前を変える


==HTTP ネットワーク API==
==HTTP ネットワーク API==
* base64-enc  … 文字列を BASE64 形式にエンコードする
* [[base64-enc]] … 文字列を BASE64 形式にエンコードする
* base64-dec  … BASE64 形式から文字列にデコードする
* [[base64-dec]] … BASE64 形式から文字列にデコードする
* delete-url  … ウェブからファイルまたはページを削除する
* [[delete-url]] … ウェブからファイルまたはページを削除する
* get-url  … ウェブからファイルまたはページを読み取る
* [[get-url]] … ウェブからファイルまたはページを読み取る
* post-url  … URL アドレスにポストする
* [[post-url]] … URL アドレスにポストする
* put-url  … URL アドレスにページをアップロードする
* [[put-url]] … URL アドレスにページをアップロードする
* xfer-event  … HTTP バイト転送用のイベント・ハンドラを登録する
* [[xfer-event]] … HTTP バイト転送用のイベント・ハンドラを登録する
* xml-error  … 最後の XML 解析エラーを返す
* [[xml-error]] … 最後の XML 解析エラーを返す
* xml-parse  … XML ドキュメント を解析する
* [[xml-parse]] … XML ドキュメント を解析する
* xml-type-tags  … XML タイプのタグを示すまたは変更する
* [[xml-type-tags]]   … XML タイプのタグを示すまたは変更する


==ソケット、TCP/IP, UDP and ICMP ネットワーク API==
==ソケット、TCP/IP, UDP and ICMP ネットワーク API==
* net-accept  … 受信用接続を受け付る
* [[net-accept]] … 受信用接続を受け付る
* net-close  … ソケット接続を閉じる
* [[net-close]] … ソケット接続を閉じる
* net-connect  … リモート・ホストに接続する
* [[net-connect]] … リモート・ホストに接続する
* net-error  … 最後のエラーを返す
* [[net-error]] … 最後のエラーを返す
* net-eval  … 複数のリモート newLISP サーバーで式を評価する
* [[net-eval]] … 複数のリモート newLISP サーバーで式を評価する
* net-interface  … マルチホーム・コンピュータの既定インターフェース IP アドレスをセットする
* [[net-interface]] … マルチホーム・コンピュータの既定インターフェース IP アドレスをセットする
* net-listen  … 通信用ローカル・ソケットを待ち受ける
* [[net-listen]] … 通信用ローカル・ソケットを待ち受ける
* net-local  … 通信用ローカル IP とポート番号を返す
* [[net-local]] … 通信用ローカル IP とポート番号を返す
* net-lookup  … IP 番号用の名前を返す
* [[net-lookup]] … IP 番号用の名前を返す
* net-packet  … 生のソケット上にカスタム構成の IP パケットを送信する
* [[net-packet]] … 生のソケット上にカスタム構成の IP パケットを送信する
* net-peek  … ネットワーク・ソケットから読み出せる文字数を返す
* [[net-peek]] … ネットワーク・ソケットから読み出せる文字数を返す
* net-peer  … ネット接続用リモート IP とポートを返す
* [[net-peer]] … ネット接続用リモート IP とポートを返す
* net-ping  … 一個以上のアドレスに ping パケット (ICMP echo request) を送信する
* [[net-ping]] … 一個以上のアドレスに ping パケット (ICMP echo request) を送信する
* net-receive  … 接続ソケット上のデータを読み取る
* [[net-receive]] … 接続ソケット上のデータを読み取る
* net-receive-from  … 開いてる接続の UDP を読み取る
* [[net-receive-from]]   … 開いてる接続の UDP を読み取る
* net-receive-udp  … UDP を読み取り、接続を閉じる
* [[net-receive-udp]] … UDP を読み取り、接続を閉じる
* net-select  … ソケットまたはソケットのリストの状態をチェックする
* [[net-select]] … ソケットまたはソケットのリストの状態をチェックする
* net-send  … 接続ソケットにデータを送信する
* [[net-send]] … 接続ソケットにデータを送信する
* net-send-to  … 開いてる接続に UDP を送信する
* [[net-send-to]] … 開いてる接続に UDP を送信する
* net-send-udp  … UDP を送信し、接続を閉じる
* [[net-send-udp]] … UDP を送信し、接続を閉じる
* net-service  … サービス名をポート番号に翻訳する
* [[net-service]] … サービス名をポート番号に翻訳する
* net-sessions  … 現在開いてる接続のリストを返す
* [[net-sessions]] … 現在開いてる接続のリストを返す


==Reflection and customization==
==リフレクションとカスタマイゼーション==
* command-event  … コマンドラインや HTTP リスクエストを前処理する
* [[command-event]] … コマンドラインや HTTP リスクエストを前処理する
* error-event  … エラー・ハンドラを定義する
* [[error-event]] … エラー・ハンドラを定義する
* last-error  … エラー番号とテキストを報告する
* [[last-error]] … エラー番号とテキストを報告する
* ostype  … OSプラットフォームを表す文字列を取得する
* [[ostype]] OSプラットフォームを表す文字列の組込定数
* prefix  … シンボルのコンテキストを返す
* [[prefix]] … シンボルのコンテキストを返す
* prompt-event  … インタラクティブ newLISP シェル・プロンプトをカスタマイズする
* [[prompt-event]] … インタラクティブ newLISP シェル・プロンプトをカスタマイズする
* read-expr  … ソースから S 式を読み取り、翻訳する
* [[read-expr]] … ソースから S 式を読み取り、翻訳する
* reader-event  … 評価イベント駆動の前に、式を前処理する
* [[reader-event]] … 評価イベント駆動の前に、式を前処理する
* set-locale  … 異なる ロケールに切り替える
* [[set-locale]] … 異なる ロケールに切り替える
* source  … シンボルに束縛を要求されているソースを文字列で返す
* [[source]] … シンボルに束縛を要求されているソースを文字列で返す
* sys-error  … OS システム・エラー番号を報告する
* [[sys-error]] … OS システム・エラー番号を報告する
* sys-info  … システム・リソースについての情報を与える
* [[sys-info]] … システム・リソースについての情報を与える
* term  … コンテキスト無しのシンボル部分を文字列で返す
* [[term]] … コンテキスト無しのシンボル部分を文字列で返す


==System functions==
==システム関数==
* $  … システム変数 $0 -> $15 にアクセスする
* [[$]] … システム変数 $0 から $15 にアクセスする
* callback  … 導入した関数用のコールバック関数 を登録する
* [[callback]] … 導入した関数用のコールバック関数 を登録する
* catch  … 式を評価し、エラーを補足したら、すぐに戻る
* [[catch]] … 式を評価し、エラーを補足したら、すぐに戻る
* context  … 異なる名前空間の生成か切り替えをする
* [[context]] … 異なる名前空間の生成か切り替えをする
* copy  … 評価結果をコピーする
* [[copy]] … 評価結果をコピーする
* debug  … ユーザ定義関数をデバックする
* [[debug]] … ユーザ定義関数をデバックする
* delete  … シンボル・テーブルからシンボルを削除する
* [[delete]] … シンボル・テーブルからシンボルを削除する
* default  … コンテキストのデフォルト・ファンクタを返す
* [[default]] … コンテキストのデフォルト・ファンクタを返す
* env  … オペレーティング・システム環境を取得または設定する
* [[env]] … オペレーティング・システム環境を取得または設定する
* exit  … newLISPを終了し、戻り値をセットする
* [[exit]] … newLISPを終了し、戻り値をセットする
* global  … MAIN以外から(訳注:MAINコンテキストを指定せずに)アクセスできるシンボルにする
* [[global]] … MAIN以外から(訳注:MAINコンテキストを指定せずに)アクセスできるシンボルにする
* import  … 共有ライブラリを導入する
* [[import]] … 共有ライブラリを導入する
* main-args  … コマンドライン引数を取得する
* [[main-args]] … コマンドライン引数を取得する
* new  … コンテキストのコピーを生成する
* [[new]] … コンテキストのコピーを生成する
* pretty-print  … pretty-print 文字(訳注: print、 save、 source 時の整形文字)を変更する
* [[pretty-print]] … pretty-print 文字(訳注: print、 save、 source 時の整形文字)を変更する
* reset  … トップレベルに行く(訳注:いわゆる、リセット)
* [[reset]] … トップレベルに行く(訳注:いわゆる、リセット)
* signal  … シグナル・ハンドラを設定する
* [[signal]] … シグナル・ハンドラを設定する
* sleep  … 指定されたミリ秒プロセスを中断する
* [[sleep]] … 指定されたミリ秒プロセスを中断する
* symbols  … システムの全てのシンボルのリストを返す
* [[symbols]] … システムの全てのシンボルのリストを返す
* throw  … 先行する catch への戻りを起こす
* [[throw]] … 先行する catch への戻りを起こす
* throw-error  … ユーザ定義エラーを発生する
* [[throw-error]] … ユーザ定義エラーを発生する
* timer  … ワン・ショット・タイマを開始して、イベントを起こす
* [[timer]] … ワン・ショット・タイマを開始して、イベントを起こす
* trace  … トレース・モードの設定と問い合わせ
* [[trace]] … トレース・モードの設定と問い合わせ
* trace-highlight  … トレース・モード時のハイライト文字列の設定
* [[trace-highlight]] … トレース・モード時のハイライト文字列の設定


==Importing libraries==
==インポーティング ライブラリ==
* address  … 数値や文字列のメモリ・アドレスを返す
* [[address]] … 数値や文字列のメモリ・アドレスを返す
* flt  … 浮動小数点数を表す32ビット整数に変換する
* [[flt]] … 浮動小数点数を表す32ビット整数に変換する
* float  … 文字列や整数を浮動小数点数に変換する
* [[float]] … 文字列や整数を浮動小数点数に変換する
* get-char  … メモリ・アドレスから文字を取得する
* [[get-char]] … メモリ・アドレスから文字を取得する
* get-float  … メモリ・アドレスから倍精度浮動小数点を取得する
* [[get-float]] … メモリ・アドレスから倍精度浮動小数点を取得する
* get-int    … メモリ・アドレスから32ビット整数を取得する
* [[get-int]]   … メモリ・アドレスから32ビット整数を取得する
* get-long    … メモリ・アドレスから64ビット整数を取得する
* [[get-long]]   … メモリ・アドレスから64ビット整数を取得する
* get-string  … メモリ・アドレスから文字列を取得する
* [[get-string]] … メモリ・アドレスから文字列を取得する
* import  … 共有ライブラリから関数を導入する
* [[import]] … 共有ライブラリから関数を導入する
* int  … 文字列か浮動小数点数を整数に変換する
* [[int]] … 文字列か浮動小数点数を整数に変換する
* pack  … newLISP の式をバイナリ構造体にパックする
* [[pack]] … newLISP の式をバイナリ構造体にパックする
* unpack  … バイナリ構造体を newLISP 式にアンパックする
* [[unpack]] … バイナリ構造体を newLISP 式にアンパックする


==newLISP internals API==
==newLISP internals API==
* cpymem  … アドレス間でメモリをコピーする
* [[cpymem]] … アドレス間でメモリをコピーする
* dump  … newLISP セルのメモリ・アドレスと内容を示す
* [[dump]] … newLISP セルのメモリ・アドレスと内容を示す
* read-expr  … ソースから S 式を読み取り、翻訳する
* [[read-expr]] … ソースから S 式を読み取り、翻訳する

2011年7月19日 (火) 16:45時点における最新版

Newlispの関数一覧

リスト, 評価制御、四則演算

  • +, -, *, /, % … 整数演算
  • ++ … 整数を加算する(インクリメント)
  • -- … 整数を減算する(デクリメント)
  • <, >, = … あらゆるデータの比較:未満、超過、等号
  • <=, >=, != … あらゆるデータの比較:以下、以上、不等号
  • : … コンテキスト・シンボルを作成し、オブジェクトに適用する
  • and … 論理積
  • append … リスト、アレイ、文字列を結合し、新しいリスト、アレイ、文字列を形成する
  • apply … 関数や組込関数を引数のリストに適用する
  • args … 関数やマクロ式の引数リストを取り出す
  • assoc … リストの連想キーワードを検索する
  • begin … 関数のブロックを開始する
  • bind … リストの連想変数を束縛する
  • case … 制御変数の内容で分岐する
  • catch … 式の評価する、あるいは、エラーを補足する
  • chop … リストの最後の要素をきり落とす
  • clean … リストから要素を取り除く
  • cond … 式次第で分岐する
  • cons … リストの前に要素をつけ、新リストを作る
  • constant … 定数シンボルを定義する
  • count … リストの要素が別のリストに出現する数を数える
  • curry … 関数 fx(y) を関数 f(x, y) に変換する
  • define … 新関数やラムダ式を定義する
  • define-macro … マクロやラムダ・マクロ式を定義する
  • def-new … 異なるコンテキスト(名前空間)にシンボルをコピーする
  • difference … 二つのリスト間の差を返す
  • doargs … 関数の引数を通して繰り返す
  • dolist … リストの各要素で一回ずつ評価する
  • dostring … 文字列の各文字で一回ずつ評価する
  • dotimes … 範囲内の各数字で一回ずつ評価する
  • dotree … コンテキスト内のシンボルを通して一回ずつ評価する
  • do-until … 条件が合致するまで式ブロックの評価を繰り返す
  • do-while … 条件が真の間、式ブロックの評価を繰り返す
  • dup … 指定された回数、リストか文字列を複製する
  • ends-with … 文字列かリストの終りと同じ型のキーとの一致をチェックする
  • eval … 式を評価する
  • exists … リスト中の条件の存在をチェックする
  • expand … 入れ子リスト中のシンボルを置き換える
  • explode … リストか文字列を分割する
  • extend … リストか文字列を拡張する
  • first … リストか文字列の第一要素を取得する
  • filter … リストをフィルタする
  • find … リストか文字列中の要素を検索する
  • flat … (訳注:入れ子でない)フラットなリストを返す
  • fn … 新関数やラムダ式を定義する
  • for … 範囲内の各数字で一回ずつ評価する
  • for-all … リスト中の全ての要素が条件と合うかどうかをチェックする
  • if … 条件によって式を評価する
  • if-not … 条件によって式を評価する(訳注:if と論理が逆)
  • index … リストから要素をフィルタし、それらのインデックスを返す
  • intersect … 二つのリストの両方にある要素を返す
  • lambda … 新関数やラムダ式を定義する
  • last … リストか文字列の最後の要素を(訳注:リストにしないで)返す
  • length … リストか文字列の長さを返す
  • let … ローカル変数を宣言し、初期化する
  • letex … 式中にローカル変数を展開し、その後評価する
  • letn … 入れ子の let のように、ローカル変数を初期化する
  • (訳注:先に定義されたシンボルの内容が展開される。Common Lisp の let* 相当)
  • list … リストを作る
  • local … ローカル変数を宣言する
  • lookup … 連想リスト中のメンバーを調べる
  • map … リストの要素に関数を適用し、その結果を集める
  • match … リストに対してパターン・マッチングする。文字列に対しては、find と regex を参照
  • member … リストか文字列のメンバーを見つける
  • not … 論理否定
  • nth … リストか文字列のn番目の要素を取得する
  • or … 論理和
  • pop … リストか文字列から要素を削除して返す
  • push … リストか文字列に新要素を挿入する
  • quote … 式をクォートする
  • ref … 入れ子リスト中の要素の位置を返す
  • ref-all … 入れ子リスト中の要素のインデックス・ベクターのリストを返す
  • rest … リストか文字列の第一要素以外を返す
  • replace … リストか文字列内の要素を置換する
  • reverse … リストか文字列の並びを逆にする
  • rotate … リストか文字列の並びを回転する
  • select … リストか文字列から要素を選んで並べ換える
  • self … FOOP メソッド内で目標オブジェクトをアクセスする
  • set … 束縛やシンボルのコンテキストを設定する
  • setf setq … シンボル、リスト、アレイ、文字列、文字列参照の内容を設定する
  • set-ref … 入れ子リスト中の要素を検索し、置き換える
  • set-ref-all … 入れ子リスト中の要素を検索し、全ての検出を置き換える
  • silent … begin のように動作するが、戻り値のコンソール出力を抑制する
  • slice … リストか文字列の一部を取り出す
  • sort … リストのメンバーを並べ替える
  • starts-with … 文字列かリストの始まりと同じ型のキーとの一致をチェックする
  • swap … リストか文字列内の二つの要素を入れ替える
  • unify … 二つの式を 統一化(ユニフィケーション)する
  • unique … 重複していないリストを返す
  • unless … 条件により(訳注:nil か '() の時)式ブロックを評価する
  • until … 条件が合致するまで式ブロックの評価を繰り返す
  • when … 条件により(訳注:nil か '() 以外の時)式ブロックを評価する
  • while … 条件が真の間、式ブロックの評価を繰り返す

文字列、変換 関数

  • address … 数値か文字列のメモリ・アドレスを取得する
  • append … リスト、アレイ、文字列を結合し、新しいリスト、アレイ、文字列を形成する
  • bits … 数値をバイナリ表現に変換する
  • char … 文字と ASCII コード間の変換をする
  • chop … 文字列の最後から文字を削除する
  • dostring … 文字列の各文字列で一回ずつ評価する
  • dup … 指定された回数、リストか文字列を複製する
  • ends-with … 文字列かリストの終りと同じ型のキーとの一致をチェックする
  • encrypt … ワン・タイム・パッド暗号化と文字列の解読をする
  • eval-string … 文字列をコンパイル(訳注:すなわち、newLISPソース解析)し、評価する
  • explode … 文字列を文字のリストに変換する
  • extend … リストか文字列を拡張する
  • find … リストか文字列中の要素を検索する
  • find-all … 文字列中でパターン・マッチングした全てをリストで返す
  • first … リストか文字列の第一要素を取得する
  • float … 文字列か整数を浮動小数点数に変換をする
  • format … C 言語のように数値と文字列を整形する
  • get-char … メモリ・アドレスから文字を取得する
  • get-float … メモリ・アドレスから倍精度浮動小数点を取得する
  • get-int … メモリ・アドレスから32ビット整数を取得する
  • get-long … メモリ・アドレスから64ビット整数を取得する
  • get-string … メモリ・アドレスから文字列を取得する
  • int … 文字列か浮動小数点を整数に変換する
  • join … 文字列のリストを結合する
  • last … リストか文字列の最後の要素を取得する
  • lower-case … 文字列を小文字に変換する
  • member … リストか文字列のメンバーを検索する
  • name … この関数は、削除されました。代わりに term を使って下さい。
  • nth … リストか文字列のn番目の要素を取得する
  • pack … newLISP の式をバイナリ構造体にパックする
  • parse … 文字列を トークン(訳注:ソースコードを構成する単語や記号の最小単位)に分解する
  • pop … 文字列からポップする
  • push … 文字列にプッシュする
  • regex … Perlコンパチの正規表現検索を実行する
  • regex-comp … 正規表現パターンを前以てコンパイルする
  • replace … リストか文字列内の要素を置換する
  • rest … リストか文字列の第一要素以外を取得する
  • reverse … リストか文字列の並びを逆にする
  • rotate … リストか文字列の並びを回転する
  • select … リストか文字列から要素を選んで並べ換える
  • setf setq … 文字列参照の内容を設定する
  • slice … 文字列かリストの一部を取り出す
  • source … シンボルに束縛を要求されているソースを文字列で返す
  • starts-with … 文字列かリストの始まりと同じ型のキーとの一致をチェックする
  • string … 何でも文字列に変換する
  • sym … 文字列をシンボルに変換する
  • title-case … 文字列の第一文字を大文字に変換する
  • trim … 文字列の一端または両端でトリム(訳注:空白文字を削除)する
  • unicode … ASCII か UTF-8 を UCS-4 Unicode に変換する
  • utf8 … UCS-4 Unicode を UTF-8 に変換する
  • utf8len … UTF-8 文字列の長さを UTF-8 文字単位で返す
  • unpack … バイナリ構造体を newLISP 式にアンパックする
  • upper-case … 文字列を大文字に変換する

数学関数

  • abs … 数値の絶対値を返す
  • acos … 逆余弦関数
  • acosh … 双曲線逆余弦関数
  • add … 浮動小数点数か整数を加算し、浮動小数点数を返す
  • array … アレイを作成する
  • array-list … アレイからリストに変換し返す
  • asin … 逆正弦関数
  • asinh … 逆双曲線正弦関数
  • atan … 逆正接関数
  • atanh … 逆双曲線正接関数
  • atan2 … Y / X の逆正接を ラジアンで計算
  • beta … ベータ関数
  • betai … 不完全ベータ関数
  • binomial … 二項分布関数
  • ceil … 切り上げ
  • cos … 余弦関数
  • cosh … 双曲線余弦関数
  • crc32 … データ・バッファの32ビットCRCを計算する
  • crit-chi2 … 与えられた確率のカイ二乗値を計算する
  • crit-z … 与えられた確率の正規分布Z値を計算する
  • dec … 変数、リスト、アレイ中の数値を減算する
  • div … 浮動小数点数か整数を除算する
  • erf … 誤差関数
  • exp … 指数関数
  • factor … 数値を素因数分解する
  • fft … 高速フーリエ変換
  • floor … 切り捨て
  • flt … 浮動小数点数を表す32ビット整数に変換する
  • gammai … 不完全ガンマ関数
  • gammaln … 対数ガンマ関数
  • gcd … 最大公約数を計算する
  • ifft … 逆高速フーリエ変換
  • inc … 変数、リスト、アレイ中の数値を加算する
  • inf? … 無限大をチェックする
  • log … 対数を計算する
  • min … 最小値検出
  • max … 最大値検出
  • mod … 余りを計算する
  • mul … 浮動小数点数か整数を乗算する
  • NaN? … NaN をチェックする
  • round … 数値を丸める
  • pow … x の y 乗を計算する
  • sequence … 等差数列リストを生成する
  • series … 等比数列リストを生成する
  • sgn … 符号を取り出す
  • sin … 正弦関数
  • sinh … 双曲線正弦関数
  • sqrt … 平方根を計算する
  • sub … 浮動小数点数か整数を減算する
  • tan … 正接関数
  • tanh … 双曲線正接関数
  • uuid … 汎用一意識別子(UUID)を返す

行列関数

配列関数

  • append … アレイを結合する
  • array … 16次元までのアレイを作成し、初期化する
  • array-list … アレイをリストに変換する
  • array? … アレイのチェック
  • det … 行列式を返す
  • first … アレイの第1要素を返す
  • invert … 逆行列を返す
  • last … アレイの最後の要素を返す
  • mat … 行列のスカラー演算
  • multiply … 行列の積
  • nth … アレイの要素を返す
  • rest … アレイの第一要素以外を返す
  • setf … アレイの参照内容を設定する
  • slice … アレイの一部を返す
  • transpose … 行列の置換

ビット演算関数

  • <<, >> … 左ビット・シフト、右ビット・シフト
  • & … ビット単位の論理積
  • | … ビット単位の論理和
  • ^ … ビット単位の排他的論理和
  • ~ … ビット単位の論理否定

Predicates

  • atom? … アトムのチェック
  • array? … アレイのチェック
  • context? … コンテキストのチェック
  • directory? … ディレクトリのチェック
  • empty? … 空リストか空文字列のチェック
  • file? … ファイルの存在チェック
  • float? … 浮動小数点数のチェック
  • global? … シンボルのグローバルのチェック
  • inf? … 無限大のチェック
  • integer? … 整数のチェック
  • lambda? … ラムダ式のチェック
  • legal? … シンボルの適正チェック
  • list? … リストのチェック
  • macro? … ラムダ・マクロ式のチェック
  • NaN? … NaN のチェック
  • nil? … nil のチェック
  • null? … nil, "", (), 0, 0.0のチェック
  • number? … 数値のチェック
  • protected? … プロテクトのチェック
  • primitive? … 組込のチェック
  • quote? … クォートのチェック
  • string? … 文字列のチェック
  • symbol? … シンボルのチェック
  • true? … nil以外のチェック
  • zero? … ゼロのチェック

時間日付関数

  • date … date-time 値を文字列に変換する
  • date-value … 日付と時刻に対して、1970年1月1日からの秒数を返す
  • parse-date … 日付文字を解析し、1970年1月1日からの秒数を返す
  • now … 現在の日付・時刻の情報をリストで返す
  • time … 式の評価に要する時間をミリ秒単位で計測する
  • time-of-day … その日で経過した時間をミリ秒数で返す

シミュレーションモデリング関数

  • amb … 引数からランダムに選択し、それを評価する
  • bayes-query … データ・セットのベイズ確率を計算する
  • bayes-train … Bayesian か頻度解析のリストで要素を数える
  • normal … 正規分布する浮動小数点数のリストを生成する
  • prob-chi2 … カイ二乗の累積確率を計算する
  • prob-z … Z 値の累積確率を計算する
  • rand … ある範囲の乱数を生成する
  • random … 均等に分布する浮動小数点数のリストを生成する
  • randomize … リスト中のすべての要素をシャッフルする
  • seed … 内部乱数発生器の種を指定する

パターンマッチング関数

  • ends-with … リストか文字列の終りとパターンの一致をチェックする
  • find … リストか文字列中のパターンを検索する
  • find-all … 文字列中のパターンの出現を全て検索する
  • match … リストのパターン・マッチング
  • parse … パターンに従って文字列を分解する
  • ref … 入れ子リスト中の要素の位置を返す
  • ref-all … 入れ子リスト中の要素のインデックス・ベクターのリストを返す
  • regex … 文字列中のパターンを検出する
  • replace … 文字列中のパターンを置き換える
  • search … ファイル中のパターンを検索する
  • starts-with … リストか文字列の最初とパターンの一致をチェックする
  • unify … パターンの論理 統一化(ユニフィケーション)を実行する

金融関数

  • fv … 投資の将来価値を返す
  • irr … 内部利益率を計算する
  • nper … 投資に必要な支払回数を計算する
  • npv … 投資の現在価値を計算する
  • pv … 投資の正味現在価値を計算する
  • pmt … ローンの定期支払額を計算する

I/O、ファイル操作関数

  • append-file … ファイルにデータを追加する
  • close … ファイルを閉じる
  • current-line … 最後の read-line バッファの内容を取り出す
  • device … 現在の出力デバイスの設定または問合せ
  • exec … 別のプログラムを起動し、それに読み書きする
  • load … newLISP コードのファイルをロードし、評価する
  • open … 読み書き用にファイルを開く
  • peek … ファイル記述子に読み取りできるバイト数をチェックする
  • print … コンソールかデバイスに出力する
  • println … コンソールかデバイスに改行付きで出力する
  • read … ファイルからバイナリ・データを読み取る
  • read-char … ファイルから8ビット文字を一個読み取る
  • read-file … 一動作でファイルを全て読み取る
  • read-key … キーボードのキーを読み取る
  • read-line … コンソールかファイルから一行読み取る
  • read-utf8 … ファイルからUTF-8文字を読み取る
  • save … ワークスペース、コンテキスト、シンボルをファイルに書き込む
  • search … 文字列についてファイルを検索する
  • seek … ファイル・ポジションを設定、または読み取る
  • write … ファイルにバイナリ・データを書き込む
  • write-char … ファイルに一文字書き込む
  • write-file … 一動作でファイルを書き込む
  • write-line … コンソールかファイルに一行書き込む

プロセス、Cilk API関数

  • ! … オペレーティング・システムのシェルに出る
  • abort … spawn で開始した子プロセスを中断する
  • destroy … fork か process で生成したプロセスを破棄する
  • exec … プロセスを走らせ、それに読み書きする
  • fork … newLISP 子プロセスを起動する
  • pipe … プロセス間通信用パイプを生成する
  • process … 子プロセスを起動し、標準I/O と 標準エラーを割り当てる
  • receive … 他のプロセスからのメッセージを受信する
  • semaphore … セマフォの生成と制御
  • send … 他のプロセスにメッセージを送信する
  • share … 他のプロセスとメモリを共有する
  • spawn … Cilk プロセス管理で子プロセスを起動する
  • sync … spawn で起動した子プロセスを待ち、結果を収集する
  • wait-pid … 子プロセスが終わるまで待つ

ファイル、ディレクトリ操作関数

  • change-dir … 違うドライブやディレクトリに変更する
  • copy-file … ファイルをコピーする
  • delete-file … ファイルを削除する
  • directory … ディレクトリ・エントリのリストを返す
  • file-info … ファイルのサイズ、時間、属性を取得する
  • make-dir … 新ディレクトリを作成する
  • real-path … 相対ファイル・パスの絶対ファイル・パスを返す
  • remove-dir … 空のディレクトリを削除する
  • rename-file … ファイルまたはディレクトリの名前を変える

HTTP ネットワーク API

  • base64-enc … 文字列を BASE64 形式にエンコードする
  • base64-dec … BASE64 形式から文字列にデコードする
  • delete-url … ウェブからファイルまたはページを削除する
  • get-url … ウェブからファイルまたはページを読み取る
  • post-url … URL アドレスにポストする
  • put-url … URL アドレスにページをアップロードする
  • xfer-event … HTTP バイト転送用のイベント・ハンドラを登録する
  • xml-error … 最後の XML 解析エラーを返す
  • xml-parse … XML ドキュメント を解析する
  • xml-type-tags … XML タイプのタグを示すまたは変更する

ソケット、TCP/IP, UDP and ICMP ネットワーク API

  • net-accept … 受信用接続を受け付る
  • net-close … ソケット接続を閉じる
  • net-connect … リモート・ホストに接続する
  • net-error … 最後のエラーを返す
  • net-eval … 複数のリモート newLISP サーバーで式を評価する
  • net-interface … マルチホーム・コンピュータの既定インターフェース IP アドレスをセットする
  • net-listen … 通信用ローカル・ソケットを待ち受ける
  • net-local … 通信用ローカル IP とポート番号を返す
  • net-lookup … IP 番号用の名前を返す
  • net-packet … 生のソケット上にカスタム構成の IP パケットを送信する
  • net-peek … ネットワーク・ソケットから読み出せる文字数を返す
  • net-peer … ネット接続用リモート IP とポートを返す
  • net-ping … 一個以上のアドレスに ping パケット (ICMP echo request) を送信する
  • net-receive … 接続ソケット上のデータを読み取る
  • net-receive-from … 開いてる接続の UDP を読み取る
  • net-receive-udp … UDP を読み取り、接続を閉じる
  • net-select … ソケットまたはソケットのリストの状態をチェックする
  • net-send … 接続ソケットにデータを送信する
  • net-send-to … 開いてる接続に UDP を送信する
  • net-send-udp … UDP を送信し、接続を閉じる
  • net-service … サービス名をポート番号に翻訳する
  • net-sessions … 現在開いてる接続のリストを返す

リフレクションとカスタマイゼーション

  • command-event … コマンドラインや HTTP リスクエストを前処理する
  • error-event … エラー・ハンドラを定義する
  • last-error … エラー番号とテキストを報告する
  • ostype … OSプラットフォームを表す文字列の組込定数
  • prefix … シンボルのコンテキストを返す
  • prompt-event … インタラクティブ newLISP シェル・プロンプトをカスタマイズする
  • read-expr … ソースから S 式を読み取り、翻訳する
  • reader-event … 評価イベント駆動の前に、式を前処理する
  • set-locale … 異なる ロケールに切り替える
  • source … シンボルに束縛を要求されているソースを文字列で返す
  • sys-error … OS システム・エラー番号を報告する
  • sys-info … システム・リソースについての情報を与える
  • term … コンテキスト無しのシンボル部分を文字列で返す

システム関数

  • $ … システム変数 $0 から $15 にアクセスする
  • callback … 導入した関数用のコールバック関数 を登録する
  • catch … 式を評価し、エラーを補足したら、すぐに戻る
  • context … 異なる名前空間の生成か切り替えをする
  • copy … 評価結果をコピーする
  • debug … ユーザ定義関数をデバックする
  • delete … シンボル・テーブルからシンボルを削除する
  • default … コンテキストのデフォルト・ファンクタを返す
  • env … オペレーティング・システム環境を取得または設定する
  • exit … newLISPを終了し、戻り値をセットする
  • global … MAIN以外から(訳注:MAINコンテキストを指定せずに)アクセスできるシンボルにする
  • import … 共有ライブラリを導入する
  • main-args … コマンドライン引数を取得する
  • new … コンテキストのコピーを生成する
  • pretty-print … pretty-print 文字(訳注: print、 save、 source 時の整形文字)を変更する
  • reset … トップレベルに行く(訳注:いわゆる、リセット)
  • signal … シグナル・ハンドラを設定する
  • sleep … 指定されたミリ秒プロセスを中断する
  • symbols … システムの全てのシンボルのリストを返す
  • throw … 先行する catch への戻りを起こす
  • throw-error … ユーザ定義エラーを発生する
  • timer … ワン・ショット・タイマを開始して、イベントを起こす
  • trace … トレース・モードの設定と問い合わせ
  • trace-highlight … トレース・モード時のハイライト文字列の設定

インポーティング ライブラリ

  • address … 数値や文字列のメモリ・アドレスを返す
  • flt … 浮動小数点数を表す32ビット整数に変換する
  • float … 文字列や整数を浮動小数点数に変換する
  • get-char … メモリ・アドレスから文字を取得する
  • get-float … メモリ・アドレスから倍精度浮動小数点を取得する
  • get-int … メモリ・アドレスから32ビット整数を取得する
  • get-long … メモリ・アドレスから64ビット整数を取得する
  • get-string … メモリ・アドレスから文字列を取得する
  • import … 共有ライブラリから関数を導入する
  • int … 文字列か浮動小数点数を整数に変換する
  • pack … newLISP の式をバイナリ構造体にパックする
  • unpack … バイナリ構造体を newLISP 式にアンパックする

newLISP internals API

  • cpymem … アドレス間でメモリをコピーする
  • dump … newLISP セルのメモリ・アドレスと内容を示す
  • read-expr … ソースから S 式を読み取り、翻訳する