Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

RE: Genetic Programming or breeding Perls

by runrig (Abbot)
on Sep 27, 2000 at 03:38 UTC ( #34133=note: print w/replies, xml ) Need Help??

in reply to Genetic Programming or breeding Perls

Very cool :) One small nitpick though, is the use of map in void context. Specifically (in Individual->get_code):
my $code = ""; map { $code .= $_} (@{$self->{GENES}});
could be:
my $code = join('', @{$self->{GENES}});
Also, if your Individual->create() method returned $self at the end, you could change this (in Population->new):
for my $i (0 .. $self->{SIZE}) { my $individual = Individual->new(); $individual->create(); push (@{$self->{INDIVIDUALS}}, $individual); }
To this:
push (@{$self->{INDIVIDUALS}}, Individual->new->create) for 0..$self-> +{SIZE};
Or maybe even this:
$self->{INDIVIDUALS} = [ map {Individual->new->create} 0..$self->{SIZE +} ];
But now I'm probably being too nit-picky :) </code>

Replies are listed 'Best First'.
RE: RE: Genetic Programming or breeding Perls
by gumpu (Friar) on Sep 27, 2000 at 21:38 UTC

    Feel free to nitpick some more :), the replacement you suggest look very elegant. It's my first "complicated" perl program so there are bound to be more points that can be improved.

    Have Fun

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://34133]
[Corion]: ambrus: Most of our "automation" is tied to process exit codes and a shell pipeline :-\
[LanX]: ... a week later they realized that one of the databases - which recorded how much the other banks due to this bank - was not correctly plugged
[ambrus]: Corion: I have no problem with exit codes and shell pipeline. My problem is that the current process requires a lot of manual intervention from me, including editing the source codes.
[ambrus]: (Also a lot of manual intervention by two or three other co-workers, who do other parts of the process.)
[ambrus]: Some of the manual part is unavoidable, but not all.
[choroba]: LanX was there a way to recover the numbers from the remaining information?
[Corion]: LanX: Ow ;)
Discipulus manual work: i just tell the same to my boss: every time the quick solution is to assign some manual data entry task to my group.. because we have not direct access to many databases here..
[LanX]: point is: in high speed trade each bank has to remember what he has to get from the others... so dresdner got billed for losses but couldn't claim gains
Discipulus is this the IT?

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (11)
As of 2017-03-29 11:58 GMT
Find Nodes?
    Voting Booth?
    Should Pluto Get Its Planethood Back?

    Results (350 votes). Check out past polls.