Matthias you work like a machine, too fast. Anyway, I have no idea what is type or not type.
But I have some general remarks: 1. A general automaton can have many states, say, 10 states. so the action in each state can be either cooperate or defect (this is a deterministic automaton, for a probabilistic one, they can even randomise between cooperate or defect, but the case of deterministic and probabilistic should be separated far). it means that, even for a 2 state automaton, it can happen that both state use the same cooperate action. other small notices - the all defect automaton start with defecting and always defecting so its code is : defect defect defect... not cooperate defect defect... (same for the all cooperates one) - i'm considering to add a mutation phase at the end of each cycle (ie choose some random automaton and mutate their code) but im working very slow. - why dont you define a (match-pair ...) function separately? you insert it in the (match-population ...). doesnt it deserve to be outside? - why you use [i (in-range 10)] in all for loop? what's the difference with [i 10]. they both produce stream, right? On Tuesday, 13 October 2015 01:46:04 UTC+2, Matthias Felleisen wrote: > Take a crack at it. > > I am pretty sure I have introduced the proper level of representation > independence (I can hear Ben laugh all the way now — Typed Racket > doesn’t have types) and the typed documentation is pretty solid. (I’ll > do types later to validate.) > > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.