LISP インタビューのトップ 18 の質問と回答 (2025)

ここでは、新人だけでなく経験豊富な Lisp プログラマー候補者が夢の仕事に就くための、Lisp プログラミング面接の質問と回答を紹介します。


1) LISP とは何ですか? LISP で構築された人気のあるアプリケーションの例を挙げてください。

LISP は List Processing の略で、形式的な関数計算に基づいた高級プログラミング言語でもあります。 この言語は、データ文字列を簡単に操作するために使用されます。 のために使用されます Artificial Intelligence。 LISP で構築された人気のあるアプリケーションには、次のようなものがあります。

無料の PDF ダウンロード: Lisp インタビューの質問と回答


2) なぜ LISP が人工知能に使用されるのですか?

LISP が人工知能に使用される理由は次のとおりです。

  • 記号プログラミングをサポートしており、古い AI は記号に基づいていました
  • LISP は強力です。 コードまたはデータの区別が弱いため、ドメイン固有の言語のように感じられる他のプログラミング言語よりも拡張性が高いように感じられます。
  • これは優れたプロトタイピング ツールであり、問​​題に取り組むのが得意です

3) LISP でどのようにコーディングできるかを例を使って説明します。

LISP では、算術演算子も含め、ほとんどすべてが関数です。 たとえば、 (+ (* 5 3) 1 ) 出力は 16 になり、LISP の関数は括弧で開閉します。


4) LISP のプログラミング構造は何ですか?

LISP プログラミング構造は、シンボリック式または S 式で構成されます。 S 式は XNUMX つの有効なオブジェクトで構成されます

  • 原子: 連続した文字の数字または文字列です
  • リスト: リストは、括弧で囲まれた一連の原子またはその他のリストです。
  • 文字列: 二重引用符で囲まれた文字のグループは文字列と呼ばれます。 LISP プログラムは、インタプリタ上で実行することも、コンパイルされたコードとして実行することもできます。

5) LISP ではデータ型はどのように分類されますか?

LISP では、データ型は次のように分類されます。

  • スカラー型: 数字の種類、文字、記号など
  • データ構造: リスト、ベクトル、ビットベクトル、文字列
LISP 面接の質問
LISP 面接の質問

6) LISP では利用可能な変数の種類が何種類あるかについて述べてください。 バインドされ、値が割り当てられている変数とは何ですか?

LISP で使用できる変数の数は XNUMX つあり、XNUMX つは字句変数、もう XNUMX つは特殊変数です。 プロシージャのパラメータはバインドされ、値が割り当てられる変数です。


7) ローカル変数とは何ですか?

指定されたプロシージャを使用して、ローカル変数が定義されます。 関数内の引数として指定されたパラメーターは、ローカル変数とも呼ばれます。 これらは、それぞれの関数内でのみアクセスできます。


8) LISP 定数とは何ですか?

LISP では、定数は実行中に値が変更されない変数です。 defconstant コンストラクトを使用して定数を宣言します。


9) 他の言語から LISP 関数を呼び出すことは可能ですか?

LISP は「コールバック」関数を提供します。プログラマが外国語の関数名を LISP 関数に関連付けると、その関数はこれらのコールバック関数にリンクされます。 外部関数を使用する場合、LISP がインターフェイスで変換を実行できるように、プログラマは結果のデータ型と引数を指定する必要があります。

Lispプログラミングの面接での質問
Lispプログラミングの面接での質問

10) LISP に必要な XNUMX つの関数は何ですか?

関数の定義には defun というマクロを使用します。これには XNUMX つの引数が必要です。

  • 関数の名前
  • 関数のパラメータ
  • 関数の本体

11) LISP の述語とは何ですか?

述語は、特定の条件に対して引数をテストし、条件が false の場合は nil 値を返し、条件が true の場合は nil 以外の値を取得する関数の一種です。


12) LISP におけるハッシュ テーブルの重要性について説明してください。

ハッシュ テーブル データ構造は、キーのハッシュ コードに基づいて配置されたキーと値のペアの集合を示します。 ハッシュ テーブル内の各項目にはキーと値のペアがあり、コレクション内の項目にアクセスするために使用されます。 キーを使用して要素にアクセスする場合は、ハッシュ テーブルが使用されます。


13) LISP ベクトルについて説明しますか?

ベクトルは XNUMX 次元配列であるため、次のサブタイプになります。 配列。 ベクトルとリストを合わせてシーケンスと呼びます。 LISP には、固定長の可変/単純ベクトルと、調整可能およびフィルポインタというキーワードで作成された可変長ベクトルがあります。


14) LISP のプロパティ リストとは何ですか?

LISP では、シンボルはデータ オブジェクトを表します。 プロパティリストまたはplistと呼ばれるコンポーネントで構成されます。 LISP では、シンボルにプロパティを割り当てることができます。 プロパティ リストは、偶数の要素内のリストとして実行されます。


15) LISP で使用される XNUMX つの事前定義パッケージとは何ですか?

LISP の XNUMX つの事前定義パッケージは次のとおりです。

  • 共通Lisp: 定義されているすべての関数と変数のシンボルが含まれています
  • 一般的な Lisp ユーザー: common-lisp パッケージと、編集およびデバッグ ツールを備えた他のすべてのパッケージを使用します。

16) スロットとは何ですか?最も一般的に使用されるスロット オプションは何ですか?

スロットは、データまたはフィールドを格納する変数にほかなりません。 スロットの説明には次の形式があります。各オプションはキーワードの後に​​名前、式、その他のオプションが続きます。 最も一般的に使用されるスロット オプションは次のとおりです。

  • :アクセサ関数名
  • :initform 式
  • :initarg シンボル

17) LISP の CLOS とは何ですか? Common Lisp オブジェクト システムの目標は何ですか?

オブジェクト指向プログラムを作成するために、Common LISP には一連の演算子が含まれており、それらは総称して CLOS または Common Lisp Object System と呼ばれます。 LISP の共通の目的は次のとおりです。

  • 関数表記と共通 LISP タイプの拡張に関して、自然な方法で Common Lisp に適合させるため
  • フレーバーと共通ループの現在のユーザーにスムーズな成長パスと簡単な移行を提供するため
  • 多層的なアプローチを提供するには
  • アプリケーションを効率的に配信するためのプラットフォームと、強力なプログラミング環境を実現するための言語の両方を提供する

18) setq が LISP で何に使用されるのか説明してください。

setq は LISP で変数を設定するために使用されます

これらの面接の質問は、あなたの活力(口頭)にも役立ちます

シェアする

3のコメント

  1. アバター ジャヤラタ・サダナンダン 言います:

    素晴らしいLISP。

  2. アバター ジャヤラタ 言います:

    私は LISP、特に AutoLISP が大好きです。
    LISPとの連携を楽しみにしています

  3. カースティン・ヨハンソン 言います:

    10問間違えて出題された以外は合格しました。 質問 3 では、Lisp に必要な 3 つの関数を求めていますが、実際に必要なのは、関数を定義するために必要な XNUMX つの要素 (引数ではありません) です。 そうすれば、与えられた答えは正しいです。

    いずれにせよ、質問が気に入りました。 彼らが質問 1 をすると、すぐに目が光り、答えるのをやめるよう求められると、自動的に採用されると思います。

コメントを残す

あなたのメールアドレスは公開されません。 必須フィールドは、マークされています *