从Ruby/Rails调用Lisp?

tjr*_*tjr 7 ruby lisp ruby-on-rails

你如何从Rails应用程序调用Lisp程序?...例如,允许最终用户在Rails Web应用程序中输入文本块,让Lisp程序处理文本并将结果返回给Rails应用程序?

mip*_*adi 11

有几种方式可以想到:

  1. 使用Process执行lisp程序.通过标准输入与Lisp程序通信,并让Lisp程序通过stdout输出结果.

  2. 执行与上面相同的操作,但通过命名管道进行通信.让你的Ruby代码写数据一个命名管道,然后有从这个管道读Lisp的程序,并将数据写入对另一命名管道,你再与你的Ruby应用程序读取.Lisp程序可以在后台运行,作为检查其传入管道上数据的守护程序,也可以使用Ruby的命令行实用程序(如上所述)根据需要启动它.

  3. 找一个Ruby-Lisp桥.我没有这种桥梁的经验(如果一个人存在,我也不知道副手)我认为上述两种机制更容易,但你的里程可能会有所不同.


Rai*_*wig 9

另一个简单的方法是让Lisp运行HTTP服务器并通过HTTP请求从外部联系Lisp.

  • 在Web设置中,这是通常的面向服务的体系结构.Lisp有很多Web服务器,通过HTTP请求交换数据很容易.您需要做的就是让Lisp服务器响应POST请求. (3认同)