NewLisp関数一覧

提供:GizmoLabs - だいたい CAD LISP なサイト
2011年7月19日 (火) 16:45時点におけるGizmon (トーク | 投稿記録)による版 (→‎文字列、変換 関数)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

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 式を読み取り、翻訳する