Package maintainers and Hackage trustees are allowed to edit certain bits
of package metadata after a release, without uploading a new tarball.
Note that the tarball itself is never changed, just the metadata that is
stored separately. For more information about metadata revisions, please
refer to the
Hackage Metadata Revisions FAQ.
No. |
Time |
User |
SHA256 |
-r6 (halive-0.1.0.0-r6) |
2015-06-25T21:54:52Z |
AdamBergmark |
3c5e2508b2b5e46d6cbcc10816b3f18ed86f5e203dd5ddc3f23cbb0799527467
|
|
|
-r5 (halive-0.1.0.0-r5) |
2015-05-26T09:21:56Z |
lukexi |
e43573da2ec77f710de6947135573f7ef292661104f70af5c9722286f97f2cfa
|
|
Changed description
from Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif>>
/Usage:/
> halive path/to/myfile.hs extra/includes
See <https://github.com/lukexi/halive/blob/master/README.md README>
to Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif>>
/Usage:/
> halive path/to/myfile.hs [optionally any/extra include/dirs ..]
See <https://github.com/lukexi/halive/blob/master/README.md README>
|
-r4 (halive-0.1.0.0-r4) |
2015-05-26T09:17:29Z |
lukexi |
c70d6b6f52ad663b84895b746724c303f537cee8639713252e4bce37fd5143e0
|
|
Changed description
from Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif>>
to Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif>>
/Usage:/
> halive path/to/myfile.hs extra/includes
See <https://github.com/lukexi/halive/blob/master/README.md README>
|
-r3 (halive-0.1.0.0-r3) |
2015-05-26T09:14:56Z |
lukexi |
06cae8bd9ed060239e0398e1caa952d73a33f56fdaea3eab60a33a1fa7d1aab5
|
|
Changed homepage
from tree.is
to https://github.com/lukexi/halive Changed bug-reports
https://github.com/lukexi/halive/issues Changed description
from Live recompiler for Haskell
<http://lukexi.github.io/HaliveDemo.gif Halive Demo>
Halive uses the GHC API to instantly recompile
and reload your code any time you change it.
Usage:
> halive <path/to/mymain.hs> <extra-include-dirs>
Any time you change a file in the current directory or its
subdirectories,
halive will recompile and rerun the 'main' function in the file you gave
it.
If the program is long-running (e.g. a daemon, GUI or game loop) it will
be
killed and restarted. Learn how to maintain state in the next section.
Try a live-coding GL demo by running 'halive demo/Main.hs' (in the
source package)
and changing values in 'Main.hs' and 'Green.hs'
(requires 'gl', 'GLFW-b', 'foreign-store', 'linear', and 'random').
/Keeping values alive/
To keep state alive, import 'Halive.Utils' and wrap
your value in 'reacquire' along with a unique identifier, like:
> win <- reacquire 0 (setupGLFW \"HotGLFW\" 640 480)
to only create the resource the first time you run the program, and then
reuse it on subsequent recompilations.
You can see this in action in 'test/glfw.hs'.
Thanks to Chris Done's
<https://hackage.haskell.org/package/foreign-store foreign-store>
library for enabling this.
/Notes/
Creating, updating, and deleting modules in the include path should
work fine during a Halive session.
Halive also supports Cabal sandboxes;
if run within a directory containing a cabal.sandbox.config file it will
use the package database defined therein.
Halive also works nicely with either batch-processing or run-loop type
programs — if the program finishes, it will be restarted on next save,
and if it's still running, it will be killed and restarted on save.
To kill Halive during run-loop type programs, you may need to hold down
Ctrl-C
to get GHC to recognize the double-Control-C-kill sequence.
<http://twitter.com/lukexi @lukexi>
to Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif>>
|
-r2 (halive-0.1.0.0-r2) |
2015-05-26T09:02:48Z |
lukexi |
306f2c2c3e8006f520b52ab5b79f7e2ed97140ae4b5d8c764b2bc9af21d6c548
|
|
Changed description
from @
> ██╗ ██╗ █████╗ ██╗ ██╗██╗ ██╗███████╗
> ██║ ██║██╔══██╗██║ ██║██║ ██║██╔════╝
> ███████║███████║██║ ██║██║ ██║█████╗
> ██╔══██║██╔══██║██║ ██║╚██╗ ██╔╝██╔══╝
> ██║ ██║██║ ██║███████╗██║ ╚████╔╝ ███████╗
> ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝ ╚══════╝
@
Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif Halive Demo>>
Halive uses the GHC API to instantly recompile
and reload your code any time you change it.
Usage:
@cabal install@
and then
@halive \<path\/to\/mymain.hs> \<extra-include-dirs>@
Any time you change a file in the current directory or its
subdirectories,
halive will recompile and rerun the @main@ function in the file you gave
it.
If the program is long-running (e.g. a daemon, GUI or game loop) it will
be
killed and restarted. Learn how to maintain state in the next section.
Try a live-coding GL demo by running @halive demo\/Main.hs@ (in the
source package)
and changing values in @Main.hs@ and @Green.hs@
(requires @gl@, @GLFW-b@, @foreign-store@, @linear@, and @random@).
== Keeping values alive
To keep state alive, import @Halive.Utils@ and wrap
your value in @reacquire@ along with a unique identifier, like:
@win \<- reacquire 0 (setupGLFW \"HotGLFW\" 640 480)@
to only create the resource the first time you run the program, and then
reuse it on subsequent recompilations.
You can see this in action in @test\/glfw.hs@.
Thanks to Chris Done\'s
<https://hackage.haskell.org/package/foreign-store @foreign-store@>
library for enabling this.
== Notes
Creating, updating, and deleting modules in the include path should
work fine during a Halive session.
Halive also supports Cabal sandboxes;
if run within a directory containing a cabal.sandbox.config file it will
use the package database defined therein.
Halive also works nicely with either batch-processing or run-loop type
programs — if the program finishes, it will be restarted on next save,
and if it\'s still running, it will be killed and restarted on save.
To kill Halive during run-loop type programs, you may need to hold down
Ctrl-C
to get GHC to recognize the double-Control-C-kill sequence.
<http://twitter.com/lukexi \@lukexi>
to Live recompiler for Haskell
<http://lukexi.github.io/HaliveDemo.gif Halive Demo>
Halive uses the GHC API to instantly recompile
and reload your code any time you change it.
Usage:
> halive <path/to/mymain.hs> <extra-include-dirs>
Any time you change a file in the current directory or its
subdirectories,
halive will recompile and rerun the 'main' function in the file you gave
it.
If the program is long-running (e.g. a daemon, GUI or game loop) it will
be
killed and restarted. Learn how to maintain state in the next section.
Try a live-coding GL demo by running 'halive demo/Main.hs' (in the
source package)
and changing values in 'Main.hs' and 'Green.hs'
(requires 'gl', 'GLFW-b', 'foreign-store', 'linear', and 'random').
/Keeping values alive/
To keep state alive, import 'Halive.Utils' and wrap
your value in 'reacquire' along with a unique identifier, like:
> win <- reacquire 0 (setupGLFW \"HotGLFW\" 640 480)
to only create the resource the first time you run the program, and then
reuse it on subsequent recompilations.
You can see this in action in 'test/glfw.hs'.
Thanks to Chris Done's
<https://hackage.haskell.org/package/foreign-store foreign-store>
library for enabling this.
/Notes/
Creating, updating, and deleting modules in the include path should
work fine during a Halive session.
Halive also supports Cabal sandboxes;
if run within a directory containing a cabal.sandbox.config file it will
use the package database defined therein.
Halive also works nicely with either batch-processing or run-loop type
programs — if the program finishes, it will be restarted on next save,
and if it's still running, it will be killed and restarted on save.
To kill Halive during run-loop type programs, you may need to hold down
Ctrl-C
to get GHC to recognize the double-Control-C-kill sequence.
<http://twitter.com/lukexi @lukexi>
|
-r1 (halive-0.1.0.0-r1) |
2015-05-26T08:56:38Z |
lukexi |
0255fbf6bb4fe9205ac54d5ffc56b8b5585f4b55d1cf0ac88b260701b97e44b3
|
|
Changed description
from > ██╗ ██╗ █████╗ ██╗ ██╗██╗ ██╗███████╗
> ██║ ██║██╔══██╗██║ ██║██║ ██║██╔════╝
> ███████║███████║██║ ██║██║ ██║█████╗
> ██╔══██║██╔══██║██║ ██║╚██╗ ██╔╝██╔══╝
> ██║ ██║██║ ██║███████╗██║ ╚████╔╝ ███████╗
> ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝ ╚══════╝
Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif Halive Demo>>
Halive uses the GHC API to instantly recompile
and reload your code any time you change it.
Usage:
@cabal install@
and then
@halive \<path\/to\/mymain.hs> \<extra-include-dirs>@
Any time you change a file in the current directory or its
subdirectories,
halive will recompile and rerun the @main@ function in the file you gave
it.
If the program is long-running (e.g. a daemon, GUI or game loop) it will
be
killed and restarted. Learn how to maintain state in the next section.
Try a live-coding GL demo by running @halive demo\/Main.hs@ (in the
source package)
and changing values in @Main.hs@ and @Green.hs@
(requires @gl@, @GLFW-b@, @foreign-store@, @linear@, and @random@).
== Keeping values alive
#keeping-values-alive#
To keep state alive, import @Halive.Utils@ and wrap
your value in @reacquire@ along with a unique identifier, like:
@win \<- reacquire 0 (setupGLFW \"HotGLFW\" 640 480)@
to only create the resource the first time you run the program, and then
reuse it on subsequent recompilations.
You can see this in action in @test\/glfw.hs@.
Thanks to Chris Done\'s
<https://hackage.haskell.org/package/foreign-store @foreign-store@>
library for enabling this.
== Notes
#notes#
Creating, updating, and deleting modules in the include path should
work fine during a Halive session.
Halive also supports Cabal sandboxes;
if run within a directory containing a cabal.sandbox.config file it will
use the package database defined therein.
Halive also works nicely with either batch-processing or run-loop type
programs — if the program finishes, it will be restarted on next save,
and if it\'s still running, it will be killed and restarted on save.
To kill Halive during run-loop type programs, you may need to hold down
Ctrl-C
to get GHC to recognize the double-Control-C-kill sequence.
<http://twitter.com/lukexi \@lukexi>
to @
> ██╗ ██╗ █████╗ ██╗ ██╗██╗ ██╗███████╗
> ██║ ██║██╔══██╗██║ ██║██║ ██║██╔════╝
> ███████║███████║██║ ██║██║ ██║█████╗
> ██╔══██║██╔══██║██║ ██║╚██╗ ██╔╝██╔══╝
> ██║ ██║██║ ██║███████╗██║ ╚████╔╝ ███████╗
> ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝ ╚══════╝
@
Live recompiler for Haskell
<<http://lukexi.github.io/HaliveDemo.gif Halive Demo>>
Halive uses the GHC API to instantly recompile
and reload your code any time you change it.
Usage:
@cabal install@
and then
@halive \<path\/to\/mymain.hs> \<extra-include-dirs>@
Any time you change a file in the current directory or its
subdirectories,
halive will recompile and rerun the @main@ function in the file you gave
it.
If the program is long-running (e.g. a daemon, GUI or game loop) it will
be
killed and restarted. Learn how to maintain state in the next section.
Try a live-coding GL demo by running @halive demo\/Main.hs@ (in the
source package)
and changing values in @Main.hs@ and @Green.hs@
(requires @gl@, @GLFW-b@, @foreign-store@, @linear@, and @random@).
== Keeping values alive
To keep state alive, import @Halive.Utils@ and wrap
your value in @reacquire@ along with a unique identifier, like:
@win \<- reacquire 0 (setupGLFW \"HotGLFW\" 640 480)@
to only create the resource the first time you run the program, and then
reuse it on subsequent recompilations.
You can see this in action in @test\/glfw.hs@.
Thanks to Chris Done\'s
<https://hackage.haskell.org/package/foreign-store @foreign-store@>
library for enabling this.
== Notes
Creating, updating, and deleting modules in the include path should
work fine during a Halive session.
Halive also supports Cabal sandboxes;
if run within a directory containing a cabal.sandbox.config file it will
use the package database defined therein.
Halive also works nicely with either batch-processing or run-loop type
programs — if the program finishes, it will be restarted on next save,
and if it\'s still running, it will be killed and restarted on save.
To kill Halive during run-loop type programs, you may need to hold down
Ctrl-C
to get GHC to recognize the double-Control-C-kill sequence.
<http://twitter.com/lukexi \@lukexi>
|
-r0 (halive-0.1.0.0-r0) |
2015-05-26T08:52:26Z |
lukexi |
8e484c8dc75d1b496e0feb41b9bb5bd81061df83259dbfeea69c090695d6d99b
|
|
|