I spotted a typo:

On Saturday, January 25, 2020 at 3:46:19 AM UTC-5, Eric Raymond wrote:
>
> The Go translation of reposurgeon is better - more maintainable - code
> than the Python original, not just faster.  And this is because I
> rewrote or refactored as I went; as I've explained, I tried very hard
> to avoid that. It's that Go's minimalistic approach actually...works.
>

Missing "not": "And this is not because" 

The strategy of writing as literal as possible a translation of the Python 
first, 
at the cost of generating Go code that was initially clunky  and 
unidiomatic,
worked quite well.  It actually took effort and discipline to refrain from 
trying
to improve the code as it passed through translation, but I am very glad I 
expended that effort.  It kept the translation process sane and 
controllable,

I should note that a prerequisite for a translation like this is an 
excellent test 
suite.  At 22KLOC, reposurgeon now has 52 unit tests, 177 round-trip tests, 
218 end-to-end functional tests, and a miscellany of special tests that add
up to a total of 502 reporting items.  Only around 20 of these were added
during the translation itself.  All these tests are run by continuous 
integration
on every commit.

That translation phase was completed In November 2019 when the Go code
first passed the full test suite. The two months since has been sufficient 
to
polish the literalistic mock-Python it was at that time into what is now, I 
believe,
pretty clean idiomatic Go.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/760a6b1d-d3e2-4eeb-a074-19ea568b2449%40googlegroups.com.

Reply via email to