Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Any plan to reimplement Homebrew in Swift? #9

Open
purpleblues opened this issue Feb 14, 2019 · 4 comments
Open

Any plan to reimplement Homebrew in Swift? #9

purpleblues opened this issue Feb 14, 2019 · 4 comments
Labels

Comments

@purpleblues
Copy link

No description provided.

@mxcl
Copy link
Owner

mxcl commented Feb 14, 2019

If I had the impetus to rebuild Homebrew, I would do it in Swift. I originally chose Ruby because:

  1. I wanted it to just work after a git clone on macOS, a vanilla install of macOS came with Ruby, so a clone with all the files pre-arranged in the right shape was a working brew installation.
  2. I wanted a minimal fuss programming language that would encourage contribution. This in 2009 meant a scripting language since there was no minimal fuss “real” languages due to the language complexity and the nightmare that was build systems.

№1 would not be as easy with Swift, but anyway, we eventually made an installation script for brew, and nowadays I doubt you can just clone brew, the current maintainers don't echo all my initial desires for the product. Maybe it doesn't matter that much, but I really wanted people to realize brew cared about you knowing what was going on and what brew did to your computer.

№1 could still be done though, since Swift can be scripted. It would have to do a build as part of the initial run, but it's the sort of thing I'd consider worth the time to implement.

Swift satisfies №2., it needs a build system still, but SwiftPM just works, so it's fine. The language though is very satisfying. Ruby is beautiful and I still love it, but Swift is elegant and safe, so very safe. I am a huge believer in quality, robust software for my users. Nothing makes me happier than to imagine that my software is working for my users. Swift makes it possible to write code that just works without crashes or bugs.

@mxcl mxcl added the answered label Feb 15, 2019
@nidegen
Copy link

nidegen commented Aug 13, 2019

any changes to the impetus now that Catalina will drop ruby?😃

@mxcl
Copy link
Owner

mxcl commented Aug 13, 2019

If I suddenly got super rich and didn't have to work for money, I would yes.

@borud
Copy link

borud commented Aug 30, 2021

I can understand the original decision to go with a scripting language. And 10 years ago I would have made that choice myself. In the mean time I've realized that depending on any scripting language that comes preinstalled with the OS is a disaster waiting to happen. It will always be a bit older - and in the case of Python: so old to the point of being more of a liability than an advantage. Ruby might be a bit better, but you're still at the mercy of Apple.

I'm not very familiar with Swift myself. I've just spent a few weekends dabbling with it, but I am assuming it is easy to produce binaries for all platforms?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants