Breaking code faster and better

w0rp via Digitalmars-d digitalmars-d at puremagic.com
Fri Jun 20 12:28:57 PDT 2014


I've been catching up on the Lang.NEXT videos and I just watched 
the one about Hack and converting lots of PHP code to Hack at 
Facebook.

https://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2014/Hack

The essence of the talk is essentially gradually introducing 
strong constraints on a codebase to improve quality. I think the 
most interesting part for us is that about thirty minutes in the 
question is asked, can this be done generally in the industry, 
automatically? He is again talking about something which I think 
is a lot like 'gofix' for Go.

Now Rob Pike pin pointed a point for Go's growth coming from 
fixing on a version 1.0 for the language, so everyone could know 
what was going to happen. So there's evidence of guarantees of 
stability leading to increased adoption, although correlation 
doesn't imply causation. but it does make me wonder. Should we be 
developing ways of saying, "We're just going to change this thing 
which isn't so great, here's a warning, run the tool to fix it 
for you," or similar?

I know one of my pet peeves is null pointers and null class 
references, as an example. Either that or an Option/Maybe monad 
are nice to have for when you want to implement linked lists and 
so on, but I think actually the number of times you want to allow 
for something which is either something or nothing are quite 
small. So it would be nice to have tools so we could one day say, 
"Nah, we're going to make it harder to create null pointer 
errors, and here's a tool to assist you with that transition."

I just tossed in one hot topic with another one, so I'll duck for 
now to avoid a beheading.


More information about the Digitalmars-d mailing list