Skip to content

A-LPG/LPG-language-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LPG-language-server

avatar avatar avatar avatar avatar avatar avatar avatar

About LPG-cpp-runtime

C++ runtime for LPG 2.0. This project is a c++ target for LPG2.0

Getting Started with LPG

Getting Started with LPG

Build

Linux / Mac

  1. On linux ,install boost

       $ sudo apt-get install libboost-dev 

    On Mac,install boost on Mac

       $ brew install boost
  2. Restore the submodules.

      $ git submodule init
      $ git submodule update
  3. Building with CMake


$ mkdir _build
$ cd _build
$ cmake -DUri_BUILD_TESTS=OFF ..
$ make -j4

Windows

  1. Restore the submodules.
     git submodule init
     git submodule update
  2. Open cmd or powershell and generate visual studio project with CMake.

mkdir _build
cd _build
cmake -DUri_BUILD_TESTS=OFF -DUri_USE_STATIC_CRT=OFF ..
  1. "cmake -help" is useful if you are not familiar with cmake.

  2. Build it with Visual Studio.

About LPG

The LALR parser generator (LPG) is a tool for developing scanners and parsers written in JavaScript,TypeScript,Python, C#, Java, C++ or C. Input is specified by BNF rules. LPG supports backtracking (to resolve ambiguity), automatic AST generation and grammar inheritance.