Hello everyone,I have just started studying Haskell and I am having a hard time understanding type and value constructors.So to create a new type, you write something like:data FinancialInstrument = Financial String Doublederiving (Eq, Show)and then you can write:ibm = Financial "ibm" 150OK all good. This initializes a FinancialInstrument. What I don't quite grasp is what is the purpose of Financial (the data/value constructor)? And from what I have read, you could have also written:data FinancialInstrument = FinancialInstrument String Doublederiving (Eq, Show)To me the second expression is a lot closer to the typical OOP way of doing things (where the type name and constructor(s) have the same name). Why would someone prefer the first notation?Once a value has been constructed, how can I access its fields?Is there a way to create values using named parameters?Thanks!
_______________________________________________
Beginners mailing list
Beginners@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners