kandi background

k | K Framework Tools 5.0 | Compiler library

 by   kframework Java Version: v5.2.66 License: BSD-3-Clause

 by   kframework Java Version: v5.2.66 License: BSD-3-Clause

Download this library from

kandi X-RAY | k Summary

k is a Java library typically used in Utilities, Compiler, Framework applications. k has no bugs, it has no vulnerabilities, it has build file available, it has a Permissive License and it has high support. You can download it from GitHub.
The K Framework is a tool for designing and modeling programming languages and software/hardware systems. At the core of the K Framework is a programming, modeling, and specification language called K. The K Framework includes tools for compiling K specifications to build interpreters, model checkers, verifiers, associated documentation, and more.
Support
Support
Quality
Quality
Security
Security
License
License
Reuse
Reuse

kandi-support Support

  • k has a highly active ecosystem.
  • It has 265 star(s) with 99 fork(s). There are 33 watchers for this library.
  • There were 4 major release(s) in the last 6 months.
  • There are 118 open issues and 478 have been closed. On average issues are closed in 120 days. There are 13 open pull requests and 0 closed requests.
  • It has a positive sentiment in the developer community.
  • The latest version of k is v5.2.66
k Support
Best in #Compiler
Average in #Compiler
k Support
Best in #Compiler
Average in #Compiler

quality kandi Quality

  • k has 0 bugs and 0 code smells.
k Quality
Best in #Compiler
Average in #Compiler
k Quality
Best in #Compiler
Average in #Compiler

securitySecurity

  • k has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
  • k code analysis shows 0 unresolved vulnerabilities.
  • There are 0 security hotspots that need review.
k Security
Best in #Compiler
Average in #Compiler
k Security
Best in #Compiler
Average in #Compiler

license License

  • k is licensed under the BSD-3-Clause License. This license is Permissive.
  • Permissive licenses have the least restrictions, and you can use them in most projects.
k License
Best in #Compiler
Average in #Compiler
k License
Best in #Compiler
Average in #Compiler

buildReuse

  • k releases are available to install and integrate.
  • Build file is available. You can build the component from source.
  • Installation instructions, examples and code snippets are available.
  • It has 65993 lines of code, 5784 functions and 589 files.
  • It has high code complexity. Code complexity directly impacts maintainability of the code.
k Reuse
Best in #Compiler
Average in #Compiler
k Reuse
Best in #Compiler
Average in #Compiler
Top functions reviewed by kandi - BETA

kandi has reviewed k and discovered the below as its top functions. This is intended to give you an instant insight into k implemented functionality, and help decide if they suit your requirements.

  • Returns a string representation of the constants .
  • Converts a module to a union of modules .
  • Compute the sentences of a cell .
  • This method converts a rule into a rule .
  • Pro prove a rule .
  • Process a production .
  • Add SVG names to the map .
  • Closes the cell .
  • Process variables in a term .
  • Implementation of the simplification .

k Key Features

Note: we require version 10 or greater for clang, lld, and llvm-tools. If you install this list of dependencies, continue directly to the Build and Install Guide.

k Examples and Code Snippets

Community Discussions

Vulnerabilities

No vulnerabilities reported

Install k

Before building and installing the K Framework, the following prerequisites must first be installed.
Java Development Kit (required JDK11 or higher). To make sure that everything works you should be able to call java -version and javac -version from a terminal. Maven usually requires setting an environment variable JAVA_HOME pointing to the installation directory of the JDK (not to be mistaken with JRE). You can test if it works by calling mvn -version in a terminal. This will provide the information about the JDK Maven is using, in case it is the wrong one. To install, go to https://docs.haskellstack.org/en/stable/README/ and follow the instructions. You may need to do stack upgrade to ensure the latest version of Haskell Stack.
Java Development Kit (required JDK11 or higher) Linux: Download from package manager (e.g. sudo apt-get install openjdk-11-jdk). macOS/brew: Download from package manager (e.g. brew install java). To make sure that everything works you should be able to call java -version and javac -version from a terminal.
LLVM macOS/brew: Since LLVM is distributed as a keg-only package, we must explicitly make it available for command line usage. See the results of the brew info llvm command for more information on how to do this.
Flex / Bison macOS/brew: The versions of these packages supplied by the OS are too old, and are not compatible with the K build. You must ensure that the Homebrew-installed versions are first on your PATH when building K (i.e. which flex is not /usr/bin/flex).
Apache Maven Linux: Download from package manager (e.g. sudo apt-get install maven). macOS/brew: Download it from a package manager or from http://maven.apache.org/download.cgi and follow the instructions on the webpage. Maven usually requires setting an environment variable JAVA_HOME pointing to the installation directory of the JDK (not to be mistaken with JRE). You can test if it works by calling mvn -version in a terminal. This will provide the information about the JDK Maven is using, in case it is the wrong one.
Haskell Stack To install, go to https://docs.haskellstack.org/en/stable/README/ and follow the instructions. You may need to do stack upgrade to ensure the latest version of Haskell Stack.

Support

K currently offers partial support for Apple Silicon; the toolchain has been tested and works on ARM macOS, but is not yet part of our CI/CI pipeline. To build K on an Apple Silicon machine, ensure the following steps are followed in addition to the usual Maven build setup:.

DOWNLOAD this Library from

Reuse Solution Kits and Libraries Curated by Popular Use Cases

Save this library and start creating your kit