(C) 2016-2018 by Damir Cavar
The Free Linguistic Environment (FLE) is a project to develop a grammar engineering platform for the Lexical Functional Grammar (LFG) framework. The parser in FLE is geared towards parsing natural language sentences using grammars written in the LFG. It is mainly developed using C++11 or newer C++ language specifications.
The main contribution in this code collection is the definition of the Xerox Linguistic Environment (XLE) grammar formalism. The different grammar parts and formalisms have been mostly completely defined using BNFC. You can use BNFC to generate the parser code for the grammar files and formalisms. Any code target that BNFC supports can be generated, that is in particular C++, Haskell, Java, C#, etc.
If anybody is interested in taking this on to generate parsers and help with the project to make all old XLE grammars sustainable in an open and free parser environment, please let me know.
A lot of work went into this project, numerous contributors have helped with the environment and testing the formalisms.
In the requirements.md file you might find more details about software and library requirements.
This is a brief overview of the components that are needed to develop FLE:
- CMake
- G++ and GCC, or clang, or some other C++11 compatible alternative compiler
- Foma with libraries
- BNFC
- Boost libraries
If you do not want to use CLion or a similar environment, and if you are using G++/GCC, in the source folder compile using the following commands:
mkdir build
cd build
cmake ../.
make
Copyright 2015-2017 by Damir Cavar with contribution by Lwin Moe, Hai Hu, ...
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.