I am still on the idea that we should refactor the relationship between 
libobjc2, CoreBase and Base before forging ahead. This refactor will not only 
benefit the Opal and GUI rewrite (deprecating Back in the progress), but also 
allow us to implement Swift at least as an out-of-tree patch set to Apple’s 
recent release.

Here are some things I think we should do:

1) Move NSObject into libobjc2 and @compatibility_alias Object to NSObject,
2) Allow public headers of Base to be installed before the library itself is 
built,
3) Move the implementation of toll-free bridged Foundation classes to CoreBase 
and create a new toll-free bridge mechanism that approximates Apple’s one,
4) Rewrite headers to adopt properties over getter/setter pairs.

The 4 points above give us a similar library layout to Apple’s, opening the 
doors of Swift integration. Then before porting the WebKit:

5) Finish Opal, taking over what Back used to do.
6) Rewrite GUI on top of Opal and ARC. We can use the iOS-style 
all-UI-element-backed-by-Quartz here as it does not break the contract and 
allow easier implementation.

And finally:

7) Port Apple’s version of WebKit over and reimplement the Objective-C wrappers 
for WebKit, WebCore and JSCore.

Cherries on top:

* UIKit and SpringBoard clones
* SceneKit and SpriteKit, both implemented in direct OpenGL manipulation 
bypassing Opal, for games
* Steam integration in reimplementation of Game Center. Combining the two above 
allow game publishers to release their OS X games under Linux over Steam.

> On Dec 4, 2015, at 15:13, Gregory Casamento <greg.casame...@gmail.com> wrote:
> 
> Nikolaus,
> 
>>> If we would contribute as much code as we recently started to write e-mails
>>> what *should* be done, there would be more progress :)
> 
> Based on my own CS background, I've learned that discussion and
> planning regarding what should happen is almost as important as what
> does actually happen.
> 
> GC
> -- 
> Gregory Casamento
> GNUstep Lead Developer / OLC, Principal Consultant
> http://www.gnustep.org - http://heronsperch.blogspot.com
> http://ind.ie/phoenix/
> 
> _______________________________________________
> Discuss-gnustep mailing list
> Discuss-gnustep@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnustep

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Discuss-gnustep mailing list
Discuss-gnustep@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to