This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 243133 - Add support for HHVM and HACK language extenstions.
Summary: Add support for HHVM and HACK language extenstions.
Status: NEW
Alias: None
Product: php
Classification: Unclassified
Component: Editor (show other bugs)
Version: 8.0.1
Hardware: All All
: P2 normal with 39 votes (vote)
Assignee: Ondrej Brejla
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-21 10:04 UTC by davidkalosi
Modified: 2016-11-29 17:49 UTC (History)
13 users (show)

See Also:
Issue Type: ENHANCEMENT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description davidkalosi 2014-03-21 10:04:05 UTC
The facebook team is really pushing hard with the HHVM theese days so it would be interesting to support the new language features provided by HHVM hack extension which brings a lot of interesting features on top of zend PHP. 

HHVM has launched a new website with a detailed documentation of their hack language.

http://docs.hhvm.com/manual/en/hacklangref.php
Comment 1 Tomas Mysik 2014-03-24 05:50:53 UTC
More editor area, reassigning. Thanks.
Comment 2 Christian Lenz 2014-06-24 08:15:33 UTC
Would be very nice.
Comment 3 JordanLeDoux 2014-06-24 17:41:21 UTC
This is actually something that should be considered sooner rather than later.
Comment 4 michal.sanger 2014-07-08 20:16:08 UTC
Yes please, support for Hack would be super cool!
Comment 5 jwatzmanfb 2014-08-04 20:34:47 UTC
Hey, I'm Josh Watzman, an engineer at Facebook working on the Hack typechecker, in particular the open source side of things. Having Hack support in NetBeans would be really cool! I sadly don't have any time to devote to actually building this myself, but I'm happy to help NetBeans or anyone else putting together such support with any questions about it they may have. If you want to chat, you can email me (my email is "jwatzman" at Facebook's corp domain, "fb.com") or if you like IRC feel free to come by #hhvm on Freenode, I and several others are there during the working day US Pacific time.

Some initial thoughts to get started. There are two major pieces of such an integration:

1) Adding syntax support for Hack, such as type annotations, short lambdas, and collections. Nothing here is (AFAIK) terribly difficult, just a somewhat wide surface area. But it also doesn't necessarily have to be perfect in v1.0 to be useful.

2) Talking to the `hh_client` static analysis tool which normally runs on the command-line on a Linux or (soon) Mac machine in order to display type errors in the IDE. `hh_client --json` generates a machine-readable output -- the likely hard part here is that we don't have Windows support; the FBIDE implementation talks to a remote Linux server, but I have no idea what you will or will not want to do here, or what makes sense for NetBeans. But getting this working is pretty important -- most of the type system is enforced only by this static analysis tool, not HHVM, so you're missing out on most of the power of Hack if this isn't working.

An example integration for vim is here: https://github.com/hhvm/vim-hack I don't think it's be updated to use the newer `--json` output formats and so does some string parsing BS instead, but you should be able to get the idea for how the typechecker and some of its niceties (e.g., autocomplete and type-at-position) integrate.

Again, happy to help anyone working on this with any questions!
Comment 6 davidkalosi 2014-10-16 21:52:27 UTC
any news on this one ?
Comment 7 ceo 2014-11-04 22:48:58 UTC
@Ondrej Brejla, do we have an update?
Comment 8 Ondrej Brejla 2014-11-05 08:52:45 UTC
@ceo: Yes, we have. Unfortunately we don't have a time for almost anything ;) Sry...
Comment 9 Christian Lenz 2014-11-05 09:15:58 UTC
No time for only this big feature or you mean any new/requested features for netbeans?
Comment 10 JordanLeDoux 2014-11-05 09:40:53 UTC
Woooow.

One of the developers behind Hack all but offered to do it for you, and you still don't have time?

Awful.
Comment 11 Ondrej Brejla 2014-11-05 10:31:09 UTC
I don't have time for NB features right now. Once I'll have it, I'll definitely be in contact with Josh Watzman. His offer is really cool.

JordanLeDoux: NB is open source, if you have a time, you can write that support by yourself and provide it to NB, no problem. Thanks.
Comment 12 Mte90 2015-01-19 10:06:05 UTC
Any news for this ticket?
Comment 13 davidkalosi 2015-01-20 08:58:33 UTC
seems like it faded to oblivion. phpstorm will have hack support in Q1 2015 if anyone interested.
Comment 14 allenlinatoc 2015-06-16 09:42:33 UTC
Any updates? I tried searching for a plugin related for HHVM and Hack features but found nothing.
Comment 15 threedot 2015-12-20 14:33:07 UTC
Is it possible only syntax coloring? It looks like easy because Hacklang is subset of PHP.

There is sample: https://github.com/hhvm/vim-hack/blob/master/after/syntax/php.vim
Comment 16 rastrano 2016-01-01 07:24:58 UTC
+1
Comment 17 janise 2016-11-29 17:49:41 UTC
Yes, at least syntax highlighting, please.