Hi Martin

Some time ago I saw somewhere that you removed the function
elements:()->Generator(%) from LabelType.
I understand that this function is quite questionable, so let me explain 
my (unfinished) thoughts.

Take Z==Integer and assume we have an (Aldor) species F with LabelType 
Z. Then think of the derivative F'. F' lives over Z'=Z \cup {*}.
That would be the straightforward design. It simply leads to

Zprime == Succ Z;

where Succ is the domain constructor that adds a special element "@" to 
the underlying domain, for example Succ=Partial and @=failed.

Now there are two problems.

1) How do you output "@" if you want to print "structures"? Let's say 
you choose to print it as "*". But to make things more complicated, 
assume Z==String. I don't know how to solve that problem consistently 
without introducing ugly labels.

2) What about F''? That lives then over Succ(Succ(Z)). Remember how you 
have implemented Partial... Each application of Succ basically wraps the 
original elements into a record.

Also that sounds a bit like introducing overhead. So I thought, it would 
be better if (at least some) label domains know how to generate new 
labels that have never been used before. That would for example allow 
Integer to be used as LabelType with the restriction that the user 
should never use negative integers as labels.

Anyway, I just wanted to record my thoughts on the mailing list. It is 
certainly not the last word spoken. So if you have good suggestions, I 
am open to change what I have done so far.

Ralf

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Aldor-combinat-devel mailing list
Aldor-combinat-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aldor-combinat-devel

Reply via email to