[Python-ideas] Pythonect 0.1.0 Release

Guido van Rossum guido at python.org
Sun Apr 1 18:05:22 CEST 2012


April fool, right?

On Sunday, April 1, 2012, Itzik Kotler wrote:

> Hi All,
>
> I'm pleased to announce the first beta release of Pythonect interpreter.
>
> Pythonect is a new, experimental, general-purpose dataflow programming
> language based on Python.
>
> It aims to combine the intuitive feel of shell scripting (and all of its
> perks like implicit parallelism) with the flexibility and agility of
> Python.
>
> Pythonect interpreter (and reference implementation) is written in Python,
> and is available under the BSD license.
>
> Here's a quick tour of Pythonect:
>
> The canonical "Hello, world" example program in Pythonect:
>
> >>> "Hello World" -> print
> <MainProcess:Thread-1> : Hello World
> Hello World
> >>>
>
> '->' and '|' are both Pythonect operators.
>
> The pipe operator (i.e. '|') passes one item at a item, while the other
> operator passes all items at once.
>
>
> Python statements and other None-returning function are acting as a
> pass-through:
>
> >>> "Hello World" -> print -> print
> <MainProcess:Thread-2> : Hello World
> <MainProcess:Thread-2> : Hello World
> Hello World
> >>>
>
> >>> 1 -> import math -> math.log
> 0.0
> >>>
>
>
> Parallelization in Pythonect:
>
> >>> "Hello World" -> [ print , print ]
> <MainProcess:Thread-4> : Hello World
> <MainProcess:Thread-5> : Hello World
> ['Hello World', 'Hello World']
>
> >>> range(0,3) -> import math -> math.sqrt
> [0.0, 1.0, 1.4142135623730951]
> >>>
>
> In the future, I am planning on adding support for multi-processing, and
> even distributed computing.
>
>
> The '_' identifier allow access to current item:
>
> >>> "Hello World" -> [ print , print ] -> _ + " and Python"
> <MainProcess:Thread-7> : Hello World
> <MainProcess:Thread-8> : Hello World
> ['Hello World and Python', 'Hello World and Python']
> >>>
>
> >>> [ 1 , 2 ] -> _**_
> [1, 4]
> >>>
>
>
> True/False return values as filters:
>
> >>> "Hello World" -> _ == "Hello World" -> print
> <MainProcess:Thread-9> : Hello World
> >>>
>
> >>> "Hello World" -> _ == "Hello World1" -> print
> False
> >>>
>
> >>> range(1,10) -> _ % 2 == 0
> [2, 4, 6, 8]
> >>>
>
>
> Last but not least, I have also added extra syntax for making remote
> procedure call easy:
>
> >> 1 -> inc at xmlrpc://localhost:8000 -> print
> <MainProcess:Thread-2> : 2
> 2
> >>>
>
> Download Pythonect v0.1.0 from:
> http://github.com/downloads/ikotler/pythonect/Pythonect-0.1.0.tar.gz
>
> More information can be found at: http://www.pythonect.org
>
>
> I will appreciate any input / feedback that you can give me.
>
> Also, for those interested in working on the project, I'm actively
> interested in welcoming and supporting both new developers and new users.
> Feel free to contact me.
>
>
> Regards,
> Itzik Kotler | http://www.ikotler.org
>


-- 
--Guido van Rossum (python.org/~guido)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20120401/8cf917dc/attachment.html>


More information about the Python-ideas mailing list