2011-01-15 11 views
2

また、HaskellとLeskahについての初心者の質問もあります。複数のファイル間でhaskellパッケージを構成する

(最初は、ハスケル愛好家のための主観的な褒め言葉です:それぞれがハスケルの学習セッションのために戻ってきます。私はますますそれが好きです。最新の喜びはシンボルを数学に変換するためのレスカの砂糖でした。それはコードが本当にいいように見えます。しかし、それはポイントではありません...)

私は自分のラーナーパッケージをいくつかのファイルに整理したかったのです。 しかし、私は2番目のファイルを追加することに成功しませんでした。私の現在のパッケージビルドユニットにSecond.hsは、他の定義を含んでいます。私はそれをLeskah/Edit Package/Extra Filesに加えました。しかし、これは仕事をしていないようです。以上のように、新しいファイルをこのように追加するのはちょっとしたことでした(Leskah/Edit Package/Extra Filesを介して)。

結局のところ、ビルドされたものはすべて私のMain.hs.私は確かにいくつかのポイントを逃している?

もう1つの質問は、私のオブジェクト定義をサブジェクト/ゴール別にソートするために、C++で大きくnamespaceを使用しています。 Haskellの名前空間に相当するものは何ですか?モジュール?パッケージ ?

答えて

3

leksahについて:ブラウザパネルから新しいモジュールを追加できます。右クリックし、コンテキストメニューから「モジュールを追加」を選択してください(注:モジュール名は入力してください。ダイアログにファイル名は入力しないでください)。 Package Editorからのモジュールの追加は、カバールファイルに既存のモジュールを追加するためのものです。 (「キャバル」が何を意味するのかわからない場合は、グーグルにとってグッドタイムです:))

名前空間について。私は、最も近いものはモジュールだと思う。現在のコンテキストに定義を追加するためにモジュールをインポートすることができます。代わりに、モジュール修飾をインポートすることもできます。その場合、モジュールから定義を修飾する必要があります。また、インポートするときに、モジュール名を「エイリアス」することもできます。

import Module1 
import qualified Modile2 
import Module3 as M3 
import qualified Modile4 as M4 

パッケージは、C/C++でコンパイルされたライブラリと同等です。

+0

私を笑ってはいけない、良い文脈のメニューを見つける時間がかかった。私は "Add Module" functionnalityを試しました...そして、それは*正確に*私が探していたものです。どうも。 –

+0

ちょうど、私は ".cabal"ファイルの実装を見てきましたが、今は私にとってはあまりにも多くの設定/管理用のものです。パッケージをもう少し理解したいと思ったら、もう一度見てみましょう。 –

関連する問題