Browse Source

Slightly more readable code to invoke the JIT

Yentl Van Tendeloo 7 years ago
parent
commit
c3a18b75e3
1 changed files with 6 additions and 7 deletions
  1. 6 7
      kernel/modelverse_kernel/main.py

+ 6 - 7
kernel/modelverse_kernel/main.py

@@ -190,13 +190,12 @@ class ModelverseKernel(object):
         # execute_jit
         task_frame, =    yield [("RD", [task_root, "frame"])]
         symbols, =       yield [("RD", [task_frame, "symbols"])]
-        all_links, =     yield [("RO", [symbols])]
-        containers =    yield [("RE", [v]) for v in all_links]
-        outgoings =     yield [("RO", [v]) for v in all_links]
-        dict_values =   yield [("RD", [v[1], "value"]) for v in containers]
-        formals_1 =     yield [("RE", [v[0]]) for v in outgoings]
-        dict_keys_ref = yield [("RD", [v[1], "name"]) for v in formals_1]
-        dict_keys =     yield [("RV", [v]) for v in dict_keys_ref]
+        dict_keys_ref, =  yield [("RDK", [symbols])]
+        dict_keys_ref_n =   yield [("RD", [i, "name"]) for i in dict_keys_ref]
+        dict_keys =       yield [("RV", [i]) for i in dict_keys_ref_n]
+        dict_values_elem = yield [("RDN", [symbols, i]) for i in dict_keys_ref]
+        dict_values = yield [("RD", [i, "value"]) for i in dict_values_elem]
+
         parameters = dict(zip(dict_keys, dict_values))
 
         parameters["root"] = self.root