* * *

Author Topic: Combining Free Pascal and Python from inside Lazarus  (Read 7568 times)

Phil

  • Hero Member
  • *****
  • Posts: 1535
Re: Combining Free Pascal and Python from inside Lazarus
« Reply #30 on: August 09, 2012, 06:46:34 pm »
I know objc is cross platform as a language but I am not so sure how well it really work on Windows and Linux. They do claim that it works across platforms though so I will probably have to test myself. 

If you've used Apple's Safari, QuickTime or iTunes on Windows, then you've used ObjC code on Windows. The ObjC runtime as well as Windows equivalents to many Mac frameworks are included (objc.dll, Foundation.dll, etc.). objc.dll is only 125K.

The issue is probably more that most ObjC code uses Apple frameworks (Foundation, etc.), since that's where many of the useful classes are implemented. NSString, etc. are not part of the ObjC runtime, but rather part of the Foundation framework.

This is where the uncertainty lies, not with the LLVM / Eero compiler itself. For example, if you wanted to use "NS" classes for Windows and Linux, what would you use? Can you use Apple's own dll's included with their Windows software? (Undocumented)

For example, if you don't need to use any of these "NS" classes, I would think that the GNUstep ObjC runtime would be enough:

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/ObjC_classic/_index.html#//apple_ref/doc/uid/20001091

However, that's kind of like programming in Object Pascal without using SysUtils or Classes units.

Thanks.

-Phil

kilon

  • New member
  • *
  • Posts: 20
Re: Combining Free Pascal and Python from inside Lazarus
« Reply #31 on: August 09, 2012, 09:01:14 pm »
I know objc is cross platform as a language but I am not so sure how well it really work on Windows and Linux. They do claim that it works across platforms though so I will probably have to test myself. 

If you've used Apple's Safari, QuickTime or iTunes on Windows, then you've used ObjC code on Windows. The ObjC runtime as well as Windows equivalents to many Mac frameworks are included (objc.dll, Foundation.dll, etc.). objc.dll is only 125K.

The issue is probably more that most ObjC code uses Apple frameworks (Foundation, etc.), since that's where many of the useful classes are implemented. NSString, etc. are not part of the ObjC runtime, but rather part of the Foundation framework.

This is where the uncertainty lies, not with the LLVM / Eero compiler itself. For example, if you wanted to use "NS" classes for Windows and Linux, what would you use? Can you use Apple's own dll's included with their Windows software? (Undocumented)

For example, if you don't need to use any of these "NS" classes, I would think that the GNUstep ObjC runtime would be enough:

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/ObjC_classic/_index.html#//apple_ref/doc/uid/20001091

However, that's kind of like programming in Object Pascal without using SysUtils or Classes units.

Thanks.

-Phil

you probably are correct once more all I need is something to build me C dlls, and most likely Eeero can do that fine since its a LLVM project and cross platform is a big priority. There is also a possibility from what I am reading that Slang (Smalltalk compiled to C) to be used for regular C stuff as well. So definetly I will give Eero a try and see how it fairs along with free pascal and Slang. Thank you.

I did not know that Apple products are using objc in windows, I assumed they used just regular C/C++ . Thats great to know.

 

Recent

Get Lazarus at SourceForge.net. Fast, secure and Free Open Source software downloads