3

I decided my birthday would be a good time to try and fix my Lisp problems.

I've received a Lisp program from someone to run an experiment. It works well on his OS X environment. However, I can't get it to run on either Windows 7 or Ubuntu. The program uses Act-R 6.2 to run a model. When I try to load the .lisp file I receive the following error:

:Reader error on #<BASIC-FILE-CHARACTER-INPUT-STREAM ("*path*"/28 UTF-8)#xCFAD1AE, near position 1048, within "smile* (#initWithCo":
Undefined character #\/ in a #\# dispatch macro.
While executing: CCL:SIGNAL-READER-ERROR, in process listener(1) 

The error is the exact same for Windows 7 and Ubuntu. Here is the console output if it is required:

https://i.stack.imgur.com/dFXVm.png

It seems load-turing-application.lisp loads multiple other files, one of which is turing-application-v1.lisp, in which the line (setf *smile* (#/initWithContentsOfFile: (#/alloc ns:ns-image)(ccl::%make-nsstring "smiley.jpg"))) seems to be the culprit. I suspect it has something to do with the #/-notation.

Any ideas would be appreciated.

Rainer Joswig
  • 136,269
  • 10
  • 221
  • 346
Gray
  • 71
  • 1
  • 2
  • 1
    yes, `#/` notation is a CCL special syntax for calling into Cocoa. I doubt it is available outside of MacOs – Vsevolod Dyomkin Apr 22 '15 at 18:35
  • 1
    @Vsevolod Dyomkin: it could, but then it would use Cocotron. There were/are attempts to provide CCL's GUI on Windows using Cocotron. https://github.com/cjwl/cocotron http://www.cocotron.org – Rainer Joswig Apr 22 '15 at 19:14
  • 1
    I would ask the author if the code is supposed to run on Windows or Ubuntu, which I doubt. Maybe the author could replace platform specific code? – Rainer Joswig Apr 22 '15 at 19:19

1 Answers1

2

This is answered in the comments, but #/ is a CCL syntax that only is available on OS X. This code is not expected to work on linux or windows.

Jason
  • 1,059
  • 9
  • 13