This really isn’t necessary. There is an infinite number of cool useful functions that shouldn’t be added just for the sake of having them, like the nth Fibonacci number or nth prime. Changing Lua or bloating the math library isn’t good.

I’d be skeptical why many calculators including Google have the “!” operator in hand. Doesn’t seem logical why Lua doesn’t have the “!” operator too. Or at least a math function for this.

No programming language has a factorial operator. You write the function and then you can call the function whenever you need it. Google isn’t a programming language and it is supposed to be able to interpret various inputs on purpose. You can calculate a factorial by writing a function to calculate factorials and then calling that function when you need a certain factorial, just like for anything else. It’s not hard at all. In fact, a factorial function is a classic introductory example for basic programming. Creating a new language isn’t the way to go.

Adding new operator syntax would be creating new language, so that definitely won’t happen, and adding a new standard library function that’s not commonly used also isn’t desirable, so the best you can do is define it yourself in your own scripts:

math.fac = function(n)
local v = 1
for i = 2, n do
v = v * i
end
return v
end

Factorial is not terribly useful on its own because of how quickly it blows up. In the most common uses, for combinations ans permutations calculations (more common in card/casino game AIs than in most Roblox games), you almost never have to actually compute a full factorial. You take advantage of the facts that you have factorials in both the numerator and denominator of the expressions, and that there is cancellation either by having repeated factors, or by partially evaluating the expressions and then reducing them by their GCD, thus avoiding overflow that would occur if you computed numerator and denominator independently.