私はClojure初心者です。私はOvertoneでプレイしようとしています。しかし、私はオーバートーンを起動し、それを外部のSuperColliderサーバに接続することに問題があります。オーバートーンから外部SuperColliderオーディオサーバーに接続できません
私はオーバートーンのドキュメントからチュートリアルに従います:Connecting scsynth。私はWindows 10 64ビット上にいるので、私は内部SuperColliderサーバーを使用することはできません。そこで、SuperColliderをインストールし、オーディオサーバーが127.0.0.1:57110で動作していることを確認しました。
今、私はlein relpでOvertone環境を読み込もうとしていますが、代わりにnilが返されます。
user=>(use 'overtone.core)
nil
倍音環境が正しく読み込まれ、されるのであれば、今、私たちは外部のSuperColliderのサーバーに接続することになっています。私たちは2つの方法でこれを行うことができます。 Overtone内から外部サーバーを起動するか、既存の実行中のサーバーに接続します。
外部サーバーを起動するには次のコマンドを試しましたが、未解決のシンボルエラーが発生しました。
user=> (connect-external-server 57110)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: connect-external-server in this context, compiling:(C:\Users\<user>\AppData\Local\Temp\form-init401744747046363104.clj:1:1)
user=> (connect-external-server)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: connect-external-server in this context, compiling:(C:\Users\<user>\AppData\Local\Temp\form-init401744747046363104.clj:1:1)
アム私は(use 'overtone.core)
を実行するとnil
を取得することになって、
user=> (boot-external-server)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: boot-external-server in this context, compiling:(C:\Users\<user>\AppData\Local\Temp\form-init401744747046363104.clj:1:1)
は、だから私は、ポート57110上で実行されている既存のサーバーに接続しようとしましたが、私は同様の未解決のシンボルエラーを取得しますか?私の前提は、オーバートーン名前空間がまだロードされていないため、これらのシンボルはすべて解決されていないということです。
システムでオーバートーンを開始するにはどうすればこの問題を解決できますか?
1.はい、本当に 'use'は' nil'を返します。私はいつも 'ns'マクロを使って' require'を行います。私は確信できませんが、何を返すのでしょうか?これは必然的に副作用を使って動作する操作です。 2.私はREPLからのインポートをスケッチしていることがわかりました。それは私にとってはうまくいかない。新しいプロジェクトを開始し、実際のファイルを作成し、 'ns'マクロの使用を要求してください。あなたの未解決のシンボルエラーを解決するはずです。 REPLは既存のコードをテストするのに最適ですが、主にインポート/必須が機能しないため、このコードを唯一のコードソースとして使用することに問題がありました。 – Carcigenicate
https://clojuredocs.org/clojure.core/nsは、/ import/requireを使用する良い例を示しています。 – Carcigenicate
@Carcigenicateこの問題を解決していただきありがとうございます。しかし、私はファイルを使用する必要はありませんでした。 –