Smalltalk with GUI on Mac OS X Lion (10.7) - macos

I need some smalltalk with GUI for my homework, and I'm running Mac OS X Lion (10.7).
I've seen that unix users usually use GNU Smalltalk and GTK+.
I've tried to install them from different versions of sources and all of them give some errors.
Then I've used MacPorts, but that installation breaks GTK+ bindings for gst.
Finally I've tried to install it using fing package manager (because GNU states that I should install everything nice) but there is no smalltalk package for 10.7 OS (though there is for previous ones).
Is there some way to use smalltalk under Mac OS Lion, or should I for example run Ubuntu on virtual machine?

You could also try Pharo, which is a fork of Squeak.
http://www.pharo-project.org/home

Uko,
Have you looked at Squeak? Its an open source version of Smalltalk which is really fun to use and is supported on most platforms.
See:
http://squeak.org/
You will need a specific SqueakVM for the Mac:
http://www.squeakvm.org/mac/
Let me know if you have any further questions...

Squeak or Pharo are real Smalltalks (unlike GNU). This means they have a Smalltalk specific IDE. IDEs were invented by the creators of Smalltalk, so whatever you think you know about IDEs, you probably don't.
My video series, Squeak from the very start, shows how to download the latest Squeak Smalltalk and get started with it. Pharo isn't any harder to install either.
http://www.youtube.com/playlist?list=PL6601A198DF14788D&feature=view_all

You can also give the Personal Use version of VisualWorks a spin:
http://www.cincomsmalltalk.com/main/developer-community/trying-cincom-smalltalk/try-cincom-smalltalk/
I'm assuming you'll get a 7.8(.1?) version there. The OSX skin is pretty dated. I promise it's getting better. Look for 7.9 soon now.

Related

Installing binaries for older MacOS versions with Homebrew

I'm building my open-source game for MacOS in AppVeyor CI (which uses Catalina). I'm installing compiler and dependencies with brew and package it in .app format, and everything seems to work fine, except that when trying to launch resulting application in older MacOS versions (I only have High Sierra available for experimentation) I'm getting errors about newer MacOS version. I suppose if I can force Homebrew to install binaries for older MacOS versions, this would fix the problem, but how exactly can I do that?
I'm aware there's ability to build software from sources in brew, but I don't want to go that route considering I want my CI to be fast.
EDIT: To clarify, I'm trying to fix the following error: "You can't use this version of the application MyCoolGame with this version of macOS. You have macOS 10.13.6. The application requires macOS 10.15 or later."
Since time immemorial†, there have been two package managers for Macintosh computers: Homebrew and MacPorts. These projects are different in a variety of ways that some folks care about very deeply, and lots of people have opinions about which package manager is better. Once they all get tired of arguing, however, they usually acknowledge that Homebrew and MacPorts do basically the same thing, and return to more important topics like why tabs are better than spaces.
There is one particular difference between Homebrew and MacPorts which may interest you:
Homebrew supports the three most recent versions of macOS, which as of this writing is Monterrey, Ventura, and Big Sur. Homebrew can sometimes be installed on older operating systems too, but Homebrew's developers make zero effort to support these systems. The result is lots of breakage.
MacPorts also supports the three most recent versions of macOS. However, it also supports older versions of macOS on a "best-effort" basis. Notably, "best-effort" in this context is a term used to mean "a lot of f*cking effort." MacPorts actively maintains bespoke patches, hardware buildbots, and compatibility libraries for every version of macOS going back to OS X Tiger. (OS X Tiger, for those who don't know, is an operating system released in 2005. And 2005, for those who don't know, is a long forgotten age when phones were actually used to make phone calls, Zoom was just a TV series on PBS Kids, and Mug Cake hadn't been invented yet).
You stand at a crossroads. You have two choices. Do you:
Continue using Homebrew, with full knowledge that most packages will be broken and anything that is not broken will likely become broken in due course and at the least opportune time.
Use MacPorts, which actively supports your operating system and will continue to do so for the foreseeable future.
Choose wisely.
† aka the year of our lord 2009. That's basically the same thing, right?

How to install Haskell on Mac

I am trying to install Haskell on Mac, and doing it as instructed on Haskell site Haskell site.
When I run the script from above website on terminal, it says to install "ghcup", "ghc" and "cabal". However, it seems that it installs "ghcup" successfully, but an error occurs when it comes to install "ghc".
Error: ghc: unknown version :lion
how can I fix this? or, is there another way to install Haskell on Mac?
(I saw similar posts but they are too old)
You seem to be running macOS Lion, which is ancient, insecure, and no longer supported by Apple. As such, most modern software isn't tested for compatibility with it anymore, and a lot of it won't work. Upgrading to a modern version of macOS such as Catalina will make it work.
There are different options to get a working Haskell development environment on your Mac. The most popular seem to be
Haskell Platform
Install via homebrew
The Haskell Tool Stack
Of course, you can also install most tools individually by hand or compile everything from source.
Together with the type of installation, you need to choose how to build your projects: Using Cabal or Stack.
My personal preferences as a beginner is Stack, because (a) the entire Haskell tool stack is installed locally for each project, so you don't get into problems with conflicting versions of certain tools; (b) dependencies are curated, such that you do not need to deal with incompatible versions of libraries. From a beginner's perspective, it is very helpful that I can focus on actual development work and less on infrastructure and tooling.

Program that uses Mac status bar

I'm looking to make a program that would have an icon and drop-down menu on the status bar. Are there any resources on how to do this? I'd prefer building it in Ruby, but I also wouldn't mind doing it in Python, C++ or Bash (if possible).
Take a look at MacRuby, RubyMotion, or PyObjC.
For programming in Ruby, MacRuby is the open source version and precursor to RubyMotion (which recently added support for Mac development).
For programming in Python, take a look at PyObjC. PyObjC is a wrapper while MacRuby and RubyMotion are built directly on top of the objective-c runtime, so they will be more performant than PyObjC.
Have you looked at MacRuby => http://macruby.org? Maybe something like this would do what you want: https://gist.github.com/245402/f4a7bc1c7b32bd3975d0203f22cd7a920af2fe56
This may have appeared only in the time since the previous answers: As a Python option, have a look at Jared Suttles's rumps; the name signifies "Ridiculously Uncomplicated Mac os x Python Statusbar."

Mac OS X Development

I would love to begin developing applications for the MAC OS X, although I have to idea where to start.
Problem: I currently do not, and cannot afford a new MAC OS X-based computer.
Solution: A very good friend loves trying out things that I've made for Windows, and also owns a MAC OS X computer, and is willing to test these new creations.
Now I am faced with another problem. I don't know which language to use to develop these apps in. I am a .NET Developer and seeing as though I can only use a Windows based PC to develop MAC apps, where should I start?
I've heard of Mono, and have used it on Linux before, would Mono be an option for MAC development on a Windows based computer, too? Are there any other ways around this?
Any help is appreciated. :)
Thank you
jt
You could start with a cross platform language like Java, Python or Ruby. The applications you write this way either work immediately on OSX or need only little adjustments. I work with Java to develop for OSX, windows and linux. Java is not too different from C# and comes completely free. With some extra work Java applications can look like native OSX or windows or linux.
But this way you don't get any of the special features of OSX. For these you do need the OSX environment objective-c and cocoa.
If you don't want your applications to be total shite that makes me cry, then buy a Mac and start reading and learning about what makes a high quality Mac OS X application. The standards for quality are much higher on this side of the river, you'll soon see.
You need to have MacOS X and use Xcode with Objective C; this is the native environment, and you won't be able to appreciate MacOS X UX without using it. You may be able to install MacOS X on a PC, although this isn't approved or supported by Apple.
Just don't take half measures, it isn't worth it.
Sorry for this late answer, but I am having the same problem.
After looking around, I have seen people be able to install OS X 10.6 (Snow Leopard) on their Windows 7 computers using a virtual machine. Maybe this website from lifehacker may help:
http://lifehacker.com/5583650/run-mac-os-x-in-virtualbox-on-windows
These people tell you how to install Snow Leopard. You may not install Xcode 4.33 on Snow Leopard, but it's worth a try. There also may be places where they show you how to install Lion itself onto their PC's, but Lifehacker has the most straightforward tutorials.
Hope this helps!
All the other answers are good. You need OS X and XCode. Since,at the moment you can't afford a Mac machine and seeing how the language of choice for both OS X and iOS is objective-c, you could start with learning C programming on windows. Objective-C is a superset of C. Knowing C Langauge will speed up your learning curve once you can afford to buy Mac. (or you might decide that C pointers are just too hard and save some money)
Also google how to create a hackintosh. I've seen couple articles on lifehacker on how to do it. It's not ideal but perhaps it would allow you to run XCode and create apps for iPhone or iPad.

Developing for Mac OS X, on Windows?

Well, simple situation. I happen to be a software engineer who uses mostly Delphi and C# for software development. Delphi is great for desktop applications while C# is ideal combined with ASP.NET for web applications. However, I am considering to teach myself more about software development for the Mac. Xcode and Cocoa would be the environments to start with. Learning new languages is no problem for me!
However, before starting to write code on a Mac, I first need to buy one and they're reasonable expensive so buying one is a decision that will take me a few months before I know which one I need. So, to help me right now, I would like to know the possibilities that I have to learn more about Mac development without the need for a Mac!
For example, does OS X work in a VMWare environment? Are the development tools also available for Windows? Is there a clear API overview of the OS X libraries?
Or should I first buy a Mac, play with it for a few weeks and then decide on how to develop software for it? In other words, should I start spending now, or in a few months? :-)
Perhaps a macmini would be the best bet but failing that:
MacOSX in VMWare: http://wiki.osx86project.org/wiki/index.php/Vmware_how_to
Development tools for windows? I'd stick to XCode as it can compile multi-binary apps.
Here's the clearest overview I can think of: http://developer.apple.com/referencelibrary/MacOSX/index.html
Hope this helps!
Mac OS X works in a VMWare...
Unfortunately XCode works only on Mac OS...
There are versions of Max OS, which runs on x86 machines. You can avoid buying a Mac PC, but you have to pay for the OS and XCode...
EDIT: Xcode is free
You definitely want a Mac if you want to develop for the Mac. Even Java requires local testing.
That said, Macs are not very expensive and run Windows too.
If you want to learn and start programming before you have a Mac, I recommend either Java or .NET, specifically Delphi Prism.
See here my own first experiment with Delphi prism:
http://leaukiprog.blogspot.com/2009/07/delphi-prism-first-experiment.html
You can write a program for Windows, keep GUI code and other code separate and later replace the Winforms GUI with a native Cocoa GUI on the Mac.
I found that Pascal is a good language for accessing native APIs from .NET. Everything looks cleaner than with C#, I think.
The new version of Delphi Prism is coming out on the 25th, as far as I know.
You might also look into the GNUstep project. This will let you experience objective-c a little bit before you make the plunge, albeit with the GNU libs instead of cocoa.
Good Mac (or iPhone) software is an artisan product; it reflects the culture and tastes of Mac (or iPhone) users. Because the Mac is a premium platform, users tend to be more sensitive to the feel and polish of the apps. Thus to successfully program for the Mac/iPhone or even grok the Cocoa frameworks properly, you have to grok the Mac user experience. Although many coming from the Windows or other-UNIX world try to skip this step, they do so at their own peril.
So, as a Mac developer (who also writes for other UNIX OSes), my recommendation is buy a Mac and start using it, full time if you can. A Mac Mini is completely adequate for development and will set you back only a few hundered dollars, including the OS. Consider that on Windows, this is often less than the price of a full VS license. Everything else (Xcode, libraries, etc.) are free.
Once you have a Mac and begin to grok the feel of things, you'll discover that there are a number of development options. Besides the Cocoa frameworks--which can be used from Python (via the built-in PyObjC bridge), Ruby (via MacRuby or RubyCocoa)—-there are a number of other options. Qt from Nokia and Mono are viable. Often cross-platform apps written in Qt or Mono are disliked on the Mac because they don't feel "native" (see above), but really the problem is not the framework. If you get the Mac user experience you can write a very passable Mac app in a cross platform framework. You just have to intend to write a Mac app, not get a Windows app working on the Mac.
If you code in RealBasic or Lazarus, you can run and compile your apps for both Mac OS and Windows (and Linux in the case of Lazarus). RealBasic isn't that popular outside of the Mac Platform, and isn't free. Lazarus is still a little rough around the edges, but is basically a free version of Delphi.
Lazarus is working hard on a native COCOA port with the next major version of FPC (though that will probably be available only in 2011)
Macs use Objective C. The APIs are very useful and there are many tutorials online. You'll be using Xcode, the Mac equivalent to Windows' Visual Studio and Linux's Glade.
I love making cross-platform applications. In a few hours I can prototype an application in Mac and publish it online. Then it'll take a day or two to port to Windows.
A Mac looks expensive, but it's not if you look what you get for your money.
It is entierly up to you if you buy one or not. I guarantee you'll have a lot fun with it, next to programming. If you want a cheap Mac, just buy a Mac Mini for 500 dollars, which you can connect to the Display you already own.
I recommend doing this on Mac OS X rather than Windows, but again: it's up to you.
P.S. You can use VMWare, but I think it's slow if you have less then 4 GB RAM.
A Mac really isn't that expensive if you go down the second hand route, I was put off by the price of brand new Macbooks so I got a late 2007 model for £350 and added an extra gig of RAM to it.
Reasonably priced, less hassle for development as well!
If you want to have just a general feeling about ObjC and the object libraries, why not giving a try to GNUStep?
Take a look at it here:
http://wiki.gnustep.org/index.php/Main_Page

Resources