Tomer Altman

I, Tomer Altman, do solemnly offer these my responses to The Road to Lisp Survey:

When did you first try Lisp seriously, and which Lisp family member was it?
Meaning any member of the Lisp family. As for "when", many of us had multiple encounters with a Lisp before it really stuck. The "stick" date is of most interest.

I first encountered it in Richard Fateman's CS 61a course at UC Berkeley, which is based off of Brian Harvey's adaptation of MIT's SICP-based course (Spring 2000). I liked it, had fun, but for variousr reasons ( "it's slow! No one uses it!", etc. ), I never really used it for a long time...

Then, I was working on a research project, using C, and I was getting nowhere fast. I tried Prolog as an alternative, and then I considered using Scheme, since as a member of the Lisp family of languages, it should be adept at symbolic tasks. It worked! The benefits of Scheme ( weakly-typed, encouraged abstraction, interpreter-debugging, etc. ) allowed me to fix bugs, clean up code, and achieve 3 years of C code in three months. That was the summer of 2003. Then, I leaned that Scheme ( & Lisp in general ) are pretty much the only Very High-Level Languages (VHLLs) which have high-quality compilers. Why would I use any other "scripting language", no matter how popular it is, when I can get an order of magnitude speed-up? There's simply no comparison...

What led you to try Lisp?

Well, I needed a high-level solution to my research problem ( as Greenspun predicted, I re-invented half of Prolog in C to solve my problem! ).

What other languages have you been using most?

C for "application" programming, PHP/Perl for web-scripting ( I hate Perl for web-scripting now ), Octave/Maxima for numerical & symbolic scientific computing...

How far have you gotten in your study of Lisp?
Hard to answer, I know. Just looking for a rough idea.

Well, one thing that I like about Lisp/Scheme is that once you *really* understand it, you can implement it yourself from scratch! I cannot think of a single other computer language that one can say that about... most "popular" languages are not democratic like that; they are benign dictatorships. So in pursuit of that, I'm re-reading ( and now *understanding* ) SICP, learning Common Lisp syntax, and using CL to fully understand macros via Paul Graham's "On Lisp". I am beginning to understand macros in principle. I need to finish the book, though. To further my depth of understanding of the language vs. the implementation, I'm implementing a Scheme in a non-Lispy VHLL. Hmmm... what else? I use HOF's plentifully in my code, and I'm trying to write libraries to contribute to the Scheme Library.

What do you think of Lisp so far?

I love it! I feel now that I can do anything! C really depressed me as a programmer. Everything felt hard!
Also, as a scientist, I hate things which are ad hoc; I want to understand the systematic principles that order things. In that regard, Lisp is great; you can understand it at every level. Perl, Python, etc. are just glorious hacks that approximate the features Lisp had already in the 1960's. They're messy and all their end-users just worship the sole implementator(s) as programming deities, and they rarely understand what is under the hood.
In another reserach project that I worked on in the summer of 2003, my collaborator wanted to program it in C++. So I reluctantly learned C++. I liked it relative to C, but there was one thing that I began to notice. With C++, you have to keep *so* many things in your mind at a time! It is a language full of exceptions, special cases, and a slew of features. It really slowed down my coding, because I had my nose in a syntax book all the time. Also, it took 10x as long to compile relative to C. With Scheme, it is so curt & elegant in its design, that I rarely find myself looking up esoteric syntax situations. Someone once said that people-cycles are more expensive than CPU cycles. Well, I also think that we humans have a limited amount of room in our "buffer" to keep all the language details in mind all the time. With C++, I could never bear all the details in mind all the time. With Scheme, it's a breeze.


Switch Date 2003 | RtL SICP | RtL Formal Education

Other pages sharing this page's categories:

"anonymous user's road to lisp" Abhijit Rao Albert Krewinkel's Road to Lisp Alejandro Guillen Road to LISP Alexander Lehmann's Road to Lisp AlexPeake AlexTibbles Andrew Jones-Gonzales's Road to Lisp Andrew Main's Road to Lisp Andrew Philpot's Road to Lisp Artie Gold's Road to LISP Arto Bendiken's Road to Lisp August Sigov's Road to Lisp Ben Holm's Road to Lisp Bill Birch's Road to Lisp Bob Bane's Road to Lisp Bob Bechtel BobHutchison Brad Beveridge - Road to Lisp Bradford W Miller BradMight Brandon Corfman Brendan Van Horn Brian Mastenbrook - Road to Lisp Brian T. Rice Bruce Durling's Road to Lisp Bruce Woodward's Road to Lisp Bulent Murtezaoglu C E C Artime Charlie McMackin Chris Laux's Road to Lisp Chris Smith's Road to Lisp Chris Sonnack's Road to Lisp Chris Van Dusen Chris-Perkins Christian Lynbechs Road to Lisp Christian Nybø Coby Beck Conrad Barski Constantine Vetoshev Damien Sullivan's Road to Lisp Dan Muller Daniel Barlow's Road to Lisp Daniel Pezely's Road to Lisp DARose Dave Fayram's Road to Lisp Dave Pearson Dave Roberts David Douthitt David Golden's Road to Lisp David Mercer David Rush David Thompson's Road to Lisp Denes Cselovszky's Road to Lisp Dirk Gerrits's Road to Lisp DJ Clark's Road to Lisp Donald Fisk's Road to Lisp Donnie Cameron's Road to Lisp Doug Tolton's Road to LIsp Drew Crampsie Drew McDermott Duane Rettig's Road To Lisp Edi Weitz' Road to Lisp Eduardo Muñoz Emre Sevinc Erann Gat's Road to Lisp Eric Hanchrow Erik Enge's Road to Lisp Erik Winkels's Road to Lisp Espen Vestre's Road to Lisp Gabor Melis's Road to Lisp Gareth McCaughan's Road to Lisp Gary King's Road to Lisp Gary Klimowicz's Road to Lisp Geoff Wozniak's Road to Lisp GeoffCant GeoffKnauth George Rogers Road to Lisp Glenn Ehrlich Glenn Ehrlich Road to Lisp Gordon Weakliem Heow's Road to Lisp Hoan Ton-That's Road to Lisp Ivan Toshkov's Road To Lisp Jacek Generowicz James Fleming's Road to Lisp Jeff Shrager's Road to Lisp Jimmy Miller's Road to Lisp Jochen Schmidt's Road to Lisp Jock Cooper Joel Ray Holveck John Pallister's road to Lisp John Sturdy John Williams JP Massar Justin Dubs Justin Heyes-Jones's Road To Lisp Kamen Tomov Karl K.'s Road to Lisp Kean Lau's Road to Lisp Kenny Tilton's Road to Lisp KevinZzz Kristian Sørensen - Road to Lisp Larry Clapp's Road to Lisp Lars Brinkhoff's Road to Lisp Lars Wirzenius Lasse Rasinen Lennart Staflin Louis Theran Mackram Raydan's Road to Lisp Marc Mertens's Road to Lisp Marco Baringer's Road to Lisp Mark Hurd Mark Triggs Mark Wilson MarkBrady Marko Kocic Martin Mikelsons Matthias Benkard's Road to Lisp MattKnox Michael J Forster Michael Naunton's Road to Lisp Mikael Jansson's Road to Lisp Mike Travers Mikel Evins' Road to Lisp Mostafa Razavi's Road to Lisp Myron Wu's Road to LISP Nathan Bloomfield's Road to Lisp Naveen Garg Nick Levine Nicolas Sceaux's Road to Lisp Nikodemus Siivola'a Road to Lisp Nonya B's Road to Lisp Ola Rinta-Koski Ora Lassila's Road to Lisp Pascal Costanza's Road To Lisp Patrick Logan Paul Clevett Paul Foleys Road To Lisp Paul Graham's Road to Lisp Paul Potts Paul Snively PaulKhuong's Road To Lisp Peder O Klingenberg's Road to Lisp Pekka P Pirinen Pete Kirkham Peter Housel's Road to Lisp Peter Lewerin's Road to Lisp Peter Santoro Peter Seibel's Road to Lisp Peter Van Eynde's Road to Lisp Pierre Thierry's Road to Lisp Rainer Joswig's Road to Lisp Ralph Richard Cook Randall Randall's Road to Lisp Reini Urban Robbie Sedgewick's Road to Lisp Robert Marlow Robin Felix's Road to Lisp Robin Kåveland Hansen's Road to Lisp RtL Brian Cully RtL Russell Snow RtLMartinGinkel Sanjay Pande Scott L Burson's Road to Lisp Scott McIntire Scott Michel's Road to Lisp Sean Champ Sebastian Stern's Road to Lisp SimonHeath Sivaram N Slobodan Stephane Belmon's Road To Lisp Steven Harris' Road to Lisp Tage Stabell-Kulø Tayssir John Gabbour's Road to Lisp The Road Jeff Caldwell Took The Road to Lisp Questions Thomas F Burdick's Road to Lisp Thomas M. Hermann's Road to Lisp Thomas Müller Thomas Munro's Road to Lisp Thomas Stenhaug's Road to Lisp Tim Kerchmar TimHaynes Toby Davies' Road to Lisp tony yelacic VikasGP Vladimir Sedach William Maddox Yuri Niyazov Zach Beane's Road to Lisp Zachery Bir