mirror of
https://github.com/quantum9Innovation/suntheme.git
synced 2024-11-28 11:03:50 -08:00
14 lines
725 B
Markdown
14 lines
725 B
Markdown
|
# Suntheme
|
||
|
|
||
|
runs a script on sunrise and sunset, written in pure haskell.
|
||
|
|
||
|
You may be wondering how a program written in Haskell, the purely functional
|
||
|
programming language, could possibly act on the real world by running a so-called "script".
|
||
|
|
||
|
It's simple. We take in the entire World as an input to a pure function, the IO Monad.
|
||
|
It then maps the original World to the changed World, with our desired IO actions carefully applied.
|
||
|
|
||
|
> From the second perspective, an IO action transforms the whole world. IO actions are actually pure, because they receive a unique world as an argument and then return the changed world.
|
||
|
|
||
|
See [this](https://lean-lang.org/functional_programming_in_lean/monads/io.html) for more information.
|