Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
..
Failed to load latest commit information.
.vscode
examples
factorial_example
helloworld
railway_oriented_programming
sorting
README.md
domain_modeling.py

README.md

These are some sample code file for my presentation to the Tucson Python Meetup on 4/11/2017


You are probably already doing some Functional Programming and don't even know it.

We write (class-free) functions in Python, we pass around functions like objects, we use map, filter, and zip, we use lambdas, and we might even be using functools and itertools.

These are some features that make Python very powerful. In this talk we will find out how to extend the Functional Programming features of Python to make it even more awesome. Come see how you can program in a functional style with the Coconut language.

Coconut gives us some great features of a functional language including:

partial application lambdas (of course) pattern matching pipelines function composition parallel programming (Ohhhh!) algebraic data types (my personal favorite)

And more ... .

More about Coconut http://coconut-lang.org/ Coconut is a functional programming language that compiles to Python. Since all valid Python is valid Coconut, using Coconut will only extend and enhance what you're already capable of in Python.

Why use Coconut? Coconut is built to be fundamentally useful. Coconut enhances the repertoire of Python programmers to include the tools of modern functional programming, in such a way that those tools are easy to use and immensely powerful; that is, Coconut does to functional programming what Python did to imperative programming. And Coconut code runs the same on any Python version, making the Python 2/3 split a thing of the past.

More on Functional Programming: https://en.wikipedia.org/wiki/Functional_programming