Fudgets

From Wikipedia, the free encyclopedia

In computing, Fudgets is a graphical user interface toolkit for the functional programming language Haskell and the X Window System.[1][2] Fudgets makes it easy to create client–server model applications that communicate via the Internet.

Quick Facts Original author(s), Initial release ...
Fudgets
Original author(s)Thomas Hallgren,
Magnus Carlsson
Initial releaseJune 1993; 31 years ago (1993-06)
Stable release
0.18.4 / June 2023; 1 year ago (2023-06)
Written inHaskell
Operating systemPOSIX compatible: Unix, Unix-like, Linux, macOS via XQuartz
PlatformIA-32, x86-64
Available inEnglish
TypeGUI toolkit
Licensefreeware non-commercial
Close

Most of the work on Fudgets was done in 1991-1996 by Thomas Hallgren and Magnus Carlsson.[3]

The authors claim that many of the advantages of Fudgets come from it being programmed in a lazy functional programming language.[4]

The main entity of toolkit is fudget (implemented on low level through stream processors) which has its own input and output.[5] Fudgets can be composed in parallel or sequence, yielding new fudget which can be used in code as any other fudget.

Example

factorialF  = stdoutF >==< mapF (show . factorial . read) >==< stdinF
factorial   :: Integer -> Integer
factorial n = product [1..n]

The code is self-describing considering that >==< is sequential fudget plumbing and mapF is fudget that takes a function of one argument and makes a fudget which output is input applied to that function. Fudget composition must be read from right to left, as a simple function composition. Now you can simply write:

main = fudlogue factorialF

compile and run. For every given integer value it will print its factorial.

License

The software license of Fudgets claims that this software is freeware for non-commercial use only.

References

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.