[Python-ideas] Pythonect 0.1.0 Release
Itzik Kotler
xorninja at gmail.com
Sun Apr 1 20:22:58 CEST 2012
It might be April fools, but its not a fool's concept :-)
Regards,
Itzik Kotler | http://www.ikotler.org
On Sun, Apr 1, 2012 at 7:05 PM, Guido van Rossum <guido at python.org> wrote:
> 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 <http://python.org/%7Eguido>)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20120401/3a75f656/attachment.html>
More information about the Python-ideas
mailing list