Is anything useful ever made with lisp? The only software that pops to mind is the operating system Emacs.
Name:
Anonymous2006-04-08 14:59
>>4
The first web store software was written in CL. It was bought by Yahoo, and eventually rewritten in C++ because Yahoo's engineers suffered from parenthephobia.
Name:
Anonymous2006-04-08 15:20
>>5
How the hell do you write a web store without side-effects?
(side-effectless programming is the only advantage of Lisp as it allows scripts to run in no time at all, by simply not running them, I can see why some lazy programmers like Lisp, they don't even have to write the code at all, hahaha oh wow)
Name:
Anonymous2006-04-08 15:39
>>6
Maybe I'm just a noob (sorry), but what are those side-effects? Lisp or C++ are just programming languages, or so I thought...
Name:
Anonymous2006-04-08 16:00
>>7
A side effect is when you set one part of memory but some other part of memory gets messed up unintentionally.
Or at least that's what my high school APCS teacher taught us. It still amazes me to this day how confident he was when he said that.
Name:
Anonymous2006-04-08 16:08
>>8
You mean like not checking the bounds of your array and going past the end? What kind of sick fuck still does this nowadays?
Name:
Anonymous2006-04-08 16:23
UGH. A side effect is where a function changes the state of the program in addition to simply returning a value. They're to be avoided where convenient but there's no fucking law against them.
Name:
Anonymous2006-04-08 16:57
The state of the "world", not just the state of the program. Writing to a database may not change the state of the program itself, but it is still a side effect.
As far as handling side effects goes Lisp is probably inferior to Haskell, except for the fact that Haskell's monads take some time to master.
Name:
Anonymous2006-04-08 17:24
>>9
No, I think what he was referring to was some kind of malfunction in the computer's circuitry. I hope you realized by now that that definition is completely wrong, and that I was being sarcastic.
Name:
Anonymous2006-04-08 23:58
Side Effect free web stores are easy. Your parameters are the users get/post vars, their cookies, and their session.
All your program does is return a new session and the HTML for the user. No need to use I/O or do anything fancy.
Name:
Anonymous2006-04-09 5:33
>>13
But how do you send the HTML to the user without this "side-effect"? You still have to use a socket, or maybe sockets aren't producing side-effect?
Name:
Anonymous2006-04-09 11:51
Once computed what you do with the result is your own problem ;)
Name:
Anonymous2006-04-09 15:09
Side-effectless programming leads to far more memory consumed in operation, because you have to decide all of the new state keeping the old one intact.\
Yeah, imagine a complex state with 20 MB of seemingly random data. You need to "move forwards", producing the next state. To do this, you have to run a series of functions that iterate in various ways through portions of the state and decide what to change. If you can afford side effects, and the algorithm allows it, you change your state in place. If you can't have side effects, you have to produce a new 20 MB of state, then trash the old one.
Name:
Anonymous2006-04-09 18:13
I don't think you guys have any clue what contravariance means.