问题标签 [hacklang]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 你会如何从 PHP 迁移到 Hack?
Facebook 引入了一种新的编程语言,它看起来很像 PHP 的扩展。他们称它为Hack,它在他们的 HHVM 引擎上运行。
在查看了他们的网站并阅读了一些相关内容后,我想知道从PHP到Hack的迁移可能会有多流畅。
让我们围绕已经部署到 LEMP 或 LAMP 堆栈的 Web 应用程序展开讨论。
我最初的一些想法和行动清单包括:
- 如何在迁移代码库的过程中同时运行 PHP 和 Hack?
- 从 nginx/Apache 迁移到 HHVM
- 迭代迁移代码库
那么,您将如何处理这个问题?
javascript - 有人能从 facebook 介绍一下这种新的 HACK 编程语言吗
我在互联网上找不到很多关于它的资源。我也想对此进行更多研究,以及它与 javascript 有什么相似之处!
php - HHVM 的现状如何?
我刚刚发现了 HHVM,这是一种旨在执行 PHP(以及一种密切相关的新语言,称为 Hack)的虚拟机,比标准的 PHP 解释器更有效。在 hhvm.com 上阅读有关它的信息。(我认为这始于 Facebook 努力提高 PHP 的性能。)
HHVM 开发人员测试了它与包括 phpMyAdmin 在内的流行包的兼容性。他们声称他们的最新测试显示了 99.85% 的兼容性,无论这意味着什么。
phpMyAdmin 开发人员是否注意到这项工作?他们应该吗?
php - 混合 PHP/Hacklang:在带有注释类型注释的常规 PHP 上使用类型检查器
由于无法访问 64 位 VM,我目前无法构建 hhvm,因此我无法使用他们拥有的类型检查器。他们的文档似乎没有详细描述类型检查器(hh_server 和 hh_client?)的操作。
对于任何使用过它的人,我想知道的是类型检查器是否可以在这种情况下使用:
假设有人无法将他们的 PHP 代码库转换为 Hack,所以他们改为使用 hacklang 类型注释形式的注释编写 PHP,并在构建时使用工具去除注释,创建一个 hh 文件,运行类型检查器并报告错误。
例如原始PHP:
复制上述内容,去掉注释,将 ?php 更改为 ?hh :
通过类型检查器运行它,看看它是否产生错误。
这样你就可以使用普通的 PHP 进行合法的类型检查,而无需在 HHVM 上运行它。类型检查器是否以适合此设置的方式运行?
php - 如何在 hacklang/hhvm 中使用 Mysql PDO 驱动程序
尝试使用 hacklang/hhvm(今天编译)通过 PDO 访问 MySql 时,我收到一个 pdo 异常“找不到驱动程序”。我尝试安装 php5-mysql 但我什至不确定这是否有用,因为我不确定 php 和 hacklang 之间的关系,尤其是在扩展方面。我该怎么做才能让 PDO 在 hacklang 上工作?
更新:
我找到了支持的扩展列表: https ://github.com/facebook/hhvm/wiki/Extensions
PDO 和 MySql 都在那里,但我应该寻找 mysql_pdo 吗?或者我需要做一些配置吗?
php - Hacklang 教程 - 扩展类中的这种类型
hack教程练习16的正确答案是什么?
教程链接:Hacklang 教程
我修改后的代码(未标记为解决方案):
我替换MyBaseClass
为this
但仍未标记为正确(带有练习编号的绿色文本)..什么是正确答案?
php - 我可以将 HHVM 与常规 PHP 解释器一起使用吗
我知道 HHVM 可以运行常规的 PHP 代码。我想知道的是,我是否可以通过常规解释器提供所有用 .php 编写hack
的文件和所有用 PHP 编写的文件的方式进行迁移。HHVM
PHP
我认为这应该可以通过使用两个不同的文件扩展名(比如.hh
和.php
)然后以某种方式将它们映射到两个不同的解释器/虚拟机和一些 nginx 设置,不是吗?
stateless - Hacklang 是有状态语言还是无状态语言?
最近,Facebook 发布了一种名为 Hacklang 的新语言,由 HHVM 编译为机器码。
所以我只是想知道,Hacklang 仅仅是一种有状态的语言吗?
谢谢。
hacklang - hack中常用的php函数
我决定开始一个新项目来进入 hacklang,在解决了一些我最初遇到的从 php 习惯过渡的问题之后,我遇到了以下错误:
做了一些研究,我发现这是由于使用了未经过类型检查的“旧版”php,并且会在//strict
.
这很好,empty()
很容易更换,但是str_replace()
有点困难。
是否有等效的功能可以使用//strict?
或至少类似的功能。
我知道我可以使用//decl
,但我觉得这违背了我的目的。
至少有什么方法可以判断哪些功能是在 hack 中实现的,哪些不在文档中,因为我找不到?
作为参考(虽然它与问题本身并不太相关),这里是代码:
hacklang - 如何让 XHP 在 Ubuntu 的 hack/hhvm 中工作
我已经按照网站上的说明安装了 hack-nightly 并使用 nginx 设置了 fastcgi,但是在尝试创建使用 xhp 的简单文件时出现错误:
错误:
我需要采取一个步骤来启用它,还是需要安装额外的导入或包?