Live data from Hacker News

Show HN: My hobby OS that runs Minecraft

astral-os.org

11–20 of 39 posts

Re: Show HN: My hobby OS that runs Minecraft

#13
> due to the mlibc code using the char value from the format string, the values above 127 passed by OpenJDK would be handled as negative integers

It's 2025 and I still don't get why Java needed signed chars and bytes. Why completely disregard the convenience of using them for array access/etc..

Re: Show HN: My hobby OS that runs Minecraft

#15
post #13

> due to the mlibc code using the char value from the format string, the values above 127 passed by OpenJDK would be handled as negative integers It's 2025 and I still don't get why Java needed signed chars and bytes. Why completely disregard the convenience of using them for array access/etc..

[flagged]

Re: Show HN: My hobby OS that runs Minecraft

#16
post #13

> due to the mlibc code using the char value from the format string, the values above 127 passed by OpenJDK would be handled as negative integers It's 2025 and I still don't get why Java needed signed chars and bytes. Why completely disregard the convenience of using them for array access/etc..

Java creators tried to avoid giving developers any sharp edges. Interactions between signed and unsigned integers can be surprising, so they disallowed unsigned integers.

Of course, not having access to unsigned quantities makes interaction with other programs difficult :(

Re: Show HN: My hobby OS that runs Minecraft

#17
post #16
post #13

> due to the mlibc code using the char value from the format string, the values above 127 passed by OpenJDK would be handled as negative integers It's 2025 and I still don't get why Java needed signed chars and bytes. Why completely disregard the convenience of using them for array access/etc..

Java creators tried to avoid giving developers any sharp edges. Interactions between signed and unsigned integers can be surprising, so they disallowed unsigned integers. Of course, not having access to unsigned quantities makes interaction with other programs difficult :(

The one that annoys me is that people think implicit type conversions are dangerous for some reason, so they also disallowed `char a = 10; short b = a;` without writing a cast even though this makes no sense.

Re: Show HN: My hobby OS that runs Minecraft

#18
post #13

> due to the mlibc code using the char value from the format string, the values above 127 passed by OpenJDK would be handled as negative integers It's 2025 and I still don't get why Java needed signed chars and bytes. Why completely disregard the convenience of using them for array access/etc..

[flagged]

Look up James Gosling and get back to us. I'd especially be interested in hearing how your undoubtedly superior experience would result in a more successful language. I'm sure you can vibe code something up.

Re: Show HN: My hobby OS that runs Minecraft

#19
post #16

Earlier quoted context omitted.

Java creators tried to avoid giving developers any sharp edges. Interactions between signed and unsigned integers can be surprising, so they disallowed unsigned integers. Of course, not having access to unsigned quantities makes interaction with other programs difficult :(

The one that annoys me is that people think implicit type conversions are dangerous for some reason, so they also disallowed `char a = 10; short b = a;` without writing a cast even though this makes no sense.

It feels like "sharp edges" often means "I once had a horrible bug due to accidentally misusing this". But if you cut features based on that definition, you'd soon have an empty programming language.
Post reply on HN