Top 1K Features Creators Events Podcasts Books Extensions Interviews Blog Explorer CSV

FLUX

< >

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

#149on 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

- Build the next great programming language · Add · Issues · About · Search · Keywords · Livestreams · Labs · Resources · Acknowledgements

Built with Scroll v154.3.0