Change project name to Thun.

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.
This commit is contained in:
Simon Forman 2018-04-21 21:26:41 -07:00
parent 92c15a73e3
commit 669c86cbf1
12 changed files with 60 additions and 57 deletions

View File

@ -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"

22
README
View File

@ -1,7 +1,7 @@
--------------------------------------------------
Joypy
Thun
A dialect of Joy in Python.
@ -11,19 +11,19 @@
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

View 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

View File

@ -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.

View 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.

View 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()

View 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

View 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/>.
#
'''

View 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

View 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.

View 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/>.
#
'''

View File

@ -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',
],
)