Github 挑战送书,涉及 Rust 等多种语言,周末消遣一下 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
sadhen
V2EX    程序员

Github 挑战送书,涉及 Rust 等多种语言,周末消遣一下

  sadhen
darcy-shen 2018-10-13 01:04:39 +08:00 5051 次点击
这是一个创建于 2625 天前的主题,其中的信息可能已经有所发展或是发生改变。

要求

给这个 Repo 提交 PR: https://github.com/texmacs/Rust.tm

在 GNU TeXmacs 中实现 Rust 的 REPL,并提交完整的 PR。LICENSE 采用和 GNU TeXmacs 一样的。

第一个比较完整的,并最终被合并的 PR,赠送一本《 Scala 实用指南》,或者按照要求赠送一本价格上更便宜的任意图书。

实现参考

  1. https://github.com/texmacs/GNUTeXmacs/tree/master/plugins
  2. https://github.com/texmacs/TeXmacs.scala
  3. https://github.com/murarth/rusti

加分项:参考 https://github.com/texmacs/GNUTeXmacs/commit/3177bb435a8e92610c53328fa344e9a4bf980981 实现 GNU TeXmacs 中的 Rust 代码片段高亮。

加分项没有任何附加福利,鄙人太穷了,如果是妹子的话,鄙人可以考虑以身相许,(逃

Q&A

直接在这里问就可以,不过更加欢迎在 https://github.com/texmacs/Rust.tm/issues 询问,方便别人看到。最好是英文,中文也无所谓。

20 条回复    2018-10-17 10:52:57 +08:00
sadhen
    1
sadhen  
OP
   2018-10-13 13:38:01 +08:00
https://github.com/rust-lang/rfcs/issues/655

额,原来 Rust 还没有 REPL。

本文换成 Haskell 和 Julia 都适用。
sadhen
    2
sadhen  
OP
   2018-10-13 14:17:39 +08:00
hourann
    3
hourann  
   2018-10-13 14:26:28 +08:00
下了个 texamcs,用了两分钟后扔废纸篓里了,太卡了
sadhen
    4
sadhen  
OP
   2018-10-13 14:35:56 +08:00
@hourann 什么平台,Windows ?我这边感觉还好啊。文档比较大才会卡。可能是在初始化吧,第一次启动的时候。
sadhen
    5
sadhen  
OP
   2018-10-13 15:10:51 +08:00
@hourann 确实实现上还不够完善,后面我看看怎么做一下性能调优吧
hourann
    6
hourann  
   2018-10-13 16:05:31 +08:00 via iPhone
@sadhen macOS 下,空文档中简单的字符输入有明显能感觉到的回显延迟
sadhen
    7
sadhen  
OP
   2018-10-13 16:39:59 +08:00
@hourann 谢谢反馈,我研究一下怎么做 C++项目的性能优化

之前用过 valgrind 试了一下,原理大概是用模拟器去跑整个应用,但是基本上卡得要命。所以只能把代码模块化之后,用专门的 benchmark 模块做 Profiling 和 Tuning。
sadhen
    8
sadhen  
OP
   2018-10-13 18:50:51 +08:00
我在 Linux Deepin 上试了一下,没有这种感觉,可能是 MacOS 版本有点问题。
sadhen
    9
sadhen  
OP
   2018-10-13 19:14:06 +08:00
刚刚是在 Linux Deepin 的旧版上试的,现在又编译了一遍,发现是最新的代码有问题 :(

git bisect 应该就能定位
sadhen
    10
sadhen  
OP
   2018-10-13 19:34:24 +08:00
sadhen
    11
sadhen  
OP
   2018-10-13 20:23:40 +08:00   1
@hourann 这个卡顿的问题已经修复了,see https://github.com/texmacs/GNUTeXmacs/commit/fe0b382070e8355426a1356a46bda7b372503cf5

就是上面的 bad commit 里面最后那个 100ms 的延时有点莫名奇妙,反正删掉就好了。

感谢!!!
hourann
    12
hourann  
   2018-10-13 20:49:38 +08:00 via iPhone
@sadhen 哇,厉害
我还以为是这个软件太复杂,或者底层框架有问题,导致回显速度这么慢。
再捡起来用用看,哈哈
hepin1989
    13
hepin1989  
   2018-10-13 21:11:12 +08:00
哇塞~~大大又在搞活动!
sadhen
    14
sadhen  
OP
   2018-10-13 21:36:59 +08:00
http://texmacs.org/tmweb/plugins/cas.en.html

刚刚把这个页面上的 CAS 系统试了一遍,对这些欧洲的数学家,还是很佩服的。里面有好多官网(域名)已经从一个搬到了另一个国家,但是项目还一直在维护。
pythonee
    15
pythonee  
   2018-10-13 21:43:18 +08:00
先关注
tt0411
    16
tt0411  
   2018-10-13 22:26:16 +08:00
关注一下, 只是不太熟悉 rust 语言...
hourann
    17
hourann  
   2018-10-13 22:32:47 +08:00
https://github.com/texmacs/texmacs/wiki/Build-with-CMake-on-MacOS
macOS 上的 build wiki 有问题,在执行`brew install [email protected]`的时候,
```
Error: An exception occurred within a child process:
NoMethodError: undefined method `factory' for Formula:Class
```
也没找到地方提 issue。解决方案是把 [email protected] 的第 21 行的 Formula 改成 Formulary
sadhen
    18
sadhen  
OP
   2018-10-13 22:44:44 +08:00
@hourann OK, 过会儿我处理一下,后面有空我补充一点开发文档,以及整个软件的一些设计
sadhen
    19
sadhen  
OP
   2018-10-13 22:53:08 +08:00
这个 CMake 的构建是我在维护,但是不成熟,我是用来构建和阅读代码的。官方提供的包是用别的方式制作的,细节我不太清楚。如果只是鼓捣插件,可以不用构建整个 TeXmacs。
sadhen
    20
sadhen  
OP
   2018-10-17 10:52:57 +08:00
@hourann Homebrew 的问题我已经修复了。有兴趣加一下我们的 QQ 群:934456971

https://zhuanlan.zhihu.com/texmacs

最近开始做一些科普的宣传,另外下周四晚上还会在 Shanghai LUG 做一个分享
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     997 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 24ms UTC 18:34 PVG 02:34 LAX 10:34 JFK 13:34
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86