Unable to resolve symbol: definst in this context

76 views
Skip to first unread message

Rob Elsner

unread,
Apr 19, 2012, 7:05:15 PM4/19/12
to over...@googlegroups.com
Here is my core.clj:
(ns twpsong.core
  (:use [overtone.live]
        [overtone.inst.piano]
        [overtone.inst.synth])
)

(defn -main [& args]
(piano)
)

project.clj:
(defproject twpsong "1.0.0-SNAPSHOT"
  :description "FIXME: write description"
  :dependencies [
        [org.clojure/clojure "1.3.0"]
        [overtone "0.7.0-SNAPSHOT"]
        [twitter-api "0.6.4"]
  ]
 :main twpsong.core
)

Get this under Mint (Ubuntu 11.04) and I don't understand what I've done wrong

rob@giggles ~/dev/twpsong $ lein run
Exception in thread "main" java.lang.RuntimeException: java.lang.Exception: Error in checker for ugen send-reply. Error: after initialisation, not all inputs to this ugen were numbers or other ugens (inputs which are explicitly allowed to be other data types (i.e strings) will have been converted to numbers at this point): [0 -1.0 12 47 115 101 114 118 101 114 45 105 110 102 111 #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 1, :name "SampleRate", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 2, :name "SampleDur", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 3, :name "RadiansPerSample", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 4, :name "ControlRate", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 5, :name "ControlDur", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 6, :name "SubsampleOffset", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 7, :name "NumOutputBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 8, :name "NumInputBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 9, :name "NumAudioBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 10, :name "NumControlBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 11, :name "NumBuffers", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 12, :name "NumRunningSynths", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1}], compiling:(info.clj:15)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3342)
at clojure.lang.Compiler.compile1(Compiler.java:6985)
at clojure.lang.Compiler.compile(Compiler.java:7046)
at clojure.lang.RT.compile(RT.java:385)
at clojure.lang.RT.load(RT.java:425)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5275)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:604)
at clojure.core$use.doInvoke(core.clj:5363)
at clojure.lang.RestFn.invoke(RestFn.java:703)
at overtone.sc.buffer$loading__4505__auto__.invoke(buffer.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:159)
at clojure.lang.AFn.applyTo(AFn.java:151)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3337)
at clojure.lang.Compiler.compile1(Compiler.java:6985)
at clojure.lang.Compiler.compile1(Compiler.java:6975)
at clojure.lang.Compiler.compile(Compiler.java:7046)
at clojure.lang.RT.compile(RT.java:385)
at clojure.lang.RT.load(RT.java:425)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5275)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$require.doInvoke(core.clj:5352)
at clojure.lang.RestFn.invoke(RestFn.java:1523)
at overtone.live$loading__4505__auto__.invoke(live.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:159)
at clojure.lang.AFn.applyTo(AFn.java:151)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3337)
at clojure.lang.Compiler.compile1(Compiler.java:6985)
at clojure.lang.Compiler.compile1(Compiler.java:6975)
at clojure.lang.Compiler.compile(Compiler.java:7046)
at clojure.lang.RT.compile(RT.java:385)
at clojure.lang.RT.load(RT.java:425)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:604)
at clojure.core$use.doInvoke(core.clj:5363)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at twpsong.core$loading__4505__auto__.invoke(core.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:159)
at clojure.lang.AFn.applyTo(AFn.java:151)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3337)
at clojure.lang.Compiler.compile1(Compiler.java:6985)
at clojure.lang.Compiler.compile1(Compiler.java:6975)
at clojure.lang.Compiler.compile(Compiler.java:7046)
at clojure.lang.RT.compile(RT.java:385)
at clojure.lang.RT.load(RT.java:425)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$compile$fn__4615.invoke(core.clj:5397)
at clojure.core$compile.invoke(core.clj:5396)
at user$eval27.invoke(NO_SOURCE_FILE:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.eval(Compiler.java:6431)
at clojure.core$eval.invoke(core.clj:2795)
at clojure.main$eval_opt.invoke(main.clj:296)
at clojure.main$initialize.invoke(main.clj:315)
at clojure.main$null_opt.invoke(main.clj:348)
at clojure.main$main.doInvoke(main.clj:426)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:405)
at clojure.lang.AFn.applyToHelper(AFn.java:163)
at clojure.lang.Var.applyTo(Var.java:518)
at clojure.main.main(main.java:37)
Caused by: java.lang.RuntimeException: java.lang.Exception: Error in checker for ugen send-reply. Error: after initialisation, not all inputs to this ugen were numbers or other ugens (inputs which are explicitly allowed to be other data types (i.e strings) will have been converted to numbers at this point): [0 -1.0 12 47 115 101 114 118 101 114 45 105 110 102 111 #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 1, :name "SampleRate", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 2, :name "SampleDur", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 3, :name "RadiansPerSample", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 4, :name "ControlRate", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 5, :name "ControlDur", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 6, :name "SubsampleOffset", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 7, :name "NumOutputBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 8, :name "NumInputBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 9, :name "NumAudioBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 10, :name "NumControlBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 11, :name "NumBuffers", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 12, :name "NumRunningSynths", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1}]
at clojure.lang.Util.runtimeException(Util.java:165)
at clojure.lang.LazySeq.sval(LazySeq.java:51)
at clojure.lang.LazySeq.seq(LazySeq.java:60)
at clojure.lang.RT.seq(RT.java:466)
at clojure.lang.RT.countFrom(RT.java:519)
at clojure.lang.RT.count(RT.java:512)
at overtone.sc.machinery.ugen.fn_gen$make_expanding$fn__2044.doInvoke(fn_gen.clj:120)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:600)
at overtone.sc.machinery.ugen.fn_gen$unwrap_map_arg$fn__2047.doInvoke(fn_gen.clj:135)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:600)
at overtone.util.lib$callable_map$fn__109.doInvoke(lib.clj:115)
at clojure.lang.RestFn.invoke(RestFn.java:460)
at overtone.util.lib.proxy$java.lang.Object$Associative$IFn$IMeta$IObj$17272e52.invoke(Unknown Source)
at overtone.sc.info$fn__3099$fn__3101.invoke(info.clj:29)
at overtone.sc.info$fn__3099.invoke(info.clj:16)
at clojure.lang.AFn.applyToHelper(AFn.java:159)
at clojure.lang.AFn.applyTo(AFn.java:151)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3337)
... 91 more
Caused by: java.lang.Exception: Error in checker for ugen send-reply. Error: after initialisation, not all inputs to this ugen were numbers or other ugens (inputs which are explicitly allowed to be other data types (i.e strings) will have been converted to numbers at this point): [0 -1.0 12 47 115 101 114 118 101 114 45 105 110 102 111 #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 1, :name "SampleRate", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 2, :name "SampleDur", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 3, :name "RadiansPerSample", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 4, :name "ControlRate", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 5, :name "ControlDur", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 6, :name "SubsampleOffset", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 7, :name "NumOutputBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 8, :name "NumInputBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 9, :name "NumAudioBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 10, :name "NumControlBuses", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 11, :name "NumBuffers", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1} #overtone.sc.machinery.ugen.sc_ugen.SCUGen{:id 12, :name "NumRunningSynths", :rate 0, :rate-name :ir, :special 0, :args (), :n-outputs 1}]
at overtone.sc.machinery.ugen.specs$with_ugen_checker_fn.invoke(specs.clj:102)
at clojure.lang.AFn.applyToHelper(AFn.java:167)
at clojure.lang.AFn.applyTo(AFn.java:151)
at clojure.core$apply.invoke(core.clj:604)
at clojure.core$partial$fn__3796.doInvoke(core.clj:2343)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at overtone.sc.machinery.ugen.specs$with_init_fn$fn__1849.invoke(specs.clj:308)
at overtone.sc.machinery.ugen.fn_gen$mk_scugen.invoke(fn_gen.clj:87)
at overtone.sc.machinery.ugen.fn_gen$ugen_base_fn$fn__2040.doInvoke(fn_gen.clj:98)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:600)
at overtone.helpers.seq$mapply$fn__1618.invoke(seq.clj:32)
at clojure.core$map$fn__3811.invoke(core.clj:2432)
at clojure.lang.LazySeq.sval(LazySeq.java:42)
... 109 more
Using vector unit: yes
Loading synthdefs from default path: /home/rob/share/SuperCollider/synthdefs
JackDriver: client name is 'SuperCollider'
SC_AudioDriver: sample rate = 44100.000000, driver's block size = 1024
SuperCollider 3 server ready..
JackDriver: max output latency 46.4 ms

          _____                 __
         / __  /_  _____  _____/ /_____  ____  ___
        / / / / | / / _ \/ ___/ __/ __ \/ __ \/ _ \
       / /_/ /| |/ /  __/ /  / /_/ /_/ / / / /  __/
       \____/ |___/\___/_/   \__/\____/_/ /_/\___/

              Collaborative Programmable Music. v0.7-dev


Hello Rob, may this be the start of a beautiful music hacking session...
Exception in thread "main" java.lang.RuntimeException: Unable to resolve symbol: definst in this context, compiling:(overtone/inst/piano.clj:7)
at clojure.lang.Compiler.analyze(Compiler.java:6235)
at clojure.lang.Compiler.analyze(Compiler.java:6177)
at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3452)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6411)
at clojure.lang.Compiler.analyze(Compiler.java:6216)
at clojure.lang.Compiler.analyze(Compiler.java:6177)
at clojure.lang.Compiler.eval(Compiler.java:6469)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:604)
at clojure.core$use.doInvoke(core.clj:5363)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at twpsong.core$eval5$loading__4505__auto____6.invoke(core.clj:1)
at twpsong.core$eval5.invoke(core.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$require.doInvoke(core.clj:5352)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at user$eval1.invoke(NO_SOURCE_FILE:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6454)
at clojure.lang.Compiler.eval(Compiler.java:6431)
at clojure.core$eval.invoke(core.clj:2795)
at clojure.main$eval_opt.invoke(main.clj:296)
at clojure.main$initialize.invoke(main.clj:315)
at clojure.main$null_opt.invoke(main.clj:348)
at clojure.main$main.doInvoke(main.clj:426)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:405)
at clojure.lang.AFn.applyToHelper(AFn.java:163)
at clojure.lang.Var.applyTo(Var.java:518)
at clojure.main.main(main.java:37)
Caused by: java.lang.RuntimeException: Unable to resolve symbol: definst in this context
at clojure.lang.Util.runtimeException(Util.java:156)
at clojure.lang.Compiler.resolveIn(Compiler.java:6720)
at clojure.lang.Compiler.resolve(Compiler.java:6664)
at clojure.lang.Compiler.analyzeSymbol(Compiler.java:6625)
at clojure.lang.Compiler.analyze(Compiler.java:6198)
... 58 more

Sam Aaron

unread,
Apr 20, 2012, 4:37:16 AM4/20/12
to over...@googlegroups.com
Hi Rob,

I can spot at least two errors:

* firstly there was a bug in the piano namespace (which is now fixed
and pushed to Clojars as a new 0.7.0-SNAPSHOT)
* secondly, you're trying to use the a ugen that isn't installed as
default. Unfortunately, the piano synth requires the MdaPiano ugen
which is part of SuperCollider's 'Extras' package. When we finish
re-working our internal server infrastructure, we hope to support it
as default. However, until then, the easiest way to access it is
through an external server.

Sorry about that,

Sam

---
http://sam.aaron.name

Reply all
Reply to author
Forward
0 new messages