When porting things to a new language the last thing you should do is rethink previous design decisions. That is a recipe for disaster.