Top 1,000 Features Creators Events Podcasts Extensions Interviews Blog Explorer CSV

FLUX

< >

FLUX is an open source programming language created in 2014 by Paul O’Shannessy.

#143on PLDB 10Years Old 187Repos
Download source code:
git clone https://github.com/facebook/flux
Homepage · Source Code · Docs

Application Architecture for Building User Interfaces


Example from the web:
// concrete node signatures Listen () => (int socket); ReadRequest (int socket) => (int socket, bool close, image_tag *request); CheckCache (int socket, bool close, image_tag *request) => (int socket, bool close, image_tag *request); // omitted for space: // ReadInFromDisk, StoreInCache Compress (int socket, bool close, image_tag *request, __u8 *rgb_data) => (int socket, bool close, image_tag *request); Write (int socket, bool close, image_tag *request) => (int socket, bool close, image_tag *request); Complete (int socket, bool close, image_tag *request) => (); // source node source Listen => Image; // abstract node Image = ReadRequest -> CheckCache -> Handler -> Write -> Complete; // predicate type & dispatch typedef hit TestInCache; Handler:[_, _, hit] = ; Handler:[_, _, _] = ReadInFromDisk -> Compress -> StoreInCache; // error handler handle error ReadInFromDisk => FourOhFor; // atomicity constraints atomic CheckCache:{cache}; atomic StoreInCache:{cache}; atomic Complete:{cache};

Language features

Feature Supported Example Token
Comments
// A comment
Line Comments
// A comment
//
Semantic Indentation X

View source

- Build the next great programming language · About · Resources · Acknowledgements · Part of the World Wide Scroll