On Fri, Jan 30, 2015 at 7:18 AM, James Douglas <jdouglas(a)wikimedia.org> wrote:
I wonder whether Go's lack of parametric
polymorphism might make it a
pretty tough sell. Given the potential benefit of introducing a statically
typed language, it might be interesting to investigate and compare some of
the different options.
Regarding Yuri's point about tools, what would it take to integrate Hack
into the current MediaWiki build processes? It *seems* like it wouldn't be
a huge diversion, but I'm quite unfamiliar with what's in place now. Have
we dabbled in Hack since the HHVM switch?
I'm not aware of any WMF/MediaWiki work being done in Hack yet.
Putting Hack into MediaWiki's core would be controversial but a stand
alone service/app could easily choose to use it I think. Changing from
PHP to Hack only requires changing the opening `<?php` to `<?hh`.
Today what Hack gives you is some syntactic sugar for various common
idioms from the Facebook internal code base and much stronger typing.
The last time I saw someone asking if it was faster on #hhvm the
answer was "not yet". Whether strong typing is a pro or a con of Hack
vs PHP seems like a religious debate that I'll try to stay out of
until the issue is forced. The bits most likely to be of interest in
the short term are the `async` and `await` keywords [0] and possibly
the Continuation class [1] which makes creating generators easier than
the PHP Iterator interface.
[0]:
http://docs.hhvm.com/manual/en/hack.async.php
[1]:
http://docs.hhvm.com/manual/en/hack.continuations.php
Bryan
--
Bryan Davis Wikimedia Foundation <bd808(a)wikimedia.org>
[[m:User:BDavis_(WMF)]] Sr Software Engineer Boise, ID USA
irc: bd808 v:415.839.6885 x6855