functional programming

Tim Peters tim_one at email.msn.com
Mon Feb 28 03:42:19 EST 2000


[John "Max" Skaller, on his nascent Python compiler,
 IIRC compiling to ocaml]
> 	Vyper. on the other hand, is designed to do functional programming
> well, but you can 'force it' to make Python work too :-) [you do this
> by coding your module in a .py file, use a .vy file for the full thing]
>
> 	The latest version even supports 'pattern matching' like in ML,
> with a pythonic twist. As you know, Python allows an escape from
> block structure using bracket balancing rules -- Vyper also supports
> the converse, allowing an arbitrary suite to be nested in an expression
> using enblock <: and deblock :> symbols.

FYI, Donald Beaudry once made a patch to support block bracketing via (: and
:) -- which glyphs Steven Majewski dubbed the "smiling Guido" and "frowning
Guido".  Your glyphs seem somehow more phallic <wink>.  BTW, unclear what
pattern matching has to do with embedding suites in expressions.

> Such an expression-nested suite has the same value it would were it
> a nested parameterless function, namely None unless something is
> 'return'ed.
>
> 	Combined with lexical scoping, Vyper is a fairly reasonable
> dynamic functional language, as well as being procedural and object
> oriented :-)

While Vyper sounds less like Python by the week, at least I'll enjoy playing
with it!  What of the reason you originally undertook this?  That is,
besides general frustration, you had specific unhappiness about the speed of
your Interscript:

> download Interscript http://Interscript.sourceforge.net

Can you run Interscript under Vyper yet?  If so, fast enough now?  Just a
gentle reminder that the market for new functional languages has been
fatally over-served for most of my adult life <0.5 wink>, but the market for
a fast Python may approach the size of the worldwide market for BBQ-flavored
salt-free potato chips someday.

in-a-world-of-six-billion-that's-bigger-than-it-sounds-ly y'rs  - tim






More information about the Python-list mailing list