diff --git a/bu4/evaluation/constructs/elambda.py b/bu4/evaluation/constructs/elambda.py index ee052fa..344ebeb 100644 --- a/bu4/evaluation/constructs/elambda.py +++ b/bu4/evaluation/constructs/elambda.py @@ -5,7 +5,7 @@ from bu4.evaluation.av.lambdaenv import LambdaEnv from bu4.evaluation.constructs.elinked import ELinked from bu4.evaluation.constructs.evaluable import Evaluable from bu4.evaluation.constructs.evalue import EValue -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('ELambda',) diff --git a/bu4/evaluation/constructs/elinked.py b/bu4/evaluation/constructs/elinked.py index 7ab33ff..077d94e 100644 --- a/bu4/evaluation/constructs/elinked.py +++ b/bu4/evaluation/constructs/elinked.py @@ -2,7 +2,7 @@ from bu4.evaluation.av.envtype import envtype from bu4.evaluation.constructs.evaluable import Evaluable -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('ELinked',) diff --git a/bu4/evaluation/targets/avcall.py b/bu4/evaluation/targets/avcall.py index 14e8fbb..4e532cf 100644 --- a/bu4/evaluation/targets/avcall.py +++ b/bu4/evaluation/targets/avcall.py @@ -5,7 +5,7 @@ from bu4.evaluation.constructs.elinked import ELinked from bu4.evaluation.constructs.evaluable import Evaluable from bu4.evaluation.constructs.evalue import EValue from bu4.evaluation.targets.avtarget import AVTarget -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('AVCall',) diff --git a/bu4/linking/constructs/lcall.py b/bu4/linking/constructs/lcall.py new file mode 100644 index 0000000..b4c7bab --- /dev/null +++ b/bu4/linking/constructs/lcall.py @@ -0,0 +1,26 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +from bu4.evaluation.av.aftervalue import AfterValue +from bu4.evaluation.av.envtype import envtype +from bu4.evaluation.constructs.elinked import ELinked +from bu4.evaluation.constructs.evaluable import Evaluable +from bu4.evaluation.targets.avcall import AVCall +from bu4.linking.constructs.linked import Linked + +__all__ = ('LCall',) + + +class LCall(Linked): + argument: Linked + lambda_: Linked + + def __init__(self, argument: Linked, lambda_: Linked): + self.argument = argument + self.lambda_ = lambda_ + self.future = self.argument.future | self.lambda_.future + + def evaluable(self, env: envtype) -> Evaluable: + return AfterValue(ELinked(env, self.lambda_), AVCall(env, self.argument)) + + def __str__(self): + return f'/{self.argument}{self.lambda_}' diff --git a/bu4/linking/constructs/linked.py b/bu4/linking/constructs/linked.py new file mode 100644 index 0000000..f73146e --- /dev/null +++ b/bu4/linking/constructs/linked.py @@ -0,0 +1,13 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +from bu4.evaluation.av.envtype import envtype +from bu4.evaluation.constructs.evaluable import Evaluable + +__all__ = ('Linked',) + + +class Linked: + future: set[bytes] + + def evaluable(self, env: envtype) -> Evaluable: + raise NotImplementedError diff --git a/bu4/linking/constructs/llambda.py b/bu4/linking/constructs/llambda.py new file mode 100644 index 0000000..5bc3aa4 --- /dev/null +++ b/bu4/linking/constructs/llambda.py @@ -0,0 +1,27 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +from bu4.evaluation.av.envtype import envtype +from bu4.evaluation.constructs.elambda import ELambda +from bu4.evaluation.constructs.evaluable import Evaluable +from bu4.linking.constructs.linked import Linked + +__all__ = ('LLambda',) + + +class LLambda(Linked): + value: Linked + + def __init__(self, name: bytes, value: Linked): + self.name = name + self.value = value + self.future = self.value.future - {self.name} + + def evaluable(self, env: envtype) -> Evaluable: + return ELambda( + {name: container for name, container in env.items() if name in self.future}, + self.name, + self.value + ) + + def __str__(self): + return f'({self.name.decode()}){self.value}' diff --git a/bu4/linking/constructs/lname.py b/bu4/linking/constructs/lname.py new file mode 100644 index 0000000..314d828 --- /dev/null +++ b/bu4/linking/constructs/lname.py @@ -0,0 +1,19 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +from bu4.evaluation.av.envtype import envtype +from bu4.evaluation.constructs.evaluable import Evaluable +from bu4.linking.constructs.linked import Linked + +__all__ = ('LName',) + + +class LName(Linked): + def __init__(self, name: bytes): + self.name = name + self.future = {name} + + def evaluable(self, env: envtype) -> Evaluable: + return env[self.name] + + def __str__(self): + return f'[{self.name.decode()}]' diff --git a/bu4/linking/constructs/lnull.py b/bu4/linking/constructs/lnull.py new file mode 100644 index 0000000..54d1451 --- /dev/null +++ b/bu4/linking/constructs/lnull.py @@ -0,0 +1,19 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +from bu4.evaluation.av.envtype import envtype +from bu4.evaluation.constructs.enull import ENull +from bu4.evaluation.constructs.evaluable import Evaluable +from bu4.linking.constructs.linked import Linked + +__all__ = ('LNull',) + + +class LNull(Linked): + def __init__(self): + self.future = set() + + def evaluable(self, env: envtype) -> Evaluable: + return ENull() + + def __str__(self): + return '?' diff --git a/bu4/linking/evaluable_from_parsed.py b/bu4/linking/evaluable_from_parsed.py index 1892026..07cae28 100644 --- a/bu4/linking/evaluable_from_parsed.py +++ b/bu4/linking/evaluable_from_parsed.py @@ -3,12 +3,12 @@ from bu4.evaluation.av.envtype import envtype from bu4.evaluation.constructs.elinked import ELinked from bu4.linking.prepare import prepare -from bu4.parsing.constructs.linked import Parsed __all__ = ('evaluable_from_parsed',) +from bu4.parsing.constructs.parsed import Parsed + def evaluable_from_parsed(env: envtype, parsed: Parsed): - linked = parsed.link(set(env)) - prepare(linked) + linked = prepare(parsed.link(set(env))) return ELinked(env, linked) diff --git a/bu4/linking/prepare.py b/bu4/linking/prepare.py index 5781a45..1141889 100644 --- a/bu4/linking/prepare.py +++ b/bu4/linking/prepare.py @@ -5,7 +5,7 @@ from bu4.linking.states.linkingfinished import LinkingFinished from bu4.linking.states.linkingparsed import LinkingParsed from bu4.linking.states.linkingstate import LinkingState from bu4.linking.targets.alchain import ALChain -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('prepare',) @@ -16,14 +16,13 @@ def _afterlinking_iteration(state: AfterLinking) -> LinkingState: elif isinstance(state.state, AfterLinking): state.state, state.target = state.state.state, ALChain(state.state.target, state.target) elif isinstance(state.state, LinkingParsed): - state.state = state.state.parsed.link(state.state.promise).link() + state.state = state.state.parsed.link(state.state.promise) else: raise TypeError return state -def prepare(linked: Linked) -> Linked: - state = linked.link() +def prepare(state: LinkingState) -> Linked: while True: if isinstance(state, LinkingFinished): return state.linked diff --git a/bu4/linking/states/linkingfinished.py b/bu4/linking/states/linkingfinished.py index 30f6c9b..d7ad2a2 100644 --- a/bu4/linking/states/linkingfinished.py +++ b/bu4/linking/states/linkingfinished.py @@ -1,7 +1,7 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. from bu4.linking.states.linkingstate import LinkingState -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('LinkingFinished',) diff --git a/bu4/linking/states/linkingparsed.py b/bu4/linking/states/linkingparsed.py index 3288ff2..3ecb9d9 100644 --- a/bu4/linking/states/linkingparsed.py +++ b/bu4/linking/states/linkingparsed.py @@ -1,10 +1,11 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. from bu4.linking.states.linkingstate import LinkingState -from bu4.parsing.constructs.linked import Parsed __all__ = ('LinkingParsed',) +from bu4.parsing.constructs.parsed import Parsed + class LinkingParsed(LinkingState): def __init__(self, promise: set[bytes], parsed: Parsed): diff --git a/bu4/linking/states/linkingstate.py b/bu4/linking/states/linkingstate.py index e5fa9cb..41b2228 100644 --- a/bu4/linking/states/linkingstate.py +++ b/bu4/linking/states/linkingstate.py @@ -1,7 +1,7 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + __all__ = ('LinkingState',) -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - class LinkingState: pass diff --git a/bu4/linking/targets/alchain.py b/bu4/linking/targets/alchain.py index 3fee11e..425d7f6 100644 --- a/bu4/linking/targets/alchain.py +++ b/bu4/linking/targets/alchain.py @@ -3,7 +3,7 @@ from bu4.linking.states.afterlinking import AfterLinking from bu4.linking.states.linkingstate import LinkingState from bu4.linking.targets.altarget import ALTarget -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('ALChain',) diff --git a/bu4/linking/targets/allambda.py b/bu4/linking/targets/allambda.py index 6747a03..b944d6a 100644 --- a/bu4/linking/targets/allambda.py +++ b/bu4/linking/targets/allambda.py @@ -4,7 +4,7 @@ from typing import Callable from bu4.linking.states.linkingstate import LinkingState from bu4.linking.targets.altarget import ALTarget -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('ALLambda',) diff --git a/bu4/linking/targets/altarget.py b/bu4/linking/targets/altarget.py index fc1f8c4..e0adbd9 100644 --- a/bu4/linking/targets/altarget.py +++ b/bu4/linking/targets/altarget.py @@ -1,7 +1,7 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. from bu4.linking.states.linkingstate import LinkingState -from bu4.parsing.constructs.linked import Linked +from bu4.linking.constructs.linked import Linked __all__ = ('ALTarget',) diff --git a/bu4/parsing/abstractparser.py b/bu4/parsing/abstractparser.py index ca53515..85f0b8d 100644 --- a/bu4/parsing/abstractparser.py +++ b/bu4/parsing/abstractparser.py @@ -1,8 +1,8 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + __all__ = ('AbstractParser',) -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - class AbstractParser: def read(self) -> int: raise NotImplementedError diff --git a/bu4/parsing/constructs/lcall.py b/bu4/parsing/constructs/lcall.py deleted file mode 100644 index 44e4d7a..0000000 --- a/bu4/parsing/constructs/lcall.py +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - -from bu4.evaluation.av.aftervalue import AfterValue -from bu4.evaluation.av.envtype import envtype -from bu4.evaluation.constructs.elinked import ELinked -from bu4.evaluation.constructs.evaluable import Evaluable -from bu4.evaluation.targets.avcall import AVCall -from bu4.linking.states.afterlinking import AfterLinking -from bu4.linking.states.linkingfinished import LinkingFinished -from bu4.linking.states.linkingparsed import LinkingParsed -from bu4.linking.states.linkingstate import LinkingState -from bu4.linking.targets.allambda import ALLambda -from bu4.parsing.constructs.linked import Linked, Parsed - -__all__ = ('PCall',) - - -class LCall(Linked): - argument: Linked - lambda_: Linked - - def __init__(self, promise: set[bytes], argument: Parsed, lambda_: Parsed): - self.promise = promise - self._argument = argument - self._lambda = lambda_ - - def link(self) -> LinkingState: - return AfterLinking( - LinkingParsed(self.promise, self._argument), - ALLambda(self._given_argument) - ) - - def _given_argument(self, argument: Linked) -> LinkingState: - self.argument = argument - return AfterLinking( - LinkingParsed(self.promise, self._lambda), - ALLambda(self._given_lambda) - ) - - def _given_lambda(self, lambda_) -> LinkingState: - self.lambda_ = lambda_ - self.future = self.argument.future | self.lambda_.future - return LinkingFinished(self) - - def evaluable(self, env: envtype) -> Evaluable: - return AfterValue(ELinked(env, self.lambda_), AVCall(env, self.argument)) - - def __str__(self): - return f'/{self.argument}{self.lambda_}' - - def unlink(self) -> Parsed: - return PCall(self._argument, self._lambda) - - -class PCall(Parsed): - def __init__(self, argument: Parsed, lambda_: Parsed): - self.argument = argument - self.lambda_ = lambda_ - - def link(self, promise: set[bytes]) -> Linked: - return LCall(promise, self.argument, self.lambda_) diff --git a/bu4/parsing/constructs/linked.py b/bu4/parsing/constructs/linked.py deleted file mode 100644 index 470f274..0000000 --- a/bu4/parsing/constructs/linked.py +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - -from bu4.evaluation.av.envtype import envtype -from bu4.evaluation.constructs.evaluable import Evaluable - -__all__ = ('Linked', 'Parsed',) - -from bu4.linking.states.linkingstate import LinkingState - - -class Linked: - future: set[bytes] - - def link(self) -> LinkingState: - raise NotImplementedError - - def evaluable(self, env: envtype) -> Evaluable: - raise NotImplementedError - - def unlink(self) -> 'Parsed': - raise NotImplementedError - - -class Parsed: - def link(self, promise: set[bytes]) -> Linked: - raise NotImplementedError diff --git a/bu4/parsing/constructs/llambda.py b/bu4/parsing/constructs/llambda.py deleted file mode 100644 index 2e1692e..0000000 --- a/bu4/parsing/constructs/llambda.py +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - -from bu4.evaluation.av.envtype import envtype -from bu4.evaluation.constructs.elambda import ELambda -from bu4.evaluation.constructs.evaluable import Evaluable -from bu4.linking.states.afterlinking import AfterLinking -from bu4.linking.states.linkingfinished import LinkingFinished -from bu4.linking.states.linkingparsed import LinkingParsed -from bu4.linking.states.linkingstate import LinkingState -from bu4.linking.targets.allambda import ALLambda -from bu4.parsing.constructs.linked import Linked, Parsed - -__all__ = ('PLambda',) - - -class LLambda(Linked): - value: Linked - - def __init__(self, promise: set[bytes], name: bytes, value: Parsed): - assert name not in promise, f'overloaded: {name}' - self.promise = promise - self.name = name - self._value = value - - def link(self) -> LinkingState: - return AfterLinking(LinkingParsed(self.promise | {self.name}, self._value), ALLambda(self._given_value)) - - def _given_value(self, value: Linked) -> LinkingState: - self.value = value - self.future = self.value.future - {self.name} - return LinkingFinished(self) - - def evaluable(self, env: envtype) -> Evaluable: - return ELambda( - {name: container for name, container in env.items() if name in self.future}, - self.name, - self.value - ) - - def __str__(self): - return f'({self.name.decode()}){self.value}' - - def unlink(self) -> Parsed: - return PLambda(self.name, self._value) - - -class PLambda(Parsed): - def __init__(self, name: bytes, value: Parsed): - self.name = name - self.value = value - - def link(self, promise: set[bytes]) -> Linked: - return LLambda(promise, self.name, self.value) diff --git a/bu4/parsing/constructs/lname.py b/bu4/parsing/constructs/lname.py deleted file mode 100644 index 5bd2f53..0000000 --- a/bu4/parsing/constructs/lname.py +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - -from bu4.evaluation.av.envtype import envtype -from bu4.evaluation.constructs.evaluable import Evaluable -from bu4.linking.states.linkingfinished import LinkingFinished -from bu4.linking.states.linkingstate import LinkingState -from bu4.parsing.constructs.linked import Linked, Parsed - -__all__ = ('PName',) - - -class LName(Linked): - def __init__(self, promise: set[bytes], name: bytes): - assert name in promise, f'undefined: {name}' - self.name = name - self.future = {name} - - def link(self) -> LinkingState: - return LinkingFinished(self) - - def evaluable(self, env: envtype) -> Evaluable: - return env[self.name] - - def __str__(self): - return f'[{self.name.decode()}]' - - def unlink(self) -> Parsed: - return PName(self.name) - - -class PName(Parsed): - def __init__(self, name: bytes): - self.name = name - - def link(self, promise: set[bytes]) -> Linked: - return LName(promise, self.name) diff --git a/bu4/parsing/constructs/lnull.py b/bu4/parsing/constructs/lnull.py deleted file mode 100644 index e2939db..0000000 --- a/bu4/parsing/constructs/lnull.py +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - -from bu4.evaluation.av.envtype import envtype -from bu4.evaluation.constructs.enull import ENull -from bu4.evaluation.constructs.evaluable import Evaluable -from bu4.linking.states.linkingfinished import LinkingFinished -from bu4.linking.states.linkingstate import LinkingState -from bu4.parsing.constructs.linked import Linked, Parsed - -__all__ = ('PNull',) - - -class LNull(Linked): - def __init__(self): - self.future = set() - - def link(self) -> LinkingState: - return LinkingFinished(self) - - def evaluable(self, env: envtype) -> Evaluable: - return ENull() - - def __str__(self): - return '?' - - def unlink(self) -> Parsed: - return PNull() - - -class PNull(Parsed): - def link(self, promise: set[bytes]) -> Linked: - return LNull() diff --git a/bu4/parsing/constructs/parsed.py b/bu4/parsing/constructs/parsed.py new file mode 100644 index 0000000..60ef765 --- /dev/null +++ b/bu4/parsing/constructs/parsed.py @@ -0,0 +1,10 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +__all__ = ('Parsed',) + +from bu4.linking.states.linkingstate import LinkingState + + +class Parsed: + def link(self, promise: set[bytes]) -> LinkingState: + raise NotImplementedError diff --git a/bu4/parsing/constructs/pcall.py b/bu4/parsing/constructs/pcall.py new file mode 100644 index 0000000..a8da689 --- /dev/null +++ b/bu4/parsing/constructs/pcall.py @@ -0,0 +1,30 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +__all__ = ('PCall',) + +from bu4.linking.constructs.lcall import LCall +from bu4.linking.states.afterlinking import AfterLinking +from bu4.linking.states.linkingfinished import LinkingFinished +from bu4.linking.states.linkingparsed import LinkingParsed +from bu4.linking.states.linkingstate import LinkingState +from bu4.linking.targets.allambda import ALLambda +from bu4.parsing.constructs.parsed import Parsed + + +class PCall(Parsed): + def __init__(self, argument: Parsed, lambda_: Parsed): + self.argument = argument + self.lambda_ = lambda_ + + def link(self, promise: set[bytes]) -> LinkingState: + return AfterLinking( + LinkingParsed(promise, self.argument), + ALLambda( + lambda argument: AfterLinking( + LinkingParsed(promise, self.lambda_), + ALLambda( + lambda lambda_: LinkingFinished(LCall(argument, lambda_)) + ) + ) + ) + ) diff --git a/bu4/parsing/constructs/plambda.py b/bu4/parsing/constructs/plambda.py new file mode 100644 index 0000000..818c73b --- /dev/null +++ b/bu4/parsing/constructs/plambda.py @@ -0,0 +1,32 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +__all__ = ('PLambda',) + +from bu4.linking.constructs.llambda import LLambda +from bu4.linking.states.afterlinking import AfterLinking +from bu4.linking.states.linkingfinished import LinkingFinished +from bu4.linking.states.linkingparsed import LinkingParsed +from bu4.linking.states.linkingstate import LinkingState +from bu4.linking.targets.allambda import ALLambda +from bu4.parsing.constructs.parsed import Parsed + + +class PLambda(Parsed): + def __init__(self, name: bytes, value: Parsed): + self.name = name + self.value = value + + def link(self, promise: set[bytes]) -> LinkingState: + assert self.name not in promise, f'overloaded: {self.name}' + return AfterLinking( + LinkingParsed( + promise | {self.name}, + self.value + ), + ALLambda( + lambda value: LinkingFinished(LLambda( + self.name, + value + )) + ) + ) diff --git a/bu4/parsing/constructs/pname.py b/bu4/parsing/constructs/pname.py new file mode 100644 index 0000000..f914dac --- /dev/null +++ b/bu4/parsing/constructs/pname.py @@ -0,0 +1,17 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +__all__ = ('PName',) + +from bu4.linking.constructs.lname import LName +from bu4.linking.states.linkingfinished import LinkingFinished +from bu4.linking.states.linkingstate import LinkingState +from bu4.parsing.constructs.parsed import Parsed + + +class PName(Parsed): + def __init__(self, name: bytes): + self.name = name + + def link(self, promise: set[bytes]) -> LinkingState: + assert self.name in promise, f'undefined: {self.name}' + return LinkingFinished(LName(self.name)) diff --git a/bu4/parsing/constructs/pnull.py b/bu4/parsing/constructs/pnull.py new file mode 100644 index 0000000..b044465 --- /dev/null +++ b/bu4/parsing/constructs/pnull.py @@ -0,0 +1,13 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + +__all__ = ('PNull',) + +from bu4.linking.constructs.lnull import LNull +from bu4.linking.states.linkingfinished import LinkingFinished +from bu4.linking.states.linkingstate import LinkingState +from bu4.parsing.constructs.parsed import Parsed + + +class PNull(Parsed): + def link(self, promise: set[bytes]) -> LinkingState: + return LinkingFinished(LNull()) diff --git a/bu4/parsing/parser.py b/bu4/parsing/parser.py index 6c2d3d7..3b519a3 100644 --- a/bu4/parsing/parser.py +++ b/bu4/parsing/parser.py @@ -4,10 +4,10 @@ from io import BytesIO from bu4.parsing.abstractparser import AbstractParser from bu4.parsing.codes import * -from bu4.parsing.constructs.linked import Parsed -from bu4.parsing.constructs.llambda import PLambda -from bu4.parsing.constructs.lname import PName -from bu4.parsing.constructs.lnull import PNull +from bu4.parsing.constructs.parsed import Parsed +from bu4.parsing.constructs.plambda import PLambda +from bu4.parsing.constructs.pname import PName +from bu4.parsing.constructs.pnull import PNull from bu4.parsing.states.parsestate import ParseState from bu4.parsing.states.psafter import PSAfter from bu4.parsing.states.pscall import pscall diff --git a/bu4/parsing/states/parsestate.py b/bu4/parsing/states/parsestate.py index 0843814..0663a80 100644 --- a/bu4/parsing/states/parsestate.py +++ b/bu4/parsing/states/parsestate.py @@ -1,7 +1,7 @@ +# Copyright (c) PARRRATE T&V 2021. All rights reserved. + __all__ = ('ParseState',) -# Copyright (c) PARRRATE T&V 2021. All rights reserved. - class ParseState: pass diff --git a/bu4/parsing/states/pscall.py b/bu4/parsing/states/pscall.py index be8d6e5..736b0d8 100644 --- a/bu4/parsing/states/pscall.py +++ b/bu4/parsing/states/pscall.py @@ -1,6 +1,6 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. -from bu4.parsing.constructs.lcall import PCall +from bu4.parsing.constructs.pcall import PCall from bu4.parsing.states.psafter import PSAfter from bu4.parsing.states.psfinal import PSFinal from bu4.parsing.states.psread import PSRead diff --git a/bu4/parsing/states/psfinal.py b/bu4/parsing/states/psfinal.py index 5b51249..f9bfa03 100644 --- a/bu4/parsing/states/psfinal.py +++ b/bu4/parsing/states/psfinal.py @@ -1,6 +1,6 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. -from bu4.parsing.constructs.linked import Parsed +from bu4.parsing.constructs.parsed import Parsed from bu4.parsing.states.parsestate import ParseState __all__ = ('PSFinal',) diff --git a/bu4/parsing/targets/pschain.py b/bu4/parsing/targets/pschain.py index 3567feb..81fe46f 100644 --- a/bu4/parsing/targets/pschain.py +++ b/bu4/parsing/targets/pschain.py @@ -1,6 +1,6 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. -from bu4.parsing.constructs.linked import Parsed +from bu4.parsing.constructs.parsed import Parsed from bu4.parsing.states.parsestate import ParseState from bu4.parsing.states.psafter import PSAfter from bu4.parsing.targets.pstarget import PSTarget diff --git a/bu4/parsing/targets/psendswith.py b/bu4/parsing/targets/psendswith.py index cf041cb..3688def 100644 --- a/bu4/parsing/targets/psendswith.py +++ b/bu4/parsing/targets/psendswith.py @@ -1,7 +1,7 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. from bu4.parsing.abstractparser import AbstractParser -from bu4.parsing.constructs.linked import Parsed +from bu4.parsing.constructs.parsed import Parsed from bu4.parsing.states.parsestate import ParseState from bu4.parsing.states.psfinal import PSFinal from bu4.parsing.targets.pstarget import PSTarget diff --git a/bu4/parsing/targets/pslambda.py b/bu4/parsing/targets/pslambda.py index 119d10f..6745b19 100644 --- a/bu4/parsing/targets/pslambda.py +++ b/bu4/parsing/targets/pslambda.py @@ -2,7 +2,7 @@ from typing import Callable -from bu4.parsing.constructs.linked import Parsed +from bu4.parsing.constructs.parsed import Parsed from bu4.parsing.states.parsestate import ParseState from bu4.parsing.targets.pstarget import PSTarget diff --git a/bu4/parsing/targets/pstarget.py b/bu4/parsing/targets/pstarget.py index 634cb2f..23fb8ee 100644 --- a/bu4/parsing/targets/pstarget.py +++ b/bu4/parsing/targets/pstarget.py @@ -1,6 +1,6 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. -from bu4.parsing.constructs.linked import Parsed +from bu4.parsing.constructs.parsed import Parsed from bu4.parsing.states.parsestate import ParseState __all__ = ('PSTarget',) diff --git a/bu4/parsing/toolchain/parse.py b/bu4/parsing/toolchain/parse.py index 07aa78c..e2ce877 100644 --- a/bu4/parsing/toolchain/parse.py +++ b/bu4/parsing/toolchain/parse.py @@ -1,6 +1,6 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. -from bu4.parsing.constructs.linked import Parsed +from bu4.parsing.constructs.parsed import Parsed from bu4.parsing.parser import Parser __all__ = ('parse',) diff --git a/main.py b/main.py index 13405bf..096ca43 100644 --- a/main.py +++ b/main.py @@ -1,4 +1,5 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. + import random from bu4.common_interface import with_common_interface