Mathematically speaking, a language with a proper syntax can parse to valid Lisp and the other way around. Insisting on solely using something that should be parser output, not input, is a mark of stupidity.
>>1
His 'retorts' are quite retarded, every retort could be summed up as "Wrong! Lisps notation is ugly!" while not giving any real proof that it is ugly and not just unusual.
If Lisp was really unreadable, slow, harmful, old and busted then why do Lispers exist, why do newer programming languages (and C++, and Java) take features from it, why are Scheme/CL implementations actively developed, and why do new pseudo-Lisps pop out of nowhere (note: this is bad)?
>>29
On the internet, mostly because of ad hominem attacks like yours.
Name:
Anonymous2011-07-26 12:48
>>28 If Lisp was really unreadable, slow, harmful, old and busted then [..] why do newer programming languages (and C++, and Java) take features from it?
If rain is unpleasantly wet then why do people use umbrellas?
Name:
Anonymous2011-07-26 13:08
S-expressions are clearly superior to XML. Anyone who thinks otherwise is being silly.
Name:
Anonymous2011-07-26 14:48
>>33
Closing tags make code more readable. Prove me wrong.
closing tags are only useful if they're really far apart, as in text markup. XML is rarely used for text markup. Usually the tags end very close to where they begin.
In the case that they are far apart, comments can be used. Forcing comments is a bad idea.
Indentation is more important anyway. It gets the same thing across without adding noise.
>>35
XML is designed as a data interchange format:
1. to markup data in a hierarchical structure
2. that is potentially human readable and changeable
3. that is platform and architecture neutral
4. that is easily parsed in software
S-exp was deemed not quite suitable for point 2, otherwise people would have designed a S-exp language as an interchange format at the time XML was designed. The designers of XML were inspired by the existing SGML standard as it achieved most of their objectives.
>>37
Men weren't given a strong, consistent and positive male role model in their childhood and women became frustrated with their interactions with men at various stages of their life.
Name:
Anonymous2011-07-26 19:40
>>38 Men weren't given a strong, consistent and positive male role model in their childhood and women became frustrated with their interactions with men at various stages of their life.
Agreed. That is why Islam countries don't have homosexuals. It's the degradation of the western word, that spawns them. Greeks and Romans had similiar experience, before their demise.
>>39
You better believe that Islamic countries have homosexuals, they just happen to be repressed by their culture. It appears that there are movements to remove the stigma against homosexuality in their nations.
Also, you'll find the Hasidic Jewish community and Amish Pennsylvanian community are two social communities with the low occurrence of gay men. Apparently, the fathers here provide a proper masculine role model for their sons.
def dot(a, b):
foldl:
lambda (x, y, r):
+:
*:
x
y
r
a
b
deal with it B)
Name:
Anonymous2011-07-26 21:40
>>42
for people used to html.
these were like the people in the early 20th century who wanted faster horses, except automobiles had been invented decades ago and forgotten about because of AI winter.
Name:
Anonymous2011-07-26 21:41
>>43
SO MUCH MORE READABLE
MY EYES ARE HAVING AN ORGASM
Name:
Anonymous2011-07-26 21:45
>>43
That's somehow worse than all the Lisp versions.
Name:
Anonymous2011-07-26 21:54
>>44
That's not what the designers said. I guess you don't know.
Name:
Anonymous2011-07-26 22:52
>>47
The XML designers were fools. Why should I care what they have to say?
If you losers wanted to avoid explaining what lambdas are, couldn't you have named them oh I don't know 'meta-function'? None of you losers seem able to grasp things for WHAT THEY ARE. How long did it take to rename CAR and CDR as head and tail or CONS cell to Association?
It's like you stare at a plane and think "shiny metal thing with two giant outflying struts each with underslung fast-spinning rotors attached". Fucking autistics, ought all be shot. Or at least get declared as second-class citizens.
This guy must be an EXPERT /PROG/RIDER
>>50 When you finally realize what they are, it's just beautiful. Lambdas are "the meta-relation 'relation'". Everything is a relation in functional programming, and lambdas are the meta-relation.
If you losers wanted to avoid explaining what lambdas are, couldn't you have named them oh I don't know 'meta-function'?
Lambdas are unavoidably meta. Their meta-ness stares you in the face when you know what lambdas are, because meta-ness is ALL they are.
There's nothing ``meta'' about lambdas. They're the same as any other function, except that they don't have a name. That's all a lambda is. Would this guy say that (lambda (x) (+ x 1)) is a ``meta-function''? Maybe I don't understand what he's trying to say, but it sounds like he's confusing them with higher-order functions or something.
You need a dictionary. No, you need a better brain if you think I'm using words exclusively as they're used by programmers. YHBT SO HARD MY SON.
Name:
Anonymous2011-08-01 9:06
>>56 Makes me wish I was into psychology.
I recommend Spent as a gentle introduction into evolutionary psychology. I disagree with a lot of the analysis in the book now that I've learned more of the subject, but that doesn't stop the book being useful for what it is. http://www.amazon.com/Spent-Sex-Evolution-Consumer-Behavior/dp/0670020621
I'm also surprised that can I agree with many of the Mr Dick's objections. However, I still cannot ignore that his attitude is distracting.
>>58
Ditto. He often contradicts himself too: ``I want a Smalltalk OS'', ``Smalltalk is a failure as an OS''.
Name:
Anonymous2011-08-01 11:11
>>50
I agreed with him at one point.
Lambda can be utterly important, and giving it a special syntax is in some ways just fine.
But lambda can be built from smaller things, depending on the semantics of the language... CL and Scheme use it as a basic building block, but other Lisps could conceivably not.
>>60 Lambda can be utterly important, and giving it a special syntax is in some ways just fine.
What "special syntax" are you talking about, retard? In pure lambda calculus there's nothing except lambdas, idiot! It's what you might want to add later, all these lets and defines, are "special syntax", imbecile! Except not really so special, given that "let x y z" is equivalent to "lambda x z y" for example, moron!
IHBT by deranged autismal assburgers who don't know shit about shit but are convinced that their condition has a side effect of making them clever, again :(
>>63
special syntax as opposed to no syntax, ie as opposed to s-expressions like (lambda (x) (+ 1 x))
because it is not ever terribly useful to abstract past "lambda", it might as well have syntax. Macros over lambda tend to just be sugar to avoid typing "lambda" anyway.
>>67 ' is a special syntax used in Lisps, it has nothing to do with plain S-Expressions.
They do have a syntax, it's: sexp ::= '(' sexp* [ sexp ' . ' sexp ] ')' | datum
datum ::= symbol | string | number | char | ...
Name:
Anonymous2011-08-02 9:06
>>67
there are bits of syntax in Lisps here and there, but they are for highly universal things like quote. And that's just it: it seems to me like lambda could do with the same treatment.
>>70
No, because the special syntax is used mostly for quotations, the rest for comments: 'x (quote x)
`x (quasiquote x)
,x (unquote x)
,@x (unquote-splicing x)
#'f (function f) in CL, (syntax f) in Scheme with syntax-case, (var f) in Clojure. #`x (quasisyntax x)
#,x (unsyntax x)
#,@x (unsyntax-splicing x)
lambda is more than a trivial quotation, in terms of syntax.
Name:
Anonymous2011-08-02 11:53
As a died in the wool Haskeller I wish Haskell had Lisp syntax. It's just easier to edit/easier to manipulate, more regular, more predictable (and therefore easier to read), easier to extend with seamless macros. The only thing I don't quite like about it compared to Haskell is that in Lisp syntax one tends to have a harder time keeping expressions within 80 columns.
>>73
I only use λ for short procedures (i.e., (λ (x) (+ x 1))), lambda for the rest:
(with-anus
(λ () ; too much wasted space
...1
...2))
(with-anus
(λ () ...1 ; too much indentation, looks ugly.
...2))
(with-anus
(lambda () ; ok for me.
...1
...2))
I prefer lambda/λ, because it's more likely to use fn/fun/proc than λ as variable name.
>>75
SRFI-26 does it without the need of some special syntax.
>>77 cut is a keystrokes bloated ill-designed shit.
1) It uses TWO chars <> instead of ONE % and THREE cut instead of ONE again #. It's not forgivable for a mechanism the sole purpose of which is to safe typing.
2) It doesn't support permutation or duplications of arguments. In Clojure you can do #(hax %2 % % %3), with SRFI-26 (cut hax <> <> <>) means (lambda (x y z) (hax x y z)) and you can't do anything else with it.
>>78
That's why nobody uses it: use λ. If you need something more than what cut can do, you should probably use lambda directly. Hell, what is this, Perl?
Ruby is:
- when OOP replaces common sense;
- when people write "begin end begin begin end end..." instead of code;
- when program is so slow, that you can have a tea party, while it multiplies two 10x10 matrices;
- when code like 12.5.integer? or 3.times {puts "Ruby rocks!"} considered beautiful.
Name:
Anonymous2011-08-03 5:56
# This is a block. It can be passed to a function like so `function your-block' and is called within that function with `yield your-bar'
{|bar| bar.foo}
# This is a proc. It is called like so `your-proc.call' and it can be assigned to a variable or passed to a function directly.
proc {|bar| bar.foo}
# This is almost the same as a proc.
lambda {|bar| bar.foo}
# This is a method. It is called like so `foobar.baz your-bar' and it can't be passed to a function directly.
def baz(bar)
bar.foo
end
>>80
I think they keep forgetting that Lisp is written in Lisp on top of a bunch of primitives: all the CLOS systems, the Prometheus prototype OO system, Racket's class system, all the other OO systems, loop, iterate, foof-loop, Shivers' loop, Racket's for, match, optional and keyword arguments to lambda, condition/exception systems, lazy evaluation (delay, lazy, force), ...
I can continue, but I think it's enough. I'd like to know how he'd write a pattern matcher that doesn't feel like an hack (i.e. usable in real world without feeling dirty) in Ruby.
Name:
Anonymous2011-08-03 7:51
>>85 doesn't feel like an hack
Ruby
You must be joking.