我们有一个非常通用的终端/嗅探器应用程序,它可以通过 TCP、UDP 和串行连接执行各种操作。
我们希望使其可扩展——即,允许人们编写自己的协议解析器、荧光笔等。
我们创建了一种类似 C 的语言来扩展产品,然后发现对于一些编码人员来说,这呈现出陡峭的学习曲线。
我们现在正在思考这个问题:我们应该坚持使用 C 还是使用 Ruby 或 Lua 之类的东西?
C 非常适合低级的东西(比如解析二进制数据),因为它支持指针。但正是由于这个原因,学习起来可能很困难。
Ruby(等)很容易学习,但没有指针,所以与解析二进制数据有关的任何事情都会很快变得丑陋。
你怎么看?用于扩展解析二进制数据的产品——Ruby/Lua 还是 C/C++?
如果您能在回复时提供一些背景信息,那就太好了——尤其是如果您做过类似的事情。