On Sun, 30 Dec 2012, Daniel D??az Casanueva wrote:
Hello, Haskell Cafe folks.
My programming life (which has started about 3-4 years ago) has always been
in the functional paradigm. Eventually, I had to program in Pascal and
Prolog for my University (where I learned Haskell). I also did some
Well, "functional programmer" is a relatively broad term. If you're coming from
academia, so that for you Haskell is some sort of lambda-calculus, spoiled by
practical aspects, then I'd suggest Luca Cardelli's book "Theory of Objects".
Also, as Daniel told you already, don't start from C++, it r
Sorry for the stupid mistake — when I said "Daniel" in the previous message,
I've meant "Jay".
Отправлено с iPad
30.12.2012, в 23:58, Daniel Díaz Casanueva написал(а):
> Hello, Haskell Cafe folks.
>
> My programming life (which has started about 3-4 years ago) has always been
> in the functi
I think it is always a good idea to learn languages that make
hard. There are a lot of "Aha" moments to be had
from forcing your brain to come at a problem from another angle.
As for things to watch out for.
There is a very strong duality between TypeClasses and existential
polymorphism in OO.
On Sun, Dec 30, 2012 at 3:45 PM, Eli Frey wrote:
> > mconcat :: Monad m => [m] -> m
> > mconcat = foldl mappend []
>
> We can think of `mconcat` having a little lookup table inside of itself,
> and whenever we pass it a concrete `[m]`, `mappend` gets looked up and we
> get the implementation for
On Mon, Dec 31, 2012 at 1:28 AM, Daniel Díaz Casanueva <
dhelta.d...@gmail.com> wrote:
> Hello, Haskell Cafe folks.
>
> My programming life (which has started about 3-4 years ago) has always
> been in the functional paradigm. Eventually, I had to program in Pascal and
> Prolog for my University (w
On Mon, Dec 31, 2012 at 7:30 AM, Rustom Mody wrote:
>
>>
> Ive been collecting material regarding (confusions around) OO. Its far
> from complete but the references may be useful, eg
> - the Rees list on the different things that OO means to different people
> - the fundamental philosophical d
On Mon, 31 Dec 2012, MigMit wrote:
Well, "functional programmer" is a relatively broad term. If
you're coming from academia, so that for you Haskell is some
sort of lambda-calculus, spoiled by practical aspects, then I'd
suggest Luca Cardelli's book "Theory of Objects".
Also, as Daniel told
Since no one's mentioned it yet, you might consider learning Scala. A good
starting point is http://www.artima.com/pins1ed/index.html (note that the
free edition is outdated but still a good introduction).
Scala has a mix of functional and OO programming styles, though (having
come first from Hask
There's OOHaskell, which you can google for. The name's such a nice example
of an aptronym: it's the Overlooked Object-oriented Haskell.
-- Kim-Ee
On Mon, Dec 31, 2012 at 2:58 AM, Daniel Díaz Casanueva <
dhelta.d...@gmail.com> wrote:
> Hello, Haskell Cafe folks.
>
> My programming life (which h
Daniel Díaz Casanueva wrote:
Hello, Haskell Cafe folks.
My programming life (which has started about 3-4 years ago) has always been
in the functional paradigm. Eventually, I had to program in Pascal and
Prolog for my University (where I learned Haskell). I also did some PHP,
SQL and HTML while b
Disclaimer: My own experience with OO is limited.
On 30/12/2012, Daniel Díaz Casanueva wrote:
> My programming life (which has started about 3-4 years ago) has always been
> in the functional paradigm. Eventually, I had to program in Pascal and
> Prolog for my University (where I learned Haskell)
On Mon, Dec 31, 2012 at 7:46 AM, Strake wrote:
> Disclaimer: My own experience with OO is limited.
Mine isn't quite so much...
> On 30/12/2012, Daniel Díaz Casanueva wrote:
>> My programming life (which has started about 3-4 years ago) has always been
>> in the functional paradigm. Eventually,
On 2012-12-30, at 2:58 PM, Daniel Díaz Casanueva wrote:
> Well, my curiosity is bringing me to learn a new general purpose programming
> language. Haskellers are frequently comparing Object-Oriented languages with
> Haskell itself, but I have never programmed in any OO-language! (perhaps this
Since you have done a significant amount of work with Haskell, I must
presume you have a solid understanding of monads. If so, I can suggest
reading
http://stackoverflow.com/questions/2704652/monad-in-plain-english-for-the-oop-programmer-with-no-fp-background/13656209#13656209
It is "for the OO
Hello Bob and Mike,
Reading a little within the suggested book I came across the following
statement.
We should first examine the merits and limitations of the traditional
> approach: using
> functions as a basis for the architecture of software systems. This will
> not only lead us to
> apprecia
On Mon, Dec 31, 2012 at 4:26 PM, Rico Moorman wrote:
> We should first examine the merits and limitations of the traditional
>> approach: using
>> functions as a basis for the architecture of software systems. This will
>> not only lead us to
>>
>
> Because you both have more experience with this
On 2012-12-31, at 4:26 PM, Rico Moorman wrote:
> Hello Bob and Mike,
>
> Reading a little within the suggested book I came across the following
> statement.
>
> We should first examine the merits and limitations of the traditional
> approach: using
> functions as a basis for the architecture
Eiffel, for my opinion, is a best OOP language. Meyer use a theoretical approach as it is possible in OOP. 01.01.2013, 23:56, "Bob Hutchison" :On 2012-12-31, at 4:26 PM, Rico Moorman wrote:Hello Bob and Mike, Reading a little within the suggested book I came across the foll
On Jan 1, 2013, at 10:23 PM, Никитин Лев wrote:
> Eiffel, for my opinion, is a best OOP language. Meyer use a theoretical
> approach as it is possible in OOP.
Really? Because when I studied it I had a very different impression: that
behind this language there was no theory at all. And it's on
MigMit wrote:
>On Jan 1, 2013, at 10:23 PM, Никитин Лев
>wrote:
>> Eiffel, for my opinion, is a best OOP language. Meyer use a
>theoretical approach as it is possible in OOP.
>Really? Because when I studied it I had a very different impression:
>that behind this language there was no theory at
Well, probably one of the reasons is that I've learned Eiffel later than
Haskell.
But really, "Design by Contract" — a theory? It certainly is a useful approach,
but it doesn't seem to be a theory, not until we can actually prove something
about it, and Eiffel doesn't seem to offer anything in
On 2013-01-01, at 3:47 PM, MigMit wrote:
> Well, probably one of the reasons is that I've learned Eiffel later than
> Haskell.
>
> But really, "Design by Contract" — a theory? It certainly is a useful
> approach, but it doesn't seem to be a theory, not until we can actually prove
> something
On 12/31/12 4:26 PM, Rico Moorman wrote:
Hello Bob and Mike,
Reading a little within the suggested book I came across the following
statement.
We should first examine the merits and limitations of the traditional
approach: using
functions as a basis for the architecture of software systems. Th
I said "theoratical", but not "mathematical" or "a scientific" theory. Meyer have built a quite coherent construction in comparison with other OOP langs. BTW, when I started study haskell i had similar question: is it possible to add DbC to haskell? Does haskell need DbC?For example, class invar
[Context destroyed by top posting.]
MigMit wrote:
>But really, "Design by Contract" — a theory? It certainly is a useful
>approach, but it doesn't seem to be a theory, not until we can actually
>prove something about it, and Eiffel doesn't seem to offer anything in
>this direction.
You just sta
On Jan 2, 2013, at 2:26 AM, Bob Hutchison wrote:
>
> On 2013-01-01, at 3:47 PM, MigMit wrote:
>
>> Well, probably one of the reasons is that I've learned Eiffel later than
>> Haskell.
>>
>> But really, "Design by Contract" — a theory? It certainly is a useful
>> approach, but it doesn't se
On Jan 2, 2013, at 8:44 AM, Никитин Лев wrote:
> I said "theoratical", but not "mathematical" or "a scientific" theory.
Than what kind of theory did you mean?
> Meyer have built a quite coherent construction in comparison
> with other OOP langs.
More than Smalltalk, for example?
> BTW, wh
On Jan 2, 2013, at 10:52 AM, Mike Meyer wrote:
>
>
> [Context destroyed by top posting.]
> MigMit wrote:
>> But really, "Design by Contract" — a theory? It certainly is a useful
>> approach, but it doesn't seem to be a theory, not until we can actually
>> prove something about it, and Eiffel
On Wed, 2 Jan 2013 13:48:07 +0400
MigMit wrote:
> On Jan 2, 2013, at 10:52 AM, Mike Meyer wrote:
> > MigMit wrote:
> >> But really, "Design by Contract" — a theory? It certainly is a useful
> >> approach, but it doesn't seem to be a theory, not until we can actually
> >> prove something about it
Well, we can say "concepts" in place of "theory". And I'm comparing Eiffel with other OOP lang, not with some langs based on a solid math theory (lambda calcules for FP langs, for example). ok? DbC is not the same as "assert macros". First, it has a lang semantic. There is an interesting graduate
Opps... I forgot about Eiffel agents! PS. After participationing in this discussion I'm tempting to reread Meyer's book after 10 years interval, to have a detailed look at the eiffel from the FP position. When I read this book first I know nothing about FP.
_
On 2013-01-02, at 4:41 AM, MigMit wrote:
>
> On Jan 2, 2013, at 2:26 AM, Bob Hutchison wrote:
>
>>
>> On 2013-01-01, at 3:47 PM, MigMit wrote:
>>
>>> Well, probably one of the reasons is that I've learned Eiffel later than
>>> Haskell.
>>>
>>> But really, "Design by Contract" — a theory?
On 2013-01-02, at 7:56 AM, Bob Hutchison wrote:
>
> You should read OOSC2. You'll find that this is completely consistent with
> it. Don't forget that the 'C' in OOSC2 is 'contraction'.
'Construction' of course… the automated spell checker is not my friend :-(
Hi,
First, I see (posts on this mailing list) that OO ideas are well known
in functional community :)
>
> So my questions for you all are:
>
>
> * Is it really worthwhile for me to learn OO-programming?
>
>
Learn or not to learn? I would say: yes! There is whole new universe
to discover
On 2013-01-02, at 1:52 AM, Mike Meyer wrote:
>
>
> [Context destroyed by top posting.]
> MigMit wrote:
>> But really, "Design by Contract" — a theory? It certainly is a useful
>> approach, but it doesn't seem to be a theory, not until we can actually
>> prove something about it, and Eiffel do
On Jan 2, 2013, at 4:24 PM, Никитин Лев wrote:
>
> Well, we can say "concepts" in place of "theory". And I'm comparing Eiffel
> with other OOP lang, not with some langs based on a solid math theory (lambda
> calcules for FP langs, for example). ok?
I agree that there are certain concepts,
> 2) pre&post conditions and class invariants have defined behaviour in cases
> of inheritance, even/especially multiple inheritance. They are combined
> non-trivially in subclasses. Without this I don't think you have DbC.
Yes, I forgot about that. Thanks.
> Feel free to enlighten me about the
On 1/2/13 4:29 PM, MigMit wrote:
BTW. Why you think that Eiffel type system is unsafe?
Well, if I remember correctly, if you call some method of a certain object, and
this call compiles, you can't be certain that this object actually has this
method. Could be that this object belongs to some
On Jan 3, 2013, at 2:09 AM, Gershom Bazerman wrote:
> On 1/2/13 4:29 PM, MigMit wrote:
>>
>>> BTW. Why you think that Eiffel type system is unsafe?
>> Well, if I remember correctly, if you call some method of a certain object,
>> and this call compiles, you can't be certain that this object ac
Anyway, Type checking is essentially an application of set theory : (I did
no search in te literature for this, It is just my perception). When I say
(+) :: Num a => a -> a -> a . I mean that (+) takes two elements of the
set of Num typeclass and return another. This is in principle a weak
restri
On 01/03/2013 10:56 AM, Alberto G. Corona wrote:
Anyway, Type checking is essentially an application of set theory : (I
did no search in te literature for this, It is just my perception).
Not exactly. Type theory is not an application of set theory, it is an
alternative to set theory.
When
On 01/02/2013 11:19 PM, MigMit wrote:
On Jan 3, 2013, at 2:09 AM, Gershom Bazerman wrote:
On 1/2/13 4:29 PM, MigMit wrote:
BTW. Why you think that Eiffel type system is unsafe?
Well, if I remember correctly, if you call some method of a certain object, and
this call compiles, you can't b
On Sun, Dec 30, 2012 at 1:27 PM, Brandon Allbery wrote:
>
> [T]he "Monad m =>" in the signature really means "hey, compiler, pass me
> the appropriate implementation of Monad so I can figure out what I'm doing
> with this type m". It's not a built in table, it's a hidden parameter.
>
>
Well, "hid
On Fri, Jan 4, 2013 at 7:27 PM, David Thomas wrote:
> Well, "hidden" - it *is* right there in the type signature still, it just
> doesn't *look* like an argument.
>
If you squint hard enough, (=>) looks like (->). Or maybe the other way
round. Whatever. :)
> It also might be optimized away in s
There have been lots of proposals to fix the CATCALL problems in recent
years. None have been implemented (at least in ISE/GEC compilers. And
tecomp has been abandonded by its author - he is now writing a series of
blogs about a vapourware product called "Modern Eiffel").
I don't find the CATCALL
46 matches
Mail list logo