[Haskell-cafe] Re: Tutorial uploaded

Bulat Ziganshin bulatz at HotPOP.com
Thu Dec 22 17:01:51 EST 2005

Hello Bill,

Wednesday, December 21, 2005, 6:38:33 PM, you wrote:
BW> PS:  While looking over my post it occurred to me that the issue is at
BW> least as much methodological as it is linguistic.  So I ask:  Does
BW> Haskell stand far enough apart from other programming languages to
BW> warrant adapting standard methodological principles to it?  Is there an
BW> identifiable "Haskell Way"?

as the man, who learned Haskell just year ago, and written large
enough imperative program in Haskell (you can see it at
http://freearc.narod.ru), i can answer both "yes" and "no". yes, Haskell
really changes the way i program. no, it not diverges from the
standard methodology - it forces to use it! :)

any real program uses global variables, side-effects of functions,
manually controlled sharing of data and so on. imagine programming in
language which just don't support any provision for those tricks

well, Haskell implementations de-facto supports such tricks, but they
are considered as "bad programming style" and can lead to problems
with optimized compilation, so you will aspire to avoid them as much
as possible. you will need to decide beforehand for each function,
whether it will have side effects or will be pure (although you of
course may change your solution, whis will require to edit all
functions which directly or indirectly call it, because function with
side effects cannot be called inside pure function)

you will need to learn programming techniques, which can be used in
reliable way instead of forbidden unreliable ones - such as implicit
parameters and using large structure to pass through the many levels
of calls all data needed for these functions

you will become an expert in organizing cycles via recursion

ay least, you must try :)  even if Haskell is not useful as real
programming language, you at least will improve your programming style

Best regards,
 Bulat                            mailto:bulatz at HotPOP.com

More information about the Haskell-Cafe mailing list