The Perl Encyclopedia of Triangle Centers is an implementation of Clark Kimberling’s Encyclopedia of Triangle Centers in Perl . The encyclopedia is a list of 3053 various definitions of the center of a triangle in the plane. The first few are probably familiar to anyone who has studied plane geometry: the incenter X(1), the circumcenter X(3), and the orthocenter X(4). The more exotic centers are less familiar, but no less beautiful– I recommend the useful pages on MathWorld starting with Triangle Center as an introduction to their study.
The Perl ETC implements 3049 of the 3053 triangle centers as subroutines in the Perl language. Each can be computed in barycentric, homogenous barycentric, or normalized trilinear coordinates from the side lengths of the triangle in question. The code is not particularly efficient, but it should suffice for most experimental purposes. My hope is that providing the ETC in a flexible, easy-to-use language like Perl will encourage people to undertake more numerical experimentation with the ETC itself. Since 2011, a version of the Perl ETC has been built into the popular (and awesome) GeoGebra (see this post) for computing triangle centers.
The code is written in standard Perl and should run on any system with a reasonably recent Perl release. A self-test program is included. Please let me know if you have problems running the code. The Perl ETC is a completed project and no longer under development. The distribution is in the public domain and you are welcome to modify or redistribute as you please.