[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNUstep Live on OSnews
Re: GNUstep Live on OSnews
Tue, 1 Aug 2017 07:52:27 -0700
On Tue, Aug 1, 2017 at 2:18 AM, David Chisnall <address@hidden> wrote:
> On 31 Jul 2017, at 20:43, Liam Proven <address@hidden> wrote:
>> GNUstep apps can _only_ be written in Objective-C?
> Kind of. They can only be written in a language that has good bridging to
> Objective-C[++]. All of the interfaces are exposed as Objective-C objects,
> but there are bridges that allow these to be used from (as far as I am aware):
> - Java (JIGS)
> - Ruby (RIGS)
> - Python (not sure if this has a name, but I think it’s now part of the
> upstream ObjC bridge).
> - Rust
I'm not sure if the port still works anymore,
however bindings to the scheme-like language with objective-c like
dispatch added, making the briding pretty seamless.
> JSC will generate faster code than using ObjC).
> The most under-appreciated language is probably Objective-C++. C++11 or
> later is a good language for programming in the small, Objective-C for
> programming in the large, and the two compose surprisingly well. I’ve
> recently been writing an OmniOutliner replacement in Objective-C++, and
> finding that I can do a lot of things in about half as much code in
> Objective-C++ than in either Objective-C or C++ (for example, Objective-C’s
> for..in loops are restricted to collections that contain objects, but with a
> tiny adaptor you can use NSIndexSet or NSString in C++ range-based for loops).
>> OK, if so... are there any other rival foundation classes for writing
>> GUI apps in Objective-C on Linux?
> There are five implementations of the Foundation framework that I know of:
> - GNUstep Base
> - Microsoft’s WinObjC, which uses a lot of code from Apple’s SwiftFoundation
> - libFoundation (I think this is dead now?)
> - Justin Hibbits’ implementation (lightweight, FreeBSD-only, very clean
> code, but largely unmaintained now).
> - Cocotron (upstream seems to be dead - last commit 2 years ago, though
> there are some moderately active forks).
not a faithful implementation of foundation, rather its own thing, but there is
which seems to have QT bindings and a gui abstraction library.
> Of these, only GNUstep and Cocotron also provide an AppKit implementation.
> Microsoft’s WinObjC provides an incomplete UIKit implementation, though
> recently they’ve refocused on providing bridging for their own GUI framework,
> to make it possible to use the same core on Windows and iOS but have native
> GUIs for each.
>  https://github.com/davidchisnall/OpenOutliner/
>  https://github.com/cjwl/cocotron