On Thu, 12 Aug 2021 12:09:58 -0300, Hope Rouselle <hrouse...@jevedi.com> declaimed the following:
>How is it possible that Microsoft would take part of the code of OS/2? >Did IBM just hand it to them? > Because IBM subcontracted (IE: "paid") M$ to create an OS with XYZ features for their latest PC (under supervision of IBM design team).. https://en.wikipedia.org/wiki/OS/2 IBM owned the rights to OS/2, but it was written, for the most part, by M$ in parallel with M$ own "Windows" 16-bit OS. > >Yeah, that's kinda nice. Isn't that a UNIX design? A file is a >sequence of bytes? Users decide what to put in them? So OS/2 was >taking advantage of that to integrate it well with the system. Windows >was doing the same, but integrating the system with files in odd ways >--- such as a registry record to inform the system which programs open >which files? (That does sound more messy.) > Not really -- Have you looked at what a hash Linux graphical interfaces require to associate file types with how to open said files? On my Debian (VirtualBox) there is: wulfraed@debian:~$ cat ~/.config/mimeapps.list [Added Associations] text/html=firefox-esr.desktop; text/plain=gvim.desktop; x-scheme-handler/http=exo-web-browser.desktop x-scheme-handler/https=exo-web-browser.desktop x-scheme-handler/mailto=exo-mail-reader.desktop application/xml=gvim.desktop; text/x-scheme=gvim.desktop; application/vnd.kde.kxmlguirc=gvim.desktop; text/x-python=gvim.desktop; application/x-shellscript=gvim.desktop; [Default Applications] wulfraed@debian:~$ ... and all these wulfraed@debian:~$ ls /usr/share/applications atril.desktop panel-desktop-handler.desktop claws-mail.desktop panel-preferences.desktop ... debian-uxterm.desktop python3.7.desktop ... org.thonny.Thonny.desktop xsane.desktop org.xfce.Parole.desktop wulfraed@debian:~$ wulfraed@debian:~$ cat /usr/share/applications/python3.7.desktop [Desktop Entry] Name=Python (v3.7) Comment=Python Interpreter (v3.7) Exec=/usr/bin/python3.7 Icon=/usr/share/pixmaps/python3.7.xpm Terminal=true Type=Application Categories=Development; StartupNotify=true NoDisplay=true wulfraed@debian:~$ wulfraed@debian:~$ cat /etc/mime.types ############################################################################### # # MIME media types and the extensions that represent them. # # The format of this file is a media type on the left and zero or more # filename extensions on the right. Programs using this file will map # files ending with those extensions to the associated type. # # This file is part of the "mime-support" package. Please report a bug using # the "reportbug" command of the "reportbug" package if you would like new # types or extensions to be added. # # The reason that all types are managed by the mime-support package instead # allowing individual packages to install types in much the same way as they # add entries in to the mailcap file is so these types can be referenced by # other programs (such as a web server) even if the specific support package # for that type is not installed. # # Users can add their own types if they wish by creating a ".mime.types" # file in their home directory. Definitions included there will take # precedence over those listed here. # ############################################################################### application/activemessage application/andrew-inset ez application/annodex anx application/applefile application/atom+xml atom ... application/x-python-code pyc pyo ... text/x-python py ... wulfraed@debian:~$ cat /usr/share/applications/gvim.desktop [Desktop Entry] Name=gVim GenericName=Text Editor ... TryExec=gvim Exec=gvim -f %F Terminal=false Type=Application Keywords=Text;editor; Icon=gvim Categories=Utility;TextEditor;Development; StartupNotify=true MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;text/x-python;text/x-python3 wulfraed@debian:~$ ALL of that is needed to link a Python source code file (.py) to GVIM editor, when clicked on from the desktop. >UNIX's execve() is able to read the first line of an executable and >invoke its interpreter. I guess OS/2 was doing precisely that in a >different way? > No... the UNIX/Linux shebang (and binary file equivalent magic-number) is a deliberately written part of a file's "data" content (granted, the linker writes it for executable binaries). The description for OS/2 is close to the little used Windows STREAMS feature. https://docs.microsoft.com/en-us/windows/win32/fileio/file-streams https://docs.microsoft.com/en-us/windows/win32/fileio/using-streams > >I cannot imagine. I always wondered what REXX was about --- I saw >programs sometimes written in some website whose name is something like >Rosetta Code. REXX looked so weird. (``Who would program in that?'') REXX was created by an IBM researcher who wanted something better than mainframe JCL (Job Control Language). https://en.wikipedia.org/wiki/Rexx >Yeah, REXX looks horrible at first. But arbitrary-precision is >definitely very attractive. I never liked to deal with floating-point. > Unfortunately, the most commonly available is Regina REXX, and to my knowledge it did not implement the arbitrary precision feature. Softrware emulation of multprecision floating point is slooooooooooooooooooowwww! -- Wulfraed Dennis Lee Bieber AF6VN wlfr...@ix.netcom.com http://wlfraed.microdiversity.freeddns.org/ -- https://mail.python.org/mailman/listinfo/python-list