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

In ancient China, the imperial year designations were usually changed in the second year following the coronation of a new emperor, thus preventing the occurrence of two imperial year designations in the same year. Japan seems to have chosen to change the imperial year designation in the same year because of the faster flow of information in modern times. I still think it would be more convenient to change it the second year.


Japan has been using their unique system for over 1000 years. It's not a recent change. They never really cared for the Confucian standards of Chinese emperors. (If they did, they wouldn't have called their own monarch an emperor!)

I say Confucian standards, because the Chinese rule of changing the imperial year designation in the second year of a new emperor seems to have been more about propriety and respect for the late emperor than it was about convenience. A number of emperors actually changed the year designation immediately upon ascending to the throne, which was seen as an attempt to discredit their predecessor.


I've recently been doing something similar: I have a UbiSurfer 9, a netbook using an S3C2416 chip as its CPU, running the ARMv5 instruction set, and with 128MB of DDR2 memory. Its original operating system is WinCE 6.0, and I'm trying to run Linux on it. The good news is that Debian still maintains the armel architecture, so we potentially have a large number of userspace programs available. The bad news is there's no suitable kernel and bootloader. Fortunately, a friend helped me write a bootloader and modified the kernel source code to make it work. Running a Debian system is possible, but quite slow, so I created a minimal system with only Busybox[1], and it works perfectly.

[1]: https://github.com/chirsz-ever/busybox-linux

I'm still exploring this; related information is in this repository, written in Chinese:

https://github.com/chirsz-ever/ubisurfer9


The behavior of C macros is actually described by a piece of pseudocode from Dave Prosser and it is not in the standard:

* https://www.spinellis.gr/blog/20060626/

* https://www.spinellis.gr/pubs/jrnl/2006-DDJ-Finessing/html/S...

* https://gcc.gnu.org/legacy-ml/gcc-prs/2001-q1/msg00495.html


This is the best explanation I've seen so far:

https://marc.info/?l=boost&m=118835769257658&w=2


This needs to be framed somewhere, very lucid explanation


Wow, I'm not sure I've ever seen this (or if I did, it was 20 years ago).

And I was definitely looking around for this kind of history when I was searching around when writing. Perhaps my google skills have decayed... or google... or both!

Thanks very much.


Oh, are you L33 T.?


If my google fu is that bad, it's pretty much impossible to be.


Oh, I understood you to be saying you'd written this article.


Honestly, it feels like something like this should have been put in the standard instead of all the English prose that ended in the section about the preprocessor expansion. Yeah, it's not pretty, but at least it requires way less skill in hermeneutics to understand correctly.


Thank you very much for providing these links!


Demonstration video on a EL display terminal from the 1980s: https://www.bilibili.com/video/BV1cU4y1A7ud


It would be even better if this easter egg appeared on line 6502!


I guess it is inspired by De Bruijn index[1].

[^1]: https://en.wikipedia.org/wiki/De_Bruijn_index


You can use hexadecimal floating-point literal format that introduced in the C language since C99[^1].

[^1]: https://cppreference.com/w/c/language/floating_constant.html

For example, `0x1.2p3` represents `9.0`.


You could use Deno with WebGPU.


In fact, "dialect" is a political definition. Using Europe as an analogy, it is conceivable that if Rome had not disappeared, today's French language, Italian language and Spanish language would be considered dialects of Latin language (English is not included, because it is a Germanic language). With a few exceptions, the dialects used by the Chinese are descendants of Middle Chinese and have been influenced by the official dialect, so they are all called "Chinese dialects".


A script that can be run as JavaScript or Lua. When run as Lua, it outputs "lua". When run as JavaScript, it outputs "js".


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

Search: