Civil Rights
Movements, leaders, victories and the continuing fight for equality.
Explore the people, places, events, achievements, struggles and stories that shaped our journey.
Movements, leaders, victories and the continuing fight for equality.
Innovation, patents, science, technology and world-changing contributions.
Pioneers, champions, Negro Leagues, records, activism and excellence.
Meet the people whose lives, choices and achievements shaped the journey.
Black towns, communities, institutions and places where history happened.
Moments that changed communities, movements, institutions and the nation.
In 1968 Shirley Chisholm became the first Black woman elected to the United States Congress. In 1972 she launched a campaign for the Democratic presidential nomination, breaking another political barrier.
MORE →Reflects the personal views, recollections, and perspective of the author, Mike Davis.
This is a personal recollection on the Move fire on May 13, 1985
| TRAC | |
|---|---|
| Paradigm | general-purpose macro processor |
| Designed by | Calvin Mooers |
| First appeared | 1964 |
| Stable release | |
| Platform | PDP-8, PDP-10, PDP-11 |
| Influenced by | |
| Macro SAP[3] | |
| Influenced | |
| SAM76, ML/I[3] | |
TRAC (for Text Reckoning And Compiling) Language is a programming language developed between 1959 and 1964 by Calvin Mooers and first implemented on the PDP-1 in 1964 by L. Peter Deutsch.[4] It was one of three "first languages" recommended by Ted Nelson in Computer Lib. TRAC T64 was used until at least 1984, when Mooers updated it to TRAC T84.[4]
TRAC is a purely text-based language — a kind of macro language. Unlike traditional ad hoc macro languages of the time, such as those found in assemblers, TRAC is well planned, consistent, and in many senses complete.[fact or opinion?] It has explicit input and output operators, unlike the typical implicit input/output (I/O) at the outermost macro level, which makes it simultaneously simpler and more versatile[vague] than older macro languages.
TRAC is a text-processing language,[5] also called a string processing language.[6] Because of this the only data type available is a string of characters. Numbers are strings of digits, with integer arithmetic (without specific limits on maximum values) being provided through built-in ("primitive") functions which operate on their string representation. Arguably, one aspect of its completeness is that the concept of an error is limited to events like lack of file space and requesting expansion of a string longer than the interpreter's working storage; what would in many languages be described as illegal operations are dealt with in TRAC by defining a result (often a null string) for every possible combination of a function's argument strings.
TRAC is, like APL or LISP, an expression oriented language (in contrast to more typical procedure-oriented languages) but, unlike APL, it completely lacks operators. In most respects, it is a case of pure functional programming. It has, in common with LISP, a syntax that generally involves the presence of many levels of nested parentheses.
TRAC is homoiconic: that is, a TRAC program can be represented and manipulated within the TRAC language itself.[7][8][9] The emphasis on strings as the single data type is so strong that TRAC provides mechanisms for handling the language's own syntactic characters either in their syntactic roles or like any other character, and self-modifying code has more the feel of a natural consequence of typical TRAC programming techniques than of being a special feature.
The main inspiration for TRAC came from three papers by Douglas McIlroy.[7][10][11][12]
Mooers trademarked the name TRAC in an effort to maintain his control over the definition of the language, an unusual and pioneering action at the time. At one point, he brought an intellectual property infringement suit against Digital Equipment Corporation (DEC), alleging that a contract to deliver a mini-computer with a TRAC interpreter violated his rights. "The first issue of Dr. Dobb's Journal, one of the early publications in the personal computer field, has a vitriolic editorial against Mooers and his rapacity in trying to charge people for his computing language."[13][14] The name has since been used several times for unrelated information technology projects, including a current open source project management system called Trac.
TRAC was later implemented on the PDP-8, PDP-10, and PDP-11.
There have been various languages inspired by TRAC. To avoid any trouble with Mooers, they renamed primitives and/or used different metacharacters. In SAM76's case, primitives were added, according to Claude Kagan, "because TRAC is baby talk". In MINT's case, primitives were added to give access to a sophisticated text editor machinery.
TRAC was used by FTP Software in its PC/TCP product as the modem dialer scripting language.
TRAC was also used as a front end on Digital Productions Cray renderer for films, including The Last Starfighter.
This is an example of a simple program that asks the user's name and exits, written in TRAC T64:[17]
#(DS,PROG.A,( #(PS,(WHAT IS YOUR NAME? )) #(DS,NAME,##(RS)) #(PS,( GOODBYE)) ))'
TRAC T84 uses a slightly different syntax and different names for its primitives. The following is a script to compute Fibonacci numbers, written in TRAC T84:[18]
:(s,fibo,( :(ei,<1>, 1, 0,( :(ei,<1>, 2, 1,( :(aa, :(ri,fibo,:(as, <1>,1)),:(ri,fibo,:(as, <1>,2))) )) )) ))` :(mw,fibo)'
Source: Wikipedia. Article content is retrieved live through the MediaWiki API.
TRAC (for Text Reckoning And Compiling) Language is a programming language developed between 1959 and 1964 by Calvin Mooers and first implemented on the PDP-1 in 1964 by L. Peter Deutsch. It was one of three "first languages" recommended by Ted Nelson in Computer Lib. TRAC T64 was used until at least 1984, when Mooers updated it to TRAC T84.
Trac is a software tool for project management. Trac or TRAC may also refer to: TRAC (programming language) Telsiz ve Radyo Amatörleri Cemiyeti, an amateur radio organization in Turkey Former Team Racing Auto Circuit The Research and Analysis Center, a U.S. Army analysis element Transactional Records Access Clearinghouse, at Syracuse University Trustworthy Repositories Audit & Certification Three Rivers Athletic Conference, Ohio, US trac: Music Traditions Wales, for folk music Annual Theoretical Roman Archaeology Conference Cirrus TRAC Trainer version of the Cirrus SR20 aircraft
Jinja is a web template engine for the Python programming language. It was created by Armin Ronacher and is licensed under a BSD License. Jinja is similar to the Django template engine, but provides Python-like expressions while ensuring that the templates are evaluated in a sandbox. It is a text-based template language and thus can be used to generate any markup as well as source code. The Jinja template engine allows customization of tags, filters (for formatting or transforming values), tests (for evaluating conditions), and globals. Also, unlike the Django template engine, Jinja allows the template designer to call functions with arguments on objects. Jinja is the default template engine for Flask, as well as Home Assistant's Automations. It is also used by Ansible, Trac, and Salt. It is also used to make SQL macros, for example for use with dbt.
SNOBOL (StriNg Oriented and symBOlic Language) is a series of programming languages developed between 1962 and 1967 at AT&T Bell Laboratories by David J. Farber, Ralph Griswold and Ivan P. Polonsky, culminating in SNOBOL4. It was one of a number of text-string-oriented languages developed during the 1950s and 1960s; others included COMIT and TRAC. Despite the similar name, it is entirely unlike COBOL. SNOBOL4 stands apart from most programming languages of its era by having patterns as a first-class data type, a data type whose values can be manipulated in all ways permitted to any other data type in the programming language, and by providing operators for pattern concatenation and alternation. SNOBOL4 patterns are a type of object and admit various manipulations, much like later object-oriented languages such as JavaScript whose patterns are known as regular expressions. In addition SNOBOL4 strings generated during execution can be treated as programs and either interpreted or compiled and executed (as in the eval function of other languages). SNOBOL4 was quite widely taught in larger U.S. universities in the late 1960s and early 1970s and was widely used in the 1970s and 1980s as a text manipulation language in the humanities. In the 1980s and 1990s, its use faded as newer languages such as AWK and Perl made string manipulation by means of regular expressions fashionable. SNOBOL4 patterns include a way to express BNF grammars, which are equivalent to context-free grammars and more powerful than regular expressions. The "regular expressions" in current versions of AWK and Perl are in fact extensions of regular expressions in the traditional sense, but regular expressions, unlike SNOBOL4 patterns, are not recursive, which gives a distinct computational advantage to SNOBOL4 patterns. (Recursive expressions did appear in Perl 5.10, though, released in December 2007.) The later SL5 (1977) and Icon (1978) languages were designed by Griswold to combine the backtracking of SNOBOL4 pattern matching with more standard ALGOL-like structuring.
Before the 1921 destruction of Tulsa’s Greenwood District, Black residents had created a remarkable center of business and community life. The district included stores, professional offices, entertainment venues and homes owned by Black citizens. Understanding Greenwood means learning what was built—not only what was burned.
MORE →Mae Jemison, aboard Space Shuttle Endeavour in 1992.