OSDN Git Service

Change project name to Thun.
authorSimon Forman <sforman@hushmail.com>
Sun, 22 Apr 2018 04:26:41 +0000 (21:26 -0700)
committerSimon Forman <sforman@hushmail.com>
Sun, 22 Apr 2018 04:26:41 +0000 (21:26 -0700)
I waited too long to upload to PyPI and some other bastard snagged the name.  I originally wanted to call it "Thun" as a tribute to Manfred von Thun, but I was concerned that this might seem to violate the thrid clause in the license of the original Joy code, to wit:

3. The name of the author may not be used to endorse or promote products  derived from this software without specific prior written permission.

Since the author is deceased I don't know of whom to ask permission to call this project Thun, but since I am not trying to "endorse or promote" this project with his name it should be alright.  In any event if anyone complains I can rename the project again.

12 files changed:
Makefile
README
docs/notebook_preamble.py
docs/repl.py
joy/__main__.py
joy/joy.py
joy/library.py
joy/parser.py
joy/utils/brutal_hackery.py
joy/utils/pretty_print.py
joy/utils/stack.py
setup.py

index a606fa6..53df26b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -7,7 +7,7 @@ VERSION = 0.1.0
 
 
 clean:
-       $(RM) -r Joypy.egg-info/ dist/ $(TESTDIR)
+       $(RM) -r Thun.egg-info/ dist/ $(TESTDIR)
        find . -name '*.pyc' | xargs $(RM)
 
 sdist:
@@ -19,7 +19,7 @@ test: sdist
        $(RM) -r $(TESTDIR)
        virtualenv --system-site-packages --never-download $(TESTDIR)
        . $(TESTDIR)/bin/activate && \
-               pip install --no-cache-dir --no-index ./dist/Joypy-$(VERSION).tar.gz
+               pip install --no-cache-dir --no-index ./dist/Thun-$(VERSION).tar.gz
        echo "Type: source $(TESTDIR)/bin/activate"
 
 
diff --git a/README b/README
index 0e96ed1..f3add73 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
 --------------------------------------------------
 
 
-            Joypy
+            Thun
 
   A dialect of Joy in Python.
 
 
 Copyright © 2014, 2015, 2017, 2018 Simon Forman
 
-This file is part of Joypy
+This file is part of Thun
 
-Joypy is free software: you can redistribute it and/or modify it under the
+Thun is free software: you can redistribute it and/or modify it under the
 terms of the GNU General Public License as published by the Free Software
 Foundation, either version 3 of the License, or (at your option) any later
 version.
 
-Joypy is distributed in the hope that it will be useful, but WITHOUT ANY
+Thun is distributed in the hope that it will be useful, but WITHOUT ANY
 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 PARTICULAR PURPOSE.  See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
-Joypy.  If not see <http://www.gnu.org/licenses/>.
+Thun.  If not see <http://www.gnu.org/licenses/>.
 
 
 --------------------------------------------------
@@ -36,7 +36,7 @@ use and understand and has many other nice properties.  This Python
 package implements an interpreter for a dialect of Joy that attempts to
 stay very close to the spirit of Joy but does not precisely match the
 behaviour of the original version(s) written in C.  The main difference
-between Joypy and the originals, other than being written in Python, is
+between Thun and the originals, other than being written in Python, is
 that it works by the "Continuation-Passing Style".
 
 As I study Joy I find that it is very aptly named.  It is clear, concise,
@@ -77,7 +77,7 @@ interesting aspects.  It's quite a treasure trove.
 
 From PyPI in the usual way, e.g.:
 
-    pip install joypy
+    pip install Thun
 
 Or if you have downloaded the source, from the joypy directory:
 
@@ -112,15 +112,15 @@ that provide the effect of control-flow in other languages (such as ifte
 which is like if..then..else..)  Combinators receive the current
 expession in addition to the stack and return the next expression.
 In Joy control-flow is done by combinators that expect quoted programs
-on the stack and execute them in various ways.  In Joypy they work by
+on the stack and execute them in various ways.  In Thun they work by
 changing the pending expression that the interpreter is about to execute.
 In concrete terms, the combinators could work by making recursive calls
 to the interpreter and all intermediate state would be held in the call
-stack of the implementation language, in this Joypy implementation they
+stack of the implementation language, in this joy implementation they
 work instead by changing the pending expression and intermediate state
 is put there.
 
-In general, where otherwise unspecified, the semantics of Joypy are that
+In general, where otherwise unspecified, the semantics of Thun are that
 of the underlying Python. That means, for example, that integers are
 unbounded (whatever your machine can handle), strings cannot be added to
 integers but can be multiplied, Boolean True and False are effectively
@@ -188,7 +188,7 @@ joypy
  |   `-- README
  |
  |-- docs - Various Examples and Demos
- |   |-- * - Jupyter Notebooks on Joypy and supporting modules
+ |   |-- * - Jupyter Notebooks on Thun and supporting modules
  |   `-- README - Table of Contents
  |
  |-- joy
index 422b2a0..a613ad5 100644 (file)
@@ -2,20 +2,20 @@
 #
 #    Copyright © 2017 Simon Forman
 #
-#    This file is part of Joypy
+#    This file is part of Thun
 #
-#    Joypy is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    Joypy is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with Joypy.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 from traceback import print_exc, format_exc
 from joy.joy import run
index 4cb300e..c255b47 100755 (executable)
@@ -3,20 +3,20 @@
 #
 #    Copyright © 2014, 2015, 2017 Simon Forman
 #
-#    This file is part of joy.py
+#    This file is part of Thun
 #
-#    joy.py is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    joy.py is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with joy.py.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 from joy.library import initialize
 from joy.joy import repl
@@ -85,7 +85,7 @@ G == [first % not] [first /] [rest [not] [popop 0]] [ifte] genrec
 
 
 print '''\
-Joypy - Copyright © 2017 Simon Forman
+Thun - Copyright © 2017 Simon Forman
 This program comes with ABSOLUTELY NO WARRANTY; for details type "warranty".
 This is free software, and you are welcome to redistribute it
 under certain conditions; type "sharing" for details.
index 1b436bc..a6c682b 100644 (file)
@@ -2,26 +2,26 @@
 #
 #    Copyright © 2014, 2015, 2017 Simon Forman
 #
-#    This file is part of joy.py
+#    This file is part of Thun
 #
-#    joy.py is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    joy.py is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with joy.py.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 from .library import initialize
 from .joy import repl
 
 print '''\
-Joypy - Copyright © 2017 Simon Forman
+Thun - Copyright © 2017 Simon Forman
 This program comes with ABSOLUTELY NO WARRANTY; for details type "warranty".
 This is free software, and you are welcome to redistribute it
 under certain conditions; type "sharing" for details.
index 7cdc076..21e4128 100644 (file)
@@ -14,20 +14,20 @@ original version(s) written in C.  A Tkinter GUI is provided as well.
 
     Copyright © 2014, 2016, 2017 Simon Forman
 
-    This file is part of Joypy.
+    This file is part of Thun.
 
-    Joypy is free software: you can redistribute it and/or modify
+    Thun is free software: you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     the Free Software Foundation, either version 3 of the License, or
     (at your option) any later version.
 
-    Joypy is distributed in the hope that it will be useful,
+    Thun is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU General Public License for more details.
 
     You should have received a copy of the GNU General Public License
-    along with Joypy.  If not see <http://www.gnu.org/licenses/>.
+    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 
 
 § joy()
index 4b62c71..f0e9a5f 100644 (file)
@@ -2,20 +2,20 @@
 #
 #    Copyright © 2014, 2015, 2017, 2018 Simon Forman
 #
-#    This file is part of Joypy
+#    This file is part of Thun
 #
-#    Joypy is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    Joypy is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with Joypy.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 '''
 This module contains the Joy function infrastructure and a library of
@@ -780,7 +780,7 @@ def sharing(stack, expression, dictionary):
         ' warranty; and give all recipients a copy of this License along'
         ' with the Program.'
         ' You should have received a copy of the GNU General Public License'
-        ' along with Joypy.  If not see <http://www.gnu.org/licenses/>.')
+        ' along with Thun.  If not see <http://www.gnu.org/licenses/>.')
   return stack, expression, dictionary
 
 
index fd03343..bfa9377 100644 (file)
@@ -2,20 +2,20 @@
 #
 #    Copyright © 2014, 2015, 2016, 2017 Simon Forman
 #
-#    This file is part of Joypy.
+#    This file is part of Thun.
 #
-#    Joypy is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    Joypy is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with Joypy.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 '''
 
index 0854691..112a422 100644 (file)
@@ -2,20 +2,20 @@
 #
 #    Copyright © 2018 Simon Forman
 #
-#    This file is part of Joypy
+#    This file is part of Thun
 #
-#    Joypy is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    Joypy is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with Joypy.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 '''
 I really want tracebacks to show which function was being executed when
index 98b12e6..6ae6be4 100644 (file)
@@ -2,20 +2,20 @@
 #
 #    Copyright © 2016 Simon Forman
 #
-#    This file is part of Joypy.
+#    This file is part of Thun.
 #
-#    Joypy is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    Joypy is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with Joypy.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 '''
 Pretty printing support.
index 211bbd2..8f11af7 100644 (file)
@@ -2,20 +2,20 @@
 #
 #    Copyright © 2014, 2015, 2017 Simon Forman
 #
-#    This file is part of joy.py
+#    This file is part of Thun
 #
-#    joy.py is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    joy.py is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with joy.py.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 '''
 
index d337734..3defae7 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -3,27 +3,27 @@
 #
 #    Copyright © 2014, 2015, 2017 Simon Forman
 #
-#    This file is part of joy.py
+#    This file is part of Thun
 #
-#    joy.py is free software: you can redistribute it and/or modify
+#    Thun is free software: you can redistribute it and/or modify
 #    it under the terms of the GNU General Public License as published by
 #    the Free Software Foundation, either version 3 of the License, or
 #    (at your option) any later version.
 #
-#    joy.py is distributed in the hope that it will be useful,
+#    Thun is distributed in the hope that it will be useful,
 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 #    GNU General Public License for more details.
 #
 #    You should have received a copy of the GNU General Public License
-#    along with joy.py.  If not see <http://www.gnu.org/licenses/>.
+#    along with Thun.  If not see <http://www.gnu.org/licenses/>.
 #
 from distutils.core import setup
 from textwrap import dedent
 
 
 setup(
-  name='Joypy',
+  name='Thun',
   version='0.1.0',
   description='Python Implementation of Joy',
   long_description=dedent('''\
@@ -35,10 +35,13 @@ setup(
   author='Simon Forman',
   author_email='forman.simon@gmail.com',
   url='https://osdn.net/projects/joypy',
+  license='GPLv3+',
   packages=['joy', 'joy.utils'],
   classifiers=[
     'Development Status :: 4 - Beta',
     'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)',
     'Programming Language :: Python :: 2.7',
+    'Programming Language :: Other',
+    'Topic :: Software Development :: Interpreters',
     ],
   )