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

Rich Hickey is mad!

Name: Anonymous 2013-06-20 20:39

Name: Anonymous 2013-06-22 7:00

Anyone here who has written more than toy programs in haskell that actually likes the type system?

Name: Anonymous 2013-06-22 7:02

>>81
I love it. Once you start thinking and solving problems in types rather than in primitive cars and conses, you'll love it too. If you have the brains for that, of course.

Name: Anonymous 2013-06-22 7:03

>>82
It sounds like you have poor exposure to lisp. You should check out CLOS.

Name: Anonymous 2013-06-22 7:06

>>82
I don't think anyone thinks of problems only in pairs.

Name: Anonymous 2013-06-22 7:07

>>82
If you've read SICP, you would know that THE SUSSMAN does advocate data abstraction. What's so impossible about (define (type-constructor a b) .... )? Of course it doesn't have some benefits the anal type system of Haskell has, and you actually have to document the ``type'''s definition as well as the functions' type to make sense out of your shits, but it is exactly what Lithpers normally do. Hint: Lithpers usually avoid using conses if possible, because EFFICIENCY.

Name: Anonymous 2013-06-22 7:20

>>85
Nothing is impossible about your Scheme gimmick, it's just so primitive that it's hard to understand what the author of is trying to say. For every elementary thing you have to write out loads of parentheses by hand, when in a real language they would be built in. If SICP was written in Haskell, it would be much better.

Name: Anonymous 2013-06-22 7:23

>>86
but haskell can't y-combinate ani

Name: Anonymous 2013-06-22 7:24

>>83
CL and CLOS are regarded as archaic shit by lishpers themselves. The only real production lithp nowadays is Clojure, thanks to the Java world. But Clojure doesn't have anything that rivals CLOS.

Name: Anonymous 2013-06-22 7:33

>>89
That's ok. With macros it can be extended to include CLOS.

Name: Anonymous 2013-06-22 7:38

>>89
But it'll be just JVM-shit underneath, so probably will be some limp-dicked semblance of CLOS.
No, of course CLOS is excellent. For OOP. But OOP itself is way overrated. You would know that if you read your SICP.
The fact that Haskell doesn't have OOP is one of its strengths.

Name: Anonymous 2013-06-22 8:14

>>76
(/ 1 x)
Not Lispy enough. You can use (/ x).

Name: Anonymous 2013-06-22 9:26

>>88
CL and CLOS are regarded as archaic shit by lishpers themselves.
Concerning CLOS, some Lispers, like Paul Graham or this Jew Stallman, just disagree that CLOS is the right way to do OOP. Especially because that Alonzo Church himself used simply lambdas instead of objects. Morevoer, CLOS is less efficient or intuitive than traditional Smalltalk style OOP.

Name: Anonymous 2013-06-22 9:50

>>92
They also don't like CL itself as being bloated, ugly and old. For instance, no concurrency, no first-class functions, etc.

Name: Anonymous 2013-06-22 11:55

>>93
no first-class functions

Oh, you!

Name: Anonymous 2013-06-22 12:20

>>86
Bullshit! Haskell is good already, but it would be much better if it used something like s-expression instead of that monstrosity of syntax.

Name: Anonymous 2013-06-22 12:52

>>36
There's probably something in HList that would help.
>>58
a = (a,b) = ((a,b),b) = (((a,b),b),b) = ...
OCaml lets you do that with -rectypes.

Name: Anonymous 2013-06-22 13:04

>>95
I'm trying to translate (if t (lambda (x) x) (lambda (x) (first x))) into Haskell, but GHC gives me the following error:
Prelude> (if True then (\x -> x) else (\x -> fst x))

<interactive>:1:36:
    Occurs check: cannot construct the infinite type: a = (a, b)
      Expected type: (a, b)
      Inferred type: a
    In the expression: fst x
    In the expression: (\ x -> fst x)

Name: Anonymous 2013-06-22 13:19

>>94
You have to use special (funcall) shit.

Name: Anonymous 2013-06-22 13:22

>>98
So what? It's ugly and ancient, but so is the rest of Common Lisp. Doesn't mean it's wrong.

Name: Anonymous 2013-06-22 13:28

>>98
It doesn't mean CL doesn't have first-class function.
It has indeed, but the seperated namespace makes it look fugly.

Name: Anonymous 2013-06-22 13:37

>>100
Any more bullshit boilerplate than in Haskell means no first-class.

Name: Anonymous 2013-06-22 14:02

>>101
I see a lot of non-``first class'' objects in Haskell by that definition, preceded by type signatures or wrapped in a mess of functors.

Name: Anonymous 2013-06-22 14:02

>>102
But functions ain't one of 'em.

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