title: Clojure : Are symbols standard data type to pass between functions from different clj fies?
body: <p>I have a program that im wrapping, in clojure.  </p>
  
  <p>The program has some symbols it uses to start up, as input.</p>
  
  <p>I've created a simple UI to convert user entered strings to symbols using a map. </p>
  
  <pre><code>#expect user to enter "boat" 
  (def input (read-line))
  
  (def ops '{"boat" b})
  
  (if 
    # check if the value of the key is a valid symbol
    (in? '(a b c) (ops input))
  
    #if so , run class
    (start (ops input))
  
    #end
    (print "didnt find " input " in options , fail.\n")
  )
  </code></pre>
  
  <p>The logic works, however, the program crashes once it reaches the "start" call...  This makes me think that, for some reason, the symbol "b" in '(a b c) doesn't match up with b as declared in the program which is being called (i.e. the one which i havent shown here).</p>
  
  <p>It is quite obvious that this problem is uninteresting, so my real question is : should I be parsing strings into symbols which i send as control structures to another program ? Or is there a better way to invoke an external clj script which uses raw Symbols as internal inputs.  I would appreciate any specifics regarding why the program is crashing ... but since I havent provided much code, i dont expect anyone to be able to magically "know" what is wrong here in any detailed sense. </p>