Ich habe gerade Ocaml abgeholt und bin in rekursive Iteration und all das hineingegangen. Ich habe versucht, durch ein Tupel zu iterieren, wurde aber ratlos. Nehmen wir an, ich möchte ein Tupel durchlaufen und jedes Element auf die Hälfte teilen. Wie gehe ich vor? Vor allem, wenn die Größe des Tupels nicht bekannt ist, sondern einfach als Variable angegeben wird? Nun, wenn ich weiß, dass es sich um einen 2-Element Tupel war, kann ich tunOcaml- Iterating durch ein Tupel
let rec divide n = match with (a,b) -> ...
Also das ist, wo ich bin stecken. Wie finde ich heraus, wozu das Argument passt? Ich weiß, dass Tupel nach der Erstellung repariert werden, so dass ich sie nicht an Ort und Stelle ändern kann. Wie würde ich also ein neues Tupel erstellen, das Elemente aus dem ursprünglichen Tupel/2 enthält? Jede Hilfe wird geschätzt.
Ich bin nicht 100% sicher über Ocaml, aber in der eng verwandten Sprache ML ist es einfach unmöglich, Code zu schreiben, der über Tupel von beliebiger Artigkeit polymorph ist. Siehe hierzu: http://stackoverflow.com/q/14416900/4996248 –