From 11d1846dc8bbef691fb81a4c08cd3a2cddfb5fd6 Mon Sep 17 00:00:00 2001 From: Julian Hyde Date: Mon, 2 Dec 2019 23:27:35 -0800 Subject: [PATCH] [MOREL-7] Rename project from 'smlj' to 'morel' --- HISTORY.md | 6 +-- HOWTO.md | 12 ++--- NOTICE | 4 +- README | 8 ++-- README.md | 26 +++++----- cast/build.sh | 8 ++-- cast/post.awk | 4 +- smlj => morel | 12 ++--- pom.xml | 26 +++++----- .../net/hydromatic/{sml => morel}/Main.java | 22 ++++----- .../net/hydromatic/{sml => morel}/Shell.java | 30 ++++++------ .../hydromatic/{sml => morel}/ast/Ast.java | 8 ++-- .../{sml => morel}/ast/AstBuilder.java | 8 ++-- .../{sml => morel}/ast/AstNode.java | 4 +- .../{sml => morel}/ast/AstWriter.java | 2 +- .../net/hydromatic/{sml => morel}/ast/Op.java | 2 +- .../hydromatic/{sml => morel}/ast/Pos.java | 2 +- .../{sml => morel}/ast/Shuttle.java | 4 +- .../{sml => morel}/ast/package-info.java | 2 +- .../{sml => morel}/compile/BuiltIn.java | 16 +++---- .../compile/CompileException.java | 2 +- .../compile/CompiledStatement.java | 6 +-- .../{sml => morel}/compile/Compiler.java | 34 ++++++------- .../{sml => morel}/compile/Compiles.java | 18 +++---- .../{sml => morel}/compile/Environment.java | 10 ++-- .../{sml => morel}/compile/Environments.java | 6 +-- .../{sml => morel}/compile/Pretty.java | 16 +++---- .../{sml => morel}/compile/TypeResolver.java | 48 +++++++++---------- .../{sml => morel}/compile/package-info.java | 5 +- .../{sml => morel}/eval/Applicable.java | 10 ++-- .../{sml => morel}/eval/Closure.java | 6 +-- .../hydromatic/{sml => morel}/eval/Code.java | 2 +- .../hydromatic/{sml => morel}/eval/Codes.java | 14 +++--- .../{sml => morel}/eval/EvalEnv.java | 4 +- .../hydromatic/{sml => morel}/eval/Unit.java | 2 +- .../{sml => morel}/eval/package-info.java | 2 +- .../foreign/CalciteForeignValue.java | 10 ++-- .../{sml => morel}/foreign/ForeignValue.java | 6 +-- .../{sml => morel}/foreign/RelList.java | 2 +- .../{sml => morel}/foreign/package-info.java | 2 +- .../{sml => morel}/package-info.java | 2 +- .../parse/MorelParser.java} | 10 ++-- .../hydromatic/{sml => morel}/parse/Span.java | 10 ++-- .../{sml => morel}/parse/package-info.java | 2 +- .../{sml => morel}/type/ApplyType.java | 4 +- .../{sml => morel}/type/BaseType.java | 4 +- .../{sml => morel}/type/Binding.java | 6 +-- .../{sml => morel}/type/DataType.java | 4 +- .../{sml => morel}/type/DummyType.java | 4 +- .../{sml => morel}/type/FnType.java | 4 +- .../{sml => morel}/type/ForallType.java | 4 +- .../{sml => morel}/type/ListType.java | 4 +- .../{sml => morel}/type/NamedType.java | 2 +- .../{sml => morel}/type/PrimitiveType.java | 4 +- .../{sml => morel}/type/RecordType.java | 4 +- .../{sml => morel}/type/TupleType.java | 4 +- .../hydromatic/{sml => morel}/type/Type.java | 4 +- .../{sml => morel}/type/TypeSystem.java | 8 ++-- .../{sml => morel}/type/TypeVar.java | 4 +- .../{sml => morel}/type/package-info.java | 2 +- .../util/AbstractImmutableList.java | 2 +- .../{sml => morel}/util/ConsList.java | 2 +- .../{sml => morel}/util/MapList.java | 2 +- .../{sml => morel}/util/MartelliUnifier.java | 2 +- .../hydromatic/{sml => morel}/util/Ord.java | 2 +- .../hydromatic/{sml => morel}/util/Pair.java | 2 +- .../{sml => morel}/util/RobinsonUnifier.java | 2 +- .../{sml => morel}/util/Static.java | 2 +- .../{sml => morel}/util/TailList.java | 2 +- .../{sml => morel}/util/Unifier.java | 2 +- .../{sml => morel}/util/package-info.java | 2 +- .../javacc/{SmlParser.jj => MorelParser.jj} | 28 +++++------ .../hydromatic/{sml => morel}/DataSet.java | 8 ++-- .../hydromatic/{sml => morel}/MainTest.java | 12 ++--- .../net/hydromatic/{sml => morel}/Ml.java | 40 ++++++++-------- .../SmlTests.java => morel/MorelTests.java} | 8 ++-- .../hydromatic/{sml => morel}/ScriptTest.java | 6 +-- .../hydromatic/{sml => morel}/ShellTest.java | 4 +- .../{sml => morel}/UnifierTest.java | 12 ++--- .../hydromatic/{sml => morel}/UtilTest.java | 8 ++-- 80 files changed, 326 insertions(+), 323 deletions(-) rename smlj => morel (87%) rename src/main/java/net/hydromatic/{sml => morel}/Main.java (90%) rename src/main/java/net/hydromatic/{sml => morel}/Shell.java (92%) rename src/main/java/net/hydromatic/{sml => morel}/ast/Ast.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/ast/AstBuilder.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/ast/AstNode.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/ast/AstWriter.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/ast/Op.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/ast/Pos.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/ast/Shuttle.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/ast/package-info.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/compile/BuiltIn.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/compile/CompileException.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/compile/CompiledStatement.java (93%) rename src/main/java/net/hydromatic/{sml => morel}/compile/Compiler.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/compile/Compiles.java (90%) rename src/main/java/net/hydromatic/{sml => morel}/compile/Environment.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/compile/Environments.java (94%) rename src/main/java/net/hydromatic/{sml => morel}/compile/Pretty.java (93%) rename src/main/java/net/hydromatic/{sml => morel}/compile/TypeResolver.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/compile/package-info.java (87%) rename src/main/java/net/hydromatic/{sml => morel}/eval/Applicable.java (89%) rename src/main/java/net/hydromatic/{sml => morel}/eval/Closure.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/eval/Code.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/eval/Codes.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/eval/EvalEnv.java (94%) rename src/main/java/net/hydromatic/{sml => morel}/eval/Unit.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/eval/package-info.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/foreign/CalciteForeignValue.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/foreign/ForeignValue.java (89%) rename src/main/java/net/hydromatic/{sml => morel}/foreign/RelList.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/foreign/package-info.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/package-info.java (96%) rename src/main/java/net/hydromatic/{sml/parse/SmlParser.java => morel/parse/MorelParser.java} (83%) rename src/main/java/net/hydromatic/{sml => morel}/parse/Span.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/parse/package-info.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/type/ApplyType.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/type/BaseType.java (94%) rename src/main/java/net/hydromatic/{sml => morel}/type/Binding.java (90%) rename src/main/java/net/hydromatic/{sml => morel}/type/DataType.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/type/DummyType.java (94%) rename src/main/java/net/hydromatic/{sml => morel}/type/FnType.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/type/ForallType.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/type/ListType.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/type/NamedType.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/type/PrimitiveType.java (94%) rename src/main/java/net/hydromatic/{sml => morel}/type/RecordType.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/type/TupleType.java (96%) rename src/main/java/net/hydromatic/{sml => morel}/type/Type.java (94%) rename src/main/java/net/hydromatic/{sml => morel}/type/TypeSystem.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/type/TypeVar.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/type/package-info.java (95%) rename src/main/java/net/hydromatic/{sml => morel}/util/AbstractImmutableList.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/util/ConsList.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/util/MapList.java (97%) rename src/main/java/net/hydromatic/{sml => morel}/util/MartelliUnifier.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/util/Ord.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/util/Pair.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/util/RobinsonUnifier.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/util/Static.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/util/TailList.java (98%) rename src/main/java/net/hydromatic/{sml => morel}/util/Unifier.java (99%) rename src/main/java/net/hydromatic/{sml => morel}/util/package-info.java (95%) rename src/main/javacc/{SmlParser.jj => MorelParser.jj} (97%) rename src/test/java/net/hydromatic/{sml => morel}/DataSet.java (95%) rename src/test/java/net/hydromatic/{sml => morel}/MainTest.java (99%) rename src/test/java/net/hydromatic/{sml => morel}/Ml.java (86%) rename src/test/java/net/hydromatic/{sml/SmlTests.java => morel/MorelTests.java} (92%) rename src/test/java/net/hydromatic/{sml => morel}/ScriptTest.java (98%) rename src/test/java/net/hydromatic/{sml => morel}/ShellTest.java (98%) rename src/test/java/net/hydromatic/{sml => morel}/UnifierTest.java (97%) rename src/test/java/net/hydromatic/{sml => morel}/UtilTest.java (94%) diff --git a/HISTORY.md b/HISTORY.md index 1f3678c5..a1bc0a95 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -18,12 +18,12 @@ language governing permissions and limitations under the License. {% endcomment %} --> -# smlj release history and change log +# Morel release history and change log For a full list of releases, see -github. +github. -## 0.1 / 2019-07-24 +## 0.1 / 2019-07-24 Initial release features the core language (primitive types, lists, tuples, records; `let`, `if`, `fn` and `case` expressions; `val`, diff --git a/HOWTO.md b/HOWTO.md index c57064a5..e2904955 100644 --- a/HOWTO.md +++ b/HOWTO.md @@ -18,7 +18,7 @@ language governing permissions and limitations under the License. {% endcomment %} --> -# smlj HOWTO +# Morel HOWTO ## How to make a release (for committers) @@ -57,18 +57,18 @@ mvn -Prelease -DskipTests release:perform Stage the release: * Go to https://oss.sonatype.org and log in. * Under "Build Promotion", click on "Staging Repositories". -* Select the line "smlj-nnnn", and click "Close". You might need to +* Select the line "morel-nnnn", and click "Close". You might need to click "Refresh" a couple of times before it closes. After testing, publish the release: * Go to https://oss.sonatype.org and log in. * Under "Build Promotion", click on "Staging Repositories". -* Select the line "smlj-nnnn", and click "Release". +* Select the line "morel-nnnn", and click "Release". Wait a couple of hours for the artifacts to appear on Maven central, and announce the release. -Update the [github release list](https://github.com/julianhyde/smlj/releases). +Update the [github release list](https://github.com/julianhyde/morel/releases). ## Cleaning up after a failed release attempt (for committers) @@ -78,8 +78,8 @@ Update the [github release list](https://github.com/julianhyde/smlj/releases). git tag # If the tag exists, delete it locally and remotely -git tag -d smlj-X.Y.Z -git push origin :refs/tags/smlj-X.Y.Z +git tag -d morel-X.Y.Z +git push origin :refs/tags/morel-X.Y.Z # Remove modified files mvn release:clean diff --git a/NOTICE b/NOTICE index 1fae131f..2cd6f347 100644 --- a/NOTICE +++ b/NOTICE @@ -1,5 +1,5 @@ -smlj -Standard ML interpreter, implemented in Java +morel +Standard ML interpreter, with relational extensions, implemented in Java Copyright (C) 2019-2019 Julian Hyde All Rights Reserved. diff --git a/README b/README index 83b5013f..bd0378ab 100644 --- a/README +++ b/README @@ -1,6 +1,6 @@ -smlj release 0.1.0 +Morel release 0.1.0 -This is a source or binary distribution of smlj. +This is a source or binary distribution of Morel. Changes since the previous release are described in the HISTORY.md file. @@ -10,5 +10,5 @@ The LICENSE and NOTICE files contain license information. If this is a source distribution, you can find instructions how to build the release in the "Building" section in README.md. -Further information about smlj is available at its web site, -https://github.com/julianhyde/smlj. +Further information about Morel is available at its web site, +https://github.com/julianhyde/morel. diff --git a/README.md b/README.md index 771a0b16..94f524e3 100644 --- a/README.md +++ b/README.md @@ -18,18 +18,20 @@ language governing permissions and limitations under the License. {% endcomment %} --> -# smlj -Standard ML interpreter, implemented in Java +# Morel +Standard ML interpreter, with relational extensions, implemented in Java + +(Until version 0.1, Morel was known as smlj.) ## Requirements Java version 8 or higher. -## Get smlj +## Get Morel ### From Maven -Get smlj from +Get Morel from Maven Central: ```xml @@ -43,8 +45,8 @@ Get smlj from ### Download and build ```bash -$ git clone git://github.com/julianhyde/smlj.git -$ cd smlj +$ git clone git://github.com/julianhyde/morel.git +$ cd morel $ ./mvnw install ``` @@ -57,8 +59,8 @@ On Windows, the last line is ### Run the shell ```bash -$ ./smlj -smlj version 0.1.0 (java version "11.0.4", JLine terminal, xterm-256color) +$ ./morel +morel version 0.1.0 (java version "11.0.4", JLine terminal, xterm-256color) = "Hello, world!"; val it = "Hello, world!" : string = exit @@ -215,12 +217,12 @@ the sub-query returns, just whether it returns any rows). * License: Apache License, Version 2.0 * Author: Julian Hyde (@julianhyde) -* Project page: https://www.hydromatic.net/smlj -* API: https://www.hydromatic.net/smlj/apidocs -* Source code: https://github.com/julianhyde/smlj +* Project page: https://www.hydromatic.net/morel +* API: https://www.hydromatic.net/morel/apidocs +* Source code: https://github.com/julianhyde/morel * Developers list: dev at calcite.apache.org (archive, subscribe) -* Issues: https://github.com/julianhyde/smlj/issues +* Issues: https://github.com/julianhyde/morel/issues * Release notes and history diff --git a/cast/build.sh b/cast/build.sh index 14d9f109..2d46a1b2 100755 --- a/cast/build.sh +++ b/cast/build.sh @@ -2,10 +2,10 @@ # # Generates an asciinema screencast from a script. # You must install asciinema first; try 'brew install asciinema'. -# Note that this script destroys ~/smlj. +# Note that this script destroys ~/morel. # Use terminal of height 16, width 72. # Usage: -# build.sh ~/dev/smlj/cast/smlj-0.1.0.txt +# build.sh ~/dev/morel/cast/morel-0.1.0.txt DIR=$(cd $(dirname $0); pwd) INFILE="$1" OUTFILE=$(dirname "${INFILE}")/$(basename "${INFILE}" .txt).cast @@ -17,7 +17,7 @@ cat ${INFILE} | ${DIR}/play.sh | ( cd ~ - rm -rf ~/smlj - asciinema rec -t"smlj 0.1.0" --stdin --overwrite "${OUTFILE}" + rm -rf ~/morel + asciinema rec -t"morel 0.1.0" --stdin --overwrite "${OUTFILE}" ) # End build.sh diff --git a/cast/post.awk b/cast/post.awk index 5139ffbb..b0e77e4b 100644 --- a/cast/post.awk +++ b/cast/post.awk @@ -23,7 +23,7 @@ function changeTime(t, arg) { delta = t - tPrev cutDeltaPrev = cutDelta - if (FILENAME ~ "/smlj-0.1.0.cast") { + if (FILENAME ~ "/morel-0.1.0.cast") { cut(t, 80.6, 87.2) } @@ -68,7 +68,7 @@ BEGIN { verb = matches[2] arg = matches[3] changeTime(t, arg) - if (FILENAME ~ "/smlj-0.1.0.cast") { + if (FILENAME ~ "/morel-0.1.0.cast") { if (index(arg, "SLF4J:") > 0) { next } diff --git a/smlj b/morel similarity index 87% rename from smlj rename to morel index e84cba3a..b32eb641 100755 --- a/smlj +++ b/morel @@ -1,5 +1,5 @@ #!/bin/bash -# Script to launch smlj +# Script to launch morel # # Licensed to Julian Hyde under one or more contributor license # agreements. See the NOTICE file distributed with this work @@ -19,9 +19,9 @@ # License. # # Example: -# $ ./smlj -# smlj> 3 + 5; -# smlj> it = 8; +# $ ./morel +# morel> 3 + 5; +# morel> it = 8; # Deduce whether we are running cygwin case $(uname -s) in @@ -51,6 +51,6 @@ fi export JAVA_OPTS=-Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl -exec java $VM_OPTS -cp "${CP}" $JAVA_OPTS net.hydromatic.sml.Shell --foreign='net.hydromatic.sml.DataSet$Dictionary' "$@" +exec java $VM_OPTS -cp "${CP}" $JAVA_OPTS net.hydromatic.morel.Shell --foreign='net.hydromatic.morel.DataSet$Dictionary' "$@" -# End smlj +# End morel diff --git a/pom.xml b/pom.xml index c4c05938..2a684cac 100644 --- a/pom.xml +++ b/pom.xml @@ -26,13 +26,13 @@ License. 0.1 - smlj + morel 0.2.0-SNAPSHOT jar - smlj - Standard ML interpreter, implemented in Java - https://github.com/julianhyde/smlj + morel + Standard ML interpreter, with relational extensions, implemented in Java + https://github.com/julianhyde/morel 2019 Julian Hyde @@ -100,28 +100,28 @@ License. 1.7.25 -html5 - net.hydromatic.sml.parse + net.hydromatic.morel.parse https://docs.oracle.com/javase/9/docs/api/ - smlj.website - smlj web site - file:/home/jhyde/web2/smlj + morel.website + morel web site + file:/home/jhyde/web2/morel github - https://github.com/julianhyde/smlj/issues + https://github.com/julianhyde/morel/issues - scm:git:git://github.com/julianhyde/smlj.git - scm:git:git@github.com:julianhyde/smlj.git - scm:git:git://github.com/julianhyde/smlj.git + scm:git:git://github.com/julianhyde/morel.git + scm:git:git@github.com:julianhyde/morel.git + scm:git:git://github.com/julianhyde/morel.git HEAD @@ -366,7 +366,7 @@ License. - **/SmlParser.jj + **/MorelParser.jj 1 false diff --git a/src/main/java/net/hydromatic/sml/Main.java b/src/main/java/net/hydromatic/morel/Main.java similarity index 90% rename from src/main/java/net/hydromatic/sml/Main.java rename to src/main/java/net/hydromatic/morel/Main.java index ba3f0072..b88e096d 100644 --- a/src/main/java/net/hydromatic/sml/Main.java +++ b/src/main/java/net/hydromatic/morel/Main.java @@ -16,19 +16,19 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import com.google.common.collect.ImmutableMap; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.compile.CompiledStatement; -import net.hydromatic.sml.compile.Compiles; -import net.hydromatic.sml.compile.Environment; -import net.hydromatic.sml.foreign.ForeignValue; -import net.hydromatic.sml.parse.ParseException; -import net.hydromatic.sml.parse.SmlParserImpl; -import net.hydromatic.sml.type.Binding; -import net.hydromatic.sml.type.TypeSystem; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.compile.CompiledStatement; +import net.hydromatic.morel.compile.Compiles; +import net.hydromatic.morel.compile.Environment; +import net.hydromatic.morel.foreign.ForeignValue; +import net.hydromatic.morel.parse.MorelParserImpl; +import net.hydromatic.morel.parse.ParseException; +import net.hydromatic.morel.type.Binding; +import net.hydromatic.morel.type.TypeSystem; import java.io.BufferedReader; import java.io.BufferedWriter; @@ -106,7 +106,7 @@ private static BufferedReader buffer(Reader in) { public void run() { final TypeSystem typeSystem = new TypeSystem(); final BufferingReader in2 = new BufferingReader(in); - final SmlParserImpl parser = new SmlParserImpl(in2); + final MorelParserImpl parser = new MorelParserImpl(in2); Environment env = Compiles.createEnvironment(typeSystem, valueMap); final List lines = new ArrayList<>(); final List bindings = new ArrayList<>(); diff --git a/src/main/java/net/hydromatic/sml/Shell.java b/src/main/java/net/hydromatic/morel/Shell.java similarity index 92% rename from src/main/java/net/hydromatic/sml/Shell.java rename to src/main/java/net/hydromatic/morel/Shell.java index aae7686e..a09aba4b 100644 --- a/src/main/java/net/hydromatic/sml/Shell.java +++ b/src/main/java/net/hydromatic/morel/Shell.java @@ -16,21 +16,21 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.compile.CompileException; -import net.hydromatic.sml.compile.CompiledStatement; -import net.hydromatic.sml.compile.Compiles; -import net.hydromatic.sml.compile.Environment; -import net.hydromatic.sml.foreign.ForeignValue; -import net.hydromatic.sml.parse.ParseException; -import net.hydromatic.sml.parse.SmlParserImpl; -import net.hydromatic.sml.type.Binding; -import net.hydromatic.sml.type.TypeSystem; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.compile.CompileException; +import net.hydromatic.morel.compile.CompiledStatement; +import net.hydromatic.morel.compile.Compiles; +import net.hydromatic.morel.compile.Environment; +import net.hydromatic.morel.foreign.ForeignValue; +import net.hydromatic.morel.parse.MorelParserImpl; +import net.hydromatic.morel.parse.ParseException; +import net.hydromatic.morel.type.Binding; +import net.hydromatic.morel.type.TypeSystem; import org.jline.reader.EndOfFileException; import org.jline.reader.LineReader; @@ -148,7 +148,7 @@ private void printAll(List lines) { /** Generates a banner to be shown on startup. */ private String banner() { - return "smlj version 0.1.0" + return "morel version 0.1.0" + " (java version \"" + System.getProperty("java.version") + "\", JRE " + System.getProperty("java.vendor.version") + " (build " + System.getProperty("java.vm.version") @@ -192,7 +192,7 @@ public void run() { terminal.writer().println(banner()); } LineReader reader = LineReaderBuilder.builder() - .appName("smlj") + .appName("morel") .terminal(terminal) .parser(parser) .variable(LineReader.SECONDARY_PROMPT_PATTERN, minusPrompt) @@ -240,8 +240,8 @@ public void run() { if (pl.line().endsWith(";")) { final String code = buf.toString(); buf.setLength(0); - final SmlParserImpl smlParser = - new SmlParserImpl(new StringReader(code)); + final MorelParserImpl smlParser = + new MorelParserImpl(new StringReader(code)); final AstNode statement; try { statement = smlParser.statementSemicolon(); diff --git a/src/main/java/net/hydromatic/sml/ast/Ast.java b/src/main/java/net/hydromatic/morel/ast/Ast.java similarity index 99% rename from src/main/java/net/hydromatic/sml/ast/Ast.java rename to src/main/java/net/hydromatic/morel/ast/Ast.java index e947c951..1d9dfd73 100644 --- a/src/main/java/net/hydromatic/sml/ast/Ast.java +++ b/src/main/java/net/hydromatic/morel/ast/Ast.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; @@ -24,8 +24,8 @@ import com.google.common.collect.ImmutableSortedMap; import com.google.common.collect.Iterables; -import net.hydromatic.sml.util.Ord; -import net.hydromatic.sml.util.Pair; +import net.hydromatic.morel.util.Ord; +import net.hydromatic.morel.util.Pair; import java.math.BigDecimal; import java.util.HashMap; @@ -35,7 +35,7 @@ import java.util.function.ObjIntConsumer; import java.util.stream.Collectors; -import static net.hydromatic.sml.ast.AstBuilder.ast; +import static net.hydromatic.morel.ast.AstBuilder.ast; /** Various sub-classes of AST nodes. */ public class Ast { diff --git a/src/main/java/net/hydromatic/sml/ast/AstBuilder.java b/src/main/java/net/hydromatic/morel/ast/AstBuilder.java similarity index 98% rename from src/main/java/net/hydromatic/sml/ast/AstBuilder.java rename to src/main/java/net/hydromatic/morel/ast/AstBuilder.java index 160b8f19..ca786323 100644 --- a/src/main/java/net/hydromatic/sml/ast/AstBuilder.java +++ b/src/main/java/net/hydromatic/morel/ast/AstBuilder.java @@ -16,15 +16,15 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSortedMap; -import net.hydromatic.sml.compile.BuiltIn; -import net.hydromatic.sml.eval.Unit; -import net.hydromatic.sml.util.Pair; +import net.hydromatic.morel.compile.BuiltIn; +import net.hydromatic.morel.eval.Unit; +import net.hydromatic.morel.util.Pair; import java.math.BigDecimal; import java.util.List; diff --git a/src/main/java/net/hydromatic/sml/ast/AstNode.java b/src/main/java/net/hydromatic/morel/ast/AstNode.java similarity index 95% rename from src/main/java/net/hydromatic/sml/ast/AstNode.java rename to src/main/java/net/hydromatic/morel/ast/AstNode.java index 13c8f180..effd4d4b 100644 --- a/src/main/java/net/hydromatic/sml/ast/AstNode.java +++ b/src/main/java/net/hydromatic/morel/ast/AstNode.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; import java.util.Objects; @@ -48,7 +48,7 @@ public AstNode(Pos pos, Op op) { abstract AstWriter unparse(AstWriter w, int left, int right); /** Accepts a shuttle, calling the - * {@link net.hydromatic.sml.ast.Shuttle#visit} + * {@link net.hydromatic.morel.ast.Shuttle#visit} * method appropriate to the type of this node, and returning the result. */ public abstract AstNode accept(Shuttle shuttle); } diff --git a/src/main/java/net/hydromatic/sml/ast/AstWriter.java b/src/main/java/net/hydromatic/morel/ast/AstWriter.java similarity index 99% rename from src/main/java/net/hydromatic/sml/ast/AstWriter.java rename to src/main/java/net/hydromatic/morel/ast/AstWriter.java index 9c56eb8d..aca25484 100644 --- a/src/main/java/net/hydromatic/sml/ast/AstWriter.java +++ b/src/main/java/net/hydromatic/morel/ast/AstWriter.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; import com.google.common.collect.Lists; diff --git a/src/main/java/net/hydromatic/sml/ast/Op.java b/src/main/java/net/hydromatic/morel/ast/Op.java similarity index 99% rename from src/main/java/net/hydromatic/sml/ast/Op.java rename to src/main/java/net/hydromatic/morel/ast/Op.java index b6b4d752..c86dd2d7 100644 --- a/src/main/java/net/hydromatic/sml/ast/Op.java +++ b/src/main/java/net/hydromatic/morel/ast/Op.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; /** Sub-types of {@link AstNode}. */ public enum Op { diff --git a/src/main/java/net/hydromatic/sml/ast/Pos.java b/src/main/java/net/hydromatic/morel/ast/Pos.java similarity index 99% rename from src/main/java/net/hydromatic/sml/ast/Pos.java rename to src/main/java/net/hydromatic/morel/ast/Pos.java index 642446dd..932d8f9b 100644 --- a/src/main/java/net/hydromatic/sml/ast/Pos.java +++ b/src/main/java/net/hydromatic/morel/ast/Pos.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; diff --git a/src/main/java/net/hydromatic/sml/ast/Shuttle.java b/src/main/java/net/hydromatic/morel/ast/Shuttle.java similarity index 98% rename from src/main/java/net/hydromatic/sml/ast/Shuttle.java rename to src/main/java/net/hydromatic/morel/ast/Shuttle.java index ff8c86e0..2346cad0 100644 --- a/src/main/java/net/hydromatic/sml/ast/Shuttle.java +++ b/src/main/java/net/hydromatic/morel/ast/Shuttle.java @@ -16,14 +16,14 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import static net.hydromatic.sml.ast.AstBuilder.ast; +import static net.hydromatic.morel.ast.AstBuilder.ast; /** Visits and transforms syntax trees. */ public class Shuttle { diff --git a/src/main/java/net/hydromatic/sml/ast/package-info.java b/src/main/java/net/hydromatic/morel/ast/package-info.java similarity index 96% rename from src/main/java/net/hydromatic/sml/ast/package-info.java rename to src/main/java/net/hydromatic/morel/ast/package-info.java index fbaf6e26..b92580f1 100644 --- a/src/main/java/net/hydromatic/sml/ast/package-info.java +++ b/src/main/java/net/hydromatic/morel/ast/package-info.java @@ -18,6 +18,6 @@ */ /** Abstract syntax tree. */ -package net.hydromatic.sml.ast; +package net.hydromatic.morel.ast; // End package-info.java diff --git a/src/main/java/net/hydromatic/sml/compile/BuiltIn.java b/src/main/java/net/hydromatic/morel/compile/BuiltIn.java similarity index 97% rename from src/main/java/net/hydromatic/sml/compile/BuiltIn.java rename to src/main/java/net/hydromatic/morel/compile/BuiltIn.java index 24c24dcf..7f7e285d 100644 --- a/src/main/java/net/hydromatic/sml/compile/BuiltIn.java +++ b/src/main/java/net/hydromatic/morel/compile/BuiltIn.java @@ -16,21 +16,21 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; import com.google.common.collect.ImmutableMap; -import net.hydromatic.sml.type.Type; -import net.hydromatic.sml.type.TypeSystem; +import net.hydromatic.morel.type.Type; +import net.hydromatic.morel.type.TypeSystem; import java.util.function.BiConsumer; import java.util.function.Function; -import static net.hydromatic.sml.type.PrimitiveType.BOOL; -import static net.hydromatic.sml.type.PrimitiveType.CHAR; -import static net.hydromatic.sml.type.PrimitiveType.INT; -import static net.hydromatic.sml.type.PrimitiveType.STRING; -import static net.hydromatic.sml.type.PrimitiveType.UNIT; +import static net.hydromatic.morel.type.PrimitiveType.BOOL; +import static net.hydromatic.morel.type.PrimitiveType.CHAR; +import static net.hydromatic.morel.type.PrimitiveType.INT; +import static net.hydromatic.morel.type.PrimitiveType.STRING; +import static net.hydromatic.morel.type.PrimitiveType.UNIT; /** Built-in constants and functions. */ public enum BuiltIn { diff --git a/src/main/java/net/hydromatic/sml/compile/CompileException.java b/src/main/java/net/hydromatic/morel/compile/CompileException.java similarity index 96% rename from src/main/java/net/hydromatic/sml/compile/CompileException.java rename to src/main/java/net/hydromatic/morel/compile/CompileException.java index fdf114c6..ef697d0b 100644 --- a/src/main/java/net/hydromatic/sml/compile/CompileException.java +++ b/src/main/java/net/hydromatic/morel/compile/CompileException.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; /** An error occurred during compilation. */ public class CompileException extends RuntimeException { diff --git a/src/main/java/net/hydromatic/sml/compile/CompiledStatement.java b/src/main/java/net/hydromatic/morel/compile/CompiledStatement.java similarity index 93% rename from src/main/java/net/hydromatic/sml/compile/CompiledStatement.java rename to src/main/java/net/hydromatic/morel/compile/CompiledStatement.java index b4b19879..a47916a2 100644 --- a/src/main/java/net/hydromatic/sml/compile/CompiledStatement.java +++ b/src/main/java/net/hydromatic/morel/compile/CompiledStatement.java @@ -16,10 +16,10 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; -import net.hydromatic.sml.type.Binding; -import net.hydromatic.sml.type.Type; +import net.hydromatic.morel.type.Binding; +import net.hydromatic.morel.type.Type; import java.util.List; diff --git a/src/main/java/net/hydromatic/sml/compile/Compiler.java b/src/main/java/net/hydromatic/morel/compile/Compiler.java similarity index 96% rename from src/main/java/net/hydromatic/sml/compile/Compiler.java rename to src/main/java/net/hydromatic/morel/compile/Compiler.java index 65473031..fb7bc986 100644 --- a/src/main/java/net/hydromatic/sml/compile/Compiler.java +++ b/src/main/java/net/hydromatic/morel/compile/Compiler.java @@ -16,25 +16,25 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; import com.google.common.collect.ImmutableList; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.ast.Op; -import net.hydromatic.sml.ast.Pos; -import net.hydromatic.sml.eval.Applicable; -import net.hydromatic.sml.eval.Closure; -import net.hydromatic.sml.eval.Code; -import net.hydromatic.sml.eval.Codes; -import net.hydromatic.sml.eval.EvalEnv; -import net.hydromatic.sml.eval.Unit; -import net.hydromatic.sml.type.Binding; -import net.hydromatic.sml.type.DataType; -import net.hydromatic.sml.type.RecordType; -import net.hydromatic.sml.type.Type; -import net.hydromatic.sml.util.Pair; -import net.hydromatic.sml.util.TailList; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.ast.Op; +import net.hydromatic.morel.ast.Pos; +import net.hydromatic.morel.eval.Applicable; +import net.hydromatic.morel.eval.Closure; +import net.hydromatic.morel.eval.Code; +import net.hydromatic.morel.eval.Codes; +import net.hydromatic.morel.eval.EvalEnv; +import net.hydromatic.morel.eval.Unit; +import net.hydromatic.morel.type.Binding; +import net.hydromatic.morel.type.DataType; +import net.hydromatic.morel.type.RecordType; +import net.hydromatic.morel.type.Type; +import net.hydromatic.morel.util.Pair; +import net.hydromatic.morel.util.TailList; import java.math.BigDecimal; import java.util.AbstractList; @@ -45,7 +45,7 @@ import java.util.Map; import java.util.Objects; -import static net.hydromatic.sml.ast.AstBuilder.ast; +import static net.hydromatic.morel.ast.AstBuilder.ast; /** Compiles an expression to code that can be evaluated. */ public class Compiler { diff --git a/src/main/java/net/hydromatic/sml/compile/Compiles.java b/src/main/java/net/hydromatic/morel/compile/Compiles.java similarity index 90% rename from src/main/java/net/hydromatic/sml/compile/Compiles.java rename to src/main/java/net/hydromatic/morel/compile/Compiles.java index 76e53032..332b53ec 100644 --- a/src/main/java/net/hydromatic/sml/compile/Compiles.java +++ b/src/main/java/net/hydromatic/morel/compile/Compiles.java @@ -16,23 +16,23 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; import com.google.common.collect.ImmutableList; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.ast.Pos; -import net.hydromatic.sml.eval.Codes; -import net.hydromatic.sml.foreign.ForeignValue; -import net.hydromatic.sml.type.Binding; -import net.hydromatic.sml.type.TypeSystem; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.ast.Pos; +import net.hydromatic.morel.eval.Codes; +import net.hydromatic.morel.foreign.ForeignValue; +import net.hydromatic.morel.type.Binding; +import net.hydromatic.morel.type.TypeSystem; import java.util.ArrayList; import java.util.List; import java.util.Map; -import static net.hydromatic.sml.ast.AstBuilder.ast; +import static net.hydromatic.morel.ast.AstBuilder.ast; /** Helpers for {@link Compiler} and {@link TypeResolver}. */ public abstract class Compiles { diff --git a/src/main/java/net/hydromatic/sml/compile/Environment.java b/src/main/java/net/hydromatic/morel/compile/Environment.java similarity index 95% rename from src/main/java/net/hydromatic/sml/compile/Environment.java rename to src/main/java/net/hydromatic/morel/compile/Environment.java index 014b884d..c5821f1e 100644 --- a/src/main/java/net/hydromatic/sml/compile/Environment.java +++ b/src/main/java/net/hydromatic/morel/compile/Environment.java @@ -16,12 +16,12 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; -import net.hydromatic.sml.eval.EvalEnv; -import net.hydromatic.sml.eval.Unit; -import net.hydromatic.sml.type.Binding; -import net.hydromatic.sml.type.Type; +import net.hydromatic.morel.eval.EvalEnv; +import net.hydromatic.morel.eval.Unit; +import net.hydromatic.morel.type.Binding; +import net.hydromatic.morel.type.Type; import java.util.HashMap; import java.util.HashSet; diff --git a/src/main/java/net/hydromatic/sml/compile/Environments.java b/src/main/java/net/hydromatic/morel/compile/Environments.java similarity index 94% rename from src/main/java/net/hydromatic/sml/compile/Environments.java rename to src/main/java/net/hydromatic/morel/compile/Environments.java index 3ec468e3..e0cd6109 100644 --- a/src/main/java/net/hydromatic/sml/compile/Environments.java +++ b/src/main/java/net/hydromatic/morel/compile/Environments.java @@ -16,10 +16,10 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; -import net.hydromatic.sml.type.Binding; -import net.hydromatic.sml.type.PrimitiveType; +import net.hydromatic.morel.type.Binding; +import net.hydromatic.morel.type.PrimitiveType; import java.util.Objects; import java.util.function.Consumer; diff --git a/src/main/java/net/hydromatic/sml/compile/Pretty.java b/src/main/java/net/hydromatic/morel/compile/Pretty.java similarity index 93% rename from src/main/java/net/hydromatic/sml/compile/Pretty.java rename to src/main/java/net/hydromatic/morel/compile/Pretty.java index 425e7eca..d9e090d9 100644 --- a/src/main/java/net/hydromatic/sml/compile/Pretty.java +++ b/src/main/java/net/hydromatic/morel/compile/Pretty.java @@ -16,15 +16,15 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; -import net.hydromatic.sml.foreign.RelList; -import net.hydromatic.sml.type.ListType; -import net.hydromatic.sml.type.PrimitiveType; -import net.hydromatic.sml.type.RecordType; -import net.hydromatic.sml.type.TupleType; -import net.hydromatic.sml.type.Type; -import net.hydromatic.sml.util.Pair; +import net.hydromatic.morel.foreign.RelList; +import net.hydromatic.morel.type.ListType; +import net.hydromatic.morel.type.PrimitiveType; +import net.hydromatic.morel.type.RecordType; +import net.hydromatic.morel.type.TupleType; +import net.hydromatic.morel.type.Type; +import net.hydromatic.morel.util.Pair; import java.util.List; import javax.annotation.Nonnull; diff --git a/src/main/java/net/hydromatic/sml/compile/TypeResolver.java b/src/main/java/net/hydromatic/morel/compile/TypeResolver.java similarity index 97% rename from src/main/java/net/hydromatic/sml/compile/TypeResolver.java rename to src/main/java/net/hydromatic/morel/compile/TypeResolver.java index 427f944f..7fcffa47 100644 --- a/src/main/java/net/hydromatic/sml/compile/TypeResolver.java +++ b/src/main/java/net/hydromatic/morel/compile/TypeResolver.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; @@ -24,27 +24,27 @@ import com.google.common.collect.ImmutableSortedMap; import com.google.common.collect.Lists; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.ast.Pos; -import net.hydromatic.sml.type.ApplyType; -import net.hydromatic.sml.type.DataType; -import net.hydromatic.sml.type.DummyType; -import net.hydromatic.sml.type.FnType; -import net.hydromatic.sml.type.ForallType; -import net.hydromatic.sml.type.ListType; -import net.hydromatic.sml.type.NamedType; -import net.hydromatic.sml.type.PrimitiveType; -import net.hydromatic.sml.type.RecordType; -import net.hydromatic.sml.type.TupleType; -import net.hydromatic.sml.type.Type; -import net.hydromatic.sml.type.TypeSystem; -import net.hydromatic.sml.type.TypeVar; -import net.hydromatic.sml.util.ConsList; -import net.hydromatic.sml.util.MapList; -import net.hydromatic.sml.util.MartelliUnifier; -import net.hydromatic.sml.util.Pair; -import net.hydromatic.sml.util.Unifier; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.ast.Pos; +import net.hydromatic.morel.type.ApplyType; +import net.hydromatic.morel.type.DataType; +import net.hydromatic.morel.type.DummyType; +import net.hydromatic.morel.type.FnType; +import net.hydromatic.morel.type.ForallType; +import net.hydromatic.morel.type.ListType; +import net.hydromatic.morel.type.NamedType; +import net.hydromatic.morel.type.PrimitiveType; +import net.hydromatic.morel.type.RecordType; +import net.hydromatic.morel.type.TupleType; +import net.hydromatic.morel.type.Type; +import net.hydromatic.morel.type.TypeSystem; +import net.hydromatic.morel.type.TypeVar; +import net.hydromatic.morel.util.ConsList; +import net.hydromatic.morel.util.MapList; +import net.hydromatic.morel.util.MartelliUnifier; +import net.hydromatic.morel.util.Pair; +import net.hydromatic.morel.util.Unifier; import java.util.AbstractList; import java.util.ArrayList; @@ -62,8 +62,8 @@ import java.util.function.Function; import java.util.stream.Collectors; -import static net.hydromatic.sml.ast.AstBuilder.ast; -import static net.hydromatic.sml.util.Static.toImmutableList; +import static net.hydromatic.morel.ast.AstBuilder.ast; +import static net.hydromatic.morel.util.Static.toImmutableList; /** Resolves the type of an expression. */ @SuppressWarnings("StaticPseudoFunctionalStyleMethod") diff --git a/src/main/java/net/hydromatic/sml/compile/package-info.java b/src/main/java/net/hydromatic/morel/compile/package-info.java similarity index 87% rename from src/main/java/net/hydromatic/sml/compile/package-info.java rename to src/main/java/net/hydromatic/morel/compile/package-info.java index 4ee47d73..39aedbe1 100644 --- a/src/main/java/net/hydromatic/sml/compile/package-info.java +++ b/src/main/java/net/hydromatic/morel/compile/package-info.java @@ -17,9 +17,10 @@ * License. */ -/** Validates programs (represented as {@link net.hydromatic.sml.ast.AstNode}), +/** Validates programs + * (represented as {@link net.hydromatic.morel.ast.AstNode}), * deduces their type, * and compiles them into code that can be evaluated. */ -package net.hydromatic.sml.compile; +package net.hydromatic.morel.compile; // End package-info.java diff --git a/src/main/java/net/hydromatic/sml/eval/Applicable.java b/src/main/java/net/hydromatic/morel/eval/Applicable.java similarity index 89% rename from src/main/java/net/hydromatic/sml/eval/Applicable.java rename to src/main/java/net/hydromatic/morel/eval/Applicable.java index 0d3d351a..c4508cb7 100644 --- a/src/main/java/net/hydromatic/sml/eval/Applicable.java +++ b/src/main/java/net/hydromatic/morel/eval/Applicable.java @@ -16,15 +16,15 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.eval; +package net.hydromatic.morel.eval; import com.google.common.collect.ImmutableList; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.ast.Pos; -import net.hydromatic.sml.util.Pair; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.ast.Pos; +import net.hydromatic.morel.util.Pair; -import static net.hydromatic.sml.ast.AstBuilder.ast; +import static net.hydromatic.morel.ast.AstBuilder.ast; /** A compiled expression that can be evaluated by applying to an argument. * diff --git a/src/main/java/net/hydromatic/sml/eval/Closure.java b/src/main/java/net/hydromatic/morel/eval/Closure.java similarity index 98% rename from src/main/java/net/hydromatic/sml/eval/Closure.java rename to src/main/java/net/hydromatic/morel/eval/Closure.java index 4e30324f..de547b46 100644 --- a/src/main/java/net/hydromatic/sml/eval/Closure.java +++ b/src/main/java/net/hydromatic/morel/eval/Closure.java @@ -16,12 +16,12 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.eval; +package net.hydromatic.morel.eval; import com.google.common.collect.ImmutableList; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.util.Pair; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.util.Pair; import java.math.BigDecimal; import java.util.List; diff --git a/src/main/java/net/hydromatic/sml/eval/Code.java b/src/main/java/net/hydromatic/morel/eval/Code.java similarity index 96% rename from src/main/java/net/hydromatic/sml/eval/Code.java rename to src/main/java/net/hydromatic/morel/eval/Code.java index 21a9ae10..f81b94e3 100644 --- a/src/main/java/net/hydromatic/sml/eval/Code.java +++ b/src/main/java/net/hydromatic/morel/eval/Code.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.eval; +package net.hydromatic.morel.eval; /** A compiled expression, that can be evaluated. */ public interface Code { diff --git a/src/main/java/net/hydromatic/sml/eval/Codes.java b/src/main/java/net/hydromatic/morel/eval/Codes.java similarity index 99% rename from src/main/java/net/hydromatic/sml/eval/Codes.java rename to src/main/java/net/hydromatic/morel/eval/Codes.java index 09504bfd..8d6e1e6e 100644 --- a/src/main/java/net/hydromatic/sml/eval/Codes.java +++ b/src/main/java/net/hydromatic/morel/eval/Codes.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.eval; +package net.hydromatic.morel.eval; import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.ImmutableList; @@ -29,12 +29,12 @@ import com.google.common.collect.Ordering; import com.google.common.primitives.Chars; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.compile.BuiltIn; -import net.hydromatic.sml.compile.Environment; -import net.hydromatic.sml.type.Type; -import net.hydromatic.sml.type.TypeSystem; -import net.hydromatic.sml.util.MapList; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.compile.BuiltIn; +import net.hydromatic.morel.compile.Environment; +import net.hydromatic.morel.type.Type; +import net.hydromatic.morel.type.TypeSystem; +import net.hydromatic.morel.util.MapList; import java.util.ArrayList; import java.util.Arrays; diff --git a/src/main/java/net/hydromatic/sml/eval/EvalEnv.java b/src/main/java/net/hydromatic/morel/eval/EvalEnv.java similarity index 94% rename from src/main/java/net/hydromatic/sml/eval/EvalEnv.java rename to src/main/java/net/hydromatic/morel/eval/EvalEnv.java index 5a939cd6..81913e6b 100644 --- a/src/main/java/net/hydromatic/sml/eval/EvalEnv.java +++ b/src/main/java/net/hydromatic/morel/eval/EvalEnv.java @@ -16,9 +16,9 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.eval; +package net.hydromatic.morel.eval; -import net.hydromatic.sml.compile.Environment; +import net.hydromatic.morel.compile.Environment; import java.util.HashMap; import java.util.Map; diff --git a/src/main/java/net/hydromatic/sml/eval/Unit.java b/src/main/java/net/hydromatic/morel/eval/Unit.java similarity index 97% rename from src/main/java/net/hydromatic/sml/eval/Unit.java rename to src/main/java/net/hydromatic/morel/eval/Unit.java index 6e01d12a..5a6ef7b0 100644 --- a/src/main/java/net/hydromatic/sml/eval/Unit.java +++ b/src/main/java/net/hydromatic/morel/eval/Unit.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.eval; +package net.hydromatic.morel.eval; import java.util.AbstractList; diff --git a/src/main/java/net/hydromatic/sml/eval/package-info.java b/src/main/java/net/hydromatic/morel/eval/package-info.java similarity index 96% rename from src/main/java/net/hydromatic/sml/eval/package-info.java rename to src/main/java/net/hydromatic/morel/eval/package-info.java index b3a86ebe..5d349a9a 100644 --- a/src/main/java/net/hydromatic/sml/eval/package-info.java +++ b/src/main/java/net/hydromatic/morel/eval/package-info.java @@ -18,6 +18,6 @@ */ /** Evaluates expressions. */ -package net.hydromatic.sml.eval; +package net.hydromatic.morel.eval; // End package-info.java diff --git a/src/main/java/net/hydromatic/sml/foreign/CalciteForeignValue.java b/src/main/java/net/hydromatic/morel/foreign/CalciteForeignValue.java similarity index 97% rename from src/main/java/net/hydromatic/sml/foreign/CalciteForeignValue.java rename to src/main/java/net/hydromatic/morel/foreign/CalciteForeignValue.java index 8dc209af..f78963bf 100644 --- a/src/main/java/net/hydromatic/sml/foreign/CalciteForeignValue.java +++ b/src/main/java/net/hydromatic/morel/foreign/CalciteForeignValue.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.foreign; +package net.hydromatic.morel.foreign; import org.apache.calcite.DataContext; import org.apache.calcite.adapter.java.JavaTypeFactory; @@ -34,10 +34,10 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSortedMap; -import net.hydromatic.sml.type.PrimitiveType; -import net.hydromatic.sml.type.RecordType; -import net.hydromatic.sml.type.Type; -import net.hydromatic.sml.type.TypeSystem; +import net.hydromatic.morel.type.PrimitiveType; +import net.hydromatic.morel.type.RecordType; +import net.hydromatic.morel.type.Type; +import net.hydromatic.morel.type.TypeSystem; import java.sql.Date; import java.sql.Time; diff --git a/src/main/java/net/hydromatic/sml/foreign/ForeignValue.java b/src/main/java/net/hydromatic/morel/foreign/ForeignValue.java similarity index 89% rename from src/main/java/net/hydromatic/sml/foreign/ForeignValue.java rename to src/main/java/net/hydromatic/morel/foreign/ForeignValue.java index 1edd4a3b..cec65550 100644 --- a/src/main/java/net/hydromatic/sml/foreign/ForeignValue.java +++ b/src/main/java/net/hydromatic/morel/foreign/ForeignValue.java @@ -16,10 +16,10 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.foreign; +package net.hydromatic.morel.foreign; -import net.hydromatic.sml.type.Type; -import net.hydromatic.sml.type.TypeSystem; +import net.hydromatic.morel.type.Type; +import net.hydromatic.morel.type.TypeSystem; /** External value. * diff --git a/src/main/java/net/hydromatic/sml/foreign/RelList.java b/src/main/java/net/hydromatic/morel/foreign/RelList.java similarity index 97% rename from src/main/java/net/hydromatic/sml/foreign/RelList.java rename to src/main/java/net/hydromatic/morel/foreign/RelList.java index fbfe63c5..84df6e4c 100644 --- a/src/main/java/net/hydromatic/sml/foreign/RelList.java +++ b/src/main/java/net/hydromatic/morel/foreign/RelList.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.foreign; +package net.hydromatic.morel.foreign; import org.apache.calcite.DataContext; import org.apache.calcite.interpreter.Interpreter; diff --git a/src/main/java/net/hydromatic/sml/foreign/package-info.java b/src/main/java/net/hydromatic/morel/foreign/package-info.java similarity index 95% rename from src/main/java/net/hydromatic/sml/foreign/package-info.java rename to src/main/java/net/hydromatic/morel/foreign/package-info.java index 2b3a0225..4c4408e1 100644 --- a/src/main/java/net/hydromatic/sml/foreign/package-info.java +++ b/src/main/java/net/hydromatic/morel/foreign/package-info.java @@ -18,6 +18,6 @@ */ /** Provides access to external data sources. */ -package net.hydromatic.sml.foreign; +package net.hydromatic.morel.foreign; // End package-info.java diff --git a/src/main/java/net/hydromatic/sml/package-info.java b/src/main/java/net/hydromatic/morel/package-info.java similarity index 96% rename from src/main/java/net/hydromatic/sml/package-info.java rename to src/main/java/net/hydromatic/morel/package-info.java index 4ef1bcca..343fcf3e 100644 --- a/src/main/java/net/hydromatic/sml/package-info.java +++ b/src/main/java/net/hydromatic/morel/package-info.java @@ -18,6 +18,6 @@ */ /** Standard ML interpreter, implemented in Java. */ -package net.hydromatic.sml; +package net.hydromatic.morel; // End package-info.java diff --git a/src/main/java/net/hydromatic/sml/parse/SmlParser.java b/src/main/java/net/hydromatic/morel/parse/MorelParser.java similarity index 83% rename from src/main/java/net/hydromatic/sml/parse/SmlParser.java rename to src/main/java/net/hydromatic/morel/parse/MorelParser.java index b23cb54c..0f958011 100644 --- a/src/main/java/net/hydromatic/sml/parse/SmlParser.java +++ b/src/main/java/net/hydromatic/morel/parse/MorelParser.java @@ -16,14 +16,14 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.parse; +package net.hydromatic.morel.parse; -import net.hydromatic.sml.ast.Pos; +import net.hydromatic.morel.ast.Pos; -/** Parser for Standard ML. */ -public interface SmlParser { +/** Parser for Morel, a variant of Standard ML. */ +public interface MorelParser { /** Returns the position of the last token returned by the parser. */ Pos getPos(); } -// End SmlParser.java +// End MorelParser.java diff --git a/src/main/java/net/hydromatic/sml/parse/Span.java b/src/main/java/net/hydromatic/morel/parse/Span.java similarity index 95% rename from src/main/java/net/hydromatic/sml/parse/Span.java rename to src/main/java/net/hydromatic/morel/parse/Span.java index f8c5488d..69e7266c 100644 --- a/src/main/java/net/hydromatic/sml/parse/Span.java +++ b/src/main/java/net/hydromatic/morel/parse/Span.java @@ -16,10 +16,10 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.parse; +package net.hydromatic.morel.parse; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.ast.Pos; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.ast.Pos; import java.util.ArrayList; import java.util.Collection; @@ -111,7 +111,7 @@ public Span addAll(Iterable nodes) { /** Adds the position of the last token emitted by a parser to the list, * and returns this Span. */ - public Span add(SmlParser parser) { + public Span add(MorelParser parser) { try { final Pos pos = parser.getPos(); return add(pos); @@ -137,7 +137,7 @@ public Pos pos() { /** Adds the position of the last token emitted by a parser to the list, * and returns a position that covers the whole range. */ - public Pos end(SmlParser parser) { + public Pos end(MorelParser parser) { return add(parser).pos(); } diff --git a/src/main/java/net/hydromatic/sml/parse/package-info.java b/src/main/java/net/hydromatic/morel/parse/package-info.java similarity index 95% rename from src/main/java/net/hydromatic/sml/parse/package-info.java rename to src/main/java/net/hydromatic/morel/parse/package-info.java index ae5154d2..52c81ee8 100644 --- a/src/main/java/net/hydromatic/sml/parse/package-info.java +++ b/src/main/java/net/hydromatic/morel/parse/package-info.java @@ -18,6 +18,6 @@ */ /** Parser. */ -package net.hydromatic.sml.parse; +package net.hydromatic.morel.parse; // End package-info.java diff --git a/src/main/java/net/hydromatic/sml/type/ApplyType.java b/src/main/java/net/hydromatic/morel/type/ApplyType.java similarity index 96% rename from src/main/java/net/hydromatic/sml/type/ApplyType.java rename to src/main/java/net/hydromatic/morel/type/ApplyType.java index 12b53d04..672e30fd 100644 --- a/src/main/java/net/hydromatic/sml/type/ApplyType.java +++ b/src/main/java/net/hydromatic/morel/type/ApplyType.java @@ -16,11 +16,11 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; import com.google.common.collect.ImmutableList; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.Objects; import java.util.function.Function; diff --git a/src/main/java/net/hydromatic/sml/type/BaseType.java b/src/main/java/net/hydromatic/morel/type/BaseType.java similarity index 94% rename from src/main/java/net/hydromatic/sml/type/BaseType.java rename to src/main/java/net/hydromatic/morel/type/BaseType.java index 653aa324..d3fdcffa 100644 --- a/src/main/java/net/hydromatic/sml/type/BaseType.java +++ b/src/main/java/net/hydromatic/morel/type/BaseType.java @@ -16,9 +16,9 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.Objects; diff --git a/src/main/java/net/hydromatic/sml/type/Binding.java b/src/main/java/net/hydromatic/morel/type/Binding.java similarity index 90% rename from src/main/java/net/hydromatic/sml/type/Binding.java rename to src/main/java/net/hydromatic/morel/type/Binding.java index 947e1641..d5ba9ddb 100644 --- a/src/main/java/net/hydromatic/sml/type/Binding.java +++ b/src/main/java/net/hydromatic/morel/type/Binding.java @@ -16,15 +16,15 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; -import net.hydromatic.sml.eval.Unit; +import net.hydromatic.morel.eval.Unit; import java.util.Objects; /** Binding of a name to a type and a value. * - *

Used in {@link net.hydromatic.sml.compile.Environment}. */ + *

Used in {@link net.hydromatic.morel.compile.Environment}. */ public class Binding { public final String name; public final Type type; diff --git a/src/main/java/net/hydromatic/sml/type/DataType.java b/src/main/java/net/hydromatic/morel/type/DataType.java similarity index 98% rename from src/main/java/net/hydromatic/sml/type/DataType.java rename to src/main/java/net/hydromatic/morel/type/DataType.java index 8d06ea57..2619e501 100644 --- a/src/main/java/net/hydromatic/sml/type/DataType.java +++ b/src/main/java/net/hydromatic/morel/type/DataType.java @@ -16,13 +16,13 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableSortedMap; import com.google.common.collect.Ordering; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.List; import java.util.Map; diff --git a/src/main/java/net/hydromatic/sml/type/DummyType.java b/src/main/java/net/hydromatic/morel/type/DummyType.java similarity index 94% rename from src/main/java/net/hydromatic/sml/type/DummyType.java rename to src/main/java/net/hydromatic/morel/type/DummyType.java index 0fd53127..01d314b4 100644 --- a/src/main/java/net/hydromatic/sml/type/DummyType.java +++ b/src/main/java/net/hydromatic/morel/type/DummyType.java @@ -16,9 +16,9 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.function.Function; diff --git a/src/main/java/net/hydromatic/sml/type/FnType.java b/src/main/java/net/hydromatic/morel/type/FnType.java similarity index 95% rename from src/main/java/net/hydromatic/sml/type/FnType.java rename to src/main/java/net/hydromatic/morel/type/FnType.java index 1892a0c6..13e98b43 100644 --- a/src/main/java/net/hydromatic/sml/type/FnType.java +++ b/src/main/java/net/hydromatic/morel/type/FnType.java @@ -16,9 +16,9 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.function.Function; diff --git a/src/main/java/net/hydromatic/sml/type/ForallType.java b/src/main/java/net/hydromatic/morel/type/ForallType.java similarity index 95% rename from src/main/java/net/hydromatic/sml/type/ForallType.java rename to src/main/java/net/hydromatic/morel/type/ForallType.java index 3aa5f11b..195fa36f 100644 --- a/src/main/java/net/hydromatic/sml/type/ForallType.java +++ b/src/main/java/net/hydromatic/morel/type/ForallType.java @@ -16,11 +16,11 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; import com.google.common.collect.ImmutableList; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.List; import java.util.Objects; diff --git a/src/main/java/net/hydromatic/sml/type/ListType.java b/src/main/java/net/hydromatic/morel/type/ListType.java similarity index 95% rename from src/main/java/net/hydromatic/sml/type/ListType.java rename to src/main/java/net/hydromatic/morel/type/ListType.java index 84453e43..ad128cbc 100644 --- a/src/main/java/net/hydromatic/sml/type/ListType.java +++ b/src/main/java/net/hydromatic/morel/type/ListType.java @@ -16,9 +16,9 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.Objects; import java.util.function.Function; diff --git a/src/main/java/net/hydromatic/sml/type/NamedType.java b/src/main/java/net/hydromatic/morel/type/NamedType.java similarity index 96% rename from src/main/java/net/hydromatic/sml/type/NamedType.java rename to src/main/java/net/hydromatic/morel/type/NamedType.java index 99ca06df..c0ea1932 100644 --- a/src/main/java/net/hydromatic/sml/type/NamedType.java +++ b/src/main/java/net/hydromatic/morel/type/NamedType.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; /** Type that has a name. */ public interface NamedType extends Type { diff --git a/src/main/java/net/hydromatic/sml/type/PrimitiveType.java b/src/main/java/net/hydromatic/morel/type/PrimitiveType.java similarity index 94% rename from src/main/java/net/hydromatic/sml/type/PrimitiveType.java rename to src/main/java/net/hydromatic/morel/type/PrimitiveType.java index 5b983580..80eaed28 100644 --- a/src/main/java/net/hydromatic/sml/type/PrimitiveType.java +++ b/src/main/java/net/hydromatic/morel/type/PrimitiveType.java @@ -16,9 +16,9 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.Locale; import java.util.function.Function; diff --git a/src/main/java/net/hydromatic/sml/type/RecordType.java b/src/main/java/net/hydromatic/morel/type/RecordType.java similarity index 97% rename from src/main/java/net/hydromatic/sml/type/RecordType.java rename to src/main/java/net/hydromatic/morel/type/RecordType.java index 6aeed149..7dcc11a8 100644 --- a/src/main/java/net/hydromatic/sml/type/RecordType.java +++ b/src/main/java/net/hydromatic/morel/type/RecordType.java @@ -16,13 +16,13 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableSortedMap; import com.google.common.collect.Ordering; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.Map; import java.util.Objects; diff --git a/src/main/java/net/hydromatic/sml/type/TupleType.java b/src/main/java/net/hydromatic/morel/type/TupleType.java similarity index 96% rename from src/main/java/net/hydromatic/sml/type/TupleType.java rename to src/main/java/net/hydromatic/morel/type/TupleType.java index ce28d61b..68fcf1a7 100644 --- a/src/main/java/net/hydromatic/sml/type/TupleType.java +++ b/src/main/java/net/hydromatic/morel/type/TupleType.java @@ -16,11 +16,11 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; import com.google.common.collect.ImmutableList; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.List; import java.util.Objects; diff --git a/src/main/java/net/hydromatic/sml/type/Type.java b/src/main/java/net/hydromatic/morel/type/Type.java similarity index 94% rename from src/main/java/net/hydromatic/sml/type/Type.java rename to src/main/java/net/hydromatic/morel/type/Type.java index cb7c8732..8b37b856 100644 --- a/src/main/java/net/hydromatic/sml/type/Type.java +++ b/src/main/java/net/hydromatic/morel/type/Type.java @@ -16,9 +16,9 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.function.Function; diff --git a/src/main/java/net/hydromatic/sml/type/TypeSystem.java b/src/main/java/net/hydromatic/morel/type/TypeSystem.java similarity index 98% rename from src/main/java/net/hydromatic/sml/type/TypeSystem.java rename to src/main/java/net/hydromatic/morel/type/TypeSystem.java index f4170f5b..0cc75b65 100644 --- a/src/main/java/net/hydromatic/sml/type/TypeSystem.java +++ b/src/main/java/net/hydromatic/morel/type/TypeSystem.java @@ -16,15 +16,15 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSortedMap; import com.google.common.collect.Lists; -import net.hydromatic.sml.ast.Op; -import net.hydromatic.sml.util.Ord; -import net.hydromatic.sml.util.Pair; +import net.hydromatic.morel.ast.Op; +import net.hydromatic.morel.util.Ord; +import net.hydromatic.morel.util.Pair; import java.util.Arrays; import java.util.HashMap; diff --git a/src/main/java/net/hydromatic/sml/type/TypeVar.java b/src/main/java/net/hydromatic/morel/type/TypeVar.java similarity index 97% rename from src/main/java/net/hydromatic/sml/type/TypeVar.java rename to src/main/java/net/hydromatic/morel/type/TypeVar.java index 7707c39f..459d270d 100644 --- a/src/main/java/net/hydromatic/sml/type/TypeVar.java +++ b/src/main/java/net/hydromatic/morel/type/TypeVar.java @@ -16,14 +16,14 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; import com.google.common.base.Preconditions; import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; -import net.hydromatic.sml.ast.Op; +import net.hydromatic.morel.ast.Op; import java.util.concurrent.ExecutionException; import java.util.function.Function; diff --git a/src/main/java/net/hydromatic/sml/type/package-info.java b/src/main/java/net/hydromatic/morel/type/package-info.java similarity index 95% rename from src/main/java/net/hydromatic/sml/type/package-info.java rename to src/main/java/net/hydromatic/morel/type/package-info.java index 9a6ecdef..a6f78f41 100644 --- a/src/main/java/net/hydromatic/sml/type/package-info.java +++ b/src/main/java/net/hydromatic/morel/type/package-info.java @@ -18,6 +18,6 @@ */ /** Type system. */ -package net.hydromatic.sml.type; +package net.hydromatic.morel.type; // End package-info.java diff --git a/src/main/java/net/hydromatic/sml/util/AbstractImmutableList.java b/src/main/java/net/hydromatic/morel/util/AbstractImmutableList.java similarity index 98% rename from src/main/java/net/hydromatic/sml/util/AbstractImmutableList.java rename to src/main/java/net/hydromatic/morel/util/AbstractImmutableList.java index 20f42348..ac5a21e1 100644 --- a/src/main/java/net/hydromatic/sml/util/AbstractImmutableList.java +++ b/src/main/java/net/hydromatic/morel/util/AbstractImmutableList.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import java.util.Collection; import java.util.Iterator; diff --git a/src/main/java/net/hydromatic/sml/util/ConsList.java b/src/main/java/net/hydromatic/morel/util/ConsList.java similarity index 99% rename from src/main/java/net/hydromatic/sml/util/ConsList.java rename to src/main/java/net/hydromatic/morel/util/ConsList.java index 2d6dd430..41d4c29c 100644 --- a/src/main/java/net/hydromatic/sml/util/ConsList.java +++ b/src/main/java/net/hydromatic/morel/util/ConsList.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import com.google.common.collect.ImmutableList; diff --git a/src/main/java/net/hydromatic/sml/util/MapList.java b/src/main/java/net/hydromatic/morel/util/MapList.java similarity index 97% rename from src/main/java/net/hydromatic/sml/util/MapList.java rename to src/main/java/net/hydromatic/morel/util/MapList.java index f6aae6b3..d71cdbe7 100644 --- a/src/main/java/net/hydromatic/sml/util/MapList.java +++ b/src/main/java/net/hydromatic/morel/util/MapList.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import java.util.AbstractList; import java.util.RandomAccess; diff --git a/src/main/java/net/hydromatic/sml/util/MartelliUnifier.java b/src/main/java/net/hydromatic/morel/util/MartelliUnifier.java similarity index 99% rename from src/main/java/net/hydromatic/sml/util/MartelliUnifier.java rename to src/main/java/net/hydromatic/morel/util/MartelliUnifier.java index 33395855..cef5fa3b 100644 --- a/src/main/java/net/hydromatic/sml/util/MartelliUnifier.java +++ b/src/main/java/net/hydromatic/morel/util/MartelliUnifier.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import com.google.common.collect.ImmutableMap; diff --git a/src/main/java/net/hydromatic/sml/util/Ord.java b/src/main/java/net/hydromatic/morel/util/Ord.java similarity index 99% rename from src/main/java/net/hydromatic/sml/util/Ord.java rename to src/main/java/net/hydromatic/morel/util/Ord.java index dd7299c3..40aeddad 100644 --- a/src/main/java/net/hydromatic/sml/util/Ord.java +++ b/src/main/java/net/hydromatic/morel/util/Ord.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import com.google.common.collect.ImmutableList; diff --git a/src/main/java/net/hydromatic/sml/util/Pair.java b/src/main/java/net/hydromatic/morel/util/Pair.java similarity index 99% rename from src/main/java/net/hydromatic/sml/util/Pair.java rename to src/main/java/net/hydromatic/morel/util/Pair.java index 662d6f54..34552c65 100644 --- a/src/main/java/net/hydromatic/sml/util/Pair.java +++ b/src/main/java/net/hydromatic/morel/util/Pair.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import java.io.Serializable; import java.util.AbstractList; diff --git a/src/main/java/net/hydromatic/sml/util/RobinsonUnifier.java b/src/main/java/net/hydromatic/morel/util/RobinsonUnifier.java similarity index 98% rename from src/main/java/net/hydromatic/sml/util/RobinsonUnifier.java rename to src/main/java/net/hydromatic/morel/util/RobinsonUnifier.java index e7cf2ca6..d462821e 100644 --- a/src/main/java/net/hydromatic/sml/util/RobinsonUnifier.java +++ b/src/main/java/net/hydromatic/morel/util/RobinsonUnifier.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import com.google.common.collect.ImmutableMap; diff --git a/src/main/java/net/hydromatic/sml/util/Static.java b/src/main/java/net/hydromatic/morel/util/Static.java similarity index 98% rename from src/main/java/net/hydromatic/sml/util/Static.java rename to src/main/java/net/hydromatic/morel/util/Static.java index 8b487e3d..52554e75 100644 --- a/src/main/java/net/hydromatic/sml/util/Static.java +++ b/src/main/java/net/hydromatic/morel/util/Static.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import com.google.common.collect.ImmutableList; diff --git a/src/main/java/net/hydromatic/sml/util/TailList.java b/src/main/java/net/hydromatic/morel/util/TailList.java similarity index 98% rename from src/main/java/net/hydromatic/sml/util/TailList.java rename to src/main/java/net/hydromatic/morel/util/TailList.java index 256b485b..31f99b22 100644 --- a/src/main/java/net/hydromatic/sml/util/TailList.java +++ b/src/main/java/net/hydromatic/morel/util/TailList.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import java.util.AbstractList; import java.util.Collection; diff --git a/src/main/java/net/hydromatic/sml/util/Unifier.java b/src/main/java/net/hydromatic/morel/util/Unifier.java similarity index 99% rename from src/main/java/net/hydromatic/sml/util/Unifier.java rename to src/main/java/net/hydromatic/morel/util/Unifier.java index 7bb90826..836cde68 100644 --- a/src/main/java/net/hydromatic/sml/util/Unifier.java +++ b/src/main/java/net/hydromatic/morel/util/Unifier.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; diff --git a/src/main/java/net/hydromatic/sml/util/package-info.java b/src/main/java/net/hydromatic/morel/util/package-info.java similarity index 95% rename from src/main/java/net/hydromatic/sml/util/package-info.java rename to src/main/java/net/hydromatic/morel/util/package-info.java index b12d9ca3..cd516f09 100644 --- a/src/main/java/net/hydromatic/sml/util/package-info.java +++ b/src/main/java/net/hydromatic/morel/util/package-info.java @@ -18,6 +18,6 @@ */ /** Utilities. */ -package net.hydromatic.sml.util; +package net.hydromatic.morel.util; // End package-info.java diff --git a/src/main/javacc/SmlParser.jj b/src/main/javacc/MorelParser.jj similarity index 97% rename from src/main/javacc/SmlParser.jj rename to src/main/javacc/MorelParser.jj index c3bc4a88..e33aac2d 100644 --- a/src/main/javacc/SmlParser.jj +++ b/src/main/javacc/MorelParser.jj @@ -23,16 +23,16 @@ options { UNICODE_INPUT = true; } -PARSER_BEGIN(SmlParserImpl) +PARSER_BEGIN(MorelParserImpl) -package net.hydromatic.sml.parse; +package net.hydromatic.morel.parse; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.ast.Ast.*; -import net.hydromatic.sml.ast.AstBuilder; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.ast.Pos; -import net.hydromatic.sml.util.Pair; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.ast.Ast.*; +import net.hydromatic.morel.ast.AstBuilder; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.ast.Pos; +import net.hydromatic.morel.util.Pair; import com.google.common.collect.ImmutableList; @@ -45,15 +45,15 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import static net.hydromatic.sml.ast.AstBuilder.ast; +import static net.hydromatic.morel.ast.AstBuilder.ast; /** - * Parser for Standard ML, generated from SmlParser.jj by JavaCC. + * Parser for Standard ML, generated from MorelParser.jj by JavaCC. */ -public class SmlParserImpl implements SmlParser +public class MorelParserImpl implements MorelParser { private static final Logger LOGGER = - LoggerFactory.getLogger("net.hydromatic.sml.parse"); + LoggerFactory.getLogger("net.hydromatic.morel.parse"); public void setTabSize(int tabSize) { jj_input_stream.setTabSize(tabSize); @@ -65,7 +65,7 @@ public class SmlParserImpl implements SmlParser } } -PARSER_END(SmlParserImpl) +PARSER_END(MorelParserImpl) /* For Debug */ JAVACODE @@ -1340,4 +1340,4 @@ MORE : > } -// End SmlParser.jj +// End MorelParser.jj diff --git a/src/test/java/net/hydromatic/sml/DataSet.java b/src/test/java/net/hydromatic/morel/DataSet.java similarity index 95% rename from src/test/java/net/hydromatic/sml/DataSet.java rename to src/test/java/net/hydromatic/morel/DataSet.java index 6ea2950e..c846bae8 100644 --- a/src/test/java/net/hydromatic/sml/DataSet.java +++ b/src/test/java/net/hydromatic/morel/DataSet.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import org.apache.calcite.adapter.jdbc.JdbcSchema; import org.apache.calcite.jdbc.CalciteSchema; @@ -25,10 +25,10 @@ import com.google.common.base.Suppliers; import net.hydromatic.foodmart.data.hsqldb.FoodmartHsqldb; +import net.hydromatic.morel.foreign.CalciteForeignValue; +import net.hydromatic.morel.foreign.ForeignValue; +import net.hydromatic.morel.util.Pair; import net.hydromatic.scott.data.hsqldb.ScottHsqldb; -import net.hydromatic.sml.foreign.CalciteForeignValue; -import net.hydromatic.sml.foreign.ForeignValue; -import net.hydromatic.sml.util.Pair; import java.util.AbstractMap; import java.util.Locale; diff --git a/src/test/java/net/hydromatic/sml/MainTest.java b/src/test/java/net/hydromatic/morel/MainTest.java similarity index 99% rename from src/test/java/net/hydromatic/sml/MainTest.java rename to src/test/java/net/hydromatic/morel/MainTest.java index f4865ab6..d1d79f06 100644 --- a/src/test/java/net/hydromatic/sml/MainTest.java +++ b/src/test/java/net/hydromatic/morel/MainTest.java @@ -16,15 +16,15 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Sets; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.type.TypeVar; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.type.TypeVar; import org.hamcrest.CustomTypeSafeMatcher; import org.hamcrest.Description; @@ -43,8 +43,8 @@ import java.util.List; import java.util.Set; -import static net.hydromatic.sml.Ml.assertError; -import static net.hydromatic.sml.Ml.ml; +import static net.hydromatic.morel.Ml.assertError; +import static net.hydromatic.morel.Ml.ml; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.not; diff --git a/src/test/java/net/hydromatic/sml/Ml.java b/src/test/java/net/hydromatic/morel/Ml.java similarity index 86% rename from src/test/java/net/hydromatic/sml/Ml.java rename to src/test/java/net/hydromatic/morel/Ml.java index 3f977be8..02793295 100644 --- a/src/test/java/net/hydromatic/sml/Ml.java +++ b/src/test/java/net/hydromatic/morel/Ml.java @@ -16,25 +16,25 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import com.google.common.collect.ImmutableMap; -import net.hydromatic.sml.ast.Ast; -import net.hydromatic.sml.ast.AstNode; -import net.hydromatic.sml.compile.CompiledStatement; -import net.hydromatic.sml.compile.Compiler; -import net.hydromatic.sml.compile.Compiles; -import net.hydromatic.sml.compile.Environment; -import net.hydromatic.sml.compile.Environments; -import net.hydromatic.sml.compile.TypeResolver; -import net.hydromatic.sml.eval.Code; -import net.hydromatic.sml.eval.Codes; -import net.hydromatic.sml.eval.EvalEnv; -import net.hydromatic.sml.foreign.ForeignValue; -import net.hydromatic.sml.parse.ParseException; -import net.hydromatic.sml.parse.SmlParserImpl; -import net.hydromatic.sml.type.TypeSystem; +import net.hydromatic.morel.ast.Ast; +import net.hydromatic.morel.ast.AstNode; +import net.hydromatic.morel.compile.CompiledStatement; +import net.hydromatic.morel.compile.Compiler; +import net.hydromatic.morel.compile.Compiles; +import net.hydromatic.morel.compile.Environment; +import net.hydromatic.morel.compile.Environments; +import net.hydromatic.morel.compile.TypeResolver; +import net.hydromatic.morel.eval.Code; +import net.hydromatic.morel.eval.Codes; +import net.hydromatic.morel.eval.EvalEnv; +import net.hydromatic.morel.foreign.ForeignValue; +import net.hydromatic.morel.parse.MorelParserImpl; +import net.hydromatic.morel.parse.ParseException; +import net.hydromatic.morel.type.TypeSystem; import org.hamcrest.CoreMatchers; import org.hamcrest.Matcher; @@ -78,8 +78,8 @@ static void assertError(Runnable runnable, } } - Ml withParser(Consumer action) { - final SmlParserImpl parser = new SmlParserImpl(new StringReader(ml)); + Ml withParser(Consumer action) { + final MorelParserImpl parser = new MorelParserImpl(new StringReader(ml)); action.accept(parser); return this; } @@ -114,7 +114,7 @@ Ml assertParseDecl(Class clazz, Ml assertStmt(Matcher matcher) { try { final AstNode statement = - new SmlParserImpl(new StringReader(ml)).statement(); + new MorelParserImpl(new StringReader(ml)).statement(); assertThat(statement, matcher); return this; } catch (ParseException e) { @@ -187,7 +187,7 @@ Ml withPrepare(Consumer action) { Ml assertEval(Matcher matcher) { try { - final Ast.Exp e = new SmlParserImpl(new StringReader(ml)).expression(); + final Ast.Exp e = new MorelParserImpl(new StringReader(ml)).expression(); final TypeSystem typeSystem = new TypeSystem(); final Environment env = Compiles.createEnvironment(typeSystem, valueMap); final Ast.ValDecl valDecl = Compiles.toValDecl(e); diff --git a/src/test/java/net/hydromatic/sml/SmlTests.java b/src/test/java/net/hydromatic/morel/MorelTests.java similarity index 92% rename from src/test/java/net/hydromatic/sml/SmlTests.java rename to src/test/java/net/hydromatic/morel/MorelTests.java index 0542df2c..b9716ea2 100644 --- a/src/test/java/net/hydromatic/sml/SmlTests.java +++ b/src/test/java/net/hydromatic/morel/MorelTests.java @@ -16,15 +16,15 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import org.junit.Assume; import static org.junit.Assume.assumeTrue; /** Utilities for writing tests. */ -public class SmlTests { - private SmlTests() {} +public class MorelTests { + private MorelTests() {} /** Aborts the test with a given message. * Use this method if you want to abandon a test case half way through. @@ -37,4 +37,4 @@ public static void abandon(String message) { } } -// End SmlTests.java +// End MorelTests.java diff --git a/src/test/java/net/hydromatic/sml/ScriptTest.java b/src/test/java/net/hydromatic/morel/ScriptTest.java similarity index 98% rename from src/test/java/net/hydromatic/sml/ScriptTest.java rename to src/test/java/net/hydromatic/morel/ScriptTest.java index daaa9fa7..37c44837 100644 --- a/src/test/java/net/hydromatic/sml/ScriptTest.java +++ b/src/test/java/net/hydromatic/morel/ScriptTest.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import com.google.common.collect.Lists; import com.google.common.io.PatternFilenameFilter; @@ -137,7 +137,7 @@ protected void checkRun(String path) throws Exception { outFile = new File(path + ".out"); } else { // e.g. path = "sql/outer.sml" - // inUrl = "file:/home/fred/smlj/target/test-classes/script/outer.sml" + // inUrl = "file:/home/fred/morel/target/test-classes/script/outer.sml" final URL inUrl = MainTest.class.getResource("/" + Utils.n2u(path)); inFile = Utils.urlToFile(inUrl); outFile = new File(inFile.getAbsoluteFile().getParent(), @@ -162,7 +162,7 @@ protected void checkRun(String path) throws Exception { } protected static Collection data(String first) { - // inUrl = "file:/home/fred/smlj/target/test-classes/script/agg.sml" + // inUrl = "file:/home/fred/morel/target/test-classes/script/agg.sml" final URL inUrl = MainTest.class.getResource("/" + Utils.n2u(first)); final File firstFile = Utils.urlToFile(inUrl); final int commonPrefixLength = diff --git a/src/test/java/net/hydromatic/sml/ShellTest.java b/src/test/java/net/hydromatic/morel/ShellTest.java similarity index 98% rename from src/test/java/net/hydromatic/sml/ShellTest.java rename to src/test/java/net/hydromatic/morel/ShellTest.java index b90ac03f..1ae14e7a 100644 --- a/src/test/java/net/hydromatic/sml/ShellTest.java +++ b/src/test/java/net/hydromatic/morel/ShellTest.java @@ -16,7 +16,7 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import org.hamcrest.Matcher; import org.junit.Test; @@ -64,7 +64,7 @@ private void assertShellOutput(List argList, String inputString, /** Tests {@link Shell} with empty input. */ @Test public void testShell() throws IOException { final List argList = Collections.singletonList("--system=false"); - assertShellOutput(argList, "", containsString("smlj version")); + assertShellOutput(argList, "", containsString("morel version")); } /** Tests {@link Shell} with empty input and banner disabled. */ diff --git a/src/test/java/net/hydromatic/sml/UnifierTest.java b/src/test/java/net/hydromatic/morel/UnifierTest.java similarity index 97% rename from src/test/java/net/hydromatic/sml/UnifierTest.java rename to src/test/java/net/hydromatic/morel/UnifierTest.java index b0690654..1955025f 100644 --- a/src/test/java/net/hydromatic/sml/UnifierTest.java +++ b/src/test/java/net/hydromatic/morel/UnifierTest.java @@ -16,14 +16,14 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import net.hydromatic.sml.util.MartelliUnifier; -import net.hydromatic.sml.util.RobinsonUnifier; -import net.hydromatic.sml.util.Unifier; +import net.hydromatic.morel.util.MartelliUnifier; +import net.hydromatic.morel.util.RobinsonUnifier; +import net.hydromatic.morel.util.Unifier; import org.hamcrest.Matcher; import org.junit.Test; @@ -295,7 +295,7 @@ void assertThatCannotUnify(List pairList) { } /** Variant of test that uses - * {@link net.hydromatic.sml.util.RobinsonUnifier}. */ + * {@link net.hydromatic.morel.util.RobinsonUnifier}. */ public static class RobinsonUnifierTest extends UnifierTest { protected Unifier createUnifier() { return new RobinsonUnifier(); @@ -303,7 +303,7 @@ protected Unifier createUnifier() { } /** Variant of test that uses - * {@link net.hydromatic.sml.util.MartelliUnifier}. */ + * {@link net.hydromatic.morel.util.MartelliUnifier}. */ public static class MartelliUnifierTest extends UnifierTest { protected Unifier createUnifier() { return new MartelliUnifier(); diff --git a/src/test/java/net/hydromatic/sml/UtilTest.java b/src/test/java/net/hydromatic/morel/UtilTest.java similarity index 94% rename from src/test/java/net/hydromatic/sml/UtilTest.java rename to src/test/java/net/hydromatic/morel/UtilTest.java index 2a981f5d..455fe2b2 100644 --- a/src/test/java/net/hydromatic/sml/UtilTest.java +++ b/src/test/java/net/hydromatic/morel/UtilTest.java @@ -16,11 +16,11 @@ * language governing permissions and limitations under the * License. */ -package net.hydromatic.sml; +package net.hydromatic.morel; -import net.hydromatic.sml.util.MapList; -import net.hydromatic.sml.util.Ord; -import net.hydromatic.sml.util.TailList; +import net.hydromatic.morel.util.MapList; +import net.hydromatic.morel.util.Ord; +import net.hydromatic.morel.util.TailList; import org.junit.Test;