Intellij Frege Save

IntelliJ IDEA plugin for Frege language

Project README
Plugin logo

IntelliJ IDEA plugin for Frege language

Frege Plugin Build & Test

What is Frege

Frege is a Haskell for the JVM. It is functional, has strong static type system and lazy evaluations, but Frege compiles to Java and runs on JVM. Also, it can use any Java library and can be used inside any Java project.

Read more at Frege github.

Installation

Plugin is available on JetBrains plugin repository.

Current progress

Features implemented partially or completely:

  • Lexer
  • Parser
  • Syntax highlighting and color schemes
  • Gradle-based build system
  • Navigation
  • Find usages
  • Code completion
  • Rename refactoring
  • File templates
  • Index files
  • Frege REPL
  • 'Add import' quickfix for unresolved references
  • Documentation viewer

Features desired:

  • Structure view
  • Formatter
  • More quickfixes
  • More refactorings
  • Type system
  • and more

Examples

Below you can see examples of our plugin:

  • Navigation
    Navigation example
    Navigation example
    Navigation example

  • Navigation depends on imports
    Navigation imports example

  • Navigation to Java (and other JVM-languages)
    Navigation to Java example

  • Navigation from Java (and other JVM-languages)
    Navigation from Java example

  • Line markers

    • To type annotation
      Line marker annotation example
    • To instanced methods and vice versa
      Line marker to from instance
    • Run Frege
      Line marker run Frege
  • Find usages
    Find usages

  • Code completion
    Code completion
    Code completion

  • Rename refactoring
    Rename refactoring

  • Add import quickfix
    Add import quickfix

  • Documentation viewer
    Documentation viewer

  • REPL integration
    REPL integration

  • REPL: execute parts of code
    REPL execution

Contributors

Peter Surkov

Kirill Karnaukhov

Jura Khudyakov

Special thanks to Semyon Atamas and Dierk König!

License

Apache-2.0

Open Source Agenda is not affiliated with "Intellij Frege" Project. README Source: IntelliJ-Frege/intellij-frege
Stars
40
Open Issues
25
Last Commit
1 year ago
License

Open Source Agenda Badge

Open Source Agenda Rating