Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

common lisp

Name: Anonymous 2013-08-11 20:42

After reading some of PG's essays, I did give Common Lisp the old college try, but without much success. I got the Touretzky book and did all the exercises, but didn't feel like I was learning anything useful.

The main problem for Lisp 's adoption I think is Common Lisp. You have to learn, I don't know, 4 different types of assignment, 6 different equality functions, 20 different loop constructs that were maybe revolutionary in 1965 mainframes but today look like, well, like they were revolutionary in 1965 mainframes.

Oh, and CADADR, CADADDADDR and CADADADADADDR -- is that some kind of joke? The dot... Symbol attributes (I think they were called, those useless bits of info that you "get" from a symbol). The FORMAT windings for printing a newline... The associative lists... a O(n) hashmap? again, not very productivity-enhancing in my opinion.

And don't get me started with the "don't worry about the parens, we will fix it with indentation" nonsense. No you don't fix it with indentation. I am not getting any productivity boost if I have to poke around with a ruler and square to see where the conditional ends and the else clause begins. Hint: a paren-matching editor is of no use when you are reading a printout of a program.

(They tell me Franz has a n if* macro that has "then" and "else" to make it more readable. Of course, the hardcore Lispers despise it.)

I think the best idea if you want to change the world is: rescue the useful parts from under all that pile of revolutionary 1971 technology, and I assume there must be, take the good bits (macros, continuations, clothures, whatever) and build them into a language that can be described it in a K&R-sized book and that humans can learn without having to undergo 7 years of self-Pavlovization-cum-Stockholm Syndrome. As things stand today, I'm sure macros and closures are wonderful, but there is just too much useless junk you have to memorize before being able to use them.

This is what I think Java got right: take the main object-oriented concepts from Smalltalk and leave off the 1975 conceptual breakthroughs like "the while loop is an object too", that in the end of the day are of little practical use.

Still waiting for that language that has closures and macros and that I can learn without having to take a year of unpaid leave,

Name: Anonymous 2013-08-11 20:47

>>1
Scheme is what you want, but the problem is they went too far. Instead of starting a thread about how it has all these useless things that are hard to learn with little pay off, you'll start a thread about how it doesn't have anything at all.

Name: Anonymous 2013-08-11 21:16

Dude, where's my cdadadadadadddadaddadadadaadadaaadadadadddadadadaddddaaaaddddaar?

Name: Anonymous 2013-08-11 21:44

My other cddadadadddadaaadaddadaddadadadaaadaddadadaddadadaaaadadaddadadadaadadr is a caadadadaaadadddadaadadaadadadadddadaadadadaadadaddddadadaadadadaddadar.

Name: Anonymous 2013-08-11 22:19

>>2
What is r7rs large?

Name: Anonymous 2013-08-11 22:30

But think about how much of a douche you can act like once you're done learning!

Name: Anonymous 2013-08-11 22:36

Who audits source code by printing it out? Aren't you just wasting shit tonnes of paper if the code isn't densely spaced?

Name: Anonymous 2013-08-11 22:44

>>6
kill yourself

Name: Anonymous 2013-08-11 22:50

>>1
for assignment you only need setf

for equality you only need eql (for symbol comparisons), equalp (for structure comparisons), and = (for number comparisons)

If you use anything past CADR or maybe CADAR, you should be using structs.


Association lists are just a convenience, you don't have to use them if you don't want, as there are hash tables as well (with a slightly higher constant factor)

Name: Anonymous 2013-08-11 22:51

>>8
Should I use Lisp and it's wonderful elegant perfection to do the job?
It is after all advertised as the hammer that does everything the best, from sawing wood to tightening bolts.

Name: Anonymous 2013-08-11 22:56

>>10
No, you got it wrong.

You use the hammer to construct a saw, and then you use that to saw the wood. 

It's not the best saw ever, but you didn't have to write an entire language for it, just some lisp functions and macros.

Name: Anonymous 2013-08-11 23:07

>>11
I think you'll find that's how all programming languages work

Name: Anonymous 2013-08-11 23:10

>>12
Not all programming languages are equal.

Name: Anonymous 2013-08-11 23:15

>>10
No, get back to your cubicle, java monkey.

>>12
Nope.

Name: Anonymous 2013-08-11 23:37

i stick ice cubicles up my anus

Name: Anonymous 2013-08-12 0:08

Name: Anonymous 2013-08-12 0:17

Only idiots' programs contain more parenthesis than actual code.

Name: Anonymous 2013-08-12 0:20

>>17
Only idiots' programs contain more type and class declarations than actual code.

Name: Anonymous 2013-08-12 0:21

parenthesis and type and class declarations are all ``code''

Name: Anonymous 2013-08-12 0:22

>>19
Oh you're no fun anymore.

Name: Anonymous 2013-08-12 0:24

>>19
not actual code though

Name: Anonymous 2013-08-12 0:25

>>19
not actual code though

Name: Anonymous 2013-08-12 0:34

>>21
>>22
idiots

Name: Anonymous 2013-08-12 0:38

>>23
Hi, welcome to /prog/! We're all very welcoming to visitors from /g/, so enjoy your stay and be absolutely sure to leave when you're finished looking around!

Name: Anonymous 2013-08-12 0:42

>>24
WELCOME MY ANUS                          `

>implying I will ever leave
>implying I won't shit this place up forever
>implying lelcunt isn't a gigantic faggot

ISHIGGITIDIGGITYDOO.JPEG

Name: Anonymous 2013-08-12 0:45

>>24
>>25
idiots

Name: Anonymous 2013-08-12 0:45

hail satan

Name: Anonymous 2013-08-12 1:05

>>17,18
Perl is the smartest language?

Name: Anonymous 2013-08-12 6:13

>>10,11
You are both wrong. It is the universe, which you can manipulate forms of hammers and other utilities.

>>12,13
Indeed [insert all examples of programming language families in brackets]

>>21-23
(display "MARKUP FTW!")

>>26
http://xhamster.com/xembed.php?video=2096903&desc=quagmire_giggity

>>27


>>17-18,28
Because parsers and functions are not supposed to reduce code, especial in REPLs.

>>28
'cause Regex are not calls to these functions in the VM.

Name: Anonymous 2013-08-12 17:40

>>12

I'm talking about metalinguistic abstraction.  The saw is a particular language that is very good at getting logs into separate pieces to use for other purposes.
Most other languages give you the pieces of your makeshift saw (function or class based abstractions, for example), but no hammer to get them to stick together very well.

Name: Anonymous 2013-08-12 20:15

>>29

Don't change these.
Name: Email:
Entire Thread Thread List