GithubHelp home page GithubHelp logo

goldfirere / ghc-proposals Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ghc-proposals/ghc-proposals

5.0 3.0 2.0 3.22 MB

Proposed compiler and language changes for GHC and GHC/Haskell

Home Page: http://www.haskell.org/ghc

ghc-proposals's Introduction

GHC Proposals

This repository contains specifications for proposed changes to the Glasgow Haskell Compiler. The purpose of the GHC proposal process, and of the GHC Steering Committee, is to broaden the discussion of the evolution of GHC.

What is a proposal?

A GHC Proposal is a document describing a proposed change to the compiler, the GHC/Haskell language, or the libraries in the GHC.* module namespace. These include,

  • A syntactic change to GHC/Haskell (e.g. the various ShortImports proposals, do expressions without $)
  • A major change to the user-visible behaviour of the compiler (e.g. the recent change in super-class solving, and -Wall behavior)
  • The addition of major features to the compiler (e.g. -XTypeInType, GHCi commands, type-indexed Typeable representations)

Where can I find proposals currently under discussion?

Proposal discussion occurs on GitHub pull requests. See the Pull Requests list list for the list of active discussions. To see the text of the proposal click on the Files Changed tab on corresponding Pull Request page.

Expectations from discussion participants

Members of the Haskell community are warmly invited to offer feedback on proposals. Feedback ensures that a variety of perspectives are heard, that alternative designs are considered, and that all of the pros and cons of a design are uncovered. We particularly encourage the following types of feedback,

  • Completeness: Is the proposal missing a case?
  • Soundness: Is the specification sound or does it include mistakes?
  • Alternatives: Are all reasonable alternatives listed and discussed. Are the pros and cons argued convincingly?
  • Costs: Are the costs for implementation believable? How much would this hinder learning the language?
  • Other questions: Ask critical questions that need to be resolved.
  • Motivation: Is the motivation reasonable?

How do I comment on a proposal?

To comment on a proposal you need to be viewing the proposal's diff in "source diff" view. To switch to this view use the buttons on the top-right corner of the Files Changed tab.

The view selector buttons.

Use the view selector buttons on the top right corner of the "Files Changed" tab to change between "source diff" and "rich diff" views.

Feedback on a open pull requests can be offered using both GitHub's in-line and pull request commenting features. Inline comments can be added by hovering over a line of the diff.

The ``+`` button appears while hovering over line in the source diff view.

Hover over a line in the source diff view of a pull request and click on the + to leave an inline comment

For the maintenance of general sanity, try to avoid leaving "me too" comments. If you would like to register your approval or disapproval of a particular comment or proposal, feel free to use GitHub's "Reactions" feature.

How do I submit a proposal?

See the Proposal Submission page.

How are proposals decided upon?

Proposals are ultimately evaluated by the GHC Steering Committee based upon a number of criteria and in light of community feedback.

Who do I contact if I have questions about the process?

Feel free to contact any of the members of the GHC Steering Committee with questions. Email and IRC (#ghc on irc.freenode.net) are both good ways of accomplishing this.

ghc-proposals's People

Contributors

bgamari avatar cblp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

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.