reflex-ghci: A GHCi widget library for use in reflex applications

[ bsd3, development, frp, library, program ] [ Propose Tags ] [ Report a vulnerability ]

Run GHCi from within a Reflex FRP (https://reflex-frp.org) application and interact with it using a functional reactive interface.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.1.0, 0.1.2.0, 0.1.3.0, 0.1.3.1, 0.1.4.0, 0.1.4.1, 0.1.4.2, 0.1.5.0, 0.1.5.1, 0.1.5.2, 0.1.5.4, 0.2.0.0, 0.2.0.1
Change log ChangeLog.md
Dependencies base (>=4.12 && <4.19), bytestring (>=0.10 && <0.12), containers (>=0.6 && <0.7), directory (>=1.3 && <1.4), filepath (>=1.4 && <1.5), fsnotify (>=0.4 && <0.5), optparse-applicative (>=0.14.0 && <0.19), process (>=1.6 && <1.7), reflex (>=0.7.1.0 && <1), reflex-fsnotify (>=0.3 && <0.4), reflex-ghci, reflex-process (>=0.3.2 && <0.4), reflex-vty (>=0.3 && <0.6), regex-tdfa (>=1.2.3 && <1.4), semialign (>1 && <2), text (>=1.2 && <2.1), these (>1 && <2), unix (>=2.7 && <2.9), vty (>=5.21 && <5.39) [details]
Tested with ghc ==8.6.5 || ==8.8.4 || ==9.6.1
License BSD-3-Clause
Copyright 2020 Obsidian Systems LLC
Author Obsidian Systems LLC
Maintainer maintainer@obsidian.systems
Category FRP, Development
Bug tracker https://github.com/reflex-frp/reflex-ghci/issues
Source repo head: git clone https://github.com/reflex-frp/reflex-ghci
Uploaded by abrar at 2023-08-02T16:27:21Z
Distributions NixOS:0.2.0.1
Executables reflex-ghci
Downloads 2945 total (3 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for reflex-ghci-0.2.0.1

[back to package description]

reflex-ghci

Haskell Hackage BSD3 License

Run GHCi from within a Reflex FRP application and interact with it using a functional reactive interface.

Screenshot

Library

A functional-reactive wrapper around GHCi that uses filesystem notifications to automatically reload haskell source files.

Reflex.Process.GHCi provides the core GHCi process-running infrastructure. If you want to run your own GHCi, directly control when it reloads, or build your own custom interface, look there.

Reflex.Vty.GHCi provides a few widgets that are useful when building a console GHCi interface. Use these components to assemble your own vty GHCi runner.

Executable

This package includes a reflex-vty-based executable, shown above. Module information (errors, warnings, etc) is shown in a scrollable pane on the top half of the screen and the output of any expression you (optionally) choose to evaluate is shown in a scrollable pane on the bottom half. The panes are resizable using the mouse.

$ reflex-ghci -h
Welcome to reflex-ghci 0.1.4.0

Usage: reflex-ghci [-c|--command COMMAND] [-e|--expression EXPR]
  Run a Haskell REPL that automatically reloads when source files change.

Available options:
  -c,--command COMMAND     The ghci/cabal repl command to
                           run (default: "cabal repl --repl-options=-Wall")
  -e,--expression EXPR     The optional expression to evaluate once modules have
                           successfully loaded
  -h,--help                Show this help text

Acknowledgements

Inspired by the fantastic ghcid project.