Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've evaluated Lua for a number of use cases and even use it on my Ti NSpire calculator occasionally, but it has some horrible problems, particularly related to metatables and the concept of 1-based indexes. It also doesn't give us any advantages over other languages. LuaJIT is impressive I will say though.

However, Go's apparent concurrency focus is a bad assumption.

The problems that Go solves are simply: simplicity, synchronisation, thread scalability, time to market, modularity, testability, consistency, security and memory management.

All of those, you really can't do in C quickly and safely.

Go is a fixed C, with a fixed standard library that suits NOW, not 20-30 years ago. That's all it is and that should be applauded and praised. It also fixes the inevitable mountain of stuff you have to do to get something significant done in C and ignores the utter retarded complexity of C++ and Java.

Ultimately:

A single person can build something significant in Go in a week.

A single person cannot build something signficant in C in a week.

cgo is very easy. I've plugged SDL into it in a few minutes.



I agree with you mostly. Although you are comparing Go to a language with manual memory management, not another GC language, like Lua (sorry to keep using that example).

A question: What is your idea of "something significant"?

Go seems like an ideal language to quickly build servers. Am I missing something else?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: