作为我们在Digital Asset为所有DAML用户提供出色的IDE体验的努力的一部分,我们早在2年前就开始构建GHIDE。正如Haskell社区中的许多人所知道的那样,DAML编译器是基于GHC的修改版本的,因此使用它的人自然是Haskell程序员。随着ghaid变得越来越好,我们在处理DAML代码库时体验到了它,我们开始遗漏了我们的Haskell开发中的相同功能。随着时间的推移,我们开始对DAML细节进行抽象,最终设法让它在一些手工制作的Haskell项目中工作,但无法与Cabal、Stack或其他构建工具集成。大约在那个时候,我们还开源了整个DAML代码库,其中包括GHIDE--但是我们没有在任何地方宣布GHIDE。幸运的是,在这个时候,Matthew Pickering发布了HIE-bios,这使得在仍然使用与DAML IDE基础相同的代码库的情况下,将ghkill与Haskell系统中的所有不同构建工具集成在一起变得非常简单。
在尼尔在2019年MuniHac大会上发表主旨演讲之前,外部对GHIDE的兴趣非常有限。
兴趣和外部贡献在几天内猛增,我们将ghish拆分到一个单独的存储库中,使贡献者和用户更容易,不再需要处理DAML monorepo。从那时起,GHILD有了大量的贡献,不仅使Haskell用户受益,也使DAML用户受益。不可能说出所有为杀戮做出贡献的令人惊叹的功能,但我们最喜欢的一些功能包括:
在2020年1月,来自haskell-ide-engine的许多ghkill贡献者和贡献者聚集在一起,同意将他们的努力统一为haskell-language-server的一部分,haskell-language-server构建在ghkill之上,同时继承了haskell-ide-engine的所有功能和插件。半年后,毫不夸张地说,这一努力取得了巨大的成功,用户的热情声明可以证明这一点。最后,Haskell工具的大部分工作都集中在一种方法上,每个人都可以从改进中受益。
随着GHIDE对Haskell工具的重要性不断增长,在数字资产组织中保持如此重要的存储库(只有Digital Asset员工作为维护员)已开始抑制贡献的洪流。因此,在与许多贡献者协商后,Digital Asset决定将GHIDE转变为Haskell GitHub组织下的一个适当的社区项目。在进行这一转变的过程中,GHIDE获得了一个更广泛的维护团队,这些维护人员来自当前活跃的GHIDE贡献者。DAML IDE将根据需要切换到一个开源的ghkill分支,并根据需要从上游选择更改,我们将继续在ghkill中进行上游错误修复和改进。
我们非常高兴地看到GHIDE在未来将朝着哪个方向发展。感谢所有的杀戮贡献者,特别是Pepe Iborra,Matthew Pickering,Alan Zimmermann,wz1000,Luke Lau,Alejandro Serrano,Fendor和Jacek Generowicz。我们很高兴成为Haskell IDE工具社区的一员,并期待着在未来与现有的和新的贡献者合作。