Hacker Newsnew | past | comments | ask | show | jobs | submit | klaussilveira's commentslogin

> declarations for global variables

That's huge. I wish LuaJIT adopted this, or at least added a compile time flag to enable it.


Yeah, I wish someone would pick up LuaJIT development. From what I've heard it in practice isn't developed anymore and is stuck at Lua 5.1 still.

Not true. It's getting a constant stream of bugfixes. It's also not "stuck" on Lua 5.1, but is deliberately not following Lua's path, except for some backports. There's also a recent post about how a LuaJIT 3 might work.

Where is that post?

https://www.freelists.org/post/luajit/Question-about-LuaJIT-...

Warning: Ridiculous cookie consent banner, needs dozens of clicks to opt out.


This cookie consent banner is handled in 0 clicks thanks to Consent-O-Matic Firefox extension

OK, then I got some wrong info. If it's stuck at it deliberately, then it's worse. May be someone should fork it and bring it up to date with recent Lua versions. Why is this split needed?

My understanding is that there was a language fork after 5.1. One thing was a complete reworking of how math works. It used to be just floating point for everything but the new idea was to make it like Python 3. So most operations are float/integer with some weird exceptions.

As with any language fork there will be some who stay and others who switch to the new thing. Often a fork will drive people away from a particular language as in my case.


Lua's nature as a primarily embedded language means backwards compatibility is not guaranteed between any version. If 5.2 was a language fork then so was 5.3, 5.4, 5.5, etc. (5.2 did have some more significant changes though)

For that reason luajit staying at ~5.1 actually works in its favor. Rather than trying to follow the moving target of the newest version, it gives a robust focal point for the lua ecosystem, while modern versions can be developed and continue to serve their purpose in embedded systems and whatnot where appropriate.


I don't see a reason not to update LuaJIT still. Changes in Lua aren't just version numbers, it should be improving something, meaning that would be missing in LuaJIT.

LuaJIT does have some backported features from newer versions. But Mike Pall -- the mad genius behind LuaJIT -- has made it clear he doesn't agree with many of the changes made in newer versions, hence why it's staying where it's at.

the beauty of open source is there's nothing stopping you! this might be your calling. best of luck

Language fork is unfortunate. Python situation isn't much of a fork really. Python 2 is basically EOL.

There’s no “basically”. Stick a fork in it; it’s done: https://www.python.org/doc/sunset-python-2/

It might not be supported by the consortium, but python2 still lives, slowly, in one place or another:

> The RHEL 8 AppStream Lifecycle Page puts the end date of RHEL 8's Python 2.7 package at June 2024.

https://access.redhat.com/solutions/4455511

At this point in RHEL it is only "deprecated", not "obsolete".


In RHEL I would never touch system python at all, and would install what every version I needed in a venv and configure any software I installed to use what ever version I needed. I learned the hard way to never mess with system python.

Which is better than this mess with Lua situation.

The language is different. The changes to environments in particular are a non-starter. Sandboxing is incredibly clunky in 5.2+, and we lost a lot of metaprogramming power and dynamic behavior.

> May be someone should fork it and bring it up to date with recent Lua versions. Why is this split needed?

Good news, you're someone. If you care, you're welcome to go for it.


I strenuously disagree. Not every language needs to chase trends and pile on unnecessary complexity because developers want the latest shiny language toys to play with. It's good to have a simple, stable language that works and that you can depend on to remain sane for the forseeable future.

C is a language like that but I fear the feature creep is coming (auto? AUTO??.) JS is a lost cause.


If you need WASM, I think Candle is your current best bet: https://github.com/huggingface/candle

We jumped ship too. Forgejo has been amazing.

NVIDIA's NVRHI has been my favorite abstraction layer over the complexity that modern APIs bring.

In particular, this fork: https://github.com/RobertBeckebans/nvrhi which adds some niceties and quality of life improvements.


I wish there was a public database of corporate ASNs and IPs, so we wouldn't have to rely on Cloudflare or any third-party service to detect that an IP is not from a household.

Scrapers use residential VPNs so such a database would help only up to a certain point

Just search for "residential proxies" and you'll see why this wouldn't help.

There is... It's literally available in every RIR database through WHOIS.

There is one. It's called the RIRs.

Guess I need to step up on my side project.

Finding a good CRT locally has been pretty difficult. I think everyone is caught on the "this is worth gold now" trend.


It’s not worth gold, a lot of CRTs are dead or dying, the tubes have limited hours. After that, they just become junk. Most have been disposed, so you’re going to struggle to find a local one.

Shipping them is annoying and expensive, no one wants to lug around heavy ass CRTs and larger ones probably have to ship on pallets.

Small CRTs that are easy to carry will get snatched up quickly, but mostly by retro gamers who have no alternative.

The difficulty of finding CRTs is mostly a logistics problem. Not because they are so valuable that people horde them.


Where are you located? I've been grabbing them whenever I see them (roadside, e-waste, yard sales, etc.) for years and honestly have too many. Some of them, like my 36" Trinitron, have become an albatross.


If you are like me and like to toy around with ancient game engines, for the sake of simply modding or trying things out, I made this tiny clean fork: https://github.com/klaussilveira/clean-quake

The idea is that it builds on 64-bit Linux with a very simple Makefile and SDL2, so you can start from there as your ground truth, and then have fun. It also removes a lot of cruft, like all the DOS and Windows 95 stuff mentioned in the article.


Get qengine too for Quake2. Similar to Chocolate Doom/Hexen and clean Quake.


qengine is one of my things too! :)

software renderers are so much fun.


It is WinQuake or QuakeWorld?


WinQuake. Or, well, NetQuake as it is known.


“NetQuake” was primarily used to distinguish the original network code from the predictive model of Quakeworld, which came out a little while later.


Red Eclipse has mutators: https://github.com/redeclipse/base


I honestly can't understand why Epic Games refuses to open-source Unreal 1 and UT99. They insist on licensing individual developers, instead of opening up the source so community forks can thrive. Look at the id tech community, with all the Doom and Quake forks, and all the amazing projects that spawned off of them.

The topic of "middleware" often comes up, as an excuse for them not being able to open the source. Well, just remove any third-party libraries and middleware, even EA did it with their C&C open-source releases. The C&C release did not even compile, but that did not stop the community from porting to Linux and other platforms, as well as modernizing the source and creating replacement libraries.


One explanation that was brought up before about this was licensing. A lot of the source code has been touched by other entities like Digital Extremes who may feel differently about releasing the source. That's even more true for UT2k4 which was worked on by many more companies behind the scenes, some of which are now defunct.


> may feel differently about releasing the source

Still sounds like something someone would change their mind about if enough money was involved, if only Epic had enough profits.


I found somebody on Youtube a few years back that remade Nyleve Falls in 3DS Max and all I could think was how cool it would be to reboot Unreal 1 with modern graphics.

Video: https://www.youtube.com/watch?v=bP4ufZKSkio


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

Search: