4 ms·
As expected, most of the features were rare on home computers at the time, but have become ubiquitous (or unnecessary) on modern computers. HOWEVER, the `Dataty
by hvs 6y ago
As expected, most of the features were rare on home computers at the time, but have become ubiquitous (or unnecessary) on modern computers. HOWEVER, the `Datatypes` feature is really cool and would actually be a nice feature that still doesn't exist in Windows, macOS, or Linux.
https://wiki.amigaos.net/wiki/Datatypes_Library https://wiki.amigaos.net/wiki/Datatypes_Library
- pjmlp 6y agoIt does exist in Windows, https://docs.microsoft.com/en-us/windows/win32/wic/-wic-lh https://docs.microsoft.com/en-us/windows/win32/wic/-wic-lh https://docs.microsoft.com/en-us/previous-versions//dd443207(v=vs.85) https://docs.microsoft.com/en-us/previous-versions//dd443207... https://docs.microsoft.com/en-us/windows/win32/shell/customizing-file-types-bumper https://docs.microsoft.com/en-us/windows/win32/shell/customi... and in macOS, https://developer.apple.com/library/archive/documentation/GraphicsImaging/Conceptual/ImageUnitTutorial/Overview/Overview.html#//apple_ref/doc/uid/TP40004531-CH6-SW1 https://developer.apple.com/library/archive/documentation/Gr... https://developer.apple.com/library/archive/documentation/MusicAudio/Conceptual/CoreAudioOverview/ARoadmaptoCommonTasks/ARoadmaptoCommonTasks.html#//apple_ref/doc/uid/TP40003577-CH6-SW15 https://developer.apple.com/library/archive/documentation/Mu... Although, yes I do concede it is more complex to implement, the way to do it depends on what kind of data type we are talking about, and it only works properly if the applications actually make use of the OS frameworks instead of doing their own thing. And as expected with the GNU/Linux "desktop", nothing does exist that comes close to it.
- richardjdare 6y agoWow, in 24 years as a Windows user I never knew about Windows Imaging Components, nor did I come across Image Units in the 4 years or so I was doing iOS dev on a Mac. I've never seen an end-user application that used them, or told me as a user that I could expand its functionality with them. In contrast, on the Amiga, I knew about Datatypes out of the box as they were written up in the user manual, and pretty much the whole developer community got on board with them. If an app used DataTypes it was a feature that the user knew about. The Amiga community seemed much more unified than today with respect to using all the latest features of the OS. Even the smallest public domain utilities provided AREXX ports so the user could script them.
- paulryanrogers 6y agoUnity among a much smaller group is easier and more likely than a larger group
- vidarh 6y agoThat seems limited to specific types of media, though. Datatypes is a general purpose framework for creating a hierarchy of parsers for file formats. It can be images or sound, but also text, or anything else. E.g. here's a small sample of datatypes from Aminet, excluding anything sound and graphics related: * Datatypes for transparent decompression * Datatypes for syntax highlighting * Datatypes for parsing document formats (word etc.) * Assorted hypertext datatypes * Assorted datatypes for showing debug information and structure of various binary formats, like executables.
- pjmlp 6y agoI just didn't want to list everything, hence why I added the remark "the way to do it depends on what kind of data type we are talking about", and yes I do not mean it was as exhaustive as DataTypes, as I don't know all use cases.
- zimpenfish 6y agoI'm possibly missing something but that Image Unit thing seems to be a filter rather than a decoder? The Core Audio stuff is definitely datatypes though - converting things to a common backend format for apps to use.
- tyingq 6y agoI'd always hoped that extended attributes (xattr) would be used for something like that. Nobody seems to use them, though, since they are optional and no standard naming scheme exists.
- mrob 6y agoMy favorite feature from the past is RISC OS's "adjust" feature, bound to the third mouse button. This had three functions: Selecting menu items without closing the menu. Toggling selection status of selectable icons (same as control+click in modern GUIs). Changing the length of text selections (same as shift+click in modern GUIs). Sadly, modern GUIs seem to limit themselves to two mouse buttons. Adding "adjust" would improve productivity if you had a three button mouse, and you could ignore it if you lacked mouse buttons and not be any worse off. Maybe there are other good features from early OSs we have forgotten.
- pjc50 6y agoThe Windows equivalent is/was COM and in particlar OLE ("object linking and embedding"). With appropriate DLLs you can make a new file format and drag-and-drop a file into Word and open it inside Word. The peak of this was ActiveX; in Microsoft's world around 2000, they really wanted you to be able to embed controls and programs in web pages and then put those web pages everywhere, including on the desktop background ("active desktop"). The problem of running third-party code inside your application is not just security but it tends to crash bady and put the name of the hosting application on the crash. Eventually Microsoft got so fed up with that, especially in the kernel, they built a system where video drivers could crash and restart while the OS kept on trucking, and use of COM has faded.
- toyg 6y ago> The Windows equivalent is/was COM and in particlar OLE [...] it tends to crash badly The mistake was implementing this stuff in C++, which is way too fragile on its own. Had they built a separate VM to manage requests for these objects, it would have been no problem: VM crashes, host app just restarts it. But Java did not exist yet and VMs were not really a thing, resources were too scarce. I do think the ideas behind COM/OLE were pretty good, unfortunately real development on desktop OSes basically stopped mid-'00s so we might never know what it could have been.
- pjmlp 6y agoUWP is COM + .NET type system, and the basis of modern stuff like WinUI and React Native on Windows.
- pjmlp 6y agoFor those not following up with Windows development, all major new Windows APIS since XP are ActiveX aka COM aka WinRT aka UWP. COM is pretty much alive and was modernised with .NET type system.
- smallstepforman 6y agoBeOS (and by extension Haiku) has Translators: https://www.haiku-os.org/legacy-docs/bebook/TheTranslationKit_Introduction.html https://www.haiku-os.org/legacy-docs/bebook/TheTranslationKi... Supports image, text, sound, streaming, etc.