Download Reference Manual
The Developer's Library for D
About Wiki Forums Source Search Contact

Introduction

Tango. It is a word that creates visions of lively dancing and energetic animation. Naturally, the Tango library adopted the name to express the momentum behind the library effort.

First, Tango was written for the D language; leaving the area of popular commercial language idioms, D strove to reach higher ground by casting off the failures of C derivative languages. D's aggressive approach to solving many software development problems has demonstrated that there is a way to do things better.

Second, in the dance for fundamental changes in software engineering politics, the library itself forms a perfect partner for the D language. With the growth of D, the community has yearned for a robust and well-documented library that D can call its own. Tango aims to be the cleanest, most well-documented, and expansive library available for D. With a tender respect for D's original library, phobos, Tango began by merging and reorganizing several high profile libraries: Phobos, Ares, and Mango were combined to form the core of what is expected to be D's definitive partner for the future.

There are some important subsidiary libraries that will be implemented in Tango as it grows. Features like dynamic D libraries, specialized general purpose templates, data storage structures, networking services, cross platform support, and graphics extensions either already have a place in Tango or are planned in future versions.

The goal of this manual is to make learning the Tango library as pleasurable a task as possible. Each chapter covers a section of the library and describes in detail its purpose and use. Since some library components are large, related chapters will have lengthy coverage. Yet, to make reading easier, each chapter is divided into sections that are cross-referenced from an index at the back of the book. The reader may select the particular topic of interest, go to the appropriate chapter, and start reading from there. An alternative is to search the index alphabetically; in which case, upon pressing on the link, the reader will be taken to the appropriate chapter section immediately.

In addition to the above goal, it is the hope of the authors that a comprehensive feature list, coupled with a powerful language, will make the Tango library a choice of preference among D programmers. Furthermore we hope Tango will draw more developers to the wonderful world of D.

We hope our readers enjoy learning to Tango as much as we enjoyed putting this manual together.