HNHacker News
TopNewBestAskShowJobs

nmz

679 karma · joined March 3, 2019

submissionscomments
nmz··on Show HN: SimCity, but with Permits
For whoever cares to learn more, watch Adamsomething on youtube and his many takedowns on how stupid the entire project is.

https://www.youtube.com/watch?v=tryzj05cpX0

nmz··on Show HN: SimCity, but with Permits
If you wanna talk about abundance, talk about abundance, but mixing that with the disaster of yet another snake oil Musk project being stalled is not something to blame it for but to be thankful for.
nmz··on SimCity, but with Permits
There's no need for it, archive.org, myabandonware all have [play] on your browser support via emulation, C&C isn't there because of copyright reasons, and also you can do an AI recompilation which means most of the code should be thrown out.
nmz··on Regex visualized as 3D marble run
FWIW, lpeg is nice, of course you'll still have to deal with the terseness, but I don't think there's anything that can be done, since you will have to write an expression.

  patt <- country area "-" phone fin
  country <- ("+" %digit^-3 "-")?
  area <- %digit^3
  phone <- %digit^3 "-" %digit^4
  fin <- ! .
Not that impressive, but at least it doesn't group captures and groups and string escapes \ with a class labeling symbol.
nmz··on I resigned from Anthropic today
It was possible, big interests simply didn't want to do it, see luddite history
nmz··on More questions about whether researchers can trust OpenAI with unpublished math
Just because you post on the internet doesn't mean its public, each company has a privacy policy, of which nobody "opted in" for LLM use either when they signed up, they may have opted in for targeted ads, but not LLMs or a virtual recreation of your likeness, skills or persona. I don't remember reading that anywhere in any TOS or privacy policy.

So, it is the exact same story, plagiarism from the plagiarism machine.

nmz··on More questions about whether researchers can trust OpenAI with unpublished math
If they didn't care about the artists, why would they care about academia?
nmz··on Discovery of a new OpenAI agent message board
They already want to use AI without human intervention

https://www.cbsnews.com/news/anthropic-pentagon-pete-hegseth...

nmz··on Stop Making TUIs
https://arcan-fe.com/ proves you can have all of that and more without having an archaic TUI.
nmz··on A Kantian Critique of "Sorry" by Justin Bieber
If utilitarianisms only interest is the consequence of the action and whether it resulted in a positive outlook. the consequence that we care about is "your body" and if "sorry" is uttered in time, then we can receive the reward, If in the relationship you say sorry and there is an expectation of all actions being forgiven, then, this is the ultimate get out of jail free card. it is infinite because you can always use it, therefore although there is recognition of wrongdoing (at first), there is no need for a preventative measure to take place, because the recognition only looks at the consequence of reverting the status of "wronged" to "righted", not about the causes of the status "wronged" to have happened. This leads to an infinite loop of wrongful actions. What would happen if we constantly said "sorry" unnecessarily at a set interval, which we'll call the canadian way, there would always be our desired consequence and no wrongdoing to ever take place!

Without the recognition and admittance of wrongdoing, the wrong action itself will repeat forever in the relationship because its tolerable. making it an infinite get out of jail free card. If this was a system, fault tolerance would be at 100%, the error rate is probably the highest in any system that could exist, if it was code, then there wouldn't even be such a thing as bugfixes, the only recourse is "have you tried rebooting it?" method of recovery systems. Of course if the fault tolerance was not 100% then everything would be different.

nmz··on AI companies destroy physical books – let's scan rare books before it's too late
If you think ethical arguments like "murder is bad" or "human knowledge should be preserved" and a demonstrable falsity like "the earth is flat" are equivalent arguments then you are so far gone you might as well be a flat earther.

Blind futurists and AI cheerleaders scare me on how cavalier and how many crimes against humanity they ignore.

nmz··on AI companies destroy physical books – let's scan rare books before it's too late
Knowing and enacting are two distinct things, "you should do what I want you to do" means you're already doing the wrong thing, and yes, there is an agreement on what the right thing is, its what is ethical, that is, what non profits and archivists are forced to do.
nmz··on Codeberg Divides
They won't. No company will, I think the best quote I've heard this week is from the proton CEO on the Decoder podcast.

"No company is going to jail for you."

If vibe code is of questionable legality, then the best thing to do is to remain guarded until its legal standing is determined. It is simply an added bonus that it prevents slop that consumes data on servers for projects that nobody cares about enough to not have vibe coded.

nmz··on Codeberg Divides
1. This precedence is based on law or on the abscence of it.

2. Slippery slope fallacy.

3. Anarchy or Tyranny are not the only modes of operation. -- See point 2

nmz··on LuaJIT 3.0 proposed syntax extensions
I'd rather it use ?.() the . means getkey, () means expression using .(expr) should be the same as array[], throwing ? as a character should be very obvious what it does.
nmz··on LuaJIT 3.0 proposed syntax extensions
> Const keyword: changing const from `local a <const> = 42` to `const a = 42` is far better syntax. The bracketed syntax was never a good idea.

The bracketed syntax is an okay idea especially for <close>, adding close as a keyword would be a disaster given how common the word is. If anything, local should have been tossed away as a keyword and the bracketed syntax adopted completely

    v <local const close>, v2 = io.open'file', false
    g <global const> = 5

5.5 introduced global which makes better use of attributes as well. of course, I don't deny how great it would be to not type <> or local const since const would already imply a local

> string interpolation

Hisham already made this nice module https://github.com/hishamhm/f-strings Which I don't dare use, even if you don't have string interpolation. Of course, I don't care because I just have a table.format(tbl, "tbl.key is %{key}"), is it a little tedious? sure, but its just a gsub call.

> short form function syntax

I disagree with this, I've always wanted it and roll my eyes as I write/create a function, especially when you like to use lots of them like

    str:gsub('%d+', (s){ tonumber(s)+1 })
> Named varargs: It may be nice, but there is no real reason to add this. If you wanted a name for your varargs you could do `local name = ...` or just use the `args` variable already available in every function.

You've made a mistake there

    local name = ...
is

    local name = ({...})[1]

In order to actually do this you need to

   local name = table.pack(...)
If you will use a vararg, you will always have to do this, so why not just let it be handled in the parameter definition? its costless. AND lua5.5 already introduced this so it seems they liked it.

Quite frankly I would like the capability of treating ... as just an array like ...[1] but I haven't looked at the parser to see if its feasible or not.

> Switch/Match/Select Statements: An optimized if/else block works just as well and another expansion of a small language.

I don't disagree, but big table of functions is so ugly, switch statements would be nice

nmz··on LuaJIT 3.0 proposed syntax extensions
a lone ? can mean anything, you can already tell that . is for fetching a subtable.
nmz··on LuaJIT 3.0 proposed syntax extensions
This is something I don't see a lot of people do. I've tended to do

  for long,list,of,variables,here
  in ageneratorhere(bigparameterhere)
  do
  end
and

  local x do
    -- everything after is just here to define x
  end

I'm still a little irked it works so well, the only alternative would be for the language to have labeled blocks. but that might be too terse
nmz··on LuaJIT 3.0 proposed syntax extensions
No, not basically, it simply doesn't have them, Ternary means three as in it operates on 3 operands, and/or operates on 2 operands. They are also not equivalent.

   x = a ? b : c # x is b, same as you would if a {x=b} else {x=c}
lua and/or

    a,b,c = true, 1, 2
    x = a and b or c -- x is b


    a,b,c = true, false, 2
    x = a and b or c -- x is c
The or is dependent on its previous operand, so b will return false and skips to c, even if you meant for it to be b. you must use an if then else. However, you can have more than a ternary, if there is no need for short-circuit evaluation, as in, any of the operand is not a function CALL like c(), and you want to remain inside an expression, then you can do this instead

select (select is a native C function, this is faster than the table creation below)

    x = select(a and 1 or 2, b, c)
table creation/selection

    x = ({false,2})[a and 1 or 2]

of course, doing something like

   local x; if a then x=b else x=c end
does not look so bad
nmz··on Dav2d
https://youtu.be/nepKKz-MzFM&t=7195

If you can stand Lex Friedman for a bit, the VLC authors talk about why you use ASM for a video decoder instead of pure C or rust.

nmz··on How Monero’s proof of work works
Via comparison of the solutions, we measure objectives and actions performed and the time it requires to do them.

Objectively, Minecraft is a game, an objective of many games is to waste time, therefore this cannot be used as a measurement, but enjoyment is. as a game it fulfills its role. wastefulness could be classified in comparison to other solutions/clones, like minetest. If minetest fulfills exactly the same goals with less action as minecraft, then minecraft is in comparison wasteful.

Another measurement is mining solutions can we achieve the action of mining with less compute? can we not mine at all? does not mining achieve the same goal? if it does, then mining is objectively wasteful.

The objective of crypto is replacing fiat currency, it does not do this, therefore it is wasteful. Of course, this is only true until it does replace it, which is why we must compare, would this cryptocoin scale to the entire world? does it require more work for it to do so? if so then it is wasteful.

nmz··on How Monero’s proof of work works
Legalities aside, You can use compute how you want, that doesn't stop anybody from accurately measuring its usefulness. Given that this is an objective measurement.

I can have a computer on an endless loop without any idling, consuming as much CPU time as it can, I do not know any other classification of this action than wastefulness. crypto mining is useful of course, the end goal of mining is to get crypto, of course, there is no further goal beyond that.

nmz··on How Monero’s proof of work works
Well, it seems he wasn't, he's not gonna get upvotes though, HN is startup culture and startup culture is selling dreams until it works or you notice too late you got robbed.

And who's gonna admit that bitcoin is a ponzi scheme when all of their savings are in it? you can't, it would devalue your own money, so you're trapped, you can only further invest in it.

nmz··on How Monero’s proof of work works
So many people here know how bitcoin works but don't know that it doesn't.

It is hilarious.

nmz··on Before GitHub
It worked on ipv6 only for like a year, it seemed to be back this last month but it seems to be back down right now probably because of this whole github ragequit happening.
nmz··on Before GitHub
It has a wiki, forum and issues included. So it definitely can do that, what fossil allows by default is to not have a docs/ or bugs/todo file, because its all in the server part.
nmz··on Before GitHub
A key feature of github is you could bug report on many projects without registering an account for each one, this is not true of fossil. if fossil is to be taken seriously, then it needs a distributed auto id system, oauth or the like.
nmz··on Before GitHub
I trust more a megacorp to survive more than 5 years than a personal host, I can't tell you how many times I've gone to a personal server where something I used was hosted and its dead.
nmz··on Access to a Shared Unix Computer
Except its actually useful, unless you pay sdf for membership (it's just like $30 or so) the only commands it can run is stuff on /bin, which is their prerogative, but tilde is much better. oh and they erase your account if you don't log in, which, why would you even login if there's nothing to do
nmz··on -fbounds-safety: Enforcing bounds safety for C
To this day, FPC uses less ram than any C compiler, A good thing in today's increasingly ramless world and they've managed this with way less developers working on it than its C compiler equivalent, I can't even imagine what it would look like if they had the same amount of people working on it. C optimization tricks are hacks, the fact godbolt exists is proof that C is not meant to be optimizable at all, it is brute force witchcraft.

At a certain point though, something's gotta give, the compiler can do guesswork, but it should do no more, if you have to add more metadata then so be it it's certainly less tedious than putting pragmas and _____ everywhere, some C code just looks like the writings of an insane person.

Page 1 of 21Next →