Skip to content

Commit 85afd59

Browse files
committed
PEP8 whitespace changes, remove unused imports
1 parent 63dced4 commit 85afd59

1 file changed

Lines changed: 33 additions & 22 deletions

File tree

pixie/vm/code.py

Lines changed: 33 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
py_object = object
22
import pixie.vm.object as object
33
from pixie.vm.object import affirm
4-
from pixie.vm.primitives import nil, true, false
4+
from pixie.vm.primitives import nil, false
55
from rpython.rlib.rarithmetic import r_uint
6-
from rpython.rlib.jit import elidable, elidable_promote, promote
6+
from rpython.rlib.jit import elidable_promote, promote
77
import rpython.rlib.jit as jit
88
import pixie.vm.rt as rt
99

@@ -48,6 +48,7 @@ def resize_list(lst, new_size):
4848
i += 1
4949
return new_list
5050

51+
5152
@jit.unroll_safe
5253
def list_copy(from_lst, from_loc, to_list, to_loc, count):
5354
from_loc = r_uint(from_loc)
@@ -56,10 +57,11 @@ def list_copy(from_lst, from_loc, to_list, to_loc, count):
5657

5758
i = r_uint(0)
5859
while i < count:
59-
to_list[to_loc + i] = from_lst[from_loc+i]
60+
to_list[to_loc + i] = from_lst[from_loc + i]
6061
i += 1
6162
return to_list
6263

64+
6365
@jit.unroll_safe
6466
def slice_to_end(from_list, start_pos):
6567
start_pos = r_uint(start_pos)
@@ -68,12 +70,14 @@ def slice_to_end(from_list, start_pos):
6870
list_copy(from_list, start_pos, new_lst, 0, items_to_copy)
6971
return new_lst
7072

73+
7174
@jit.unroll_safe
7275
def slice_from_start(from_list, count, extra=r_uint(0)):
7376
new_lst = [None] * (count + extra)
7477
list_copy(from_list, 0, new_lst, 0, count)
7578
return new_lst
7679

80+
7781
# class TailCall(object.Object):
7882
# _type = object.Type("TailCall")
7983
# __immutable_fields_ = ["_f", "_args"]
@@ -159,8 +163,6 @@ def invoke_with(self, args, self_fn):
159163
return self.get_fn(len(args)).invoke_with(args, self_fn)
160164

161165

162-
163-
164166
class NativeFn(BaseCode):
165167
"""Wrapper for a native function"""
166168
_type = object.Type(u"pixie.stdlib.NativeFn")
@@ -231,7 +233,6 @@ def get_base_code(self):
231233
return self
232234

233235

234-
235236
class VariadicCode(BaseCode):
236237
__immutable_fields__ = ["_required_arity", "_code", "_meta"]
237238
_type = object.Type(u"pixie.stdlib.VariadicCode")
@@ -267,9 +268,11 @@ def invoke_with(self, args, self_fn):
267268
return self._code.invoke_with(start, self_fn)
268269
affirm(False, u"Got " + unicode(str(argc)) + u" arg(s) need at least " + unicode(str(self._required_arity)))
269270

271+
270272
class Closure(BaseCode):
271273
_type = object.Type(u"pixie.stdlib.Closure")
272274
__immutable_fields__ = ["_closed_overs[*]", "_code", "_meta"]
275+
273276
def type(self):
274277
return Closure._type
275278

@@ -314,6 +317,7 @@ def get_base_code(self):
314317
def get_debug_points(self):
315318
return self._code.get_debug_points()
316319

320+
317321
class Undefined(object.Object):
318322
_type = object.Type(u"pixie.stdlib.Undefined")
319323

@@ -322,6 +326,7 @@ def type(self):
322326

323327
undefined = Undefined()
324328

329+
325330
class DynamicVars(py_object):
326331
def __init__(self):
327332
self._vars = [{}]
@@ -340,6 +345,7 @@ def set_var_value(self, var, val):
340345

341346
_dynamic_vars = DynamicVars()
342347

348+
343349
class Var(BaseCode):
344350
_type = object.Type(u"pixie.stdlib.Var")
345351
_immutable_fields_ = ["_rev?"]
@@ -365,7 +371,6 @@ def set_value(self, val):
365371
_dynamic_vars.set_var_value(self, val)
366372
return self
367373

368-
369374
def set_dynamic(self):
370375
self._dynamic = True
371376
self._rev += 1
@@ -381,7 +386,6 @@ def is_dynamic(self, rev):
381386
def get_root(self, rev):
382387
return self._root
383388

384-
385389
def deref(self):
386390
if self.is_dynamic(self._rev):
387391
return self.get_dynamic_value()
@@ -399,9 +403,10 @@ def invoke_with(self, args, this_fn):
399403
def invoke(self, args):
400404
return self.deref().invoke(args)
401405

406+
402407
class bindings(py_object):
403408
def __init__(self, *args):
404-
self._args = list(args)
409+
self._args = list(args)
405410

406411
def __enter__(self):
407412
_dynamic_vars.push_binding_frame()
@@ -493,11 +498,10 @@ def resolve(self, s, use_refers=True):
493498
return None
494499
return var
495500

496-
497-
498501
def get(self, name, default):
499502
return self._registry.get(name, default)
500503

504+
501505
class NamespaceRegistry(py_object):
502506
def __init__(self):
503507
self._registry = {}
@@ -510,7 +514,6 @@ def find_or_make(self, name):
510514
self._registry[name] = v
511515
return v
512516

513-
514517
def get(self, name, default):
515518
return self._registry.get(name, default)
516519

@@ -524,20 +527,19 @@ def intern_var(ns, name=None):
524527

525528
return _ns_registry.find_or_make(ns).intern_or_make(name)
526529

530+
527531
def get_var_if_defined(ns, name, els=None):
528532
w_ns = _ns_registry.get(ns, None)
529533
if w_ns is None:
530534
return els
531535
return w_ns.get(name, els)
532536

533537

534-
535538
class DefaultProtocolFn(NativeFn):
536539
def __init__(self, pfn):
537540
self._pfn = pfn
538541

539542
def invoke(self, args):
540-
from pixie.vm.string import String
541543
tp = args[0].type()._name
542544
affirm(False, u"No override for " + tp + u" on " + self._pfn._name + u" in protocol " + self._pfn._protocol._name)
543545

@@ -546,6 +548,7 @@ class Protocol(object.Object):
546548
_type = object.Type(u"pixie.stdlib.Protocol")
547549

548550
__immutable_fields__ = ["_rev?"]
551+
549552
def type(self):
550553
return Protocol._type
551554

@@ -555,7 +558,6 @@ def __init__(self, name):
555558
self._satisfies = {}
556559
self._rev = 0
557560

558-
559561
def add_method(self, pfn):
560562
self._polyfns[pfn] = pfn
561563

@@ -573,10 +575,12 @@ def satisfies(self, tp):
573575

574576
class PolymorphicFn(BaseCode):
575577
_type = object.Type(u"pixie.stdlib.PolymorphicFn")
578+
576579
def type(self):
577580
return PolymorphicFn._type
578581

579582
__immutable_fields__ = ["_rev?"]
583+
580584
def __init__(self, name, protocol):
581585
BaseCode.__init__(self)
582586
self._name = name
@@ -617,7 +621,6 @@ def _find_parent_fn(self, tp):
617621

618622
return self._default_fn
619623

620-
621624
def set_default_fn(self, fn):
622625
self._default_fn = fn
623626
self._rev += 1
@@ -642,6 +645,7 @@ def invoke(self, args):
642645
ex._ex._trace.append(object.PolymorphicCodeInfo(self._name, args[0].type()))
643646
raise
644647

648+
645649
class DoublePolymorphicFn(BaseCode):
646650
"""A function that is polymorphic on the first two arguments"""
647651
_type = object.Type(u"pixie.stdlib.DoublePolymorphicFn")
@@ -650,6 +654,7 @@ def type(self):
650654
return DefaultProtocolFn._type
651655

652656
__immutable_fields__ = ["_rev?"]
657+
653658
def __init__(self, name, protocol):
654659
BaseCode.__init__(self)
655660
self._name = name
@@ -688,7 +693,6 @@ def invoke(self, args):
688693
return fn.invoke(args)
689694

690695

691-
692696
# class ElidableFn(object.Object):
693697
# _type = object.Type(u"pixie.stdlib.ElidableFn")
694698
# __immutable_fields__ = ["_boxed_fn"]
@@ -722,10 +726,14 @@ def invoke(self, args):
722726
# return self._elidable_invoke_2(fn, args[0].promote(), args[1].promote()).promote()
723727
# affirm(False, u"Too many args to Elidable Fn")
724728

729+
725730
def munge(s):
726731
return s.replace("-", "_").replace("?", "_QMARK_").replace("!", "_BANG_")
727732

733+
728734
import inspect
735+
736+
729737
def defprotocol(ns, name, methods):
730738
"""Define a protocol in the given namespace with the given name and methods, vars will
731739
be created in the namespace for the protocol and methods. This function will dump
@@ -734,28 +742,31 @@ def defprotocol(ns, name, methods):
734742
name = unicode(name)
735743
methods = map(unicode, methods)
736744
gbls = inspect.currentframe().f_back.f_globals
737-
proto = Protocol(name)
745+
proto = Protocol(name)
738746
intern_var(ns, name).set_root(proto)
739747
gbls[munge(name)] = proto
740748
for method in methods:
741-
poly = PolymorphicFn(method, proto)
749+
poly = PolymorphicFn(method, proto)
742750
intern_var(ns, method).set_root(poly)
743751
gbls[munge(method)] = poly
744752

753+
745754
def assert_type(x, tp):
746755
affirm(isinstance(x, tp), u"Fatal Error, this should never happen")
747756
return x
748757

749758

750759
## PYTHON FLAGS
751760
CO_VARARGS = 0x4
761+
762+
752763
def wrap_fn(fn, tp=object.Object):
753764
"""Converts a native Python function into a pixie function."""
754765
def as_native_fn(f):
755-
return type("W"+fn.__name__, (NativeFn,), {"inner_invoke": f})()
766+
return type("W" + fn.__name__, (NativeFn,), {"inner_invoke": f})()
756767

757768
def as_variadic_fn(f):
758-
return type("W"+fn.__name__[:len("__args")], (NativeFn,), {"inner_invoke": f})()
769+
return type("W" + fn.__name__[:len("__args")], (NativeFn,), {"inner_invoke": f})()
759770

760771
code = fn.func_code
761772
if fn.__name__.endswith("__args"):
@@ -841,7 +852,6 @@ def extend_inner(fn):
841852
return extend_inner
842853

843854

844-
845855
def as_var(ns, name=None):
846856
"""Locates a var with the given name (defaulting to the namespace pixie.stdlib), sets
847857
the root to the decorated function. If the function is not an instance of BaseCode it will
@@ -854,6 +864,7 @@ def as_var(ns, name=None):
854864
ns = ns if isinstance(ns, unicode) else unicode(ns)
855865

856866
var = intern_var(ns, name)
867+
857868
def with_fn(fn):
858869
fn.__real_name__ = name
859870
if not isinstance(fn, object.Object):

0 commit comments

Comments
 (0)