Fudgets
In
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 the fact that they are programmed in a
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. Note that 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 license of Fudgets claims that this software is free for non-commercial use only.
References
- ISBN 978-3-540-49270-2.
- ISBN 978-1-4471-3236-3, retrieved 2023-10-26
- ^ Hallgren, Thomas; Carlsson, Magnus (June 6, 2023). "Fudgets Home Page". altocumulus.org. Retrieved October 25, 2023.
- S2CID 9943994.
- ISSN 1469-7653.
External links
- Fudgets home page (latest release marked January 13, 2016)
- Fudgets Phd thesis by Hallgren and Carlsson