Larry Wall

back to index

description: American computer programmer and author

35 results

pages: 483 words: 145,225

Rebel Code: Linux and the Open Source Revolution
by Glyn Moody
Published 14 Jul 2002

Soft-spoken and avuncular, Wall’s calm presence at conferences and before the press has helped to combat clichéd images of hackers as unstable, antisocial individuals with little sense of morality and no sense of humor. If Richard Stallman is the father of today’s free software movement, Larry Wall can be rightly considered its favorite uncle. 9 The Art of Code LONG BEFORE LARRY WALL WAS THINKING about how to make Perl successful, Richard Stallman had analyzed why the hacker community at the MIT AI Lab had worked so well. He then set about re-creating that community, consciously taking steps that would maximize the chances for its survival.

And yet even this achievement has been surpassed by Perl, a freely available programming language universally used for system administration tasks and to power complex e-commerce sites. Apache may beat Microsoft and Netscape by a wide margin, but Perl has no serious rivals at all from the commercial sector. Its creator, now routinely referred to as the “Perl god,” is Larry Wall, one of best-known and most influential figures in the free software community, alongside Richard Stallman and Linus. Wall was born in California, in 1954. His father was a minister, and Wall’s religious upbringing has strongly marked his life and work. Unlike many other top hackers, computers never loomed large early on “The first computer I ever actually saw was the programmable calculator that we got at our high school in our senior year,” Wall says, “so I didn’t have much exposure to computers before that.

He demonstrates well that the dynamics of such a “gift economy”—where prestige is measured not by what you have, but by what you give away—tend to reduce the threat of forking. Certainly this analysis goes a long way to explaining why so many coders around the world willingly devote themselves to these projects with no immediate thought of material reward. In one respect, it is unsatisfactory: It does not explain why top hackers—Linus or Larry Wall—began and then devoted so much effort to their fledgling projects. Raymond’s “scratching an itch” does not suffice, either: The itches would have been amply scratched by projects far less ambitious—and far less impressive—than what became Linux or Perl, say. There are precedents for gifted individuals who conceive and work on huge projects, often with little hope not only of recompense but of recognition.

Free as in Freedom
by Sam Williams
Published 16 Nov 2015

"Up until then, most licenses were very informal," Gilmore recalls. As an example of this informality, Gilmore cites a copyright notice for trn, a Unix utility. Written by Larry Wall, future creator of the Perl programming language, patch made it simple for Unix programmers to insert source-code fixes-" patches" in hacker jargon-into any large program. Recognizing the utility of this feature, Wall put the following copyright notice in the program's accompanying README file: Copyright (c) 1985, Larry Wall You may copy the trn kit in whole or in part as long as you don't try to make money off it, or pretend that you wrote it.See Trn Kit README. http://www.za.debian.org/doc/trn/trnreadme Such statements, while reflective of the hacker ethic, also reflected the difficulty of translating the loose, informal nature of that ethic into the rigid, legal language of copyright.

One of the audience members at the Linux Kongress was Tim O'Reilly, publisher of O'Reilly & Associates, a company specializing in software manuals and software-related books (and the publisher of this book). After hearing Raymond's Kongress speech, O'Reilly promptly invited Raymond to deliver it again at the company's inaugural Perl Conference later that year in Monterey, California. Although the conference was supposed to focus on Perl, a scripting language created by Unix hacker Larry Wall, O'Reilly assured Raymond that the conference would address other free software technologies. Given the growing commercial interest in Linux and Apache, a popular free software web server, O'Reilly hoped to use the event to publicize the role of free software in creating the entire infrastructure of the Internet.

Shortly after the summit, O'Reilly shepherded summit attendees to a press conference attended by reporters from the New York Times, the Wall Street Journal, and other prominent publications. Within a few months, Torvalds' face was appearing on the cover of Forbes magazine, with the faces of Stallman, Perl creator Larry Wall, and Apache team leader Brian Behlendorf featured in the interior spread. Open source was open for business. For summit attendees such as Tiemann, the solidarity message was the most important thing. Although his company had achieved a fair amount of success selling free software tools and services, he sensed the difficulty other programmers and entrepreneurs faced.

pages: 561 words: 157,589

WTF?: What's the Future and Why It's Up to Us
by Tim O'Reilly
Published 9 Oct 2017

By contrast, I was convinced that the content itself was an essential part of the application, and that the dynamic nature of that content was leading to an entirely new architectural design pattern for a next stage beyond software, which at the time I called “infoware.” Where Eric was focused on the success of the Linux operating system, and saw it as an alternative to Microsoft Windows, I was particularly fascinated by the success of the Perl programming language in enabling this new paradigm on the web. Perl was originally created by Larry Wall in 1987 and distributed for free over early computer networks. I had published Larry’s book, Programming Perl, in 1991, and was preparing to launch the Perl Conference in the summer of 1997. I had been inspired to start the Perl Conference by the chance conjunction of comments by two friends. Early in 1997, Carla Bayha, the computer book buyer at the Borders bookstore chain, had told me that the second edition of Programming Perl, published in 1996, was one of the top 100 books in any category at Borders that year.

Under competitive pressure from Microsoft, which had built a browser of its own and had given it away for free (but without source code) in order to “cut off Netscape’s air supply,” Netscape had no choice but to go back to the web’s free software roots. At the meeting, which was held at the Stanford Court Hotel (now the Garden Court) in Palo Alto, I brought together Linus Torvalds, Brian Behlendorf (one of the founders of the Apache web server project), Larry Wall, Guido van Rossum (the creator of the Python programming language), Jamie Zawinski (the chief developer of the Mozilla project), Eric Raymond, Michael Tiemann (the founder and CEO of Cygnus Solutions, a company that was commercializing free software programming tools), Paul Vixie (the author and maintainer of BIND [Berkeley Internet Name Daemon], the software behind the Internet Domain Name System), and Eric Allman (the author of Sendmail, the software that routed a majority of the Internet’s email).

My company developed a series of programming manuals for X that used the MIT specifications as a base, rewriting and expanding them, and then licensed them to companies shipping new Unix and X-based systems. Bob encouraged me. “That’s exactly what we want companies to do,” he said. “We’re laying a foundation, and we want everyone to build on it.” Larry Wall, creator of Perl, was another of my mentors in how to think about free software. When I asked him why he had made Perl free software, he explained that he had gotten so much value from the work of others that he felt an obligation to give something back. Larry also quoted to me a variation of Stewart Brand’s classic observation, saying, “Information doesn’t want to be free.

pages: 525 words: 149,886

Higher-Order Perl: A Guide to Program Transformation
by Mark Jason Dominus
Published 14 Mar 2005

Perl was originally designed as a replacement for C on the one hand and Unix scripting languages like Bourne Shell and awk on the other. Perl’s first major proponents were Unix system administrators, people familiar with C and with Unix scripting languages; they naturally tended to write Perl programs that resembled C and awk programs. Perl’s inventor, Larry Wall, came from this sysadmin community, as did Randal Schwartz, his coauthor on Programming Perl, the first and still the most important Perl reference work. Other important early contributors include Tom Christiansen, also a C-and-Unix expert from way back. Even when Perl programmers didn’t come from the Unix sysadmin community, they were trained by people who did, or by people who were trained by people who did.

If Perl programmers can find out the things that Lisp programmers already know, they will learn a lot of things that will make their Perl programming jobs easier. This is easier said than done. Hardly anyone wants to listen to Lisp programmers. Perl folks have a deep suspicion of Lisp, as demonstrated by Larry Wall’s famous remark that Lisp has all the visual appeal of oatmeal with fingernail clippings mixed in. Lisp programmers go around making funny noises like ‘cons’ and ‘cooder,’ and they talk about things like the PC loser-ing problem, whatever that is. They believe that Lisp is better than other programming languages, and they say so, which is irritating.

Without the timely assistance of Wm Leler, I might still be stuck. Tom Christiansen, Jon Orwant, and Nat Torkington played essential and irreplaceable roles in integrating me into the Perl community. Finally, the list of things “without which this book could not have been written” cannot be complete without thanking Larry Wall for writing Perl and for founding the Perl community, without which this book could not have been written. 1. Recursion and Callbacks The first “advanced” technique we’ll see is recursion. Recursion is a method of solving a problem by reducing it to a simpler problem of the same type. Unlike most of the techniques in this book, recursion is already well known and widely understood.

pages: 612 words: 187,431

The Art of UNIX Programming
by Eric S. Raymond
Published 22 Sep 2003

The longhairs, repeating a theme from Unix's early days ten years before, liked to see themselves as rebels against a corporate empire; one of the small companies put out a poster showing an X-wing-like space fighter marked “BSD” speeding away from a huge AT&T ‘death star’ logo left broken and in flames. Thus we fiddled while Rome burned. But something else happened in the year of the AT&T divestiture that would have more long-term importance for Unix. A programmer/linguist named Larry Wall quietly invented the patch(1) utility. The patch program, a simple tool that applies changebars generated by diff(1) to a base file, meant that Unix developers could cooperate by passing around patch sets — incremental changes to code — rather than entire code files. This was important not only because patches are less bulky than full files, but because patches would often apply cleanly even if much of the base file had changed since the patch-sender fetched his copy.

These described the intersection set of the BSD and SVR3 (System V Release 3) calls, with the superior Berkeley signal handling and job control but with SVR3 terminal control. All later Unix standards would incorporate POSIX at their core, and later Unixes would adhere to it closely. The only major addition to the modern Unix kernel API to come afterwards was BSD sockets. In 1986 Larry Wall, previously the inventor of patch(1), began work on Perl, which would become the first and most widely used of the open-source scripting languages. In early 1987 the first version of the GNU C compiler appeared, and by the end of 1987 the core of the GNU toolset was falling into place: editor, compiler, debugger, and other basic development tools.

Matters were not helped when, in 1992–1994, the Computer Science Research Group at Berkeley shut down; afterwards, factional warfare within the BSD community split it into three competing development efforts. As a result, the BSD lineage lagged behind Linux at a crucial time and lost to it the lead position in the Unix community. The Linux and BSD development efforts were native to the Internet in a way previous Unixes had not been. They relied on distributed development and Larry Wall's patch(1) tool, and recruited developers via email and through Usenet newsgroups. Accordingly, they got a tremendous boost when Internet Service Provider businesses began to proliferate in 1993, enabled by changes in telecomm technology and the privatization of the Internet backbone that are outside the scope of this history.

pages: 496 words: 174,084

Masterminds of Programming: Conversations With the Creators of Major Programming Languages
by Federico Biancuzzi and Shane Warden
Published 21 Mar 2009

Perl Perl fans call it the “Pathologically Eclectic Rubbish Lister” and the “Swiss-Army Chainsaw”, flaunting the motto, “There’s More Than One Way to Do It!” Creator Larry Wall sometimes describes it as a kind of glue language, originally intended as a sweet spot between the Unix shell and C to help people get things done. It incorporates linguistic principles and design decisions from Unix (and sports perhaps the largest repository of libraries of any language in the CPAN). Many programmers anxiously await the long-developed revision of Perl 6, a language designed to last at least 20 years. The Language of Revolutions How do you define Perl? Larry Wall: Perl is an ongoing experiment in how best to incorporate some of the principles of natural language into computer language, not at a shallow syntactic level like COBOL, but at a much deeper pragmatic level.

Chapter 10, SQL, interviews Don Chamberlin. Chapter 11, Objective-C, interviews Tom Love and Brad Cox. Chapter 12, Java, interviews James Gosling. Chapter 13, C#, interviews Anders Hejlsberg. Chapter 14, UML, interviews Ivar Jacobson, James Rumbaugh, and Grady Booch. Chapter 15, Perl, interviews Larry Wall. Chapter 16, PostScript, interviews Charles Geschke and John Warnock. Chapter 17, Eiffel, interviews Bertrand Meyer. Contributors lists the biographies of all the contributors. Conventions Used in This Book The following typographical conventions are used in this book: Italic Indicates new terms, URLs, filenames, and utilities.

Certainly in the early days of Unix, pipes facilitated function composition on the command line. You could take an input, perform some transformation on it, and then pipe the output into another program. This provided a very powerful way of quickly creating new functionality with simple compositions of programs. People started thinking how to solve problems along these lines. Larry Wall’s language Perl, which I think of as a descendant of AWK and other Unix tools, combined many aspects of this kind of program composition into a single language. When you say “function composition,” that brings to mind the mathematical approach of function composition. Al: That’s exactly what I mean.

Speaking Code: Coding as Aesthetic and Political Expression
by Geoff Cox and Alex McLean
Published 9 Nov 2012

The program may extract the original text “RentBoy” from the pointer “t1,” but the context of the container name “SocialClasses” will have been lost, and the program itself will have no notion of what the word “RentBoy” means. In terms of the literate application of the programming language Perl (developed by Larry Wall in 1987), Harwood is extending an established aesthetic practice referred to as “Perl poetry,” the practice of writing poems that can be compiled as Perl code, made possible by the semantic qualities of Perl. Wall was emphasizing the point that code has expressive qualities, and the need for programmers to “express both their emotional and technical natures simultaneously.”28 The technique is effective as it manages to combine both primary and secondary notation, both syntactical and semantic registers, and the tension between human and machine interpretation is made painfully evident (so much so that you might imagine yourself to hear the screams). local %InfantsScreamInFear; # WoeOfEveryMan is the main method for constructing the # InfantScreamInFear structure: # If we find that say that the hash %{RentBoy} is defined # with values then we add this to the hash %{InfantScreamInFear} Vocable Code 25 sub WoeOfEveryMan foreach my $Class (@SocialClasses){ warn "New class = $Class\n"; $InfantsScreamInFear->{Class} = %{$Class} if {Class}; } } # # # # In every cry of every Man, In every Infants cry of fear, In every voice: in every ban, The mind-forg'd manacles I hear The interplay of the body of the code, the programmer’s comments, and the human-machine reader express how hardware and software, text and code, are “embodied.”

Anyway, lots of people liked it, lots of people hated.” (Available at http://www.stevenfeuerstein.com/books/content/merging-technology-and -politics.) 27. Harwood, in XXXXX (Berlin and London: Openmute Press, 2006), 120–127. Note that Harwood is the preferred name of the artist Graham Harwood. 28. Larry Wall, “Perl Culture,” in Programming Perl (Sebastopol, CA: O’Reilly, 2001); available at http://docstore.mik.ua/orelly/perl/prog3/ch27_02.htm. Also see Geoff Cox and Adrian Ward, “Perl,” in Matthew Fuller, ed., Software Studies: A Lexicon (Cambridge, MA: MIT Press, 2008). 29. Hayles, Writing Machines, 107. 30.

pages: 394 words: 118,929

Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software
by Scott Rosenberg
Published 2 Jan 2006

The spirit of the Monty Python fan slips into his conversation only rarely, as when he introduces himself to an audience of programmers with a biographical slide that reads: Age 4: First Lego kit Age 10: first electronics kit Age 18: first computer program (on punched cards) Age 21: First girlfriend:-) Just as dogs often come to resemble their owners, it seems that programming languages end up reflecting the temperaments and personalities of their creators in some subtle ways. For instance, Larry Wall, the linguist who is the father of Perl, is a droll spirit enamored of verbal and visual puns. At a conclave for open source programmers in 2004, delivering an annual review of new Perl developments, he found a way to connect a meditation on the mutating visual geometries of screensavers with an account of his recent battle with a stomach tumor, then tied it all together with a vision of the community of Perl programmers “performing random acts of beauty for each other.”

Moore’s Law is outlined at Intel’s Web site: http://www.intel.com/technology/silicon/mooreslaw/. Quotations from Guido van Rossum are from a talk given February 17, 2005, at the Software Development Forum in Palo Alto, California. Audio is available at http://www.itconversations.com/shows/detail545.htm. Larry Wall’s talk was at the O’Reilly Open Source Conference, Portland, Oregon, July 2004. Text is available at http://www.perl.com/pub/a/2004/08/18/onion.htm. one observer’s characterization: The observer is Danny O’Brien in his NTK newsletter from August 6, 2004, at http://www.ntk.net/2004/08/06/. “I spent a few weeks trying”: Benjamin Pierce in a June 2001 message on a private mailing list; full quote confirmed in email to author.

name=News&file=article&sid=145 and can be found via the Internet Archive’s Wayback Machine at http://web.archive.org/web/20041106193140/ http://www.linuxtimes.net/modules.php?name=News&file=article&sid=145. CHAPTER 7 DETAIL VIEW Simple things should be simple: This quotation is widely attributed to Alan Kay. I have been unable to trace its original source. It is also occasionally attributed to Larry Wall. Clay Shirky wrote about Christopher Alexander’s “A City Is Not a Tree” in the Many to Many blog on April 26, 2004, at http://many.corante.com/archives/2004/04/26/a_ city_is_not_a_tree.php. Alexander’s article was originally published in Architectural Forum, April–May 1965. It is available online at http://www.arquitetura.ufmg.br/rcesar/alex/_city index.cfm.

pages: 266 words: 79,297

Forge Your Future with Open Source
by VM (Vicky) Brasseur

Still others in the chatroom or by some other mechanism. Make sure to review the CONTRIBUTING file to verify the correct way to ask questions for that project. Drop the attitude. Even if you’ve contributed to other projects before, even if you’ve been in software development for thirty years, even if you’re Linus Torvalds[92], Larry Wall[93], and Tim Berners-Lee[94] all rolled into one: Get over yourself. It’s entirely possible to phrase a question that is confident and competent yet does not make you sound like an arrogant twit. For instance, when asking about a programming optimization, rather than pointing out that you have a PhD in computer science and have been programming in that language for twelve years (information which is irrelevant to the suggestion at hand), simply state the problem you’ve noticed, how the code could be improved, and ask whether anyone would have a problem with you making the change.

Now that you know how to communicate with others in a FOSS community, it’s time to get to know them, and what better way to do that than getting together in person? Footnotes [92] https://en.wikipedia.org/wiki/Linus_Torvalds; The inventor of Linux. [93] https://en.wikipedia.org/wiki/Larry_Wall; The inventor of rn, patch, Perl, and Perl 6. [94] https://en.wikipedia.org/wiki/Tim_Berners-Lee; The inventor of the World Wide Web. [95] https://en.wikipedia.org/wiki/Pastebin [96] https://www.xkcd.com/386/ [97] https://opensource.com/life/16/6/irc Copyright © 2018, The Pragmatic Bookshelf.

pages: 786 words: 195,810

NeuroTribes: The Legacy of Autism and the Future of Neurodiversity
by Steve Silberman
Published 24 Aug 2015

INTRODUCTION: BEYOND THE GEEK SYNDROME to cover the maiden voyage for Wired magazine: “Scripting on the Lido Deck,” Steve Silberman. Wired, 8.10, Oct. 2000. “Swiss Army chainsaw”: “Beginner’s Introduction to Perl,” Doug Sheppard. Perl.com, 2000. http://www.perl.com/pub/2000/10/begperl1.html he derived it from the parable of the “pearl of great price”: Larry Wall, interview with the author, 2000. laziness, impatience, and hubris: Programming Perl, Larry Wall, Jon Orwant, and Tom Christiansen. O’Reilly Media, 3rd ed., 2000, p. xix. she helped Vint Cerf develop the TCP/IP protocols: Closing the Innovation Gap: Reigniting the Spark of Creativity in a Global Economy, Judy Estrin. McGraw-Hill, 2008. “No two people with autism are the same”: An Anthropologist on Mars, Oliver Sacks.

It is fascinating reading; it will change how you think of autism, and it belongs alongside the works of Temple Grandin and Clara Claiborne Park, on the bookshelf of anyone interested in autism and the workings of the human brain. Hans Asperger and children at the University of Vienna, 1930s. Introduction: Beyond the Geek Syndrome There is more than one way to do it. —LARRY WALL On a bright May morning in 2000, I was standing on the deck of a ship churning toward Alaska’s Inside Passage with more than a hundred computer programmers. The glittering towers of Vancouver receded behind us as we slipped under the Lions Gate Bridge heading out to the Salish Sea. The occasion was the first “Geek Cruise”—an entrepreneur’s bid to replace technology conferences in lifeless convention centers with oceangoing trips to exotic destinations.

The occasion was the first “Geek Cruise”—an entrepreneur’s bid to replace technology conferences in lifeless convention centers with oceangoing trips to exotic destinations. I booked passage on the ship, a Holland America liner called the Volendam, to cover the maiden voyage for Wired magazine. Of the many legendary coders on board, the uncontested geek star was Larry Wall, creator of Perl, one of the first and most widely used open-source programming languages in the world. Thousands of websites we rely on daily—including Amazon, Craigslist, and the Internet Movie Database—would never have gotten off the ground without Perl, the beloved “Swiss Army chainsaw” of harried systems administrators everywhere.

pages: 499 words: 144,278

Coders: The Making of a New Tribe and the Remaking of the World
by Clive Thompson
Published 26 Mar 2019

This harmonic resonance between magic and code is why teenaged nerd programmers of the early ’80s hybridized so fluently with Dungeons & Dragons (a game that merged fantasy with probabilistic dice-rolling math), or the spell-uttering wizards of Tolkien’s epics. In the ’60s, when programmers invented a type of code that would constantly run in the background, they called it a “daemon.” When he created the computer language Perl, Larry Wall, the computer scientist, included a function called “Bless.” As the coder Danny Hillis once noted, “A few hundred years ago in my native New England, an accurate description of my occupation would have gotten me burned at the stake.” This sense of magical control can be intoxicating and fun; it lends itself frequently to a sort of starry-eyed idealism.

Humans are inherently pretty lazy; as Nicholas Carr notes in The Glass Cage, when someone offers us the ability to take a shortcut, we take it. We only discover later that we may have traded off an ingrained skill—or, in the case of calculus, never learned it in the first place. But it’s incredibly hard to resist because we’re constantly given new tools from programmers who’ve figured out how to remove friction from daily life. Larry Wall, the famous coder and linguist who created the Perl programming language, deeply intuited this coderly aversion to repetition. In his book on Perl, he and his coauthors wrote that one of the key virtues of a programmer is “laziness.” It’s not that you’re too lazy for coding. It’s that you’re too lazy to do routine things, so it inspires you to automate them.

,” Quora, December 22, 2015, accessed August 18, 2018, https://www.quora.com/What-is-the-etymology-of-cron. do it over and over: Peter Seibel, Coders at Work: Reflections on the Craft of Programming (New York: Apress, 2009), 77. we take it: Nicholas Carr, The Glass Cage (New York: W. W. Norton, 2014). “so many questions about it”: Tom Christiansen, Brian D. Foy, Larry Wall, and Jon Orwant, Programming Perl: Unmatched Power for Text Processing and Scripting (Sebastapol, CA: O’Reilly Media, 2012), 387, 1062. “when are you free?”: “As a programmer, what tasks have you automated to make your everyday life easier? How can one expect to improve life through automated programming?

The Manager’s Path
by Camille Fournier
Published 7 Mar 2017

In the case where the goals are fuzzy and the mission is unclear, do your best to understand the company culture and think about how you can set your teams up to work well within that culture. By collaborating across teams and across business functions, your teams will come to understand the bigger picture and appreciate their mission as part of that picture. The Virtues of Laziness and Impatience I love Larry Wall’s idea that “laziness, impatience, and hubris” are virtues of engineers, as he articulated in Programming Perl.3 These virtues persist into leadership, and learning how to channel these traits into advantages is something I encourage all managers to do. As a manager, when you are dealing with people one-on-one you probably don’t want to be impatient, of course.

We engineers automate so that we can focus on the fun stuff—and the fun stuff is the work that uses most of your brain, and it’s not usually something you can do for hours and hours, day after day. So be impatient to figure out the nut of what’s important. As a leader, any time you see something being done that feels inefficient, question it: Why does 3 Tom Christiansen, brian d foy, Larry Wall, and Jon Orwant, Programming Perl, 4th edition (Sebastopol, CA: O’Reilly, 2012). 122 | THE MANAGER’S PATH this feel inefficient to me? What is the value in the thing we are doing? Can we deliver that value faster? Can we strip down this project into something simpler and get it done more quickly?

pages: 309 words: 65,118

Ruby by example: concepts and code
by Kevin C. Baird
Published 1 Jun 2007

Perl Perl is known by its mantra TMTOWTDI, and it is an extremely flexible and utilitarian language—one that has certainly had an impact on both Ruby and programming, in general. TMTOWTDI stands for There’s More Than One Way To Do It, which is a design philosophy that Perl certainly exemplifies. Its role in stressing the importance of regular expressions is enough to earn it a place in history. Perl was invented in 1987 by Larry Wall, and it was primarily intended to perform a role similar to that of Unix-centric languages like shell, awk, and sed. Perl focuses on ease of use for tasks like Unix system administration, and it is heavily used for web applications, as well. Perl’s initial design was procedural, but in recent years it has moved in an increasingly functional direction.

In fact, some people erroneously believe that PHP is only usable for web applications. It is technically a complete, generalpurpose programming language, although it has several features that make it 4 Critics contend that this feature makes Lisp a more appropriate acronym for Lots of Irritating Superfluous Parentheses. Larry Wall, the creator of Perl, suggested that Lisp code has all the aesthetic appeal of “oatmeal with toenail clippings.” Clearly, Lisp has some public relations problems. 5 Relatedly, Philip Greenspun’s tenth Rule of Programming at http://philip.greenspun.com/ research is “Any sufficiently complicated C or Fortran program contains an ad-hoc, informallyspecified bug-ridden slow implementation of half of Common Lisp.” 6 264 A pp en dix This quote also comes from Paul Graham’s website, http://www.paulgraham.com/quotes.html.

pages: 706 words: 120,784

The Joy of Clojure
by Michael Fogus and Chris Houser
Published 28 Nov 2010

Ritchie, The C Programming Language (Englewood Cliffs, NJ: Prentice Hall, 1988). 1972 Prolog Alain Colmerauer Ivan Bratko, PROLOG: Programming for Artificial Intelligence (New York: Addison-Wesley, 2000). 1975 Scheme Guy Steele and Gerald Sussman Guy Steele and Gerald Sussman, the “Lambda Papers,” mng.bz/sU33. 1983 C++ Bjarne Stroustrup Bjarne Stroustrup, The Design and Evolution of C++ (Reading, MA: Addison-Wesley, 1994). 1986 Erlang Telefonaktiebolaget L. M. Ericsson Joe Armstrong, “A History of Erlang,” Proceedings of the Third ACM SIGPLAN Conference on History of Programming Languages (2007). 1987 Perl Larry Wall Larry Wall, Tom Christiansen, and Jon Orwant, Programming Perl (Cambridge, MA: O’Reilly, 2000). 1990 Haskell Simon Peyton Jones Miran Lipovača, “Learn You a Haskell for Great Good!” http://learnyouahaskell.com/. 1995 Java Sun Microsystems David Bank, “The Java Saga,” Wired 3.12 (1995). 2007 Clojure?

pages: 754 words: 48,930

Programming in Scala
by Martin Odersky , Lex Spoon and Bill Venners
Published 15 Jan 2008

For example, consider this list: scala> val people = List( new Person("Larry", "Wall"), new Person("Anders", "Hejlsberg"), new Person("Guido", "van Rossum"), new Person("Alan", "Kay"), new Person("Yukihiro", "Matsumoto") ) people: List[Person] = List(Larry Wall, Anders Hejlsberg, Guido van Rossum, Alan Kay, Yukihiro Matsumoto) Because the element type of this list, Person, mixes in (and is therefore a subtype of) Ordered[People], you can pass the list to orderedMergeSort: scala> val sortedPeople = orderedMergeSort(people) sortedPeople: List[Person] = List(Anders Hejlsberg, Alan Kay, Yukihiro Matsumoto, Guido van Rossum, Larry Wall) Now, although the sort function shown in Listing 19.12 serves as a useful illustration of upper bounds, it isn’t actually the most general way in Scala to design a sort function that takes advantage the Ordered trait.

pages: 241 words: 43,073

Puppet 3 Beginner's Guide
by John Arundel
Published 16 Apr 2013

Herman Indexer Monica Ajmera Mehta Graphics Ronak Dhruv Aditi Gajjar Production Coordinator Melwyn D'sa Cover Work Melwyn D'sa About the Author John Arundel is an infrastructure consultant who helps people make their computer systems more reliable, useful, and cost-effective and has fun doing it. He has what Larry Wall describes as the three great virtues of a programmer: laziness, impatience, and hubris. Laziness, because he doesn't like doing work that a computer could do instead. Impatience, because he wants to get stuff done right away. Hubris, because he likes building systems that are as good as he can make them.

pages: 1,201 words: 233,519

Coders at Work
by Peter Seibel
Published 22 Jun 2009

In that respect they are actually more verbose than Lisp. But that brings me to the other half, the other reason why I like Python syntax better, which is that Lisp is lexically pretty monotonous. Seibel: I think Larry Wall described it as a bowl of oatmeal with fingernail clippings in it. Deutsch: Well, my description of Perl is something that looks like it came out of the wrong end of a dog. I think Larry Wall has a lot of nerve talking about language design—Perl is an abomination as a language. But let's not go there. If you look at a piece of Lisp code, in order to extract its meaning there are two things that you have to do that you don't have to do in a language like Python.

Of course, we need researchers who are inclined that way, but we also need programmers who do research. We need to have the programming discipline not be just this sort of blue-collar thing that's cut off from the people in the ivory towers. Seibel: How do you feel about proofs? Eich: Proofs are hard. Most people are lazy. Larry Wall is right. Laziness should be a virtue. So that's why I prefer automation. Proofs are something that academics love and most programmers hate. Writing assertions can be useful. In spite of bad assertions that should've been warnings, we've had more good assertions over time in Mozilla. From that we've had some illumination on what the invariants are that you'd like to express in some dream type system.

pages: 274 words: 58,675

Puppet 3 Cookbook
by John Arundel
Published 25 Aug 2013

Run the following command: ubuntu@cookbook:~/puppet$ rake add_check ln -s /home/ubuntu/puppet/hooks/check_syntax.sh /home/ubuntu/puppet/.git/hooks/pre-commit Puppet syntax check hook added 31 Puppet Infrastructure How it works… The check_syntax.sh script will prevent you from committing any files with syntax errors: ubuntu@cookbook:~/puppet$ git commit -m "test commit" Error: Could not parse for environment production: Syntax error at '}' at line 3 Error: Try 'puppet help parser validate' for usage manifests/nodes.pp: Error: 1 syntax errors found, aborting commit. If you add the hooks directory to your Git repo, anyone who has a checkout can run the rake add_check task and get this syntax checking behavior. 32 2 Puppet Language and Style Computer language design is just like a stroll in the park. Jurassic Park, that is. —Larry Wall In this chapter we will cover: ff Using community Puppet style ff Checking your manifests with puppet-lint ff Using modules ff Using standard naming conventions ff Using inline templates ff Iterating over multiple items ff Writing powerful conditional statements ff Using regular expressions in if statements ff Using selectors and case statements ff Using the in operator ff Using regular expression substitutions Puppet Language and Style Introduction In this chapter you'll learn to write elegant Puppet manifests.

pages: 224 words: 48,804

The Productive Programmer
by Neal Ford
Published 8 Dec 2008

At the time I credited my increased productivity to the acceleration I experienced using the bash shell, but it was more than that—it was my increasing familiarity with that tool as I stopped having to struggle to do things and could just get them done. We spent some time discussing that hyperproductivity and how to bottle it. Several years, untold conversations, and a series of lectures later, Neal has produced a definitive work on the subject. In his book Programming Perl (O’Reilly), Larry Wall describes the three virtues of a programmer as “laziness, impatience, and hubris.” Laziness, because you will expend effort to reduce the amount of overall work necessary. Impatience, because it will anger you if you are wasting time doing something the computer could do faster for you. And hubris, because excessive pride will make you write programs that other people won’t say bad things about.

pages: 292 words: 81,699

More Joel on Software
by Joel Spolsky
Published 25 Jun 2008

I am pragmatic and understand that a totally uncensored world just looks like your inbox: 80% spam, advertising, and fraud, rapidly driving away the few interesting people. 118 More from Joel on Software If you are looking for a place to express yourself in which there will be no moderation, my advice to you would be to (a) create a new forum and (b) make it popular. (Apologies to Larry Wall.) Q. How do you decide what to delete? A. First of all, I remove radically off-topic posts or posts that, in my opinion, are only of interest to a very small number of people. If something is not about the same general topics as Joel on Software is about, it may be interesting as all heck to certain people, but it’s not likely to interest the majority of people who came to my site to hear about software development.

pages: 260 words: 40,943

Hacking Exposed: Network Security Secrets and Solutions
by Stuart McClure , Joel Scambray and George Kurtz
Published 15 Feb 2001

This program subjects user passwords to stringent checks to decrease the likelihood that users will choose weak passwords. It is a commercial-grade solution that greatly enhances password security. Anlpasswd This Perl program was written at Argone National Laboratories (hence, anl). It is an improvement upon a program originally written by Larry Wall (Larry is the creator of Perl). It can be found at ftp://coast.cs.purdue.edu/pub/tools/unix/anlpasswd. It is a good proactive password checker that uses a dictionary file of your choice and allows you to create custom rules. Also, it is a well-written Perl program that can give the reader some insight into password checking strategies.

pages: 471 words: 94,519

Managing Projects With GNU Make
by Robert Mecklenburg and Andrew Oram
Published 19 Nov 2004

This allowed me to select a trivial format, such as literal, and change it later to whatever the production department preferred without having to perform a global search and replace. I'm sure the XML aficionados will probably send me boat loads of email telling me how to do this with entities or some such, but remember Unix is about getting the job done now with the tools at hand, and as Larry Wall loves to say, "there's more than one way to do it." Besides, I'm afraid learning too much XML will rot my brain. The second task for m4 was handling the XML identifiers used for cross-referencing. Each chapter, section, example, and table is labeled with an identifier: <sect1 id="MPWM-CH-7-SECT-1"> References to a chapter must use this identifier.

Remix: Making Art and Commerce Thrive in the Hybrid Economy
by Lawrence Lessig
Published 2 Jan 2009

It is currently still maintained by thousands of online programmers via sendmail.org. In addition, Allman started Sendmail Inc. as a business in November 1998. For a profit, he sells easy-to-use versions of the open source software, along with support and service, to corporations. Another important force in the open source world is Perl. It was created by 43-year-old Larry Wall, a former linguist who created Perl while at Burroughs Corp. on a government-funded project. The software is free, although Wall has sold 500,000 copies of his Perl manuals. Another open source program, BIND, was originally developed at the University of California at Berkeley as freeware. It allows domain names like Linux.com to be entered as textual name addresses instead of machine numbers (called IP addresses, for example, 43.72.66.209), making it much easier for ordinary people to surf the Internet.

pages: 398 words: 107,788

Coding Freedom: The Ethics and Aesthetics of Hacking
by E. Gabriella Coleman
Published 25 Nov 2012

In having to read and parse other people’s codes, programmers routinely encounter what has been depicted aptly as a “twisting maze of corridors, a bottomless pit” (Ullman 2003, 262). In the second extract, we have DMH, also a San Francisco hacker, but unlike Espe, a self-styled Perl alchemist. Perl’s creator, a linguist and programmer named Larry Wall, intended the code to embody the flexible and often-irrational properties of a natural language. As noted by DMH, Perl’s aesthetic and technical features are opaqueness, complexity, and flexibility. Also run as an open-source project, Perl is incorporated into the identity of many of its supporters, who call themselves Perl Monks, underscoring the single-minded dedication they have for what is considered a language that can produce poetic (or highly unreadable code) that is creatively displayed during obfuscated code contests, which are usually held for Perl, C, and C++.3 While DMH respects Perl for what it is most famous for—its cryptic nature and poetic elegance—he is drawn to Perl for pragmatic reasons.

pages: 494 words: 142,285

The Future of Ideas: The Fate of the Commons in a Connected World
by Lawrence Lessig
Published 14 Jul 2001

One of the leaders of the project, Net wizard Brian Behlendorf, says this “essential volunteerism” was crucial for the project. The work done for the project had to come from people who were motivated to help the project, not from people just paid to code from nine to five. Linux and Apache are the two most prominent open code projects. But there are others still. Perl, developed by Larry Wall, is a programming language that enables high-power manipulation of text. It is the glue that makes most Web sites run. It too was developed as an open source project, and it is by far the dominant language of its class, ported to every important operating system. And deeper in the guts of the Internet's code are other systems that are even more crucial to the Net.

Multitool Linux: Practical Uses for Open Source Software
by Michael Schwarz , Jeremy Anderson and Peter Curtis
Published 7 May 2002

Covers: Apache Web server http://www.apache.org Question: I want my Web server to do something unusual, like authenticate against a proprietary data store, log to a relational database, or provide real-time statistics about the machine it's on. I've looked for packages to do these things, but I can't find anything that will work to my satisfaction. What can I do? Answer: Consider building an Apache module. I admit this violates one of Larry Wall's three great virtues of a programmer, namely, Laziness. But sometimes nothing else will get the job done, and writing a CGI is not an option. You'll have to hold your breath and dive into the world of Apache server extensions. Apache is the most popular Web server in the world! There, I said it.

Version Control With Git: Powerful Tools and Techniques for Collaborative Software Development
by Jon Loeliger and Matthew McCullough
Published 14 Aug 2012

The higher level porcelain command, git am, is partially implemented in terms of the plumbing command git apply. The command git apply is the workhorse of the patch application procedure. It accepts git diff or diff style outputs and applies it to the files in your current working directory. Though different in some key respects, it performs essentially the same role as Larry Wall’s patch command. Because a diff contains only line-by-line edits and no other information (such as author, date, or log message), it cannot perform a commit and log the change in your repository. Thus, when git apply is finished, the files in your working directory are left modified. (In special cases, it can use or modify the index as well.)

pages: 726 words: 172,988

The Bankers' New Clothes: What's Wrong With Banking and What to Do About It
by Anat Admati and Martin Hellwig
Published 15 Feb 2013

We thank Viral Acharya, Philippe Aghion, Sheila Bair, Mary Barth, Nadine Baudot-Trajtenberg, Jane Baxter, Lawrence Baxter, Urs Birchler, Niklaus Blattner, Jürg Blum, Arnoud Boot, Claudio Borio, Michael Boskin, John Boyd, Dick Brealey, Claudia Buch, Charles Calomiris, John Cochrane, Peter DeMarzo, Thomas Gehrig, Hans Gersbach, Hendrik Hakenes, Andy Haldane, Ian Harrison, Richard Herring, Tom Hoenig, Rob Johnson, Ed Kane, Dennis Kelleher, Mervyn King, David Kreps, Sebastian Mallaby, Maureen McNichols, Hamid Mehran, Allan Meltzer, David Miles, Chuck Morris, Manfred J. M. Neumann, George Parker, Francisco Perez-Gonzalez, Thierry Philipponnat, John Plender, Barbara Rehm, Isabel Schnabel, David Skeel, Chester Spatt, Ilya Strebulaev, Martin Summer, Elu von Thadden, Adair Turner, Jim Van Horne, Larry Wall, Beatrice Weder di Mauro, Juli Weiss, Mark Whitehouse, Martin Wolf, Daniel Zimmer, and Jeff Zwiebel. Some of them may disagree with our views, but all of them have contributed to the book with their insights. In the book we are critical of politicians and regulators, but many do not fit our characterizations.

pages: 673 words: 164,804

Peer-to-Peer
by Andy Oram
Published 26 Feb 2001

On the querying end, while some sites do make an attempt to narrow the context for particular word searches (using such categories as “all the words,” “any of the words,” or “in the title”), successful searching still comes down to keywords and best guess. It’s virtually impossible to disambiguate between concepts like “by” and “about”—“find me all articles written by Andy Oram” versus “find me anything about Andy Oram.” Queries like “find me anything on Perl written by the person whose email address is larry@wall.org" are out of the question. While the needs of users clearly call for semantically rich queries, some peer-to-peer applications and systems are doing little to provide even the simplest of keyword searches. The categories “artist” and “title,” which may be enough within Napster, will fold up and collapse in more heterogeneous peer-to-peer environments populated by MP3s, documents, images, and the various other data types found on the Web today.

pages: 999 words: 194,942

Clojure Programming
by Chas Emerick , Brian Carper and Christophe Grand
Published 15 Aug 2011

If your organization starts using Clojure, it will have good company. * * * [437] The Eclipse Public License, which allows for free commercial use and redistribution: http://www.eclipse.org/legal/epl-v10.html. [438] In Clojure’s case, Rich Hickey, who has a role similar to Python’s Guido Van Rossum, Ruby’s Yukihiro Matsumoto, Perl’s Larry Wall, and C++’s Bjarne Stroustrup. [439] All recognized contributors are listed at http://clojure.org/contributing. [440] irc://irc.freenode.net/clojure or in your browser at http://webchat.freenode.net/?channels=#clojure. [441] One of us has run a community-wide survey for the past two years to gauge the origins, mood, and priorities of the Clojure community; full results of the last editing of that survey are available at http://cemerick.com/2011/07/11/results-of-the-2011-state-of-clojure-survey/.

pages: 602 words: 207,965

Practical Ext JS Projects With Gears
by Frank Zammetti
Published 7 Jul 2009

You will learn how to build some cool applications with very little effort. 127 P A R T 2 The Projects The Internet is the most important single development in the history of human communication since the invention of call waiting. —Dave Barry Real programmers can write assembly code in any language. —Larry Wall You have that vacant look in your eyes that says “Hold my head to your ear, you’ll hear the sea!” —Londo Mollari (Babylon 5) Well, believe me, Mike, I calculated the odds of this succeeding versus the odds I was doing something incredibly stupid . . . and I went ahead anyway. —Crow (Mystery Science Theater 3000) They’ve finally come up with the perfect office computer.

pages: 1,065 words: 229,099

Real World Haskell
by Bryan O'Sullivan , John Goerzen , Donald Stewart and Donald Bruce Stewart
Published 2 Dec 2008

Indeed, functional programming as a field was quite obscure. During this time, the mainstream programming world experimented with relatively small tweaks, from programming in C, to C++, to Java. Meanwhile, on the fringes, programmers were beginning to tinker with new, more dynamic languages. Guido van Rossum designed Python; Larry Wall created Perl; and Yukihiro Matsumoto developed Ruby. As these newer languages began to seep into wider use, they spread some crucial ideas. The first was that programmers are not merely capable of working in expressive languages; in fact, they flourish. The second was in part a byproduct of the rapid growth in raw computing power of that era: it’s often smart to sacrifice some execution performance in exchange for a big increase in programmer productivity.

pages: 394 words: 110,352

The Art of Community: Building the New Age of Participation
by Jono Bacon
Published 1 Aug 2009

When I organized the Freeware Summit (later known as the Open Source Summit) in 1998, it was because I recognized that there were multiple communities like that, that their leaders had never met in person, and would benefit from talking about common problems and shaping a common story. And being a media company, we organized a press conference at the end of the day to get that story out. And sure enough, two months later, Linus Torvalds was on the cover of Forbes, with full-page pictures inside of Larry Wall, Richard Stallman, Brian Behlendorf, and others. Social media is about community, about the stories that tie those communities together, and about tools to amplify the connections between them. I was doing that long before I got on Twitter or Facebook. Which social media networks really captured your interest first?

pages: 468 words: 233,091

Founders at Work: Stories of Startups' Early Days
by Jessica Livingston
Published 14 Aug 2008

Livingston: Is there any advice you would give a programmer who wanted to start a startup who wants to avoid having to take any outside investment? Spolsky: It’s totally possible. I would recommend that you create a weblog and have millions of readers every month from around the world that read it. That’s not really necessarily followable. Step two is a little bit hard. I think it’s Larry Wall who used to have this saying about Perl that, “Well, if you don’t like it, just make your own language and then make it popular.” That was his way of refuting any and all complaints about the Perl syntax or whatever. So the reason I’m saying this, even though it’s tongue-in-cheek, is that we definitely got a lot of publicity—what a traditional company would call PR— through Joel on Software.

pages: 1,758 words: 342,766

Code Complete (Developer Best Practices)
by Steve McConnell
Published 8 Jun 2004

Laziness Laziness manifests itself in several ways: Laziness: The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so that you don't have to answer so many questions about it. — Larry Wall Deferring an unpleasant task Doing an unpleasant task quickly to get it out of the way Writing a tool to do the unpleasant task so that you never have to do the task again Some of these manifestations of laziness are better than others. The first is hardly ever beneficial. You've probably had the experience of spending several hours futzing with jobs that didn't really need to be done so that you wouldn't have to face a relatively minor job that you couldn't avoid.