# Introduction

Practcl is an effort inspired by Instead of trying to provide a complete end-to-end solution, Practcl is more of a component library for developers of extensions to use.

Practcl has two main goals:

1. Provide an integrated mechanism to have Tcl script generate C code
2. Allow developers to capture build instructions for both Microsoft Visual Studio and Unix Autoconf in a single markup language.

# Implementation

The core library of practcl tools is distributed with the tcl.m4 file and maintained in the same fossil repository. (At present under the "practcl" feature branch)

Practcl consists of the following files:

* practcl.tcl - The core library of tools
* config.tcl.in - A template to capture the output of the autoconf  ./configure script, but in a Tcl friendly key/value list

Each package can either elect to call these files from a central copy of tclconfig/, or from a mirror of those tools contained within the project's tclconfig/ directory. (The same place that tcl.m4 and install-sh live.)

[Modifying an existing project for Practcl](?title=Practcl+and+Autoconf)