タグ

languageと処理系に関するyasuhoのブックマーク (2)

  • Part3 超小型BASICインタプリタを作ってみよう

    知的にエキサイティングな行為はいろいろあります。例えば,パズルを解くこと,囲碁や将棋をたしなむこと,プログラミングなどがそれにあたります。 なかでも,プログラミングにはパズルや囲碁・将棋にない大きな特徴があります。それは,プログラミングに使用する言語処理系を,プログラミングによって生み出すことができという特徴です。パズルを解くことでパズルが生み出されたり,将棋を指すことで将棋のコマが生まれるようなことはあり得ません。しかし,プログラミングの世界ではそのようなことがあり得るのです。それを体験できることが,ほかと異なるプログラミングならではの面白さと言えます。 「いや,理屈はそうであっても,難しくて僕らに作れるわけがない…」,そう思う方々もいるでしょう。もちろん,大企業や有名な団体が開発し,配布しているような有名言語処理系(例えば米MicrosoftのVisual StudioやGNUプロジェ

    Part3 超小型BASICインタプリタを作ってみよう
  • Part1 誰でも作れるプログラム言語

    “プログラム言語*1を作る”って一体どういうこと?──この特集のタイトルを見てそう思った方もいるでしょう。最初に,その疑問にお答えしましょう。 普段,皆さんはプログラミングをするとき,出来合いのコンパイラやインタプリタを使っている方がほとんどだと思います。最初にプログラム言語を選んだとき,実際は,その言語を使ったプログラミングに必要なコンパイラやインタプリタを含む「プログラム言語処理系」(単に処理系と呼ぶことが多いです)を選んでいるわけです*2。 コンパイラやインタプリタなどの処理系は,アプリケーションを開発するための基盤となるソフトウエアですから,中身を知らなくてもきちんと動くことが前提です。正しくプログラムを書けば,実行可能なファイルを生成(インタプリタの場合はすぐに実行)しますし,プログラムが間違っていればエラーを返します。それが具体的にどんな処理をしているのかを気にすることはありま

    Part1 誰でも作れるプログラム言語
  • 1