Re: What do you LISPers think of Haskell?

This is a discussion on Re: What do you LISPers think of Haskell? within the Functional forums in Programming Languages category; On Aug 19, 5:30 pm, Jon Harrop <j...@ffconsultancy.com> wrote: > ssecorp wrote: > > What are you LISPers opinion of Haskell? > > > Pros and cons compared to LISP? > > Haskell's success rate at generating widely-used open source code is far > lower than most other languages: > > http://flyingfrogblog.blogspot.com/2...virginity.html In summary, Jon's blocg says the haskell compiler is GHC is dropping the haskell-based darc as its source control system. good news to know. See also: Distributed RCS, Darcs, and Math Sacrilege http://xahlee.org/UnixResource_dir/writ/darcs.html plain text version below. ------------------------- Distributed RCS, Darcs, and Math Sacrilege Xah Lee, 2007-10-19 When ...

Go Back   Application Development Forum > Programming Languages > Functional

Object Mix

Register FAQ Calendar Search Today's Posts Mark Forums Read
  #1  
Old 08-19-2008, 09:15 PM
xahlee@gmail.com
Guest
 
Default Re: What do you LISPers think of Haskell?

On Aug 19, 5:30 pm, Jon Harrop <j...@ffconsultancy.com> wrote:
> ssecorp wrote:
> > What are you LISPers opinion of Haskell?

>
> > Pros and cons compared to LISP?

>
> Haskell's success rate at generating widely-used open source code is far
> lower than most other languages:
>
> http://flyingfrogblog.blogspot.com/2...virginity.html


In summary, Jon's blocg says the haskell compiler is GHC is dropping
the haskell-based darc as its source control system.

good news to know.

See also:

Distributed RCS, Darcs, and Math Sacrilege
http://xahlee.org/UnixResource_dir/writ/darcs.html

plain text version below.
-------------------------

Distributed RCS, Darcs, and Math Sacrilege

Xah Lee, 2007-10-19

When i first heard about distributed revision control system about 2
years ago, i heard of Darcs, which is written in Haskell↗. I was
hugely excited, thinking about the functional programing i love, and
the no-side effect pure system i idolize, and the technology of human
animal i rapture in daily.

I have no serious actual need to use a revision control system (RCS)
in recent years, so i never really tried Darcs (nor actively using any
RCS). I just thought the new-fangled distributed tech in combination
of Haskell was great.

About 2 months ago, i was updating a 5-year old page i wrote on unix
tools (The Unix Pestilence: Tools and Software) and i was trying to
update myself on the current state of the art of revision systems. I
read Wikipedia (Darcs↗) this passage:

Darcs currently has a number of significant bugs (see e.g. [1]).
The most severe of them is "the Conflict bug" - an exponential blowup
in time needed to perform conflict resolution during merges, reaching
into the hours and days for "large" repositories. A redesign of the
repository format and wide-ranging changes in the codebase are planned
in order to fix this bug, and work on this is planned to start in
Spring 2007 [2].

This somewhat bursted my bubble, as there always was some doubt in the
back of my mind about just how Darcs is not just a fantasy-ware
trumpeted by a bunch of functional tech geekers. (i heard of Darcs in
irc emacs channel, who are often student and hobbyists programers)

Also, in my light research, it was to my surprise, that Darcs is not
the only distributed system, and perhaps not the first one neither,
contrary to my impressions. In fact, today there are quite a LOT
distributed revision systems, actually as a norm. When one looks into
these, such as Git↗, one finds that some of them are already used in
the industry for large projects, as opposed to Darcs's academic/
hobbist kind of community.

In addition to these findings, one exacerbation that greatly pissed me
off entirely about Darcs, is the intro of the author (David Roundy)'s
essay about his (questionable-sounding) “theory of patches”used in
Darcs. ( http://darcs.net/manual/node8.html#Patch )

Here's a quote:

I think a little background on the author is in order. I am a
physicist, and think like a physicist. The proofs and theorems given
here are what I would call ``physicist'' proofs and theorems, which is
to say that while the proofs may not be rigorous, they are practical,
and the theorems are intended to give physical insight. It would be
great to have a mathematician work on this, but I am not a
mathematician, and don't care for math.

From the beginning of this theory, which originated as the result
of a series of email discussions with Tom Lord, I have looked at
patches as being analogous to the operators of quantum mechanics. I
include in this appendix footnotes explaining the theory of patches in
terms of the theory of quantum mechanics. I know that for most people
this won't help at all, but many of my friends (and as I write this
all three of darcs' users) are physicists, and this will be helpful to
them. To non-physicists, perhaps it will provide some insight into how
at least this physicist thinks.

I love math. I respect Math. I'm nothing but a menial servant to
Mathematics. Who the fuck is this David guy, who proclaims that he's
no mathematician, then proceed to tell us he doesn't fucking care
about math? Then, he went on about HIS personal fucking zeal for
physics, in particular injecting the highly quacky “quantum mechanics”
with impunity.

-------------------------

Btw, Jon, you often attack Lisp, Haskell. However, i don't think i've
ever seen you criticize OCaml.

Of course, since you sell OCaml thus you are probably very biased.

Is there some criticism of OCaml you could say? so at least to show
you are not that biased?

If you do reply to give some criticism of OCaml, please don't just
give some cursory lip service that appears to be negative criticism
but not. It might be true that you really think OCaml is
comparatively great in all or almost all aspects... but surely there
are some critically negative aspects?

Xah
http://xahlee.org/


Reply With Quote
  #2  
Old 08-20-2008, 12:57 AM
xahlee@gmail.com
Guest
 
Default Re: What do you LISPers think of Haskell?

Xah Lee wrote:
«
“Distributed RCS, Darcs, and Math Sacrilege”
http://xahlee.org/UnixResource_dir/writ/darcs.html
»

As of 2007-10, the “theory of patches” introduction sectionof darc's
documentation that contains the “don't care for math” phrase is at
http://darcs.net/manual/node8.html#Patch”. As of 2008-08-19, that
section seems to moved to a different section, in this url “http://
darcs.net/manual/node9.html” , and the “don't care about math” bit has
been removed.

Thanks to Xah Lee, whose harsh criticism on society sometimes takes
effect silently.

Xah
http://xahlee.org/


Reply With Quote
  #3  
Old 08-20-2008, 01:09 AM
namekuseijin
Guest
 
Default Re: What do you LISPers think of Haskell?

On 19 ago, 22:15, "xah...@gmail.com" <xah...@gmail.com> wrote:
> I love math. I respect Math. I'm nothing but a menial servant to
> Mathematics. Who the fuck is this David guy, who proclaims that he's
> no mathematician, then proceed to tell us he doesn't fucking care
> about math? Then, he went on about HIS personal fucking zeal for
> physics, in particular injecting the highly quacky quantum mechanics
> with impunity.


Physics and engineers don't care much about math, it's just a useful
tool for their more pragmatic goals.

> Btw, Jon, you often attack Lisp, Haskell. However, i don't think i've
> ever seen you criticize OCaml.


Oh, he does criticize OCaml at every oportunity there is to sell
F#.
Reply With Quote
  #4  
Old 08-20-2008, 07:45 AM
Jon Harrop
Guest
 
Default Re: What do you LISPers think of Haskell?

xahlee@gmail.com wrote:
> Btw, Jon, you often attack Lisp, Haskell. However, i don't think i've
> ever seen you criticize OCaml.


Despite my foray into other FPLs, OCaml has remained my favourite language
for getting work done (F# is arguably better for making money) but OCaml
does have some problems:

.. OCaml lacks a concurrent garbage collector and, consequently, is unable to
leverage shared-memory parallelism on a wide range of tasks. F# fixed this.

.. OCaml's has unsafe built-in polymorphic functions such as equality,
comparison and hashing. These can silently break if they are accidentally
applied to abstract types and the subsequent bugs can be almost impossible
to fix.

.. OCaml has a cumbersome foreign function interface.

.. OCaml lacks run-time type information and, consequently, type-safe
serialization and generic printing. F# solved this problem.

.. OCaml lacks operator overloading so mathematical expressions involving
many different numeric types are unnecessarily. F# solved this problem.

.. OCaml lacks many basic types such as int8, int16, float32, complex32. F#
solved this problem.

.. OCaml lacks value types so complex numbers cannot be unboxed. F# solved
this problem and, consequently, is 5.5x faster at complex FFTs than
naively-written OCaml.

.. OCaml has an old fashioned one-stage compiler design. F# improves upon
this with the CLR's ahead-of-time compilation. For example, the CLR
generates type specialized native code whereas OCaml uses a uniform generic
representation that can incur substantial performance hits.

.. OCaml's uniform generic representation includes tagged 31- and 63-bit
integers. F#'s unboxed representation is ~3x faster.

.. The OCaml implementation cannot be contributed to and we cannot pay INRIA
to fix or improve it. For example, I filed a bug with a verbatim source
code fix that was only actually instigated a year later.

I believe these problems can be solved in a future open source FPL without
sacrificing the key features that make OCaml so productive. However, many
of these problems do not constitute research and, consequently, they are
unlikely to be fixed by academic programming language researchers.

I am not sure how to proceed with such a project (e.g. build upon LLVM or
build upon Mono?) but there appears to be growing interest in this idea.
Ideally, FPL communities would collaborate to build a common language
run-time for OCaml, Lisp, Scheme, Haskell and so on but I cannot see that
happening for social reasons. Without such collaboration, I doubt any of
these languages will ever get a concurrent GC approaching the efficiency
of .NET's.

--
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com/products/?u
Reply With Quote
  #5  
Old 08-20-2008, 07:53 AM
Jon Harrop
Guest
 
Default Re: What do you LISPers think of Haskell?

namekuseijin wrote:
> Oh, he does criticize OCaml at every oportunity there is to sell
> F#.


You realize we sell OCaml products as well:

http://www.ffconsultancy.com/product..._scientists/?u
http://www.ffconsultancy.com/products/ocaml_journal/?u

In fact, there is currently more money in OCaml than F#...

--
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com/products/?u
Reply With Quote
  #6  
Old 08-20-2008, 09:48 AM
Andrew Reilly
Guest
 
Default Re: What do you LISPers think of Haskell?

On Wed, 20 Aug 2008 12:45:29 +0100, Jon Harrop wrote:

> OCaml's uniform generic representation includes tagged 31- and 63-bit
> integers. F#'s unboxed representation is ~3x faster.


I've wondered about this ever since you first mentioned it: given it's
supposedly wonderful type inference, and its lack of scheme/lisp-like
bignums, why doesn't OCaml use native integers, instead of tagged ones?
What is the tag bit used to disambiguate at run-time?

--
Andrew
Reply With Quote
  #7  
Old 08-20-2008, 10:45 AM
Torben gidius Mogensen
Guest
 
Default Re: What do you LISPers think of Haskell?

Andrew Reilly <andrew-newspost@areilly.bpc-users.org> writes:

> On Wed, 20 Aug 2008 12:45:29 +0100, Jon Harrop wrote:
>
>> OCaml's uniform generic representation includes tagged 31- and 63-bit
>> integers. F#'s unboxed representation is ~3x faster.

>
> I've wondered about this ever since you first mentioned it: given it's
> supposedly wonderful type inference, and its lack of scheme/lisp-like
> bignums, why doesn't OCaml use native integers, instead of tagged ones?
> What is the tag bit used to disambiguate at run-time?


Pointers from integers, for the purpose of garbage collection and,
possibly, for the (unsafe) polymorphic equality operator.

Torben
Reply With Quote
  #8  
Old 08-20-2008, 11:53 AM
Grant Rettke
Guest
 
Default Re: What do you LISPers think of Haskell?

Haskell is awesome. I heard it might be better to start with ML if it
is your first strongly-typed FP, though.
Reply With Quote
  #9  
Old 08-20-2008, 12:47 PM
Jon Harrop
Guest
 
Default Re: What do you LISPers think of Haskell?

Andrew Reilly wrote:
> On Wed, 20 Aug 2008 12:45:29 +0100, Jon Harrop wrote:
>> OCaml's uniform generic representation includes tagged 31- and 63-bit
>> integers. F#'s unboxed representation is ~3x faster.

>
> I've wondered about this ever since you first mentioned it: given it's
> supposedly wonderful type inference, and its lack of scheme/lisp-like
> bignums, why doesn't OCaml use native integers, instead of tagged ones?
> What is the tag bit used to disambiguate at run-time?


The tag distinguishes integers from pointers. Integers have their least
significant bit set. Pointers have their least significant bit unset (they
are multiples of 4).

This is used primarily by the GC in order to determine that pointers must be
followed and integers must not.

--
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com/products/?u
Reply With Quote
  #10  
Old 09-03-2008, 09:47 PM
gavino
Guest
 
Default Re: What do you LISPers think of Haskell?

On Aug 19, 9:57*pm, "xah...@gmail.com" <xah...@gmail.com> wrote:
> Xah Lee wrote:
>
> «
> “Distributed RCS, Darcs, and Math Sacrilege”http://xahlee..org/UnixResource_dir/writ/darcs.html
> »
>
> As of 2007-10, the “theory of patches” introduction section of darc's
> documentation that contains the “don't care for math” phrase is at
> “http://darcs.net/manual/node8.html#Patch”. As of 2008-08-19, that
> section seems to moved to a different section, in this url “http://
> darcs.net/manual/node9.html” , and the “don't care about math” bit has
> been removed.
>
> Thanks to Xah Lee, whose harsh criticism on society sometimes takes
> effect silently.
>
> * Xah
> ∑http://xahlee.org/
>
> ☄


anyone nick name you 'exactly' yet?
Reply With Quote
Reply


Thread Tools
Display Modes


All times are GMT -5. The time now is 10:37 PM.


Powered by vBulletin® Version 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
vB Ad Management by =RedTyger=

In an effort to better serve ads to our visitors, cookies are used on objectmix.com. For more information, check out our Privacy Policy.