Niklaus Wirth developed Oberon Pi, a single-board computer and operating system combination, as a modern embodiment of his minimalist computing philosophy. The system, built around a Broadcom BCM2835 SoC (the same as the original Raspberry Pi), features a compact, self-hosting Oberon compiler and operating system written entirely in Oberon. Wirth prioritized simplicity and efficiency, creating a system capable of booting and compiling its own OS and core tools in mere seconds, showcasing the power of a streamlined, tightly integrated software and hardware design. This project exemplifies Wirth's ongoing pursuit of elegant and efficient computing solutions.
This blog post, titled "Oberon Pi," details an implementation of the Oberon programming language and operating system on the Raspberry Pi single-board computer, a project undertaken by Niklaus Wirth, the creator of Oberon. The author meticulously describes the process of porting the system, highlighting the challenges and solutions encountered along the way. Wirth's primary motivation, as explained in the post, stemmed from a desire to experience the performance of his creation on more modern, readily available hardware. The Raspberry Pi, with its ARM processor and compact design, presented an ideal platform for this endeavor.
The porting process itself involved adapting the existing Oberon system, originally designed for different architectures, to the specifics of the Raspberry Pi's ARM processor. This entailed modifying the boot loader, adjusting memory management routines, and ensuring compatibility with the Pi's peripherals. The post emphasizes Wirth's commitment to maintaining the core principles of Oberon, namely simplicity, efficiency, and elegance, throughout the adaptation. He specifically mentions streamlining the graphics drivers and optimizing performance for the ARM architecture, resulting in a surprisingly responsive system given the relatively modest hardware capabilities of the Raspberry Pi at the time.
The post also touches upon the practical aspects of the project, such as using a pre-existing SD card image preparation tool for ease of deployment and utilizing a USB keyboard and mouse for interaction. Furthermore, the author highlights the successful execution of various Oberon applications, including a web browser and a text editor, demonstrating the full functionality of the ported system. This showcased not only the portability of Oberon but also its practicality as a complete operating system capable of running real-world applications on a resource-constrained device. The successful porting of Oberon to the Raspberry Pi, as documented in the post, serves as a testament to the system's enduring relevance and efficient design philosophy. It also underlines the enduring passion of its creator, Niklaus Wirth, for refining and exploring the capabilities of his creation on contemporary hardware platforms.
Summary of Comments ( 14 )
https://news.ycombinator.com/item?id=43885478
HN commenters generally praise Wirth's work on Oberon, admiring its simplicity, elegance, and efficiency. Several discuss their experiences using Oberon or similar systems, highlighting its performance and small footprint. Some express a desire for a modern, actively maintained version of the OS and language, while others reminisce about the system's impact on their own programming practices. A few comments touch on the RISC-V architecture and its suitability for running Oberon. The tight integration of hardware and software in the Oberon project is also a recurring point of interest. Some express skepticism about its practicality in the modern computing landscape, while others see its minimalist approach as a valuable counterpoint to current trends.
The Hacker News post titled "Oberon Pi" has generated a modest discussion with several interesting comments. Many of the comments revolve around the unique aspects of the Oberon System and its suitability for the Raspberry Pi.
One commenter expresses enthusiasm for the Oberon System on the Raspberry Pi, highlighting the responsiveness of the system, particularly the speed of window redraws. They suggest this performance is a result of the tight integration between the Oberon System and its hardware, contrasting it with the perceived bloat of more common desktop environments. This commenter also praises the small size of the Oberon system image, emphasizing its efficiency.
Another commenter touches on the historical significance of Niklaus Wirth and his contributions to computer science, including Pascal and Modula-2. They express interest in exploring Oberon and its unique approach to operating system design.
The topic of RISC-V is also raised, with a commenter asking about the possibility of porting the Oberon System to this architecture. This prompts a reply indicating that such a port is theoretically feasible, given the existence of RISC-V ports for other operating systems, but it would require a significant development effort. They highlight that the current implementation of Oberon is deeply intertwined with the ARM architecture of the Raspberry Pi.
A separate thread discusses the perceived steep learning curve associated with the Oberon System. A commenter mentions the challenges they faced adapting to the Oberon keyboard layout and its reliance on the mouse for text manipulation. This comment prompts a discussion about the philosophy behind Oberon's design choices, with some defending its unique approach and others acknowledging its potential drawbacks for users accustomed to more conventional operating systems.
Finally, there's a brief exchange about licensing and availability. One commenter mentions seeking clarification regarding the system's license and whether it is open-source. This leads to a reply pointing to resources where more information about Oberon's licensing can be found.
Overall, the comments reflect a mixture of appreciation for the Oberon System's minimalist design and performance, curiosity about its historical context, and pragmatic concerns about its learning curve and suitability for everyday use.