Pylude
Cloning the Haskell-Prelude for Python3 : http://hackage.haskell.org/package/base-4.8.1.0/docs/Prelude.html
* MAKING PYTHON GREAT AGAIN! *
Features
The newType function
Just, Nothing = newType('Maybe', ('Just', 1), ('Nothing', 0), deriving={Eq, Show})
constructor matching
def isJust(x):
return Just(match=x)
def isNothing(x):
return x==Nothing
type-classes
def mapB(func, b):
return b
T, F = newType("B", ("T",0), ("F",0), deriving={Eq, Show}, implements={Functor : {"fmap" : mapB} })
print(fmap(lambda x: x*2, T)) # 'T()'
operators
# Application operator $ as |
@pylu
def f(x):
return x
print( f | (lambda x: x*3) | (lambda x: x+1) | 2) #9
# Function composition . as *
g = (lambda x: x*3) * f * (lambda x: x+1) * (lambda x: x+1)
print(g(2)) #8
Metadata
Release files for pylude 0.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pylude-0.0.8.tar.gz | 11.8 kB | Details |
Release files / pylude-0.0.8.tar.gz
| Download URL | pylude-0.0.8.tar.gz |
|---|---|
| Size | 11.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9f0a22eca1bc0b15b19c8fddc89739b0ac37ef5954eaaa31ff239f4d33100fc0
|
|
BLAKE2b-256 checksum How to use checksums |
f0c042186f3cf94b24c964990d3d0520ded8bd3cfaeb00acbeed18e8abb3dbf2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |