コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
GizmoLab 関連
オンラインショップ
CAD&CGブログ
YouTube
GitHub
CAD 系
GizmoTools
AutoLISP
Visual LISP
BricsCADのLISP
GzLib
DCL
OpenDCL
DWG
DXF
CADのコマンド一覧
システム変数
図形の種類
Ver別サポートAPI
CAD用語集
メモ
newLISP
CommonLISP
Script-Fu
Inno setup
JavaScript
ANDROID
Windowsでのファイルハッシュ確認
Prolog
Python
Clojure
Electron
フォント
数学メモ
イメージサイズとメモリ量
blender
Processwire
Win10,11メモ
IIJmio
mediawiki資料
ヘルプ
検索
検索
表示
ログイン
個人用ツール
ログイン
トーク:NewLispのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
トーク:NewLisp
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
基本的なところ * リスト、シンボル、lambda、式 があるよ。 * リストの例 ** '() … 空リスト ** '(3) … 整数 ** '("こんにちは" "三河屋です") … 文字列2つのリスト ** '("こんにちは" 2 opt) … 文字列と整数とシンボルのリスト ** '((a b c) (1 2 3)) … リスト2つのリスト ** '("こんにちは" "三河屋です") … 文字列2つのリスト * シンボルの例 ** (set 'text "こんちは") … シンボルに値を割り当て ** text → "こんちは" … シンボルを評価すると"こんちは" ** mirrorman → nil … 未定義のシンボルを評価すると nil ** (set 'opt1 true 'opt2 nil) … opt1をtrue、opt2 を nil に。 ** true → true … true の評価は true (ブーリアンの true) ** nil → nil … nil の評価は nil (ブーリアンの false) * lambda 式 … あるよ (set 'f (lambda (n) (+ n n))) => (lambda (n) (+ n n)) ** fn はlambdaの代わりに使えるよ (set 'f (fn (n) (+ n n))) => (fn (n) (+ n n)) ** lambda はシンボルじゃなくて、特別なリスト扱い (length (lambda (n) (+ n n))) > 2 (first (lambda (n) (+ n n))) > (n) ** lambda 式は無名関数として使われるよね (apply (lambda (n) (+ n n) '(123)) > 246 (map (lambda (n) (+ n n) '(1 2 3)) > (2 4 6) ** シンボルに lambda 式を定義して関数として使えるよね (set 'double (lambda (n) (+ n n)) > (lambda (n) (+ n n) (double 123) > 246 ** もうちょっと短かく (define (doudle n) (+ n n)) > (lambda (n) (+ n n) (double 123) > 246 ==シンボルと関数の命名規則== # 変数シンボルは、次の文字から始まってはならない: #* # ; " ' ( ) { } . , 0 1 2 3 4 5 6 7 8 9 # + または - で始まる変数シンボルは、二文字目に数字を使うことはできない。 # 変数名の内部には、以下の文字を除く、どんな文字も許される: #* " ' ( ) : , 半角スペース #* これらは、変数シンボルの終りを意味する。 # [(左角括弧)で始まり、](右角括弧)で終わるシンボルは、右角括弧を除くどんな文字を含んでもよい。 * newLISP では適正なシンボル名の例 myvar A-name X34-zz [* 7 5 ()};] [俺] *111* ==日本語== * set-locale で現在のロケールを調べたり、変えられたりする。日本の場合、小数点の記号は標準と一緒の"."。 (set-locale "JPN") > ("Japanese_Japan.932" ".") (set-locale "DEU") > ("German_Germany.1252" ",") * newLISP の UTF-8 対応バージョンにするとUTF8関連の関数が使える。 以下、例 (utf8len "おれはジャイアン") > 8 * UTF-8 対応バージョンは、別配布なので別途DLして差し替えて使う。
トーク:NewLisp
に戻る。
検索
検索
トーク:NewLispのソースを表示
話題を追加