Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

fx

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fx

fx - a functional programming approach

  • 0.3
  • PyPI
  • Socket score

Maintainers
1

====================================== fx - a functional programming approach

::


| | _ | |'| || |,|igher-order function coding.

Introduction

TL;DR - YAGNI.

Inspired by Haskell <http://www.haskell.org/>'s rich set of operators, this is an approach to functional programming with operators in Python <http://www.python.org/>.

"It's fun... It's insane... It's insanely fun."

-- John Doe

Features

  • Currying functions with <<, &
  • Piping output of functions with |
  • Composing functions with **
  • Flipping order of arguments of function with ~
  • and more

Examples

::

from fx import f double_all = f(map) << 2 .mul | list double_all([1, 2, 3]) [2, 4, 6] double_all |= f(map) << str | ' '.join double_all([1, 2, 3]) '2 4 6' sum_upto = 1 .add | f(range) << 1 | sum sum_upto(100) 5050 parse_hex_str = ~f(int) << 16 parse_hex_str('ff') 255 parse_hex_str('c0ffee') 12648430

project euler problem 1

euler_p1 = f(range) << 1 | f(filter) << (lambda n: n % 3 == 0 or n % 5 == 0) | sum euler_p1(10) 23 euler_p1(1000) 233168

project euler problem 20

fact = f(lambda n: 1 if n == 1 else n * fact(n - 1)) euler_p20 = str ** fact | sum ** f(map) << int euler_p20(10) 27 euler_p20(100) 648

Requirements

  • CPython >= 2.6

Installation

Install from PyPI::

pip install fx

Install from source, download source package, decompress, then cd into source directory, run::

make install

License

BSD New, see LICENSE for details.

Documentation: http://fx.readthedocs.org/

Issue Tracker: https://bitbucket.org/pyx/fx/issues/

Source Package @ PyPI: http://pypi.python.org/pypi/fx/

Mercurial Repository @ bitbucket: https://bitbucket.org/pyx/fx/

Git Repository @ Github: https://github.com/pyx/fx/

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc