Mention the situation with the type code.
I removed it but it's still there in tag v0.4.0 if you want to look at it. The Prolog code is just sooooooooo much more elegant. it's a rare case, and a hard decision, but the right thing to do is throw away working code. Wow.
This commit is contained in:
parent
8bd0e7ce0e
commit
1cbeb5d866
|
|
@ -2,6 +2,11 @@
|
||||||
Type Inference of Joy Expressions
|
Type Inference of Joy Expressions
|
||||||
=================================
|
=================================
|
||||||
|
|
||||||
|
UPDATE: May 2020 - I removed the type inference code in `joy.utils.types`
|
||||||
|
but you can find it in the `v0.4.0` tag here:
|
||||||
|
https://osdn.net/projects/joypy/scm/hg/Joypy/tags
|
||||||
|
|
||||||
|
|
||||||
Two kinds of type inference are provided, a simple inferencer that can
|
Two kinds of type inference are provided, a simple inferencer that can
|
||||||
handle functions that have a single stack effect (aka "type signature")
|
handle functions that have a single stack effect (aka "type signature")
|
||||||
and that can generate Python code for a limited subset of those
|
and that can generate Python code for a limited subset of those
|
||||||
|
|
@ -80,11 +85,6 @@ auto-compiled to Python)::
|
||||||
unswons = ([a1 ...1] -- [...1] a1) *
|
unswons = ([a1 ...1] -- [...1] a1) *
|
||||||
|
|
||||||
|
|
||||||
.. automodule:: joy.utils.types
|
|
||||||
:members:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Example output of the ``infer()`` function. The first number on each
|
Example output of the ``infer()`` function. The first number on each
|
||||||
line is the depth of the Python stack. It goes down when the function
|
line is the depth of the Python stack. It goes down when the function
|
||||||
backtracks. The next thing on each line is the currently-computed stack
|
backtracks. The next thing on each line is the currently-computed stack
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue