language-oberon: Parser, pretty-printer, and more for the Oberon programming language

[ gpl, language, library, program ] [ Propose Tags ]

The library and the executable support both the original Oberon and the Oberon-2 programming language, as described in the respective language reports.

The original purpose for the library was to be a test of the underlying grammatical-parsers library. The experiment succeeded, so the package can be used in practice.


[Skip to Readme]

Modules

[Last Documentation]

  • Language
    • Language.Oberon
      • Language.Oberon.AST
      • Language.Oberon.Abstract
      • Language.Oberon.ConstantFolder
      • Language.Oberon.Grammar
      • Language.Oberon.Pretty
      • Language.Oberon.Reserializer
      • Language.Oberon.Resolver
      • Language.Oberon.TypeChecker

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.1.1, 0.2, 0.2.1, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.3.3.1
Change log ChangeLog.md
Dependencies base (>=4.12 && <5), base-orphans (>=0.8.2 && <1.0), containers (>=0.5 && <1.0), deep-transformations (>=0.2 && <0.3), directory (<1.4), either (>=5 && <6), filepath (<1.5), grammatical-parsers (>=0.5 && <0.7), input-parsers (>=0.2.2 && <0.4), language-oberon, optparse-applicative, parsers (>=0.12.7 && <0.13), prettyprinter (>=1.2.1 && <1.8), rank2classes (>=1.3 && <1.5), repr-tree-syb (<0.2), template-haskell (>=2.11 && <2.20), text (<3), transformers (>=0.5 && <0.6) [details]
License GPL-3.0-only
Copyright (c) 2018 Mario Blažević
Author Mario Blažević
Maintainer blamario@protonmail.com
Category Language
Home page https://github.com/blamario/language-oberon
Bug tracker https://github.com/blamario/language-oberon/issues
Uploaded by MarioBlazevic at 2022-10-09T09:15:41Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Executables parse
Downloads 2292 total (30 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2022-10-09 [all 2 reports]

Readme for language-oberon-0.3.1

[back to package description]

language-oberon - Oberon parser, pretty-printer, and more

This package provides a library and executable for parsing and processing the source code in programming language Oberon. The following functionality is presently available:

  • Parsing with the grammars specified in the Grammar module.
  • Resolution of identifiers and disambiguation of a parsed AST with the Resolver module.
  • Checking and reporting of type errors with the TypeChecker module.
  • Constant folding with the ConstantFolder module.
  • Re-printing of a parsed AST in its original form, preserving the whitespace and comments, with the Reserializer module.
  • Pretty-printing of a parsed AST with the Pretty module.