Live data from Hacker News

LuaJIT uses rolling releases

freelists.org

51–60 of 61 posts

Re: LuaJIT uses rolling releases

#51
post #50

Earlier quoted context omitted.

I like Lua the language, but why is it and LuaJIT terrible to work with in your experience?

I haven't looked at LuaJIT, but Lua is written in this weird bastard language using the C preprocessor. All of the terseness of Lisp, with no type system (since it's the C preprocessor), and the added fun of pointer arithmetic.

Would you mind elaborating on this? I'm perusing the source to try to make sense of this comment and all I see is... C.

Re: LuaJIT uses rolling releases

#52
post #51
post #50

Earlier quoted context omitted.

I haven't looked at LuaJIT, but Lua is written in this weird bastard language using the C preprocessor. All of the terseness of Lisp, with no type system (since it's the C preprocessor), and the added fun of pointer arithmetic.

Would you mind elaborating on this? I'm perusing the source to try to make sense of this comment and all I see is... C.

Literally any header file in https://github.com/lua/lua

In particular, https://github.com/lua/lua/blob/master/ldo.h

Re: LuaJIT uses rolling releases

#53
post #52
post #51

Earlier quoted context omitted.

Would you mind elaborating on this? I'm perusing the source to try to make sense of this comment and all I see is... C.

Literally any header file in https://github.com/lua/lua In particular, https://github.com/lua/lua/blob/master/ldo.h

Are you referring to Lua, the language?

Or its implementation details (written in C)?

If the later, how does that make Lua, the language, bad?

Re: LuaJIT uses rolling releases

#55
post #50

Earlier quoted context omitted.

I like Lua the language, but why is it and LuaJIT terrible to work with in your experience?

I haven't looked at LuaJIT, but Lua is written in this weird bastard language using the C preprocessor. All of the terseness of Lisp, with no type system (since it's the C preprocessor), and the added fun of pointer arithmetic.

That weird bastard language is called C. It's really easy to hack on the lua codebase, either adding stuff to it or using it as the base for other languages. Provided you can read C, anyway.

Luajit has a really complicated build process. I'm more nervous about changing that codebase.

Re: LuaJIT uses rolling releases

#57
post #50

Earlier quoted context omitted.

I haven't looked at LuaJIT, but Lua is written in this weird bastard language using the C preprocessor. All of the terseness of Lisp, with no type system (since it's the C preprocessor), and the added fun of pointer arithmetic.

That weird bastard language is called C. It's really easy to hack on the lua codebase, either adding stuff to it or using it as the base for other languages. Provided you can read C, anyway. Luajit has a really complicated build process. I'm more nervous about changing that codebase.

I would be more concerned about the high percentage of assembler than the build process.

Re: LuaJIT uses rolling releases

#58
post #44

Earlier quoted context omitted.

and they don’t now for good reason. Lua and LuaJIT are terrible to work with.

> "LuaJIT is a cool thing. Helped us a lot. But not everything remains the right thing forever." Posted only 11 months ago by Cloudflare CTO https://news.ycombinator.com/item?id=32869567 Cloudflare was already operating a scale and as public company, when they were running LuaJIT. Chances that you'll operate at Cloudflare scale is like 1:Billion. Sounds like Cloudflare was quite happy with LuaJIT.

Of course they would. It’s called saving face.

They got lucky, choosing a niche language and a massive amount of tech debt as their primary technology stack.

But in the end, Cloudflare is one company. Who gives a what they did?

Re: LuaJIT uses rolling releases

#59
post #53
post #52

Earlier quoted context omitted.

Literally any header file in https://github.com/lua/lua In particular, https://github.com/lua/lua/blob/master/ldo.h

Are you referring to Lua, the language? Or its implementation details (written in C)? If the later, how does that make Lua, the language, bad?

I'm criticizing the implementation.

I have no complaints about the language (other than arrays starting at 1). I'm just salty because other people have said the implementation was really clean C, so I decided to spend a week porting it to C#, and I gave up. I could not figure out how closures were actually implemented, and I spent a day trying to understand it.

Re: LuaJIT uses rolling releases

#60
post #44

Earlier quoted context omitted.

> "LuaJIT is a cool thing. Helped us a lot. But not everything remains the right thing forever." Posted only 11 months ago by Cloudflare CTO https://news.ycombinator.com/item?id=32869567 Cloudflare was already operating a scale and as public company, when they were running LuaJIT. Chances that you'll operate at Cloudflare scale is like 1:Billion. Sounds like Cloudflare was quite happy with LuaJIT.

Of course they would. It’s called saving face. They got lucky, choosing a niche language and a massive amount of tech debt as their primary technology stack. But in the end, Cloudflare is one company. Who gives a what they did?

I don't know about you but a 3x performance increase going from a scripting language with fast iteration times to a programming language that has long compilation times plus a borrow checker is hardly worth the risk of a rewrite to the average company.

Add on top the fact that one of the performance problems was interfacing nginx with luajit, aka there are two unnecessary memory copies.

When I think about these things, I'm thinking cloudflare was lucky enough to outgrow lua rather than being lucky to have gotten away with luajit.

Post reply on HN