GithubHelp home page GithubHelp logo

uvmhs's People

Contributors

davdar avatar isweet avatar ptival avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

uvmhs's Issues

Documentation: Monad Transformers

The project should document how to use the various monad transformers, and associated combinators.

Emphasis should be placed on ways in which transformers differ from popular packages like mtl. For example, no Traversable means that certain patterns are different.

Suggestion: lower bound on `base`

AFAICT, now that UVMHS uses Template Haskell's examineCode, it is no longer compatible with GHC < 9.

Attempting to compile with, say, 8.10.7 proceeds for a while before hitting such a symbol and complains that it does not exist.

I think adding a >= 4.15 lower bound to base would make this fail earlier.

Documentation: Parser Combinators

The project should document the parser combinator library.

Perhaps an example of developing a parser with all the fixings — left recursion, location information, … — and text explaining as you go.

David D can spin up a parser very quickly, but others can’t.

Documentation: Package Interoperability

The project should document how to interoperate with existing Haskell packages that don’t use UVMHS.

This could include things like…

  • How to convert to / from Haskell types
  • How to safely interact with infinite data structures (because UVMHS assumes strict Haskell)

Hardcoding background color can be problematic

The following create a couple of issues:

[ ppFormat (formats [BG grayLight]) $ ppString "«"

  1. For users with a dark terminal, the foreground text is often white or close, resulting in almost zero contrast between background and foreground.
  2. Regardless of user background/foreground terminal, this also plays poorly with the current defaults, say for keywords.

image

In this screenshot, both effects can be seen, the double quotes, as well as the let keyword, are barely legible.

I feel like this ought to be configured via PrettyParams, so that users can at least override it.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.