On 17.11.2006 19:08 Donn Cave wrote:
On Fri, 17 Nov 2006, Valentin Gjorgjioski wrote:
...
But I need something which is heterogeneous and non-fixed length. I'm
used do Java, and this switch to functional languages is very strange to
me. So, to be clear, I need something like LinkedList<Object> in java.
I looked in a couple of on-line tutorials, thinking I would quickly
find something about this, but -- maybe in my haste I missed something.
Objective CAML documentation gets right to it, I wonder if we're assuming
prior exposure to strongly typed functional languages?
Anyway, you need to define a type that accounts for the types you
want to support -
data Object = IntObject Int | StringObject String
objectString :: Object -> String
objectString (IntObject v) = show v
objectString (StringObject v) = v
main = mapM (putStrLn . objectString) [(IntObject 7), (StringObject "eight")]
Donn Cave, [EMAIL PROTECTED]
Thanks to all try to help me. I like the solution from Donn and Henning.
I obviously not read enough. The solution is also in Yet Another Haskell
Tutorial. Ok, not this much explicit, but its there. It says
We have seen an example of the data type with one constructor: Pair. It
is also possible (and extremely useful) to have multiple
constructors(I'm shame that I even didn't know this).
It's interesting that it's said EXTREMELY useful. And yes, it is!
So, I think that Henning idea is good and this should go on some haskell
wiki - s.
Once again thanks to all for quick and nice solution.
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe