python swig work

This commit is contained in:
Vitor Santos Costa 2016-09-21 14:55:09 -05:00
parent c58064bd0b
commit b2156aad2d
6 changed files with 25 additions and 5 deletions

View File

@ -0,0 +1,3 @@
"""A Prolog kernel for Jupyter"""
__version__ = '0.0.1'

View File

@ -0,0 +1,3 @@
if __name__ == '__main__':
from yapkernel import kernelapp as app
app.launch_new_instance()

View File

@ -0,0 +1,10 @@
:- [library(python)].
main :-
:= import matplotlib.pyplot,
:= Plt = ematplotlib.pyplot,
Plt.plot([1,2,3,4]),
Plt.ylabel(`some numbers`),
Plt.show().

View File

@ -0,0 +1 @@

View File

@ -23,7 +23,7 @@ def eprint(*args, **kwargs):
class YAPKernel(IPythonKernel): class YAPKernel(IPythonKernel):
implementation = 'MetaKernel YAP' implementation = 'YAP Kernel'
implementation_version = '1.0' implementation_version = '1.0'
language = 'text' language = 'text'
language_version = '0.1' language_version = '0.1'
@ -88,7 +88,8 @@ class YAPKernel(IPythonKernel):
else: else:
i = bind.numberVars(i, True) i = bind.numberVars(i, True)
print(name.text() + " = " + bind.text()) print(name.text() + " = " + bind.text())
print("yes") else:
print("yes")
if self.q.deterministic(): if self.q.deterministic():
self.closeq() self.closeq()
return return

View File

@ -1,3 +1,4 @@
import yap import yap
import sys import sys
@ -50,8 +51,8 @@ def query_prolog(engine, s):
ask = False ask = False
else: else:
break break
print("No (more) answers") print("No (more) answers")
q.close() q.close()
return return
@ -75,8 +76,9 @@ def live():
except: except:
print("Unexpected error:", sys.exc_info()[0]) print("Unexpected error:", sys.exc_info()[0])
raise raise
engine.close()
# #
# initialize engine # initialize engine
# engine = yap.YAPEngine(); # engine = yap.YAPEngine();
# engine = yap.YAPEngine(yap.YAPParams()); # engine = yap.YAPEngine(yap.YAPParams());
live()