From 7ed1433aebdcc994fa140cf7440bf55e1023ec5f Mon Sep 17 00:00:00 2001 From: dzikoysk Date: Sun, 31 Jan 2021 14:52:26 +0100 Subject: [PATCH] GH-615 Simplify `panda` module and move `language` from `panda-framework` to `framework` package --- build.sh | 16 ++++ examples/lang/let.panda | 2 +- panda-framework/pom.xml | 2 +- .../{language => framework}/Failure.java | 6 +- .../FrameworkController.java | 12 +-- .../PandaClassLoader.java | 4 +- .../PandaFramework.java | 10 +-- .../PandaFrameworkConstants.java | 4 +- .../PandaFrameworkException.java | 4 +- .../architecture/Application.java | 8 +- .../architecture/Environment.java | 18 ++-- .../framework/architecture/ModuleSource.java | 33 +++++++ .../framework/architecture/Package.java | 25 ++++++ .../architecture/PandaApplication.java | 21 ++--- .../architecture/PandaScript.java} | 17 ++-- .../framework/architecture/Routable.java | 25 ++++++ .../architecture/Script.java | 8 +- .../dynamic/AbstractExecutableStatement.java | 8 +- .../architecture/dynamic/AbstractFrame.java | 8 +- .../dynamic/AbstractLivingFrameUtils.java | 4 +- .../architecture/dynamic/ControlledScope.java | 12 +-- .../architecture/dynamic/Controller.java | 6 +- .../architecture/dynamic/Executable.java | 8 +- .../architecture/dynamic/Frame.java | 10 +-- .../architecture/dynamic/Frameable.java | 4 +- .../dynamic/accessor/AbstractAccessor.java | 12 +-- .../dynamic/accessor/Accessor.java | 20 ++--- .../dynamic/accessor/AccessorExpression.java | 8 +- .../dynamic/assigner/AbstractAssigner.java | 12 +-- .../dynamic/assigner/Assigner.java | 12 +-- .../dynamic/assigner/AssignerExpression.java | 12 +-- .../expression/AbstractDynamicExpression.java | 6 +- .../expression/DynamicExpression.java | 6 +- .../architecture/expression/Expressible.java | 4 +- .../architecture/expression/Expression.java | 10 +-- .../expression/ExpressionEvaluator.java | 6 +- .../expression/ExpressionUtils.java | 24 ++--- .../expression/ExpressionValueType.java | 4 +- .../expression/PandaDynamicExpression.java | 8 +- .../expression/PandaExpression.java | 8 +- .../expression/StaticExpression.java | 8 +- .../expression/ThisExpression.java | 14 +-- .../architecture/module/Imports.java | 8 +- .../architecture/module/ImportsUtils.java | 14 +-- .../architecture/module/Module.java | 6 +- .../architecture/module/ModuleContainer.java | 4 +- .../architecture/module/ModulePath.java | 8 +- .../architecture/module/PandaModule.java | 6 +- .../module/PandaModuleContainer.java | 8 +- .../architecture/module/PandaModulePath.java | 8 +- .../architecture/module/PandaTypeLoader.java | 6 +- .../architecture/module/TypeLoader.java | 12 +-- .../architecture/statement/AbstractBlock.java | 8 +- .../statement/AbstractFramedScope.java | 6 +- .../AbstractPropertyFramedScope.java | 8 +- .../architecture/statement/AbstractScope.java | 8 +- .../AbstractStandardizedFramedScope.java | 6 +- .../statement/AbstractStatement.java | 8 +- .../architecture/statement/Block.java | 6 +- .../architecture/statement/FramedScope.java | 6 +- .../architecture/statement/Main.java | 20 +++++ .../architecture/statement/PandaBlock.java | 6 +- .../architecture/statement/PandaVariable.java | 6 +- .../statement/PandaVariableData.java | 8 +- .../statement/PandaVariableUtils.java | 8 +- .../architecture/statement/Scope.java | 4 +- .../architecture/statement/ScopeUtils.java | 4 +- .../statement/StandardizedFramedScope.java | 8 +- .../architecture/statement/Statement.java | 6 +- .../architecture/statement/StaticScope.java | 12 +-- .../architecture/statement/Variable.java | 4 +- .../statement/VariableAccessor.java | 12 +-- .../statement/VariableAssigner.java | 16 ++-- .../architecture/statement/VariableData.java | 8 +- .../architecture/type/Autocast.java | 6 +- .../type/AutocastDynamicExpression.java | 12 +-- .../architecture/type/DynamicClass.java | 4 +- .../architecture/type/Initializer.java | 6 +- .../architecture/type/Kind.java | 4 +- .../architecture/type/PandaType.java | 38 ++++---- .../architecture/type/PandaTypeMetadata.java | 14 +-- .../architecture/type/Reference.java | 24 ++++- .../type/ReferenceFetchException.java | 6 +- .../architecture/type/State.java | 14 +-- .../architecture/type/Type.java | 26 +++--- .../architecture/type/TypeContext.java | 37 ++++++++ .../type/TypeDeclarationUtils.java | 18 ++-- .../architecture/type/TypeFrame.java | 8 +- .../architecture/type/TypeInstance.java | 8 +- .../architecture/type/TypeScope.java | 12 +-- .../framework/architecture/type/Typed.java | 23 +++++ .../architecture/type/TypedUtils.java | 8 +- .../architecture/type/Visibility.java | 4 +- .../type/VisibilityComparator.java | 16 ++-- .../type/generator/ClassGenerator.java | 42 ++++++--- .../type/generator/ConstructorGenerator.java | 14 +-- .../type/generator/FieldGenerator.java | 24 ++--- .../type/generator/MethodGenerator.java | 20 ++--- .../type/generator/TypeGenerator.java | 34 +++---- .../type/generator/TypeGeneratorUtils.java | 14 +-- .../type/member/AbstractMember.java | 16 ++-- .../type/member/AbstractMembers.java | 8 +- .../type/member/AbstractMetadata.java | 8 +- .../member/AbstractParametrizedMember.java | 28 ++++-- .../architecture/type/member/Member.java | 6 +- .../architecture/type/member/MemberFrame.java | 6 +- .../type/member/MemberFrameImpl.java | 10 +-- .../type/member/MemberInvoker.java | 6 +- .../architecture/type/member/Members.java | 6 +- .../architecture/type/member/Metadata.java | 10 +-- .../type/member/ParametrizedMember.java | 28 ++++-- .../type/member/constructor/BaseCall.java | 20 ++--- .../member/constructor/ConstructorScope.java | 36 ++++---- .../type/member/constructor/Constructors.java | 8 +- .../member/constructor/PandaConstructor.java | 8 +- .../member/constructor/PandaConstructors.java | 10 +-- .../member/constructor/TypeConstructor.java | 6 +- .../type/member/field/FieldAccessor.java | 14 +-- .../member/field/FieldAccessorFunction.java | 12 +-- .../type/member/field/FieldAssigner.java | 16 ++-- .../type/member/field/Fields.java | 6 +- .../type/member/field/PandaField.java | 12 +-- .../type/member/field/PandaFields.java | 8 +- .../type/member/field/TypeField.java | 10 +-- .../type/member/method/MethodScope.java | 24 ++--- .../type/member/method/Methods.java | 8 +- .../type/member/method/PandaMethod.java | 12 +-- .../type/member/method/PandaMethods.java | 12 +-- .../type/member/method/TypeMethod.java | 6 +- .../type/member/parameter/ParameterUtils.java | 16 ++-- .../member/parameter/PropertyParameter.java | 6 +- .../parameter/PropertyParameterImpl.java | 8 +- .../type/signature/AbstractSignature.java | 24 ++++- .../type/signature/AdjustedExpression.java | 16 ++-- .../type/signature/AdjustedMember.java | 8 +- .../type/signature/GenericSignature.java | 24 ++++- .../architecture/type/signature/Relation.java | 21 +++-- .../type/signature/Signature.java | 24 ++++- .../type/signature/SignatureMatcher.java | 10 +-- .../type/signature/SignatureUtils.java | 22 ++++- .../architecture/type/signature/Signed.java | 6 +- .../type/signature/TypedSignature.java | 24 ++++- .../interpreter/Interpreter.java | 10 +-- .../interpreter/InterpreterFailure.java | 10 +-- .../interpreter/lexer/Lexeme.java | 8 +- .../interpreter/lexer/Lexer.java | 10 +-- .../interpreter/lexer/PandaLexer.java | 10 +-- .../lexer/PandaLexerCollector.java | 14 +-- .../lexer/PandaLexerConfiguration.java | 8 +- .../interpreter/lexer/PandaLexerFailure.java | 18 ++-- .../lexer/PandaLexerSequencer.java | 10 +-- .../lexer/PandaLexerTokenExtractor.java | 12 +-- .../interpreter/lexer/PandaLexerUtils.java | 14 +-- .../interpreter/lexer/PandaLexerWorker.java | 20 ++--- .../interpreter/logging/Channel.java | 4 +- .../interpreter/logging/DefaultLogger.java | 4 +- .../interpreter/logging/ErrorFormatter.java | 20 ++--- .../interpreter/logging/Logger.java | 4 +- .../interpreter/logging/LoggerHolder.java | 4 +- .../interpreter/logging/SystemLogger.java | 4 +- .../interpreter/parser/Component.java | 4 +- .../interpreter/parser/Context.java | 32 +++---- .../interpreter/parser/ContextCreator.java | 44 +++++++++ .../interpreter/parser/ContextParser.java | 4 +- .../interpreter/parser/Contextual.java | 4 +- .../interpreter/parser/PandaContext.java | 32 +++---- .../parser/PandaContextCreator.java | 46 ++++++---- .../parser/PandaParserException.java | 6 +- .../parser/PandaParserFailure.java | 14 +-- .../interpreter/parser/PandaParsersUtils.java | 4 +- .../interpreter/parser/Parser.java | 4 +- .../interpreter/parser/SourceReader.java | 46 ++++++---- .../parser/expression/ExpressionCategory.java | 4 +- .../parser/expression/ExpressionContext.java | 12 +-- .../parser/expression/ExpressionParser.java | 30 +++---- .../expression/ExpressionParserException.java | 6 +- .../expression/ExpressionParserSettings.java | 4 +- .../expression/ExpressionParserUtils.java | 8 +- .../expression/ExpressionParserWorker.java | 8 +- .../parser/expression/ExpressionResult.java | 14 +-- .../expression/ExpressionSubparser.java | 14 +-- .../ExpressionSubparserPostProcessor.java | 4 +- .../expression/ExpressionSubparserType.java | 4 +- .../expression/ExpressionSubparserWorker.java | 6 +- .../expression/ExpressionSubparsers.java | 8 +- .../expression/PandaExpressionContext.java | 16 ++-- .../expression/PandaExpressionParser.java | 22 ++--- .../expression/PartialResultSubparser.java | 4 +- .../expression/SubparserRepresentation.java | 4 +- .../parser/pool/PandaParserPool.java | 6 +- .../parser/pool/PandaPoolService.java | 8 +- .../interpreter/parser/pool/ParserPool.java | 6 +- .../interpreter/parser/pool/PoolParser.java | 18 ++-- .../interpreter/parser/pool/PoolService.java | 8 +- .../interpreter/parser/pool/Targets.java | 8 +- .../parser/stage/IdentifiedOrderedTask.java | 46 ++++++++++ .../interpreter/parser/stage/Layer.java | 4 +- .../parser/stage/PandaStageLayer.java | 4 +- .../parser/stage/PandaStageManager.java | 4 +- .../parser/stage/PandaStagePhase.java | 4 +- .../interpreter/parser/stage/Phase.java | 4 +- .../interpreter/parser/stage/Phases.java | 4 +- .../parser/stage/RetryException.java | 25 ++++++ .../interpreter/parser/stage/StageLayer.java | 4 +- .../parser/stage/StageManager.java | 4 +- .../interpreter/parser/stage/StageOrder.java | 4 +- .../interpreter/parser/stage/StagePhase.java | 4 +- .../parser/stage/StageService.java | 20 ++++- .../interpreter/parser/stage/StageTask.java | 4 +- .../interpreter/source/IndicatedSource.java | 6 +- .../interpreter/source/Localizable.java | 23 +++++ .../interpreter/source/Location.java | 4 +- .../interpreter/source/PandaClassSource.java | 6 +- .../source/PandaIndicatedSource.java | 10 +-- .../interpreter/source/PandaSource.java | 4 +- .../source/PandaSourceService.java | 6 +- .../interpreter/source/PandaURLSource.java | 8 +- .../interpreter/source/Source.java | 4 +- .../interpreter/source/SourceService.java | 8 +- .../interpreter/token/EqualableToken.java | 4 +- .../interpreter/token/PandaLocation.java | 10 +-- .../interpreter/token/PandaSnippet.java | 4 +- .../interpreter/token/PandaSourceStream.java | 6 +- .../interpreter/token/PandaToken.java | 4 +- .../interpreter/token/PandaTokenInfo.java | 10 +-- .../interpreter/token/Snippet.java | 14 +-- .../SnippetIndexOutOfBoundsException.java | 6 +- .../interpreter/token/SnippetIterator.java | 4 +- .../interpreter/token/SnippetUtils.java | 4 +- .../interpreter/token/Snippetable.java | 6 +- .../interpreter/token/SourceStream.java | 8 +- .../interpreter/token/Streamable.java | 6 +- .../interpreter/token/SynchronizedSource.java | 6 +- .../interpreter/token/Token.java | 8 +- .../interpreter/token/TokenInfo.java | 10 +-- .../interpreter/token/TokenType.java | 4 +- .../interpreter/token/TokenUtils.java | 4 +- .../resource/Language.java | 4 +- .../resource/PandaLanguage.java | 6 +- .../resource/PandaResources.java | 10 +-- .../resource/Resources.java | 10 +-- .../resource/Syntax.java | 24 ++--- .../resource/internal/InternalModuleInfo.java | 10 +-- .../resource/internal/java/Java.java | 20 +++++ .../resource/internal/java/JavaModule.java | 42 ++++----- .../resource/syntax/DefaultCharacters.java | 4 +- .../resource/syntax/PandaSyntax.java | 28 +++--- .../resource/syntax/TokenTypes.java | 24 ++--- .../resource/syntax/auxiliary/Identifier.java | 10 +-- .../syntax/auxiliary/Indentation.java | 10 +-- .../resource/syntax/auxiliary/Section.java | 16 ++-- .../resource/syntax/keyword/Keyword.java | 10 +-- .../resource/syntax/keyword/Keywords.java | 4 +- .../resource/syntax/literal/Literal.java | 10 +-- .../resource/syntax/literal/Literals.java | 4 +- .../resource/syntax/operator/CreaseType.java | 4 +- .../resource/syntax/operator/Operator.java | 10 +-- .../syntax/operator/OperatorFamilies.java | 6 +- .../syntax/operator/OperatorUtils.java | 12 +-- .../resource/syntax/operator/Operators.java | 4 +- .../resource/syntax/separator/Separator.java | 10 +-- .../syntax/separator/SeparatorStack.java | 6 +- .../resource/syntax/separator/Separators.java | 6 +- .../resource/syntax/sequence/Sequence.java | 10 +-- .../syntax/sequence/SequenceToken.java | 6 +- .../resource/syntax/sequence/Sequences.java | 4 +- .../syntax/sequence/SequencesUtils.java | 14 +-- .../runtime/MemoryContainer.java | 4 +- .../runtime/PandaProcess.java | 10 +-- .../runtime/PandaProcessFailure.java | 4 +- .../runtime/PandaProcessStack.java | 16 ++-- .../runtime/PandaRuntimeConstants.java | 4 +- .../runtime/PandaRuntimeException.java | 6 +- .../runtime/Process.java | 4 +- .../runtime/ProcessStack.java | 10 +-- .../runtime/Result.java | 6 +- .../runtime/Status.java | 4 +- .../architecture/type/TypeContext.java | 21 ----- .../language/architecture/type/Typed.java | 7 -- .../architecture/type/signature/Relation.java | 19 ---- .../interpreter/parser/ContextCreator.java | 28 ------ .../parser/stage/IdentifiedOrderedTask.java | 30 ------- .../parser/stage/RetryException.java | 9 -- .../interpreter/source/Localizable.java | 7 -- .../language/resource/internal/java/Java.java | 4 - .../interpreter/BenchmarkRunner.java | 4 +- .../ExpressionParserSettingsTest.groovy | 9 +- .../parser/pool/PoolServiceTest.groovy | 10 +-- .../PhasesLayerLayerControllerTest.groovy | 6 +- panda-utilities/pom.xml | 2 +- .../utilities/commons/ArrayUtils.java | 8 +- .../utilities/commons/BitwiseUtils.java | 8 +- .../utilities/commons/CamelCaseUtils.java | 8 +- .../utilities/commons/CharacterUtils.java | 8 +- .../utilities/commons/ClassPoolUtils.java | 8 +- .../utilities/commons/ClassUtils.java | 8 +- .../utilities/commons/CollectionUtils.java | 8 +- .../panda_lang/utilities/commons/CtUtils.java | 8 +- .../utilities/commons/FileUtils.java | 8 +- .../panda_lang/utilities/commons/IOUtils.java | 8 +- .../utilities/commons/LoggingUtils.java | 8 +- .../utilities/commons/ObjectUtils.java | 8 +- .../utilities/commons/PackageUtils.java | 8 +- .../utilities/commons/ReflectionUtils.java | 8 +- .../utilities/commons/ScriptEngineUtils.java | 2 +- .../utilities/commons/StackTraceUtils.java | 8 +- .../utilities/commons/StackUtils.java | 8 +- .../utilities/commons/StringUtils.java | 2 +- .../utilities/commons/TimeUtils.java | 2 +- .../utilities/commons/UnsafeUtils.java | 8 +- .../utilities/commons/ValidationUtils.java | 8 +- .../utilities/commons/ZipUtils.java | 8 +- .../commons/collection/FixedStack.java | 8 +- .../utilities/commons/collection/IStack.java | 8 +- .../utilities/commons/collection/Lists.java | 8 +- .../utilities/commons/collection/Maps.java | 8 +- .../utilities/commons/collection/Node.java | 8 +- .../utilities/commons/collection/Pair.java | 8 +- .../utilities/commons/collection/Sets.java | 8 +- .../utilities/commons/console/Colored.java | 2 +- .../utilities/commons/console/Effect.java | 2 +- .../utilities/commons/function/Case.java | 2 +- .../commons/function/Completable.java | 16 ++++ .../commons/function/FunctionUtils.java | 8 +- .../utilities/commons/function/Lazy.java | 2 +- .../utilities/commons/function/Option.java | 2 +- .../commons/function/PandaStream.java | 2 +- .../utilities/commons/function/Publisher.java | 16 ++++ .../commons/function/QuadConsumer.java | 2 +- .../commons/function/QuadFunction.java | 8 +- .../commons/function/QuadPredicate.java | 8 +- .../utilities/commons/function/Result.java | 2 +- .../commons/function/StreamUtils.java | 2 +- .../commons/function/Subscriber.java | 16 ++++ .../function/TakeWhileSpliterator.java | 8 +- .../commons/function/ThrowingBiFunction.java | 8 +- .../commons/function/ThrowingConsumer.java | 8 +- .../commons/function/ThrowingFunction.java | 8 +- .../function/ThrowingQuadFunction.java | 8 +- .../commons/function/ThrowingRunnable.java | 2 +- .../commons/function/ThrowingSupplier.java | 8 +- .../commons/function/ThrowingTriFunction.java | 8 +- .../commons/function/TriConsumer.java | 2 +- .../commons/function/TriFunction.java | 2 +- .../commons/function/TriPredicate.java | 8 +- .../commons/iterable/ArrayIterable.java | 8 +- .../iterable/CharArrayDistributor.java | 8 +- .../commons/iterable/ResourcesIterable.java | 8 +- .../commons/iterable/ReversedIterable.java | 8 +- .../commons/iterable/SingletonIterator.java | 8 +- .../utilities/commons/javassist/CtCode.java | 8 +- .../FunctionalInterfaceImplementer.java | 8 +- ...nctionalInterfaceImplementerGenerator.java | 8 +- .../utilities/commons/text/Formatter.java | 2 +- .../utilities/commons/text/Joiner.java | 2 +- .../utilities/commons/text/SectionString.java | 2 +- .../utilities/commons/ArrayUtilsTest.groovy | 4 +- .../utilities/commons/BitwiseUtilsTest.groovy | 2 +- .../commons/CamelCaseUtilsTest.groovy | 2 +- .../commons/CharacterUtilsTest.groovy | 2 +- .../commons/ClassPoolUtilsTest.groovy | 2 +- .../utilities/commons/ClassUtilsTest.groovy | 2 +- .../commons/CollectionUtilsTest.groovy | 2 +- .../utilities/commons/FileUtilsTest.groovy | 2 +- .../utilities/commons/IOUtilsTest.groovy | 2 +- .../utilities/commons/LoggingUtilsTest.groovy | 2 +- .../utilities/commons/ObjectUtilsTest.groovy | 4 +- .../utilities/commons/PackageUtilsTest.groovy | 2 +- .../commons/ReflectionUtilsTest.groovy | 2 +- .../commons/ScriptEngineUtilsTest.groovy | 2 +- .../commons/StackTraceUtilsTest.groovy | 2 +- .../utilities/commons/StackUtilsTest.groovy | 2 +- .../utilities/commons/StreamUtilsTest.groovy | 2 +- .../utilities/commons/StringUtilsTest.groovy | 2 +- .../utilities/commons/TimeUtilsTest.groovy | 2 +- .../utilities/commons/UnsafeUtilsTest.groovy | 2 +- .../commons/ValidationUtilsTest.groovy | 16 ++++ .../utilities/commons/ZipUtilsTest.groovy | 2 +- .../commons/collection/FixedStackTest.groovy | 2 +- .../commons/collection/ListsTest.groovy | 4 +- .../commons/collection/MapsTest.groovy | 4 +- .../commons/collection/NodeTest.groovy | 4 +- .../commons/collection/PairTest.groovy | 16 ++++ .../commons/console/ColoredTest.groovy | 16 ++++ .../commons/function/FunctionUtilsTest.groovy | 4 +- .../commons/function/LazyTest.groovy | 4 +- .../commons/function/OptionTest.groovy | 4 +- .../commons/function/PandaStreamTest.groovy | 4 +- .../commons/function/ResultTest.groovy | 2 +- .../commons/iterable/ArrayIterableTest.groovy | 16 ++++ .../iterable/CharArrayDistributorTest.groovy | 16 ++++ .../iterable/ResourcesIterableTest.groovy | 4 +- .../iterable/ReversedIterableTest.groovy | 16 ++++ .../iterable/SingletonIteratorTest.groovy | 16 ++++ .../commons/javassist/CtCodeTest.groovy | 16 ++++ .../commons/text/SectionStringTest.groovy | 4 +- panda/pom.xml | 2 +- panda/src/main/assembly/all-assembly.xml | 2 +- .../main/java/org/panda_lang/panda/Panda.java | 16 ++-- .../org/panda_lang/panda/PandaConstants.java | 4 +- .../org/panda_lang/panda/PandaException.java | 4 +- .../org/panda_lang/panda/PandaFactory.java | 10 +-- .../org/panda_lang/panda/PandaLauncher.java | 6 +- .../panda/bootstrap/BootstrapException.java | 2 +- .../panda/bootstrap/Initializer.java | 2 +- .../bootstrap/PandaApplicationBootstrap.java | 4 +- .../panda/bootstrap/PandaBootstrap.java | 14 +-- .../panda/bootstrap/ParsersInitializer.java | 24 ++--- .../panda/bootstrap/PipelinesInitializer.java | 10 +-- .../{architecture => }/PandaEnvironment.java | 45 +++++----- .../{interpreter => }/PandaInterpreter.java | 58 ++++++------ .../interpreter/parser/ParsersLoader.java | 38 -------- .../resource/syntax/PandaParsers.java | 89 ------------------- .../syntax/expressions/PandaExpressions.java | 70 --------------- .../subparsers/number/PandaNumbers.java | 17 ---- .../subparsers/BitwiseOperatorSubparser.java | 56 ------------ .../subparsers/bitwise/BitwiseOperation.java | 29 ------ .../syntax/scope/block/BlockParser.java | 26 ------ .../scope/block/conditional/ElseIfParser.java | 25 ------ .../scope/block/conditional/ElseParser.java | 25 ------ .../scope/block/conditional/IfParser.java | 25 ------ .../resource/syntax/type/SignatureSource.java | 25 ------ .../internal => std}/PandaModules.java | 12 +-- .../StdLoader.java} | 21 +++-- .../java/JavaCollectionsModule.java | 6 +- .../java/JavaExtensionModule.java | 6 +- .../java/JavaUtilsModule.java | 6 +- .../panda/language/syntax/PandaParsers.java | 89 +++++++++++++++++++ .../syntax/PandaPriorities.java | 12 +-- .../parser => syntax}/PandaSourceReader.java | 48 ++++++---- .../parser => syntax}/ScopeParser.java | 24 ++--- .../syntax/expressions/PandaExpressions.java | 70 +++++++++++++++ .../AbstractExpressionSubparserWorker.java | 8 +- .../subparsers/ArgumentsParser.java | 24 ++--- .../AssignationExpressionSubparser.java | 52 +++++++---- .../subparsers/CastExpressionSubparser.java | 24 ++--- .../ConstructorExpressionSubparser.java | 58 ++++++------ .../subparsers/CreaseExpression.java | 23 +++-- .../subparsers/CreaseExpressionSubparser.java | 28 +++--- .../DeclarationExpressionSubparser.java | 58 +++++++----- .../subparsers/FieldExpression.java | 22 ++--- .../expressions/subparsers/IsExpression.java | 14 +-- .../subparsers/IsExpressionSubparser.java | 26 +++--- .../subparsers/LambdaExpressionSubparser.java | 24 ++--- .../LiteralExpressionSubparser.java | 32 +++---- .../subparsers/MethodExpressionSubparser.java | 50 +++++------ .../subparsers/NegateExpressionSubparser.java | 26 +++--- .../subparsers/NegateLogicalExpression.java | 12 +-- .../SectionExpressionSubparser.java | 24 ++--- .../SequenceExpressionSubparser.java | 22 ++--- .../subparsers/StaticExpressionSubparser.java | 22 ++--- .../subparsers/SubparsersUtils.java | 14 +-- .../subparsers/VariableExpression.java | 20 ++--- .../VariableExpressionSubparser.java | 38 ++++---- .../subparsers/number/NegativeExpression.java | 15 ++-- .../number/NegativeExpressionSubparser.java | 26 +++--- .../number/NotBitwiseExpression.java | 14 +-- .../number/NotBitwiseExpressionSubparser.java | 26 +++--- .../number/NumberExpressionSubparser.java | 28 +++--- .../subparsers/number/NumberParser.java | 20 ++--- .../subparsers/number/NumberPriorities.java | 8 +- .../subparsers/number/NumberType.java | 4 +- .../subparsers/number/NumberUtils.java | 8 +- .../subparsers/number/PandaNumbers.java | 33 +++++++ .../subparsers/operation/Operation.java | 22 ++--- .../OperationExpressionSubparser.java | 30 +++---- .../operation/OperationExpressionUtils.java | 14 +-- .../subparsers/operation/OperationParser.java | 28 +++--- .../operation/OperationSubparser.java | 8 +- .../subparsers/operation/OperationUtils.java | 18 ++-- .../operation/pattern/OperationPattern.java | 10 +-- .../pattern/OperationPatternElement.java | 8 +- .../pattern/OperationPatternResult.java | 6 +- .../pattern/OperationPatternWorker.java | 14 +-- .../operation/rpn/RPNOperation.java | 10 +-- .../operation/rpn/RPNOperationAction.java | 10 +-- .../operation/rpn/RPNOperationBuilder.java | 10 +-- .../operation/rpn/RPNOperationRectifier.java | 24 ++--- .../operation/rpn/RPNOperationSupplier.java | 10 +-- .../rpn/RPNOperationTransformer.java | 12 +-- .../operation/rpn/RPNSimplifiedAction.java | 8 +- .../operation/rpn/RPNSimplifiedSupplier.java | 14 +-- .../subparsers/BitwiseOperatorSubparser.java | 72 +++++++++++++++ .../ConcatenationExpressionCallback.java | 14 +-- .../ConcatenationOperatorSubparser.java | 18 ++-- .../subparsers/LogicalOperatorSubparser.java | 40 ++++----- .../subparsers/MathOperationSubparser.java | 32 +++---- .../bitwise/AndBitwiseOperator.java | 32 +++++-- .../subparsers/bitwise/BitwiseOperation.java | 45 ++++++++++ .../subparsers/bitwise/LeftShiftOperator.java | 32 +++++-- .../subparsers/bitwise/OrBitwiseOperator.java | 32 +++++-- .../bitwise/RightShiftOperator.java | 32 +++++-- .../bitwise/XorBitwiseOperator.java | 32 +++++-- .../subparsers/logical/AndOperator.java | 14 +-- .../logical/ComparisonOperator.java | 14 +-- .../logical/ComparisonOperatorAction.java | 12 +-- .../subparsers/logical/EqualsToOperation.java | 22 ++--- .../logical/GreaterThanOperator.java | 12 +-- .../logical/GreaterThanOrEqualsOperator.java | 12 +-- .../subparsers/logical/LessThanOperator.java | 12 +-- .../logical/LessThanOrEqualsOperator.java | 12 +-- .../logical/NotEqualsToOperation.java | 14 +-- .../subparsers/logical/OrOperation.java | 18 ++-- .../subparsers/math/AdditionOperation.java | 16 ++-- .../subparsers/math/DivisionOperation.java | 18 ++-- .../subparsers/math/MathOperation.java | 14 +-- .../subparsers/math/ModuloOperation.java | 16 ++-- .../math/MultiplicationOperation.java | 16 ++-- .../subparsers/math/SubtractionOperation.java | 16 ++-- .../subparsers/number/NumericOperation.java | 8 +- .../subparsers/number/NumericOperator.java | 14 +-- .../syntax/head/CommentParser.java | 16 ++-- .../syntax/head/CommentStatement.java | 10 +-- .../syntax/head/ConveyanceUtils.java | 14 +-- .../syntax/head/ExportParser.java | 24 ++--- .../syntax/head/ImportParser.java | 20 ++--- .../syntax/head/MainParser.java | 30 +++---- .../{resource => }/syntax/head/MainScope.java | 17 ++-- .../syntax/head/ModuleParser.java | 28 +++--- .../syntax/head/ModuleStatement.java | 10 +-- .../syntax/head/RequireParser.java | 34 +++---- .../syntax/scope/LateDeclarationParser.java | 40 ++++----- .../syntax/scope/LogParser.java | 18 ++-- .../syntax/scope/LogStatement.java | 16 ++-- .../syntax/scope/StandaloneExpression.java | 12 +-- .../scope/StandaloneExpressionParser.java | 20 ++--- .../syntax/scope/block/BlockParser.java | 42 +++++++++ .../syntax/scope/block/TryCatch.java | 14 +-- .../syntax/scope/block/TryCatchParser.java | 28 +++--- .../block/conditional/ConditionalBlock.java | 22 ++--- .../block/conditional/ConditionalParser.java | 26 +++--- .../scope/block/conditional/ElseIfParser.java | 41 +++++++++ .../scope/block/conditional/ElseParser.java | 41 +++++++++ .../scope/block/conditional/IfParser.java | 41 +++++++++ .../block/looping/ControlledIteration.java | 12 +-- .../syntax/scope/block/looping/ForBlock.java | 18 ++-- .../scope/block/looping/ForEachBlock.java | 20 ++--- .../scope/block/looping/ForEachParser.java | 30 +++---- .../syntax/scope/block/looping/ForParser.java | 28 +++--- .../syntax/scope/block/looping/LoopBlock.java | 18 ++-- .../scope/block/looping/LoopParser.java | 20 ++--- .../scope/block/looping/WhileBlock.java | 18 ++-- .../scope/block/looping/WhileParser.java | 20 ++--- .../syntax/scope/branching/Break.java | 14 +-- .../syntax/scope/branching/BreakParser.java | 22 ++--- .../syntax/scope/branching/Continue.java | 14 +-- .../scope/branching/ContinueParser.java | 22 ++--- .../syntax/scope/branching/Return.java | 16 ++-- .../syntax/scope/branching/ReturnParser.java | 18 ++-- .../syntax/scope/branching/Returnable.java | 6 +- .../syntax/scope/branching/Throw.java | 16 ++-- .../syntax/scope/branching/ThrowParser.java | 18 ++-- .../variable/VariableDataInitializer.java | 30 +++---- .../syntax/type/BaseCallParser.java | 38 ++++---- .../syntax/type/ConstructorParser.java | 42 ++++----- .../syntax/type/FieldParser.java | 46 +++++----- .../syntax/type/MethodParser.java | 60 ++++++------- .../syntax/type/ParameterParser.java | 30 +++---- .../syntax/type/SelfConstructor.java | 20 ++--- .../syntax/type/SelfConstructorParser.java | 28 +++--- .../syntax/type/SignatureParser.java | 48 ++++++---- .../language/syntax/type/SignatureSource.java | 41 +++++++++ .../syntax/type/TypeParser.java | 70 +++++++-------- .../panda/manager/CustomInstall.java | 2 +- .../panda/manager/CustomInstallFactory.java | 2 +- .../panda_lang/panda/manager/Dependency.java | 2 +- .../panda/manager/DependencyFactory.java | 4 +- .../panda/manager/GitHubInstall.java | 2 +- .../org/panda_lang/panda/manager/Install.java | 2 +- .../panda/manager/InstallStatus.java | 2 +- .../panda/manager/MavenInstall.java | 2 +- .../panda/manager/PackageDocument.java | 2 +- .../panda/manager/PackageDocumentFile.java | 2 +- .../panda/manager/PackageManager.java | 8 +- .../manager/PackageManagerConstants.java | 2 +- .../panda/manager/PackageManagerUtils.java | 12 +-- .../org/panda_lang/panda/manager/Run.java | 10 +-- .../org/panda_lang/panda/shell/PandaCli.java | 12 +-- .../panda_lang/panda/shell/PandaShell.java | 6 +- .../org/panda_lang/panda/shell/repl/Repl.java | 38 ++++---- .../panda/shell/repl/ReplConsole.java | 4 +- .../panda/shell/repl/ReplCreator.java | 50 +++++------ .../shell/repl/ReplExceptionListener.java | 2 +- .../panda/shell/repl/ReplFrame.java | 10 +-- .../panda/shell/repl/ReplResult.java | 2 +- .../panda/shell/repl/ReplScope.java | 16 ++-- .../panda/shell/repl/ReplStatement.java | 12 +-- .../panda/shell/repl/ReplUtils.java | 6 +- .../repl/ReplVariableChangeListener.java | 4 +- .../parser => utils}/PandaContextUtils.java | 60 ++++++------- .../PandaFileLoader.java | 12 +-- .../panda/{util => utils}/PandaUtils.java | 10 +-- .../{util => utils}/embed/PandaEngine.java | 6 +- .../embed/PandaEngineFactory.java | 4 +- .../embed/PandaEngineFactoryConstants.java | 4 +- .../services/javax.script.ScriptEngineFactory | 18 +++- .../panda_lang/panda/PandaLauncherTest.groovy | 20 ++++- .../panda/examples/lang/BasicTypesTest.groovy | 16 ++++ .../panda/examples/lang/BitwiseTest.groovy | 16 ++++ .../panda/examples/lang/BranchingTest.groovy | 16 ++++ .../panda/examples/lang/CommentsTest.groovy | 16 ++++ .../panda/examples/lang/CreaseTest.groovy | 16 ++++ .../panda/examples/lang/GenericsTest.groovy | 16 ++++ .../lang/LangTestSpecification.groovy | 18 +++- .../panda/examples/lang/LetTest.groovy | 16 ++++ .../panda/examples/lang/LogicalTest.groovy | 16 ++++ .../panda/examples/lang/LoopsTest.groovy | 16 ++++ .../panda/examples/lang/MainTest.groovy | 16 ++++ .../panda/examples/lang/MathTest.groovy | 16 ++++ .../panda/examples/lang/TypeTest.groovy | 16 ++++ .../panda/examples/lang/VariablesTest.groovy | 16 ++++ .../tests/CurrentTestExampleTest.groovy | 4 +- .../panda/examples/tests/SwingExample.groovy | 4 +- .../performance/CurrentTestBenchmark.java | 8 +- .../TenThousandExpressionsTest.groovy | 8 +- .../tests/performance/matmul/MatmulJava.java | 2 +- .../matmul/MatmulPerformanceTest.java | 8 +- .../matmul/MatmulPrimitivesJava.java | 2 +- .../tests/performance/matmul/MatmulTest.java | 6 +- .../lexer/FileBasedLexerTest.groovy | 12 +-- .../interpreter/lexer/SimpleLexerTest.groovy | 12 +-- .../expression/ExpressionBenchmark.java | 16 ++-- .../expression/ExpressionParserTest.groovy | 4 +- .../ExpressionParserTestBootstrap.groovy | 36 ++++---- .../OperationExpressionBenchmark.java | 20 ++--- .../subparsers/OperationExpressionTest.groovy | 18 ++-- .../subparsers/OperationPatternTest.groovy | 30 +++---- .../subparsers/number/NumberUtilsTest.groovy | 21 ----- .../language/runtime/ProcessStackTest.groovy | 22 ++--- .../subparsers/number/NumberUtilsTest.groovy | 37 ++++++++ .../panda/manager/DependencyTest.groovy | 4 +- .../panda/manager/PackageDocumentTest.groovy | 4 +- .../manager/PandaModuleDependencyTest.groovy | 6 +- .../PandaWithJavaLibraryDependencyTest.groovy | 6 +- .../panda/shell/PandaCliTest.groovy | 12 +-- .../panda/shell/PandaShellTest.groovy | 10 +-- .../panda/shell/repl/ReplTest.groovy | 22 ++--- .../{util => utils}/BenchmarkUtils.groovy | 6 +- .../embed/PandaEngineTest.groovy | 6 +- pom.xml | 2 +- 640 files changed, 4947 insertions(+), 3856 deletions(-) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/Failure.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/FrameworkController.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/PandaClassLoader.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/PandaFramework.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/PandaFrameworkConstants.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/PandaFrameworkException.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/Application.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/Environment.java (75%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/architecture/ModuleSource.java create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/architecture/Package.java rename {panda/src/main/java/org/panda_lang/panda/language => panda-framework/src/main/java/org/panda_lang/framework}/architecture/PandaApplication.java (77%) rename panda-framework/src/main/java/org/panda_lang/{language/architecture/AbstractScript.java => framework/architecture/PandaScript.java} (81%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/architecture/Routable.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/Script.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/AbstractExecutableStatement.java (77%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/AbstractFrame.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/AbstractLivingFrameUtils.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/ControlledScope.java (77%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/Controller.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/Executable.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/Frame.java (76%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/Frameable.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/accessor/AbstractAccessor.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/accessor/Accessor.java (64%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/accessor/AccessorExpression.java (78%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/assigner/AbstractAssigner.java (72%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/assigner/Assigner.java (68%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/dynamic/assigner/AssignerExpression.java (78%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/AbstractDynamicExpression.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/DynamicExpression.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/Expressible.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/Expression.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/ExpressionEvaluator.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/ExpressionUtils.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/ExpressionValueType.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/PandaDynamicExpression.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/PandaExpression.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/StaticExpression.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/expression/ThisExpression.java (80%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/Imports.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/ImportsUtils.java (77%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/Module.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/ModuleContainer.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/ModulePath.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/PandaModule.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/PandaModuleContainer.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/PandaModulePath.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/PandaTypeLoader.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/module/TypeLoader.java (79%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/AbstractBlock.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/AbstractFramedScope.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/AbstractPropertyFramedScope.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/AbstractScope.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/AbstractStandardizedFramedScope.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/AbstractStatement.java (80%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/Block.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/FramedScope.java (83%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/architecture/statement/Main.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/PandaBlock.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/PandaVariable.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/PandaVariableData.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/PandaVariableUtils.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/Scope.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/ScopeUtils.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/StandardizedFramedScope.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/Statement.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/StaticScope.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/Variable.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/VariableAccessor.java (73%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/VariableAssigner.java (78%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/statement/VariableData.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/Autocast.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/AutocastDynamicExpression.java (78%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/DynamicClass.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/Initializer.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/Kind.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/PandaType.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/PandaTypeMetadata.java (87%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/Reference.java (72%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/ReferenceFetchException.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/State.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/Type.java (84%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/architecture/type/TypeContext.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/TypeDeclarationUtils.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/TypeFrame.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/TypeInstance.java (76%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/TypeScope.java (76%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/architecture/type/Typed.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/TypedUtils.java (87%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/Visibility.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/VisibilityComparator.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/generator/ClassGenerator.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/generator/ConstructorGenerator.java (78%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/generator/FieldGenerator.java (75%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/generator/MethodGenerator.java (87%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/generator/TypeGenerator.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/generator/TypeGeneratorUtils.java (75%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/AbstractMember.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/AbstractMembers.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/AbstractMetadata.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/AbstractParametrizedMember.java (61%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/Member.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/MemberFrame.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/MemberFrameImpl.java (75%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/MemberInvoker.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/Members.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/Metadata.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/ParametrizedMember.java (55%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/constructor/BaseCall.java (74%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/constructor/ConstructorScope.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/constructor/Constructors.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/constructor/PandaConstructor.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/constructor/PandaConstructors.java (80%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/constructor/TypeConstructor.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/field/FieldAccessor.java (71%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/field/FieldAccessorFunction.java (77%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/field/FieldAssigner.java (80%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/field/Fields.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/field/PandaField.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/field/PandaFields.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/field/TypeField.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/method/MethodScope.java (69%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/method/Methods.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/method/PandaMethod.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/method/PandaMethods.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/method/TypeMethod.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/parameter/ParameterUtils.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/parameter/PropertyParameter.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/member/parameter/PropertyParameterImpl.java (80%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/AbstractSignature.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/AdjustedExpression.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/AdjustedMember.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/GenericSignature.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/architecture/PandaScript.java => panda-framework/src/main/java/org/panda_lang/framework/architecture/type/signature/Relation.java (63%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/Signature.java (52%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/SignatureMatcher.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/SignatureUtils.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/Signed.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/architecture/type/signature/TypedSignature.java (57%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/Interpreter.java (80%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/InterpreterFailure.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/Lexeme.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/Lexer.java (68%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexer.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexerCollector.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexerConfiguration.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexerFailure.java (70%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexerSequencer.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexerTokenExtractor.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexerUtils.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/lexer/PandaLexerWorker.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/logging/Channel.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/logging/DefaultLogger.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/logging/ErrorFormatter.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/logging/Logger.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/logging/LoggerHolder.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/logging/SystemLogger.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/Component.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/Context.java (59%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/interpreter/parser/ContextCreator.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/ContextParser.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/Contextual.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/PandaContext.java (73%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/PandaContextCreator.java (67%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/PandaParserException.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/PandaParserFailure.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/PandaParsersUtils.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/Parser.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/SourceReader.java (70%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionCategory.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionContext.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionParser.java (67%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionParserException.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionParserSettings.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionParserUtils.java (77%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionParserWorker.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionResult.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionSubparser.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionSubparserPostProcessor.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionSubparserType.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionSubparserWorker.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionSubparsers.java (78%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/PandaExpressionContext.java (81%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/PandaExpressionParser.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/PartialResultSubparser.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/expression/SubparserRepresentation.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/pool/PandaParserPool.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/pool/PandaPoolService.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/pool/ParserPool.java (87%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/pool/PoolParser.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/pool/PoolService.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/pool/Targets.java (84%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/interpreter/parser/stage/IdentifiedOrderedTask.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/Layer.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/PandaStageLayer.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/PandaStageManager.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/PandaStagePhase.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/Phase.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/Phases.java (94%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/interpreter/parser/stage/RetryException.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/StageLayer.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/StageManager.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/StageOrder.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/StagePhase.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/StageService.java (62%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/parser/stage/StageTask.java (89%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/IndicatedSource.java (86%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/interpreter/source/Localizable.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/Location.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/PandaClassSource.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/PandaIndicatedSource.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/PandaSource.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/PandaSourceService.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/PandaURLSource.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/Source.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/source/SourceService.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/EqualableToken.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/PandaLocation.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/PandaSnippet.java (97%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/PandaSourceStream.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/PandaToken.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/PandaTokenInfo.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/Snippet.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/SnippetIndexOutOfBoundsException.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/SnippetIterator.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/SnippetUtils.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/Snippetable.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/SourceStream.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/Streamable.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/SynchronizedSource.java (96%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/Token.java (87%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/TokenInfo.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/TokenType.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/interpreter/token/TokenUtils.java (95%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/Language.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/PandaLanguage.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/PandaResources.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/Resources.java (76%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/Syntax.java (68%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/internal/InternalModuleInfo.java (83%) create mode 100644 panda-framework/src/main/java/org/panda_lang/framework/resource/internal/java/Java.java rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/internal/java/JavaModule.java (83%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/DefaultCharacters.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/PandaSyntax.java (69%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/TokenTypes.java (69%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/auxiliary/Identifier.java (76%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/auxiliary/Indentation.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/auxiliary/Section.java (78%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/keyword/Keyword.java (79%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/keyword/Keywords.java (97%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/literal/Literal.java (76%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/literal/Literals.java (92%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/operator/CreaseType.java (87%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/operator/Operator.java (84%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/operator/OperatorFamilies.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/operator/OperatorUtils.java (85%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/operator/Operators.java (98%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/separator/Separator.java (82%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/separator/SeparatorStack.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/separator/Separators.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/sequence/Sequence.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/sequence/SequenceToken.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/sequence/Sequences.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/resource/syntax/sequence/SequencesUtils.java (77%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/MemoryContainer.java (94%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/PandaProcess.java (86%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/PandaProcessFailure.java (93%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/PandaProcessStack.java (88%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/PandaRuntimeConstants.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/PandaRuntimeException.java (87%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/Process.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/ProcessStack.java (91%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/Result.java (90%) rename panda-framework/src/main/java/org/panda_lang/{language => framework}/runtime/Status.java (93%) delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/architecture/type/TypeContext.java delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/architecture/type/Typed.java delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/architecture/type/signature/Relation.java delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/interpreter/parser/ContextCreator.java delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/interpreter/parser/stage/IdentifiedOrderedTask.java delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/interpreter/parser/stage/RetryException.java delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/interpreter/source/Localizable.java delete mode 100644 panda-framework/src/main/java/org/panda_lang/language/resource/internal/java/Java.java rename panda-framework/src/test/groovy/org/panda_lang/{language => framework}/interpreter/BenchmarkRunner.java (93%) rename panda-framework/src/test/groovy/org/panda_lang/{language => framework}/interpreter/parser/expression/ExpressionParserSettingsTest.groovy (79%) rename panda-framework/src/test/groovy/org/panda_lang/{language => framework}/interpreter/parser/pool/PoolServiceTest.groovy (89%) rename panda-framework/src/test/groovy/org/panda_lang/{language => framework}/interpreter/parser/stage/PhasesLayerLayerControllerTest.groovy (95%) rename panda/src/main/java/org/panda_lang/panda/language/{architecture => }/PandaEnvironment.java (64%) rename panda/src/main/java/org/panda_lang/panda/language/{interpreter => }/PandaInterpreter.java (77%) delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/interpreter/parser/ParsersLoader.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/PandaParsers.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/expressions/PandaExpressions.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/expressions/subparsers/number/PandaNumbers.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/expressions/subparsers/operation/subparsers/BitwiseOperatorSubparser.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/expressions/subparsers/operation/subparsers/bitwise/BitwiseOperation.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/scope/block/BlockParser.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/scope/block/conditional/ElseIfParser.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/scope/block/conditional/ElseParser.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/scope/block/conditional/IfParser.java delete mode 100644 panda/src/main/java/org/panda_lang/panda/language/resource/syntax/type/SignatureSource.java rename panda/src/main/java/org/panda_lang/panda/language/{resource/internal => std}/PandaModules.java (68%) rename panda/src/main/java/org/panda_lang/panda/language/{resource/ResourcesLoader.java => std/StdLoader.java} (77%) rename panda/src/main/java/org/panda_lang/panda/language/{resource/internal => std}/java/JavaCollectionsModule.java (87%) rename panda/src/main/java/org/panda_lang/panda/language/{resource/internal => std}/java/JavaExtensionModule.java (83%) rename panda/src/main/java/org/panda_lang/panda/language/{resource/internal => std}/java/JavaUtilsModule.java (82%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/PandaParsers.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/PandaPriorities.java (69%) rename panda/src/main/java/org/panda_lang/panda/language/{interpreter/parser => syntax}/PandaSourceReader.java (66%) rename panda/src/main/java/org/panda_lang/panda/language/{interpreter/parser => syntax}/ScopeParser.java (65%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/expressions/PandaExpressions.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/AbstractExpressionSubparserWorker.java (77%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/ArgumentsParser.java (71%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/AssignationExpressionSubparser.java (57%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/CastExpressionSubparser.java (69%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/ConstructorExpressionSubparser.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/CreaseExpression.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/CreaseExpressionSubparser.java (72%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/DeclarationExpressionSubparser.java (62%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/FieldExpression.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/IsExpression.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/IsExpressionSubparser.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/LambdaExpressionSubparser.java (67%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/LiteralExpressionSubparser.java (69%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/MethodExpressionSubparser.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/NegateExpressionSubparser.java (66%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/NegateLogicalExpression.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/SectionExpressionSubparser.java (67%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/SequenceExpressionSubparser.java (67%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/StaticExpressionSubparser.java (68%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/SubparsersUtils.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/VariableExpression.java (66%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/VariableExpressionSubparser.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NegativeExpression.java (79%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NegativeExpressionSubparser.java (69%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NotBitwiseExpression.java (80%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NotBitwiseExpressionSubparser.java (69%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NumberExpressionSubparser.java (72%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NumberParser.java (84%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NumberPriorities.java (88%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NumberType.java (95%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/number/NumberUtils.java (88%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/expressions/subparsers/number/PandaNumbers.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/Operation.java (80%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/OperationExpressionSubparser.java (73%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/OperationExpressionUtils.java (66%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/OperationParser.java (64%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/OperationSubparser.java (73%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/OperationUtils.java (84%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/pattern/OperationPattern.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/pattern/OperationPatternElement.java (84%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/pattern/OperationPatternResult.java (89%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/pattern/OperationPatternWorker.java (90%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNOperation.java (79%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNOperationAction.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNOperationBuilder.java (81%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNOperationRectifier.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNOperationSupplier.java (72%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNOperationTransformer.java (83%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNSimplifiedAction.java (81%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/rpn/RPNSimplifiedSupplier.java (77%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/expressions/subparsers/operation/subparsers/BitwiseOperatorSubparser.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/ConcatenationExpressionCallback.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/ConcatenationOperatorSubparser.java (77%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/LogicalOperatorSubparser.java (53%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/MathOperationSubparser.java (53%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/bitwise/AndBitwiseOperator.java (53%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/expressions/subparsers/operation/subparsers/bitwise/BitwiseOperation.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/bitwise/LeftShiftOperator.java (53%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/bitwise/OrBitwiseOperator.java (53%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/bitwise/RightShiftOperator.java (54%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/bitwise/XorBitwiseOperator.java (53%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/AndOperator.java (72%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/ComparisonOperator.java (68%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/ComparisonOperatorAction.java (67%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/EqualsToOperation.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/GreaterThanOperator.java (80%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/GreaterThanOrEqualsOperator.java (81%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/LessThanOperator.java (80%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/LessThanOrEqualsOperator.java (81%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/NotEqualsToOperation.java (71%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/logical/OrOperation.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/math/AdditionOperation.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/math/DivisionOperation.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/math/MathOperation.java (69%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/math/ModuloOperation.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/math/MultiplicationOperation.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/math/SubtractionOperation.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/number/NumericOperation.java (65%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/expressions/subparsers/operation/subparsers/number/NumericOperator.java (64%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/CommentParser.java (73%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/CommentStatement.java (77%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/ConveyanceUtils.java (79%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/ExportParser.java (71%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/ImportParser.java (73%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/MainParser.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/MainScope.java (68%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/ModuleParser.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/ModuleStatement.java (77%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/head/RequireParser.java (81%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/LateDeclarationParser.java (68%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/LogParser.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/LogStatement.java (72%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/StandaloneExpression.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/StandaloneExpressionParser.java (75%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/scope/block/BlockParser.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/TryCatch.java (85%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/TryCatchParser.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/conditional/ConditionalBlock.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/conditional/ConditionalParser.java (76%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/scope/block/conditional/ElseIfParser.java create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/scope/block/conditional/ElseParser.java create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/scope/block/conditional/IfParser.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/ControlledIteration.java (84%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/ForBlock.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/ForEachBlock.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/ForEachParser.java (73%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/ForParser.java (79%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/LoopBlock.java (72%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/LoopParser.java (73%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/WhileBlock.java (67%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/block/looping/WhileParser.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/Break.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/BreakParser.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/Continue.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/ContinueParser.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/Return.java (71%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/ReturnParser.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/Returnable.java (78%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/Throw.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/branching/ThrowParser.java (73%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/scope/variable/VariableDataInitializer.java (76%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/BaseCallParser.java (70%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/ConstructorParser.java (75%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/FieldParser.java (74%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/MethodParser.java (79%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/ParameterParser.java (72%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/SelfConstructor.java (69%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/SelfConstructorParser.java (71%) rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/SignatureParser.java (65%) create mode 100644 panda/src/main/java/org/panda_lang/panda/language/syntax/type/SignatureSource.java rename panda/src/main/java/org/panda_lang/panda/language/{resource => }/syntax/type/TypeParser.java (81%) rename panda/src/main/java/org/panda_lang/panda/{language/interpreter/parser => utils}/PandaContextUtils.java (54%) rename panda/src/main/java/org/panda_lang/panda/{language/interpreter => utils}/PandaFileLoader.java (83%) rename panda/src/main/java/org/panda_lang/panda/{util => utils}/PandaUtils.java (89%) rename panda/src/main/java/org/panda_lang/panda/{util => utils}/embed/PandaEngine.java (93%) rename panda/src/main/java/org/panda_lang/panda/{util => utils}/embed/PandaEngineFactory.java (97%) rename panda/src/main/java/org/panda_lang/panda/{util => utils}/embed/PandaEngineFactoryConstants.java (95%) delete mode 100644 panda/src/test/groovy/org/panda_lang/panda/language/resource/syntax/expressions/subparsers/number/NumberUtilsTest.groovy create mode 100644 panda/src/test/groovy/org/panda_lang/panda/language/syntax/expressions/subparsers/number/NumberUtilsTest.groovy rename panda/src/test/groovy/org/panda_lang/panda/{util => utils}/BenchmarkUtils.groovy (93%) rename panda/src/test/groovy/org/panda_lang/panda/{util => utils}/embed/PandaEngineTest.groovy (93%) diff --git a/build.sh b/build.sh index f6e42b33b..a0a8135e6 100644 --- a/build.sh +++ b/build.sh @@ -1,4 +1,20 @@ #!/bin/bash +# +# Copyright (c) 2021 dzikoysk +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + MAVEN_OPTS="-Xverify:none -XX:+TieredCompilation -XX:TieredStopAtLevel=1" mvn -T 1C install -am -offline \ No newline at end of file diff --git a/examples/lang/let.panda b/examples/lang/let.panda index 6dbaf24b1..97e0f9857 100644 --- a/examples/lang/let.panda +++ b/examples/lang/let.panda @@ -15,5 +15,5 @@ main { /* Nillable */ - nil let nillableValue = '#' + nil let nillableValue = Java.null() } \ No newline at end of file diff --git a/panda-framework/pom.xml b/panda-framework/pom.xml index 4d9454713..bd7e2a454 100644 --- a/panda-framework/pom.xml +++ b/panda-framework/pom.xml @@ -1,5 +1,5 @@