From e4c82910a26126d2c015136b47cfaed8f9ee1372 Mon Sep 17 00:00:00 2001 From: Vitor Santos Costa Date: Tue, 30 Aug 2016 12:20:31 -0500 Subject: [PATCH] improvements --- packages/python/yap_kernel/yap_kernel.py | 41 +++++++++++++----------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/packages/python/yap_kernel/yap_kernel.py b/packages/python/yap_kernel/yap_kernel.py index ee6fd369a..2169a27d0 100644 --- a/packages/python/yap_kernel/yap_kernel.py +++ b/packages/python/yap_kernel/yap_kernel.py @@ -5,14 +5,14 @@ from ipykernel.ipkernel import IPythonKernel import sys import signal import yap -#import ipdb -#ipdb,set_trace() +# import ipdb +# ipdb,set_trace() kernel_json = { "argv": [sys.executable, - "-m", "yap_kernel", - "-f", "{connection_file}"], - "display_name": " YAP-6.3" , + "-m", "yap_kernel", + "-f", "{connection_file}"], + "display_name": " YAP-6.3", "language": "prolog", "name": "yap_kernel", } @@ -21,12 +21,13 @@ kernel_json = { def eprint(*args, **kwargs): print(*args, file=sys.stderr, **kwargs) + class YAPKernel(IPythonKernel): implementation = 'MetaKernel YAP' implementation_version = '1.0' language = 'text' language_version = '0.1' - banner = "YAP-6.3" + banner = "YAP-6.3" language_info = { 'mimetype': 'text/prolog', 'name': 'text', @@ -36,15 +37,19 @@ class YAPKernel(IPythonKernel): "name": "prolog" }, 'pygments_lexer': 'prolog', - 'version' : "0.0.1", + 'version': "0.0.1", 'file_extension': '.yap', } def init_yap(self, **kwargs): - # Signal handlers are inherited by forked processes, and we can't easily - # reset it from the subprocess. Since kernelapp ignores SIGINT except in - # message handlers, we need to temporarily reset the SIGINT handler here - # so that yap and its children are interruptible. + # Signal handlers are inherited by + # forked processes, + # and we can't easily + # reset it from the subprocess. Since kernelapp + # ignores SIGINT except in + # message handlers, we need to temporarily + # reset the SIGINT handler + # here so that yap and its children are interruptible. sig = signal.signal(signal.SIGINT, signal.SIG_DFL) try: self.engine = yap.YAPEngine() @@ -54,24 +59,23 @@ class YAPKernel(IPythonKernel): banner = "YAP6-3 Kernel" self.olines = banner finally: - signal.signal(signal.SIGINT, sig) + signal.signal(signal.SIGINT, sig) def __init__(self, **kwargs): - super(YAPKernel, self).__init__( **kwargs) - self.init_yap( **kwargs ) + super(YAPKernel, self).__init__(**kwargs) + self.init_yap(**kwargs) self.shell.run_cell = self.yap_run_cell def get_usage(self): return "This is the YAP kernel." - - def yap_run_cell(self, s, store_history=False, silent=False, shell_futures=True): + def yap_run_cell(self, s, store_history=False, silent=False, + shell_futures=True): if not self.q: self.q = self.engine.query(s) if self.q.next(): myvs = self.q.namedVarsCopy() - wrote = False if myvs: i = 0 for peq in myvs: @@ -84,7 +88,6 @@ class YAPKernel(IPythonKernel): else: i = bind.numberVars(i, True) print(name.text() + " = " + bind.text()) - wrote = True print("yes") if self.q.deterministic(): self.closeq() @@ -93,7 +96,7 @@ class YAPKernel(IPythonKernel): self.closeq() return - def closeq( self): + def closeq(self): if self.q: self.q.close() self.q = None