dibyendumajumdar/ravi

Rewrite ravi using golang,I like ravi very much,

aadog opened this issue · 11 comments

aadog commented

I like ravi very much, this idea can solve the big problem of script, can we rewrite it by golang to show its hidden value

Hi,
I appreciate your feedback. Please have a look at this project https://github.com/yuin/gopher-lua
I wish I could rewrite Ravi in another language but it is too much effort and I lack the time. Btw why do you think Go is a good choice for this? Rust would be better IMO.
Regards

aadog commented

Ravi is the best script solution I've seen so far,It transplants defer and optional types, which are very important in Lua,Gopher Lua is very good, but it is unwilling to join defer, and there is no strong type support. Lua itself has poor processing ability, and it often needs to be implemented with the help of registration functions。

Rust itself provides strong support for C, so Ravi will not be too good. In go, Ravi is the only choice for all script development, because no one will pay more attention than you, at least for now

A plug-in supported by idea, strong type and Lua engine, with delay, and a very convenient type interactor, such as gopher Lua, does not need JIT

Dream experience

If you are interested, we can finish it together, or can you charge me to modify gopher Lua

aadog commented

At present, the main direction of Ravi seems to be to replace Lua, but it doesn't make any sense, because the application direction of lua is embedded

At present, the main direction of Ravi seems to be to replace Lua, but it doesn't make any sense, because the application direction of lua is embedded, and its main force is to interact with powerful users

aadog commented

You seem to focus on the JIT direction. In my opinion, the performance requirements on the devices are not too high, because the CPU is fast enough,

The core idea of script is rapid development and easy modification. If the performance needs, please give it to the compiling language. They will complete it well enough, but they need an appropriate instruction mode. Maybe I'm wrong, but this is my idea

aadog commented

Gopher Lua is very popular. Maybe you can be its successor. It hasn't been updated for several years

what is the advantage of writing Ravi in Go? I think there are many disadvantages.

  • Big effort
  • Will be slower
  • Cannot be used outside Go
  • Executable will be much larger and will have embedded GC
aadog commented

In this era, the difference in performance is almost minimal, unless it is reflected in the extreme algorithm or very slow and obvious Caton.

None of this will happen. What I want to say is that go basically solves the problem of% 90 on the server. Ravi + go is undoubtedly the best choice in the server field

aadog commented

It would be a pity to bury this great project and your talent
Ravi starred should remain above 5k-1w, which is my idea

Hi,
I think it is extremely hard to create any new language; and even more difficult to gain any users.
Ravi is just a fun project, I originally wanted it for my own project, but now it is just for fun.
No matter what I do, it is not going to be a popular language, because to make a new language that is popular, you have to have some differentiating feature that is unique and powerful. Plus you need backing of a large company.

It should already be possible to interface to Lua/Ravi from Go as Go allows you to call C code. Rewriting Ravi in Go is not going to give any benefit as other projects are already well established and go-lua is even backed by Shopify.

aadog commented

alright, you win