Moderators: Moderators General, Magistrates, Prelates
jc wrote:And eventually, people will start to discover that the endpoint of this process has already been realized, in the Whitespace programming language. Eventually the most advanced will adopt Whitespace, and all other characters will be merely commentary.
mootinator wrote:No, assembly is difficult to read even if you do understand it.
Turns out a PC has more registers than my brain.
Alt text wrote:MIT computer lab dissolved

Arancaytar wrote:Alt text wrote:MIT computer lab dissolved
http://science.slashdot.org/article.pl? ... 31/2336232
Amazing. The first three letters match! Randy is getting the power of second sight.
evilbeanfiend wrote:Mat Cauthon wrote:I have a friend who swears by CAR and CDR.
they spell them first and rest now
EvanED wrote:frezik wrote:Devilsaur wrote:(if lisp (language (reads hideously)))
I'm part of the new generation of coders and beware, for I value absurd things like readability and the ease of coding. But yeah, even I have to admire lisp for it's awesomeness (just not it's practicality).
Languages you don't understand are difficult to read. News at 11.
I agree with Devilsaur; see my earlier post. Are you going to accuse me of not understanding it? Or is "liking the syntax and typical style" a prerequisite to understanding in your mind?
frezik wrote:There are perfectly valid reasons why you might not like LISP. However, I find that most people who don't like it do so because they don't understand it. Particularly if they started programming in a C-like language.
Isaac Hill wrote:As an undergrad at WPI, I took a course called "Paradigms of Computing" which featured about 2 days of prolog, a little java, and Scheme, which they told me is some relation to Lisp. I hated it so much, I wrote a song about on my banjo. All I remember is the chorus started, "I'm taking Scheme...and I'm getting reamed."
It may have something to do with the assignments they gave us. The only one I remember is that they told us 0 = x (not a typo, the number is being defined as a function that retruns x). They gave us the increment function, and had us work out inc(0()) by hand to figure out that 1 was f(x). 2 was f(f(x)) and so on.
This struck me as the stupidest thing I'd ever seen. If there's one thing computers can do well, it's numbers. They store everything as binary numbers. They have Arithmetic Logic Units specifically designed to manipulate numbers, and we're turning them into abstract functions. As an EE major, I thought, "We're not going to bust our butts getting you more CPU cycles per second if this is what you're going to do with them."
I'm assuming that this was just an awkward application of the language to illustrate how it works. What would Scheme/Lisp be practical for?
Isaac Hill wrote:As an undergrad at WPI, I took a course called "Paradigms of Computing" which featured about 2 days of prolog, a little java, and Scheme, which they told me is some relation to Lisp.
It may have something to do with the assignments they gave us. The only one I remember is that they told us 0 = x (not a typo, the number is being defined as a function that returns x). They gave us the increment function, and had us work out inc(0()) by hand to figure out that 1 was f(x). 2 was f(f(x)) and so on.
This struck me as the stupidest thing I'd ever seen. If there's one thing computers can do well, it's numbers. They store everything as binary numbers. They have Arithmetic Logic Units specifically designed to manipulate numbers, and we're turning them into abstract functions. As an EE major, I thought, "We're not going to bust our butts getting you more CPU cycles per second if this is what you're going to do with them."
I'm assuming that this was just an awkward application of the language to illustrate how it works. What would Scheme/Lisp be practical for?
Isaac Hill wrote:It may have something to do with the assignments they gave us. The only one I remember is that they told us 0 = x (not a typo, the number is being defined as a function that retruns x).
Kjetil wrote:Isaac Hill wrote:It may have something to do with the assignments they gave us. The only one I remember is that they told us 0 = x (not a typo, the number is being defined as a function that retruns x).
Not that it matters, but that syntax looks suspiciously like ML and not Scheme. Its certainly not a Lisp language, thats for sure.
hendusoone wrote:I have only programmed in lisp once, and that was as part of a course where we did a new language every two weeks. The lisp project was to build a lego mindstorms robot (the old yellow kind), and program it to find its way through a simple maze.
I finished my program early, so I also programmed the little guy to play the Mission Impossible theme while finding its way through the maze. Writing music in XS: Lisp is not an easy task!
It was worth it, though... the look on my prof's face when the bot navigated the maze almost perfectly while humming Mission Impossible was priceless!
enkrypt wrote:If you don't know Lisp (preferably Scheme) you can't call yourself a computer scientist.
Neither can you without knowing C and atleast a little bit of assembly.
OmenPigeon wrote:enkrypt wrote:If you don't know Lisp (preferably Scheme) you can't call yourself a computer scientist.
Neither can you without knowing C and atleast a little bit of assembly.
And what magical knowledge do Lisp, C and assembly grant that we can't get anywhere else? What arcane wisdom comes down from on high when you start matching parens and carefully shepherding registers?
I know all three of those languages, and I've certainly learned things from each of them. But saying that I can't call myself a real computer scientist without knowing some arbitrary set of programming languages is facile and childish. I could just as well say that you can't be a real computer scientist without knowing Python, since otherwise you'll never have a chance to learn that languages can be made less obtuse and still be quite powerful. You can't be a real computer science major without ever assembling a computer from parts, because otherwise you'll never understand how things fit together. You cant be a real computer scientist unless you use Fortran for everything, even though you know all these other languages, because Fortran is what real programmers use.
Computer science is about much, much more than having a favorite language and it certainly transcends your ego.
Computer science ... transcends your ego.

OmenPigeon wrote:enkrypt wrote:If you don't know Lisp (preferably Scheme) you can't call yourself a computer scientist.
Neither can you without knowing C and atleast a little bit of assembly.
Computer science is about much, much more than having a favorite language and it certainly transcends your ego.
enkrypt wrote:If you don't know Lisp (preferably Scheme) you can't call yourself a computer scientist.
Neither can you without knowing C and atleast a little bit of assembly.
enkrypt wrote:And Lisp/Scheme offers a unique view on functional programming that is critically important if you want to understand anything about algorithmic design and complexity (tail recursion anyone?).
And yes, real computer scientists should at least be able to assemble a computer from parts yeah.
enkrypt wrote:If you don't know Lisp (preferably Scheme) you can't call yourself a computer scientist.
Neither can you without knowing C and atleast a little bit of assembly.
EvanED wrote:What about ML? Can you replace Lisp with ML in that statement? "If you don't know Lisp or ML, you can't call yourself a computer scientist"? Or maybe we should use "and" as the conjunction. Maybe we can allow Miranda or Haskell instead of ML.
Of course, Lisp is just a bunch of syntactic sugar around lambda calculus.
frezik wrote:Devilsaur wrote:(if lisp (language (reads hideously)))
I'm part of the new generation of coders and beware, for I value absurd things like readability and the ease of coding. But yeah, even I have to admire lisp for it's awesomeness (just not it's practicality).
Languages you don't understand are difficult to read. News at 11.
Maurog wrote:It's a slippery slope, isn't it? Where do you stop? Rate yourself on this scale:
0: I can code on a computer, but I have no idea what a computer really is or how it works.
1: I have a vague idea of the components the computer is made of, but I wouldn't be able to assemble one from parts.
2: I can eventually assemble a computer from parts if someone disassembles it.
3: I can go to a parts store, identify the parts, buy the necessary parts to build a computer and assemble one.
4: I actually know how all the parts are made. Give me an access to a factory, and I will design parts and assemble a computer from them.
5: I can build a computer if I get stranded. I will mine metal ore, smelt it, and forge tools to make tools to make tools to make tools to make computer parts, and then assemble a working computer from them, complete with an internal energy source.
Drostie wrote:I'm telling you this all to get to an odd observation, which was: today, whenever I think of Lisp, I think of something like: "Lisp: It's like an XML programming language, if you were too lazy to type the angle brackets and the complete closing tag each time."
Descartes:
2x
Church:
\x.* 2 x
McCarthy:
(lambda (x) (* 2 x))
W3C:
<abstraction><var>x</var> <expression> <application> <const>*</const> <arguments> <const>2</const> <var>x</var> </arguments> </application> </expression> </abstraction>
MythGuyDK wrote:Excuse me for not reading the whole thread, it's very hard for me to catch up as I read slow.
Where do you get LISP interpreters/IDEs/compliers/tutorials? I mean, I've heard of it but can't find it... :/
Return to Individual XKCD Comic Threads
Users browsing this forum: AluisioASG, azule, Bing [Bot], MobTeeseboose, norcimo, Offebpale, slinches, ucim, unurnegus, Ylbbin72 and 46 guests