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:
parent
92c15a73e3
commit
669c86cbf1
4
Makefile
4
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"
|
||||
|
||||
|
||||
|
|
|
|||
22
README
22
README
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
10
docs/repl.py
10
docs/repl.py
|
|
@ -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.
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
|
|
|
|||
|
|
@ -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()
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -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/>.
|
||||
#
|
||||
'''
|
||||
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
|
|
|
|||
|
|
@ -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/>.
|
||||
#
|
||||
'''
|
||||
|
||||
|
|
|
|||
13
setup.py
13
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',
|
||||
],
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in New Issue