Tcl/Tk (31)

22 Name: #!/usr/bin/anonymous : 2008-08-31 20:36 ID:Heaven

> Try explaining a cdr or progn to a non-programmer, both which are very prevalent in lisp.

They're just words. All the words that are in lisp, are in this book: http://l1sp.org/cl/ or you can learn about them by typing:

(describe 'WORD)
> What common Python idioms are likely to pose a problem for a new programmer?

It all seems problematic for a new programmer. Explaining why sometimes you use [] lists and sometimes you use () tuples. Explaining why print isn't a method is also problematic. Explaining why they check __name__ also seems to cause problems. Operator-order is also difficult; explaining why they sometimes read a statement right-to-left, and other times from left-to-right seems problematic.

Someone who is familiar with some algol-like syntax such as is seen in a shell or in another language will have a completely different set of problems- the if, postfix-if, yield, self, and so on.

Nevertheless, this is a point of readability; Lisp has fewer rules and corner-cases, so we tend to have an easier time teaching people how to read it.

> Serious question. I've tried teaching people Python and Lisp both. Of those, Python is far, far easier for the average person to grasp.

So if I teach then Python and Lisp, and I say they learn Lisp easier, does that make me a better teacher? I think it's probably more likely you're trying to measure something other than readability.

I've noticed that users and programmers who have some background with something algol-like seem to have an easy time reading Python. I've noticed people with no programming experience, and little to no background with anything algol-like have an easier time reading Lisp. Writing Lisp too.

We make an application that uses Lisp as it's data structure. We have advertising executives write these data files- they're really Lisp code, we just don't tell them they're programming. I cannot imagine them writing Python as easily...

My daughter can read and write Lisp, but cannot use Python. She's six, and is delighted when the computer tells her jokes back to her.

> Once again trying to bring this thread back on topic, Tcl is kind of in the middle. It's fairly easy to teach to people that have at least a basic understanding of programming, but I imagine the complete non-coder would have a difficult time understanding the idiosyncrasies (e.g. the -switches for commands)

TCL is horrible to read. It has even more corner cases and a confusing syntax than even Python. It's almost as hard to read as Perl, but without any of the Power.

I suppose if you're wearing the Algol helmet and blinders, TCL seems like it is a reasonable choice. TCL is shit. The worst kind of shit: The kind other people swear they like to eat.

Name: Link:
Leave these fields empty (spam trap):
More options...
Verification: