/mercury-unicode

Unicode character database parser and library for the Mercury language

Primary LanguageMercuryGNU Lesser General Public License v3.0LGPL-3.0

mercury-unicode

Introduction

Unicode character database parser and library for the Mercury language. The implementation uses the latest Unicode release, version 8.0. As Unicode updates are rather frequent, this code uses a generative approach, to facilitate the frequent addition of characters, blocks and scripts.

The project can be build using any current Mercury compiler in any legal grade.

A consequence of this approach is that this library can also be used as a common ground for portable libraries which must ensure a consistent behaviour across different execution environments. This means that no native code is involved, and all facts and data are purely derived from the UCD file.

Components

  1. ucd_type_compiler.m
  1. ucd_compiler.m
  1. Makefile
  • Variables:
    • MMC: the Mercury compiler executable
    • MCFLAGS: the flags for the given Mercury compiler, default: --use-grade-subdirs
  • Targets:
    • clean: removes all generated code files and binary output
    • update: forces an update of all downloaded files
    • realclean: invokes clean, but also removes downloaded files
    • libucd: A library containing all expored functions and predicates dealing with Unicode, sourcing ucd.m