Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.2%) to scientific vocabulary
Last synced: 8 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: stipula-language
  • Language: Java
  • Default Branch: master
  • Size: 24 MB
Statistics
  • Stars: 3
  • Watchers: 3
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 4 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Citation

README.md

Stipula Prototype

Stipula is a domain specific language that may assist legal practitioners in programming legal contracts through specific patterns. In this repository, we uploaded the prototype and some examples.

Description

The prototype is a Java application. The development has taken three months and ~3000 lines of Java code. We have committed to the ANTLR tool.

Getting Started

Dependencies

  • The prototype requires a Java version > 8.

Installation

There are two possibilities: * It is possible to install the source code (folder Stipula-LAN) with the Grammar and the parser * It is possible to download and run the jar of the prototype

How to install the source code

Requirements:
  • Java > 8
  • ANTLR > 4.4
Instructions:
  • Download the zip
  • Import the grammar file (Stipula.g4) in the IDE
  • Compile with ANTLR and generate the Parser, Visitor, Listener
  • Import the rest of the project (package src)

How to run the jar

  • After downloading the zip, go to the correct folder (./Stipula Executable)
  • To run the prototype type the following code java -jar stipula_lan.jar name_of_the_example.stipula

Execution

  • When the prototype starts, it displays the type inference
  • Then the agreement starts and displays a unique code for each party of the contract (see example below) -------------------- Lender ef6h4 Borrower MHWBs Authority gxhZZ --------------------
  • The prototype asks the user to insert these codes and the values for some variables
  • Then it shows which functions can start, for instance: # Please, choose which function should run: Lender.offer(Type3 x)[]
  • The user must call the desired function by inserting the corresponding party's code and the values for the formal parameters
  • For instance, if the lender wants to call the function offer with x=10: ef6h4.offer(10)[]
  • Then the prototype executes the body of the chosen function and the execution continues

Owner

  • Name: stipula-language
  • Login: stipula-language
  • Kind: organization
  • Location: Italy

Citation (CITATION.cff)

cff-version: 1.2.0
authors:
  - family-names: Veschetti
    given-names: Adele
    orcid: https://orcid.org/0000-0002-0403-1889
title: "Stipula Prototype"
version: 1
date-released: 2022-07-01

GitHub Events

Total
Last Year