Tom Christiansen

Last updated
Tom Christiansen
Tom Christiansen in 2008.jpg
Tom Christiansen in 2008
Born (1963-02-13) February 13, 1963 (age 60)
Other namestchrist
Occupation Programmer
Employer(s)Tom Christiansen Perl Consultancy
Biomedical Text Mining Group, University of Colorado School of Medicine
Known forPerl writings

Thomas S. "Tom" Christiansen [1] (born February 13, 1963), nicknamed tchrist or occasionally thoth, is a Unix developer and user known for his work with the Perl programming language.

Christiansen worked for several years at TSR Hobbies before attending the University of Wisconsin - Madison where he earned B.A.'s in Spanish and Computer Science, and an M.S. in Computer Science. He worked for five years at Convex Computer. [2] In 1993, he established the Tom Christiansen Perl Consultancy, located in Lake Geneva, Wisconsin. [1] In 2010, he joined the Biomedical Text Mining Group at the University of Colorado School of Medicine.

Christiansen, with a C-and-Unix background, [3] was one of the early contributors to Perl after its public release in 1987. He presented the first public Perl tutorial in 1989 and wrote the first academic paper to highlight Perl in 1990. [4] He was the author of much of the core Perl documentation, including the manual pages perlfaq and perltoot, development of [5] In 1996, Christiansen wrote "Csh Programming Considered Harmful " about the limitations inherent in C Shell Programming. [6] Books he co-authored include:

In 1999, Christiansen was one of the original recipients of the White Camel awards from Perl Mongers for his contribution to Perl's documentation. [8] Christiansen has been called a "UNIX luminary". [9]

The common phrase "Only perl can parse Perl" is attributed to Tom Christiansen, [10] although it probably was inspired from "Only tex can understand TeX". Randal Schwartz also credits him with accidentally naming the Schwartzian Transform for optimizing some types of sorts. [11] This happened after Schwartz used it in a Usenet message, and Christiansen replied to the message giving some corrections and in one place said "the Schwartzian transform" to refer to the transform that Schwartz used.

Related Research Articles

<span class="mw-page-title-main">Perl</span> Interpreted programming language first released in 1987

Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it also referred to its redesigned "sister language", Perl 6, before the latter's name was officially changed to Raku in October 2019.

sed Standard UNIX utility for editing streams of data

sed is a Unix utility that parses and transforms text, using a simple, compact programming language. It was developed from 1973 to 1974 by Lee E. McMahon of Bell Labs, and is available today for most operating systems. sed was based on the scripting features of the interactive editor ed and the earlier qed. It was one of the earliest tools to support regular expressions, and remains in use for text processing, most notably with the substitution command. Popular alternative tools for plaintext string manipulation and "stream editing" include AWK and Perl.

<span class="mw-page-title-main">Shell script</span> Script written for the shell, or command line interpreter, of an operating system

A shell script is a computer program designed to be run by a Unix shell, a command-line interpreter. The various dialects of shell scripts are considered to be scripting languages. Typical operations performed by shell scripts include file manipulation, program execution, and printing text. A script which sets up the environment, runs the program, and does any necessary cleanup or logging, is called a wrapper.

<span class="mw-page-title-main">Randal L. Schwartz</span> American programmer and technology writer

Randal L. Schwartz, also known as merlyn, is an American author, system administrator and programming consultant. He has written several books on the Perl programming language, and plays a promotional role within the Perl community. He was a co-host of FLOSS Weekly.

<span class="mw-page-title-main">Bourne shell</span> Command-line interpreter for operating systems

The Bourne shell (sh) is a shell command-line interpreter for computer operating systems.

<span class="mw-page-title-main">C shell</span> Unix shell

The C shell is a Unix shell created by Bill Joy while he was a graduate student at University of California, Berkeley in the late 1970s. It has been widely distributed, beginning with the 2BSD release of the Berkeley Software Distribution (BSD) which Joy first distributed in 1978. Other early contributors to the ideas or the code were Michael Ubell, Eric Allman, Mike O'Brien and Jim Kulp.

<i>Programming Perl</i>

Programming Perl, best known as the Camel Book among programmers, is a book about writing programs using the Perl programming language, revised as several editions (1991-2012) to reflect major language changes since Perl version 4. Editions have been co-written by the creator of Perl, Larry Wall, along with Randal L. Schwartz, then Tom Christiansen and then Jon Orwant. Published by O'Reilly Media, the book is considered the canonical reference work for Perl programmers. With over 1,000 pages, the various editions contain complete descriptions of each Perl language version and its interpreter. Examples range from trivial code snippets to the highly complex expressions for which Perl is widely known. The camel book editions are also noted for being written in an approachable and humorous style.

<i>Learning Perl</i>

Learning Perl, also known as the llama book, is a tutorial book for the Perl programming language, and is published by O'Reilly Media. The first edition (1993) was authored solely by Randal L. Schwartz, and covered Perl 4. All subsequent editions have covered Perl 5. The second (1997) edition was coauthored with Tom Christiansen and the third (2001) edition was coauthored with Tom Phoenix. The fourth (2005), fifth (2008), sixth (2011), and seventh (2016) editions were written by Schwartz, Phoenix, and brian d foy. According to the 5th edition of the book, previous editions have sold more than 500,000 copies.

Plain Old Documentation (pod) is a lightweight markup language used to document the Perl programming language as well as Perl modules and programs.

<i>Intermediate Perl</i>

Intermediate Perl is a book about the Perl programming language by Randal L. Schwartz, brian d foy and Tom Phoenix, published in 2006 by O'Reilly Media. It was released as a retitled second edition of Learning Perl Objects, References & Modules (ISBN 0-596-00478-8) by Schwartz and Phoenix, published by O'Reilly Media in 2003 to favorable reviews. A second edition of Intermediate Perl was released in 2012.

In computer programming, the Schwartzian transform is a technique used to improve the efficiency of sorting a list of items. This idiom is appropriate for comparison-based sorting when the ordering is actually based on the ordering of a certain property of the elements, where computing that property is an intensive operation that should be performed a minimal number of times. The Schwartzian transform is notable in that it does not use named temporary arrays.

In computer science, a local variable is a variable that is given local scope. A local variable reference in the function or block in which it is declared overrides the same variable name in the larger scope. In programming languages with only two levels of visibility, local variables are contrasted with global variables. On the other hand, many ALGOL-derived languages allow any number of nested levels of visibility, with private variables, functions, constants and types hidden within them, either by nested blocks or nested functions. Local variables are fundamental to procedural programming, and more generally modular programming: variables of local scope are used to avoid issues with side-effects that can occur with global variables.

brian d foy American computer programmer

brian d foy [sic] is the former publisher and editor of The Perl Review, a magazine devoted to Perl and co-author of several books on Perl including Learning Perl, Intermediate Perl and Mastering Perl. He is also the founder of Perl Mongers, the founder of the White Camel Awards, a frequent speaker at conferences including The Perl Conference and YAPC. He is the author of multiple Perl modules on CPAN and maintains the perlfaq portions of the core Perl documentation. He was a partner at Stonehenge Consulting Services from 1998 to 2009.

In computing, a shebang is the character sequence consisting of the characters number sign and exclamation mark at the beginning of a script. It is also called sharp-exclamation, sha-bang, hashbang, pound-bang, or hash-pling.

Crack is a Unix password cracking program designed to allow system administrators to locate users who may have weak passwords vulnerable to a dictionary attack. Crack was the first standalone password cracker for Unix systems and the first to introduce programmable dictionary generation as well.

<span class="mw-page-title-main">Tk (software)</span> GUI toolkit or framework

Tk is a free and open-source, cross-platform widget toolkit that provides a library of basic elements of GUI widgets for building a graphical user interface (GUI) in many programming languages.

In computing, command substitution is a facility that allows a command to be run and its output to be pasted back on the command line as arguments to another command. Command substitution first appeared in the Bourne shell, introduced with Version 7 Unix in 1979, and has remained a characteristic of all later Unix shells. The feature has since been adopted in other programming languages as well, including Perl, PHP, Ruby and Microsoft's Powershell under Windows. It also appears in Microsoft's CMD.EXE in the FOR command and the ( ) command.

The "White Camel" award is given to important contributors to the Perl Programming Language community.

<span class="mw-page-title-main">Hamilton C shell</span>

Hamilton C shell is a clone of the Unix C shell and utilities for Microsoft Windows created by Nicole Hamilton at Hamilton Laboratories as a completely original work, not based on any prior code. It was first released on OS/2 on December 12, 1988 and on Windows NT in July 1992. The OS/2 version was discontinued in 2003 but the Windows version continues to be actively supported.

The following outline is provided as an overview of and topical guide to the Perl programming language:


  1. 1 2 "Company Profile for Tom Christiansen Perl Consultancy". Manta.
  2. "O'Reilly bio for Tom Christiansen". O'Reilly Media.
  3. Mark Jason Dominus. "Higher-Order Perl - Preface".
  4. "PerlTimeline" . Retrieved 5 January 2013.
  5. "LISA'98 12th System Administration Conference - Tutorial instructors". USENIX. December 1998.
  6. "Csh Programming Considered Harmful" . Retrieved 5 January 2013.
  7. Schwartz, Randall (1997). Learning Perl on Win32 Systems . Sebastopol, CA: O'Reilly Media. ISBN   978-1-56592-324-9.
  8. "White Camel Awards 1999 recipients". 1999.
  9. Samuel Ockman (Sep 1, 1998). "UNIX Power Tools - review". Linux Journal .
  10. "Perl vs perl". Israeli Perl Mongers.
  11. Randal Schwartz. "Sorting with the Schwartzian Transform". CMP Media, LLC.