I can definitely see where you're coming from with that.
...Call me crazy, but I will always continue to use "old-school" programming languages, simply due to their extremely established nature, and the fact that these "old" languages (C, C++, mainly) will always be relevant. I don't want to write in some "more user-friendly" language, and hide from all the nitty-gritty that most people don't want to deal with. I like the challenges that come with "old-school", lower level programming languages, and I believe learning how to work with them makes you a much better programmer, even when using higher-level languages.
Lastly, I just want to thank you for your support, I really appreciate it. While I may not be into the most "cutting edge" in programming, there is definitely place for those who are, like yourself, and I definitely see and accept that. Thanks for all the work you've done, and I look forward to trying CloneToolX when it's all finished.
You are spot on about Objective-C. If I remember things correctly, when Steve Jobs first started NeXT, he wanted to make a Mac clone. I don't know how publicized this became. I remember reading it in MacWorld magazine, when we had actually computer magazines like Compute! Apple as I recall denied NeXT from doing this. So Jobs decided to create a whole new operating system. The NeXT computers were all black. One was in a cube shape another was a pizza box. The keyboards and mouse were black and Jobs even had the Mac keyboard layout on NeXT machines (not the PC layout). NeXT also had the very first web browser and I believe it was the very computer on the Internet.
Imagine if Apple never purchased NeXT. There would be no Apple today. We would not have FreeBSD / Darwin under the hood. Man I haven't run Darwin by itself in ages. The first CloneTool ran off Darwin a decade ago during my Hackintosh days.
Apple later tried to replace Mac OS 9 on their own with several code name operating systems. Copland sticks in my brain, but there were others. If an app crashed in Mac OS 9, it used crashed the whole system. After many failures, Apple decided to purchase NeXT and Steve Jobs became interim CEO and later became CEO. Jobs was back at the helm and Apple kept many NeXT things like you said. We used to have .NIB files that should for NeXT Interface Builder. IB has a huge role in Xcode, 20+ years later. IB has its own App at one time. Also NS prefixed classes stand for NeXT Step, the name of NeXT's operating system, which I think you also mentioned. There was also Open Step that I think ran on ordinary PCs.
NeXT marketed themselves with schools and research firms. I don't know how many boxes they actually sold. It was a failure as far a growth under NeXT, a success as far as becoming Mac OS X and iOS.
You are 100% correct about Objective-C's legacy. My only beef with it was if I put it down for an extensive period of time, it would take me a day to relearn things. But that could be true for almost any computer language. I also come heavily from a scripting background starting with AppleScript and before that BASIC, HyperCard and other some scripting languages that were in specialized IDEs like Gary Kitchens Game-Maker for the C-64. So anything that resembles a scripting language is easier for me to learn. At my day job, it's all JavaScript. Like AppleScript, JS can be used to automate Macs as well.
Swift does have some major short comings. You can write it like a JavaScript app and not use any Classes, Enums, Structs or any higher level stuff. And that came be bad as Apple does not structure the Swift templates very well and you can literally bind your logic to the View Controllers which is a lot like AngularJS 1.x. In order to follow MVC and OOP practices, you basically have to engineer that yourself. It's not hard, but Apple leads a novice programmer down a narrow procedural path and even I cling to it when starting a new Apple and I have to look at my previous projects on how to make it more OOP and less procedural. OOP can be done in Swift and when you get that far with it, it starts to resemble Java, and not JavaScript.
At my day job we use JavaScript client side and ColdFusion Script / CFScript server side and all the engineers here don't like Swift at all. I did a POC for it and al they saw was a Java like syntax. They hated that you did not have to use Semi-Colons. They are very much clinging to CFScript which is a dead language and its very expensive to run a business from. That is one thing I love about Swift on the server side. It's free unlike Java is today. Swift runs extremely well in the command line for server side apps. Perfect is killer with it and runs faster than Node.js. Perfect uses C for its processor intensive stuff like HTTP, and HTTPs / SSL and the rest of it is in Swift. It's has a pretty good syntax for V3. V4 uses SwiftNeo and that's much more lower level and is harder to use. I haven't adopted Perfect's V4 alpha yet because V3 runs so well.
I am going to look more into the way linking of Apple's Swift libraries work and I may be able to make then static or what Jackluke suggested and link them to my app. If I can take what's needed any make it part of the app and get the work, then the base system would not need to be patched up nearly as much. If that doesn't work, plan B would be to whittle down the Swift libraries and only include what's needed keeping the base system small enough to fit on a CD. If I cannot get it that small. It will use about 1-2GB tops. And CloneToolX will be able to clone its startup disk to a drive and maybe burn a CD.
I can also start up a new project, and start porting over code to Objective-C. It will be educational experience. And I can use that as an Example in my portfolio.
I do use Objective-C objects still for many things with Swift. NSDictionary in my opinion has more control than Dictionary. Over time Apple is making things easier to use native Swift objects. And I am sure Apple will start cleaning up the mess they made with the current Swift Libs. Swift is constantly moving forward. This can be seen as progress, but I can be a headache and with Apple auto-updating many iPhones, if you are using Swift, you usually have to get on board pretty quickly with the next version and this can be scene as a bad thing. I am trying to stick to iOS 12 right now because those apps work in iOS 12 and later, but Swift 5 will be used. I did have some problems with some objects in Swift 5 and had to fix one line in some open source code from Perfect to stop from crashing.
It is harder in Swift to keep things backward compatible. I think I am able to go as far back as macOS 10.10, but I will need to test those OS'. It is going to be fun tracking down some installer apps. Apple makes them harder download previous versions of macOS / Mac OS X. Will see if any of my old Macs can still boot up to older OS', so I can download them for testing.
I also have Anka Build macOS VMs that I can test things out with. For full disclosure, I am an official Anka Build advocate.