SML# - Tutorial/004 Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

[ [[トップ |Tutorial]]| [[目次|Tutorial/000]] | [[前ページ|Tutorial/003]] | [[ 次ページ |Tutorial/005]] ]
----
今回は,MLとCのプログラミングを快適に行うために,作業スペースを作成
し,その状況をSML#コンパイラとMeadowエディタに知らせる作業を行う.

! フォルダの作成
SML#とCのプログラムソースファイルや実行時ライブラリファイルなどを格納するフォルダを以下のように作成する.
* C:\SMLSharpAndC  --- ルートフォルダ
* C:\SMLSharpAndC\sml --- MLソースファイル用フォルダ
* C:\SMLSharpAndC\c --- Cソースファイル用フォルダ
* C:\SMLSharpAndC\dllLib --- 動的リンクライブラリ用フォルダ
* C:\SMLSharpAndC\smlLib --- SMLライブラリ用フォルダ
さらに,ルートフルだのショートカットをデスクトップに作成しておくと便利である.
!環境変数の設定
これらフォルダを以下の環境変数に設定すると,これらフォルダとともに
MeadowやSML#コンパイラをより快適に使用することができる.これら設定
は各ユーザ固有のものなので,ユーザの環境変数に設定する.
* 環境変数'''PATH'''を作成し'''C:\SMLSharpAndC\dllLib'''の値を設定する.もしすでPATH変数が存在すれば,その先頭に'''C:\SMLSharpAndC\C\dllLib;'''を追加する.この設定は,SML#からCの関数を呼ぶための動的リンクライブラリのサーチパスの指定である.
* 環境変数'''SMLSHARP_LIB_PATH'''を作成し,'''C:\SMLSharpAndC\smlLib;C:\Program Files\SMLSharp\lib\smlsharp'''の値を設定する.この設定は,SML#コンパイラがSML#のソースコードやコンパイル済みのライブラリファイルのサーチパスの指定である.
!Meadowの作業フォルダの設定
今後のプログラム開発の起点は'''C:\SMLSharpAndC'''フォルダである.そこ
で,Meadowにこのフォルダを作業フォルダとするように指示しておこう.これ
は,Meadowのアイコンを右クリックし,「プロパティ」を表示し,作業フォル
ダの値を'''C:\SMLSharpAndC'''と設定すればよい.

!ファイルの作成と属性の設定
以上でプログラム開発のワークスペースが整った.では,Meadowエディタを起
動して,以下の手順でファイルを作成してみよう.
!!SMLソースファイル
Meadowエディタで存在しないファイルを編集しようとすると,自動的にファイ
ルが作成される.C-xC-fキーストロークで''find-file''コマンドを実行する
と,Meadowはミニバッファに''Find file: c:/SMLSharpAndC/''と表示され入
力待ちとなっているはずである.そこで,ファイル名''test.sml''を入力し,
ファイルを作成してみよう.

中身は何でもよいので,ここでは,
"Hi, there!";
としておこう.バッファを書き出し,Meadowを終了し,'''C
:\MLSharpAndC\sml'''フォルダを見ると,'''test.sml'''ファイルができてい
るはずである.

この拡張子を持つファイルはMeadowエディタで作業をすることをWindowsシス
テムに通知しておくと,smlの拡張子を持つファイルをダブルクリックするだ
けでMeadowが起動され便利である.そのためには,右クリックでこのファイル
のプロパティを開き「プログラム」をMeadowに設定する必要がある.Meadowの
実行プログラムは'''C:\Meadow\bin\RunMW32.exe'''である.そこで,「参照」
ボタンをクリックし,このプログラムを探しそれに設定する.設定が終わった
ら,'''test.sml'''をダブルクリックし,Meadowが起動されることを確認して
おこう.

!!Cソースファイル
同様に'''C:\SMLSharpAndC\C'''フォルダに'''test.c'''ファイルを作成し,
同様の設定を行っておこう.

! Meadowのshellモードの起動
最後に,Meadowのshellモードを起動しshellコマンドでファイルを確認してみよう.
dir
とコマンドを入力してみよう.以下のような出力が得られるはずである.
c:\SMLSharpAndC\sml>dir
dir
  ドライブ C のボリューム ラベルは xxxxx です
  ボリューム シリアル番号は xxxxx です

  c:\SMLSharpAndC\sml のディレクトリ

2007/04/19  13:09    <DIR>          .
2007/04/19  13:09    <DIR>          ..
2007/04/19  13:02                15 test.sml
                1 個のファイル                  15 バイト
                2 個のディレクトリ  xxxxxxxxxxxxxx    バイトの空き領域

c:\SMLSharpAndC\sml>
もちろんdir以外にも,コマンドプロンプトで使用できるコマンドは何でも使用できる.
type test,sml
と入力してファイルの中身をプリントしてみよう.

----
以上で作業環境は一通り整った.ではいよいよ
[[初めてのMLプログラム|Tutorial/005]]

[[初めてのCプログラム|Tutorial/006]]
を書いてみよう.
----
[ [[トップ |Tutorial]]| [[目次|Tutorial/000]] | [[前ページ|Tutorial/003]] | [[ 次ページ |Tutorial/005]] ]