Euphoriaの最新バージョンは?
      こちらです:  http://www.RapidEuphoria.com
      
 →  Euphoriaのインストール/アンインストール方法は、install.htmを参照してください。
      
 → このリリースでどこが改良・変更されたの?
      relnotes.docを参照してください。

プログラミング言語 Euphoria
version 3.1

 
ようこそ Euphoriaへ! ... End User Programming with Hierarchical Objects for Robust Interpreted Applications

Euphoriaは1993年7月の最初にv.1.0のリリースされてから大きく発展をしてきました。今では世界中に数千人もの利用者がいます。ディスカッションフォーラム(英語)は、管理とモデレートがEuphoriaプログラムにより自動化されており、サポーターとして500人以上のフォーラム参加者がいます。 EuphoriaウェブサイトにはEuphoriaソースプログラムやライブラリルーチンなどを含む1600以上のファイルが寄贈されています。多数の人々により、Euphoria関連の専門ウェブページが開設されています。Euphoriaは様々な商用プログラムで使用されています。Windows版は多数のGUIユーティリティ、およびインターネット関連プログラムの開発に使用されています。 DOS版はわくわくするハイスピード・アクションゲームの開発用途で最も使用され、 Sound Blasterサウンドエフェクトを利用しています。Linux および FreeBSD版はX Windows GUIプログラム、ウェブプログラム(CGI)、および多数の実用ツールとユーティリティの開発で使用されています。


第3のプログラミング言語?

Euphoriaはその他多数の言語とは別の特徴をいくつか兼ね備えた超高級プログラミング言語です:

  • Euphoriaのプログラムは Windows, DOS, Linux, および FreeBSDで実行できます。

  • Euphoriaは無償でありオープンソースです。Euphoriaのインタプリタ、トランスレータおよびバインダの完全なソースコードはダウンロードしたこのパッケージに含まれています。ソースコードはEuphoriaで自立記述されており(C言語版高速バックエンドを除く)、Euphoria自身を教材とすることで基本的なプログラミング技術が身につきます。

  • 言語仕様は柔軟で、強力かつ習得が容易です。

  • コンパイルとリンクで待たされることありません。 - ソースコード編集後すぐに実行できます。

  • ロイヤリティフリーなスタンドアロンの.exeファイルを作成・配布できます。

  • 動的ストレージアロケーションはEuphoriaでは欠かせないものです。変数の伸縮においてプログラマがメモリー領域の割り当ておよび開放に関して心配する必要はありません。配列(Euphoriaではシーケンス)の要素は動的に異なる型および異なる大きさのデータを混合することができます。

  • Euphoriaは広範囲の実行時エラーチェックを提供します: 範囲外添字、未初期化変数、ライブラリルーチンにおける不正な引数値、変数に不正に割り当てられた値およびその他いろいろ。なにか上手く動作しないときは、コールスタックのトレースバックと変数の値のリストと完全なエラーメッセージを得ることができます。他の言語では、一般的に保護エラーとして役立たずのマシンレジスタおよびアドレスのダンプを得られるだけです。

  • EuphoriaはPerlやPythonのような従来のインタプリタより30倍早く、"偉大なコンピュータ言語決戦(Language Shootout)"ベンチマーク(demo\bench\bench.docを参照してください)では他のすべてのインタプリタ言語よりもかなり高速です。

  • それでも不十分であれば、Euphoria → C言語トランスレータにより任意のEuphoriaプログラムをC言語へ翻訳することができ、さらに動作速度を向上させることができます。 どうして手入力したC/C++コードのデバッグに時間を浪費するのですか? Euphoriaプログラムとして開発すると、簡単にC言語コードを生成することができます。

  • Euphoriaプログラムは悪名高き不自然なMS-DOSの640KBの壁と呼ばれるメモリー制限の影響を一切受けません。Euphoriaの全版においてシステム搭載されている全てのメモリーを使用でき、さらに不足したときは、ディスクにスワップファイルを作成して追加の仮想メモリーを提供します。

  • インタプリタに統合され、簡単に使えるフルスクリーンソースレベルデバッガ/トレーサーを利用できます。

  • 実行回数プロファイラ および 時間プロファイラ の両方を利用できます。

  • 急成長中の大規模な優れたサードパティプログラム集とライブラリ集が存在しており(アーカイブページ)、多くは完全なソースコードが後公開されてます。

  • RDSはEuphoriaの全動作環境で汎用性がある非常に柔軟データベースシステムである(EDS)を開発しました。

  • WIN32実装のEuphoriaでは任意のWIN32 APIルーチンやC言語またはEuphoriaルーチンの.DLLファイルにもアクセスできます。有志達によりWindows GUIライブラリ(Win32Lib)が開発されたことにより、強力な統合開発環境(IDE)を完備しています。グラフィカルユーザインタフェースを設計したり、クリックによって実行する命令文を指定したり、さらにIDEで完全なEuphoriaプログラムを作成できます。このWindows用Euphoriaライブラリはインターネットアクセス、3次元ゲーム、およびその他数多くのアプリケーションの用途で利用できます。

  • DOS32実装のEuphoriaではMS-DOSに向けに内蔵グラフィックスライブラリがあります。 必要なときに、DOSソフトウェア割り込みにアクセスできます。また機械語ルーチンを呼び出すことができます。 さらにハードウェア割り込みハンドラを設定できます。数多くのハイスピードアクションゲームは、Sound Blasterサウンドエフェクトを利用しており、マシンコードを一切必要とせずに、100%Euphoriaで開発されています。

  • Linuxおよび FreeBSD実装のEuphoriaでは共有ライブラリのC言語ルーチンおよび変数にアクセスすることにより、グラフィックスから、X windows GUI プログラミング、インターネットCGIプログラミングといった様々な範囲のタスクができます。喜ばしいことにC言語ではなくEuphoriaでプログラミングできます。


製品と動作環境

Euphoriaは、WIN32, DOS32, Linux, および FreeBSDといった4つの異なる動作環境で実行できます。

Euphoria インタプリタ、トランスレータとバインダのパッケージは誰でも自由に使用できます。

Euphoriaバインダを使用するとシュラウド(暗号化)やバインドにより任意のEuphoriプログラムにバックエンド・インタプリタを連結して、単一、スタンドアロン、耐タンパー性のある .exeファイルを作成することができ配布が容易になります。詳しくはbind.docを参照してください。

Euphoria → C言語トランスレータは 任意のEuphoriaプログラムをスタンドアロン.exeファイルへ変換しますが、さらにインタプリタと比較するとプログラムの動作速度を高速化できる優位点があります。これを使用するには、マシンに7種類の無償C言語コンパイラのうち一つが導入済みである必要がありますが、C言語の知識は不要です。

このパッケージにはドキュメンテーションとしてプレインテキスト形式とHTML形式の両方が含まれています。プレインテキストファイル(.doc)は、例えばWindowsのメモ帳やワードパットで任意のテキストで閲覧できます。HTMLファイル(.htm)はウェブブラウザで閲覧できます。共通のドキュメントソースファイルから、Euphoriaで開発されたツール(MakeDoc)を使用してプレインテキストとHTMLファイルを自動生成することができます。このようにリンク情報の欠落、フォント、色、その他を除きdocサブディレクトリの各ファイルの内容は、htmlサブディレクトリで対応するファイルの内容と同一です。なおドキュメンテーションファイルの要約はdoc\overview.doc(またはhtml\overview.htm) を参照してください。

このパッケージに含まれているその他全てのファイルは全体または一部をEuphoriaインタプリタと共に自由に配布できるため、あなたが開発したEuphoriaプログラムを誰でも実行できるようになります。あなたが開発したEuphoriaプログラムの配布は完全に自由です。

WIN32版のEuphoriaを実行するは、Windows 95以降のバージョンのWindowsが必要です。XPでも正常に実行できます。

DOS32版は全バージョンのWindowsで実行でき、386以降の全プロセッサ上で動作する生DOSで実行できます。一般常識とは相反することですが今もなおDOSは使われ続けています。DOS用EuphoriaプログラムはWindows XPのコマンドプロンプトウィンドウからでも実行できます。

Linux版Euphoriaを実行するにはlibc6以降が含まれる最新版のLinuxディストリビュージョンが必要です。例えば、Red Hat 5.2以降では良好に動作します。

FreeBSD版Euphoriaを実行するには最新版のFreeBSD ディストリビュージョンが必要です。


はじめかた

0. EuphoriaインタプリタはEuphoriaプログラムを実行するための原動力です。これには親しみやすいGUIインターフェースは搭載されていません。Windows GUIプログラミングをするとき、ジュディス・エヴァンス(Judith Evans)によるIDE(オープンソースのEuphoiraコードとして記述されています)をダウンロードする必要があります。これは非常にすばらしいグラフィック環境でのWindowsプログラミングをできるようにします。その他多くのプログラミングにおいて本当に必要なものは、例えばメモ帳などのテキストエディタです。
1. Euphoriaインストール後、ドキュメンテーションファイルはdocおよびhtmlディレクトリにあります。ドキュメンテーションの概要はoverview.docに解説されています。最初にrefman.htm (またはrefman.doc)を必ずお読みください。目的のものと関連するものを検索したいときは、guruと入力してください。
2. demoディレクトリにあるプログラムを実行して楽しんでください。 お好きなように変更をしたり、トレース モードを有効にして実行してみてください:
        with trace
        trace(1)
この行を.ex または .exwファイルの最初に追加するとトレースモードが有効になります。
3. 簡単な命令文を入力して実行してみてください。これには任意のテキストエディタが使用できます。ずっとEuphoria標準エディタを使い続けたいのと思うのであればedを、またはディビッド・キューニー(David Cuny)によるEuphoriaエディタをEuphoriaウェブサイトからダウンロードしてください。

怖がらず試してみてください。Euphoriaなんて怖くないですよ。エラーが出てもパソコンやデータを壊すことはないです。また、編集する前にプログラムのバックアップコピーを作っておくと簡単に元に戻せますよ。何かわからないことがあったら、飛ばして先へ進みましょう。今わからなくても後でわかることだってあります。

4. より多くの課題をこなしたいときはwhat2do.docを参照してください。
5. Euphoriaウェブサイトを訪れて、いくつかファイルをダウンロードしたり、Euformに参加しましょう。

あなたがプログラム初心者ならば、このままrefman.htmへ進むのは困難だと思いますので、対話型の指導書である デイビッド・ゲイ(David Gay)が開発した"A Beginner's Guide To Euphoria(Euphoria初心者向け指南書)"をダウンロードしてください。 これはアーカイブ(Archive)ページの説明書(Documentation)セクションにあります。

 

インストールで問題が発生したときは、install.docを参照してください。


シェアウェア販売業者への注意事項:
Euphoriaインタプリタパッケージの頒布は奨励されています。また好きな対価を付けて請求できます。人々は責務がない間はEuphoriaを使用できます。

免責事項:
Euphoriaは、いかなる種類の保障なく"あるがまま"に提供されています。Rapid Deployment Softwareは、この製品の使用、または不可抗力により生じた損害に関して一切の責任を負いません。
Ninetailfox Softwareは本翻訳文章およびローカライズを行ったソフトウェアを使用した結果について一切の責任を負いません。なおバグや誤訳を発見しましたらtwitterのNinetailfox Software(@9tf2010)のアカウントまでダイレクトメッセージにてお知らせくださると幸いです。