Erik Engheim
2 min readMar 8, 2021

--

No XAML is kind of the inverse of what I propose. With XAML you have an App which contains a library with code that knows how to create widgets.

This library reads a XAML file to create a GUI. That is a widely used model which I would prefer to avoid.

The problem with this model of GUI development is that every langauge which wishes to implement a XAML based GUI would need to recreate a XAML widget library which can read a XAML definition and produce the GUI.

That solves no portability problem. No, what I am talking about is that the OS itself knows how to render something akin to XAML. An App should not need to link in any kind of XAML type of library. All it should need to do is to push XAML like text to a special port, file or whatever in the OS, to create a GUI. Thus any application that knows how to do text based communication can produce a GUI.

Otherwise you just have the problem we have today with the need to make complex bindings in every possible language to every possible GUI toolkit.

What I want is a minimal goto solution that will always work for any language without anybody needing to create bindings.

These thoughts where inspired by how Web browsers work and how Plan9 and Inferno worked. To show a GUI in a web browser your language only need to be able to read and write text. That is a nice attribute IMHO.

The .NET world tends to be the opposite of this, prefering rich binary objects. That is great within the .NET ecosystem, but shuts out pretty much all other languages unless they get reimplemented on top of the CLR.

--

--

Erik Engheim
Erik Engheim

Written by Erik Engheim

Geek dad, living in Oslo, Norway with passion for UX, Julia programming, science, teaching, reading and writing.

Responses (1)