Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C&C & Boxer Build

Overview

This repository provides a cross-platform CMake build script and project files to compile and install the original C&C CCG parser (including the Boxer semantic tool) on Linux, Windows, and macOS. It bundles the upstream C++ and Prolog sources from the original release, obtained from chrzyki/candc, and applies minimal adjustments.

Purpose

  • Cross-Platform Builds Enable out-of-the-box compilation on major operating systems (Linux, Windows, macOS) via CMake.
  • Upstream Preservation Retain the original C&C and Boxer sources, preserving academic licensing and functionality.

Build Instructions

  1. Install dependencies

    • Debian based:
      sudo apt install swi-prolog cmake build-essential gcc g++
    • Fedora:
      sudo dnf install swi-prolog-core cmake gcc g++
  2. Clone the repository

    git clone https://github.com/Alvaro-Kothe/candc-build.git
    cd candc-build
  3. Create a build directory

    mkdir build && cd build
  4. Configure with CMake

    cmake ..
  5. Build

    cmake --build . --config Release
  6. Move binaries close to models

    mv bin .. && cd ..

Usage

$ echo "The quick brown fox jumps over the lazy dog" | bin/candc --models models/boxer
# this file was generated by the following command(s):
#   bin/candc --models models/boxer

% this file was generated by the following command(s):
%   bin/candc --models models/boxer

:- multifile w/8, ccg/2, id/2.
:- discontiguous w/8, ccg/2, id/2.
:- dynamic w/8, ccg/2, id/2.

1 parsed at B=0.075, K=20
1 coverage 100%
ccg(1,
 ba('NP',
  fa('NP[nb]',
   lf(1,1,'NP[nb]/N'),
   fa('N',
    lf(1,2,'N/N'),
    fa('N',
     lf(1,3,'N/N'),
     fa('N',
      lf(1,4,'N/N'),
      lf(1,5,'N'))))),
  fa('NP\NP',
   lf(1,6,'(NP\NP)/NP'),
   fa('NP[nb]',
    lf(1,7,'NP[nb]/N'),
    fa('N',
     lf(1,8,'N/N'),
     lf(1,9,'N')))))).

w(1, 1, 'The', 'the', 'DT', 'I-NP', 'O', 'NP[nb]/N').
w(1, 2, 'quick', 'quick', 'JJ', 'I-NP', 'O', 'N/N').
w(1, 3, 'brown', 'brown', 'JJ', 'I-NP', 'O', 'N/N').
w(1, 4, 'fox', 'fox', 'NN', 'I-NP', 'O', 'N/N').
w(1, 5, 'jumps', 'jump', 'NNS', 'I-NP', 'O', 'N').
w(1, 6, 'over', 'over', 'IN', 'I-PP', 'O', '(NP\NP)/NP').
w(1, 7, 'the', 'the', 'DT', 'I-NP', 'O', 'NP[nb]/N').
w(1, 8, 'lazy', 'lazy', 'JJ', 'I-NP', 'O', 'N/N').
w(1, 9, 'dog', 'dog', 'NN', 'I-NP', 'O', 'N').

1 stats 0 129 129 comb 120 70 0 0

License

This project is released under the same academic (non-commercial) license as the original C&C tools. For any commercial licensing inquiries, please contact the original authors as per their license terms.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages