Hacker News new | ask | show | jobs
by jsingleton 3506 days ago
Nice work. It will be great to use ASP.NET Core on a Pi with official support.

I tried .NET out on the Pi using Mono, years ago when it was relatively new but after the software floating point OS was deprecated. The weird hardware floating point CPU made it pretty much unusable. Even simple things like DateTime objects would fail to work correctly.

Similar issues were in Java IIRC but they had a special build of that. I think Sony had a fixed build of Mono but I haven't tried it. It will be good to have official .NET support outside of Win 10 IoT.

1 comments

Interesting, imho Java makes no guarantees about FP portability if you don't enforce it with the strictfp keyword, you'd get 80bit on x87 and 64bit on other architectures.

Why would this cause failing tests though? Does that mean they relied on extended precision?

Not sure of the specifics. Java SE is now included with the official OS (Raspbian/NOOBS) [0]. When the Pi first launched you had to use the soft FP version of the OS or Java wouldn't work but this had a significant performance penalty. They added official support for hard FP a few years ago [1]. I believe the .NET issue was similar in that the VM (CLR i.e. JVM) didn't support the hard FP version of the OS. FP on the Pi processor is a bit weird and a non-standard implementation from what I've read.

P.S. In researching this post I noticed that one of my projects (a globe wake lamp) has been included in the latest project book (p108) [2]. First I've heard of this! This is actually an old version and there is a newer write-up on my blog [3].

[0]: https://www.raspberrypi.org/downloads/noobs/

[1]: https://www.raspberrypi.org/blog/oracle-java-on-raspberry-pi...

[2]: https://www.raspberrypi.org/magpi-issues/Projects_Book_v2.pd... [pdf]

[3]: https://unop.uk/pi-glowbe-mark-2/