Coder Social home page Coder Social logo

kore's Introduction

The Kore Language

Kore is the "core" part of the K framework.

What is Kore all about?

In short, we need a formal semantics of K. In K, users can define formal syntax and semantics of programming languages as K definitions, and automatically obtain parsers, interpreters, compilers, and various verification tools for their languages. Therefore K is a language-independent framework.

Thanks to years of research in matching logic and reachability logic, we know that all K does can be nicely formalized as logic reasoning in matching logic. To give K a formal semantics, we only need to formally specify the underlying matching logic theories with which K does reasoning. In practice, these underlying theories are complex and often infinite, and it is tricky to specify infinite theories without a carefully designed formal specification language. And Kore is such a language.

Structure of this project

The /docs directory contains a comprehensive document Semantics of K that describes the mathematical foundation of Kore, and a BNF grammar that defines the syntax of Kore language.

The /src directory contains a parser for the Kore language implemented in scala.

The /src/test directory contains a collection of Kore definition examples.

Build Dependencies

  • curl and jq for downloading and building latest nightly K.
  • git for checkstyle on the repository history and files.
  • stack for building the Kore project using make.

Example installation of dependencies on Ubuntu:

sudo apt install curl jq git haskell-stack

kore's People

Contributors

15joeybloom avatar ana-pantilie avatar andreiburdusa avatar anvacaru avatar baidi96 avatar bmmoore avatar bohadi avatar cos avatar daejunpark avatar dfilaretti avatar dwightguth avatar ehildenb avatar eviefp avatar grosu avatar lucaspena avatar marick avatar msaxena2 avatar nishantjr avatar phillipharr1s avatar radumereuta avatar rv-jenkins avatar tomtomjhj avatar traiansf avatar ttuegel avatar virgil-serbanuta avatar xc93 avatar yzhang90 avatar

Watchers

 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.