pypette - Ridiculously simple flow controller for building complex pipelines

  •        1

pypette (to be read as pipette) is a module which makes building pipelines ridiculously simple, allowing users to control the flow with minimal instructions. The basic unit of execution, say a python method or a callable.

https://csurfer.github.io/pypette
https://github.com/csurfer/pypette

Tags
Implementation
License
Platform

   




Related Projects

aioprocessing - A Python 3.4+ library that integrates the multiprocessing module with asyncio

  •    Python

The aioprocessing objects can be used just like their multiprocessing equivalents - as they are in func above - but they can also be seamlessly used inside of asyncio coroutines, without ever blocking the event loop. In most cases, this library makes blocking calls to multiprocessing methods asynchronous by executing the call in a ThreadPoolExecutor, using asyncio.run_in_executor(). It does not re-implement multiprocessing using asynchronous I/O. This means there is extra overhead added when you use aioprocessing objects instead of multiprocessing objects, because each one is generally introducing a ThreadPoolExecutor containing at least one threading.Thread. It also means that all the normal risks you get when you mix threads with fork apply here, too (See http://bugs.python.org/issue6721 for more info).

microjob - A tiny wrapper for turning Node

  •    TypeScript

A tiny wrapper for turning Node.js threads in easy-to-use routines for CPU-bound. Microjob is a tiny wrapper for Node.js threads and is intended to perform heavy CPU loads using anonymous functions. So, Microjob treats Node.js threads as temporary working units: if you need to spawn a long-living thread, then you should use the default API.

billiard - Multiprocessing Pool Extensions

  •    Python

billiard is a fork of the Python 2.7 multiprocessing package. The multiprocessing package itself is a renamed and updated version of R Oudkerk's pyprocessing package. This standalone variant draws its fixes/improvements from python-trunk and provides additional bug fixes and improvements. Please report bugs related to multiprocessing at the Python bug tracker. Issues related to billiard should be reported at http://github.com/celery/billiard/issues.

C++ Portable Types Library (PTypes)

  •    C++

PTypes is a simple alternative to the STL that includes multithreading and networking. It defines dynamic strings, character sets, lists and other basic data types along with threads, synchronization primitives, named pipes and IP sockets.

Do Work in Background Thread to Keep GUI Responsive

  •    DotNet

Demonstrate simple example of using BackgroundWorker class to do work on a background thread and then update the GUI in a thread-safe manner.


Sidekiq - Simple, efficient background processing for Ruby

  •    Ruby

Simple, efficient background processing for Ruby. Sidekiq uses threads to handle many jobs at the same time in the same process. It does not require Rails but will integrate tightly with Rails 3/4 to make background processing dead simple. Sidekiq uses multithreading so it is much more memory efficient than Resque (which forks a new process for every job).

FiberTaskingLib - A library for enabling task-based multi-threading

  •    C++

This is a library for enabling task-based multi-threading. It allows execution of task graphs with arbitrary dependencies. Dependencies are represented as atomic counters. Under the covers, the task graph is executed using fibers, which in turn, are run on a pool of worker threads (one thread per CPU core). This allows the scheduler to wait on dependencies without task chaining or context switches.

yew - Rust framework for building client web apps

  •    Rust

Yew is a modern Rust framework inspired by Elm and ReactJS for creating multi-threaded frontend apps with WebAssembly. NEW! The framework supports multi-threading & concurrency out of the box. It uses Web Workers API to spawn actors (agents) in separate threads and uses a local scheduler attached to a thread for concurrent tasks.

MSDK - Multithreading SDK

  •    C++

Multithreading SDK: cross-platform synchronization primitives, thread support, and multithreading applications. All delivered as C++ classes. Supports Win32 (natively and MSVCRT) and Linux (Pthread).

imgp - Multi-core batch image resizer and rotator

  •    Python

imgp is a command line image resizer and rotator for JPEG and PNG images. It can resize (or thumbnail) and rotate thousands of images in a go, at lightning speed, while saving significantly on storage. Powered by multiprocessing, an intelligent adaptive algorithm, recursive operations, shell completion scripts, EXIF preservation (and more), imgp is a very flexible utility with well-documented easy to use options.

xNet

  •    DotNet

xNet - a class library for .NET Framework, which includes: - Classes for work with proxy servers: HTTP, Socks4 (and), Socks5. - Classes for work with HTTP 1.0/1.1 protocol: keep-alive, gzip, deflate, chunked, SSL, proxies and more. - Classes for work with multithreading: _a...

Wefts++ threading library

  •    C++

A C++ high-level yet efficent multithreading library, portable across pthread-enabled platforms (and at a later developement stage also natively on windows). Implements also low level primitives for faster multithreading.

Mikado Cooperative Multithreading

  •    

Cross-platform cooperative multithreading library

tabard

  •    C

GNU Prolog API for distributed multithreading programming built on top of the PM2 environment. The thread management is made with a user-level multithreading library and communication is made on top of Madeleine, the communication subsystem of PM2.

lanes - Lanes is a lightweight, native, lazy evaluating multithreading library for Lua 5

  •    C

Lanes is a lightweight, native, lazy evaluating multithreading library for Lua 5.1, 5.2 and 5.3.

multithread.js - In-browser multithreading made easy

  •    Javascript

In-browser multithreading made easy. Run any business logic you like without interrupting the user experience.

Overdrive - ⚡️ Fast async task based Swift framework with focus on type safety, concurrency and multi threading

  •    Swift

Our apps constantly do work. The faster you react to user input and produce an output, the more likely is that the user will continue to use your application. As our applications grow in complexity, the more and more work needs to be done. You need to start thinking about how to categorize and optimize work, how to make that work more efficient, more optimized and finally, faster. In most cases that doesn’t end very well because you need to know a lot about concurrency, multithreading etc. - it’s a very complex field. You need to know all API specifics before you are able to write something. Overdrive was created as a result of that struggle. It is a framework that exposes several simple concepts which are made on top of complex system frameworks that enable multithreading, concurrency and most importantly, more speed.

GeneticSharp - GeneticSharp is a fast, extensible, multi-platform and multithreading C# Genetic Algorithm library that simplifies the development of applications using Genetic Algorithms (GAs)

  •    CSharp

GeneticSharp is a fast, extensible, multi-platform and multithreading C# Genetic Algorithm library that simplifies the development of applications using Genetic Algorithms (GAs). Can be used in any kind of .NET Core and .NET Framework apps, like ASP .NET MVC, ASP .NET Core, Web Forms, UWP, Windows Forms, GTK#, Xamarin and Unity3D games.

Signal Safe Threads

  •    C

Signal Safe Threads (sst) provides a threads package with a number of improvements over most threads packages.

node-threads-a-gogo - TAGG :: threads_a_gogo :: Simple and fast JavaScript threads for Node.js

  •    Javascript

Threads à gogo (*) is a native module for Node.js that provides an asynchronous, evented and/or continuation passing style API for moving blocking/longish CPU-bound tasks out of Node's event loop to JavaScript threads that run in parallel in the background and that use all the available CPU cores automatically; all from within a single Node process. You need a node with a v8 >= 3.2.4 to run this module. Any node >= 0.5.1 comes with a v8 >= 3.2.4.