2011-08-26 54 views
12

有時候打開一個解釋器,輸入一些代碼,看看它是否正常工作,而不是像Xcode項目那樣編譯一些大的東西來快速測試某些東西是很好的。 Objective-C解釋器是否爲Mac而存在,或者我運氣不好?是否有Mac的Objective-C解釋器?

UPDATE:在App Store有一個付費程序調用CodeRunner,它可以讓你快速運行的OBJ-C(和其他幾種語言)。它不是一個解釋器,但可以很好地用於快速測試想法:http://itunes.apple.com/us/app/coderunner/id433335799?mt=12

+2

嘗試使用'clang解釋器'(叮噹中的例子之一)。這確實很有限,但你可以很容易地擴展它。 –

回答

13

您可以使用基於Smalltalk的F-Script,但允許您與Cocoa進行交互。您還可以將其嵌入到應用程序中,以便在運行時檢查視圖和其他內容。這非常有用。編輯:正如評論中指出的,還有其他偉大的語言橋樑可用,如PyObjC,RubyCocoa/MacRuby,Nu等。CINT是C解釋器的一個例子,但不是Obj-C。

至於實際的Objective-C解釋器,我並不認爲它確實存在。但是在Xcode中設置一個「命令行工具」項目並不難,它爲您提供了一個非常簡單的main.m文件。

+1

我也有一個,呃...我的源文件夾中的小測試控制檯程序的加載。唯一的問題是名稱。在Delphi中,項目獲取默認名稱ProjectN,其中N是一個運行編號(Delphi檢查它是否已經存在)。對於大多數測試項目來說,這對我來說很好。像這樣的東西會讓Xcode,IMO更容易。能爲Xcode編寫插件嗎? –

+0

聽起來像[它是可能的](http://stackoverflow.com/questions/6316921/xcode-4-plugin-development)。 – jtbandes

+4

Objective-c運行時的其他解釋語言是ñ(http://programming.nu/index)和[MacRuby](http://www.macruby.org/)。爲了快速嘗試C的東西(算術,類型鑄造等)。),我發現[CINT](http://root.cern.ch/drupal/content/cint)有用。 – mckeed

5

對於到達這裏遲到的人:請看Tosti。一個基本但功能非常強大的Objective-C解釋器。

這是我放在GitHub上的一個側面項目,因爲目前似乎很少可用。我用它來做一些遠程調試。支持可用。

0

RubyMotion允許您在運行時使用所有Cocoa SDK的庫(據我所知,由於Ruby & Objective C之間的相似性,所以存在0個限制)。您當然也可以使用每個Objective C庫,您也可以加載它。唯一的限制與所有其他IDE相同,即由Apple針對未經批准的動態庫設定的限制。

反正功能語法非常,非常相似的Objective-C,它讓我感到驚訝的是,你可以用紅寶石(正常情況下你不能

#for example the in AppDelegate class 
class AppDelegate 
    def application(application, didFinishLaunchingWithOptions:launchOptions) 
    #... 
    true 
    end 
end 

當您運行rake做這樣的方式(相當於XCode中的Build命令),您當然可以從控制檯執行此操作,一旦將iPhone/iPad應用程序加載到模擬器或您的Apple設備上,您就可以通過控制檯輸入的命令交互式控制該設備或模擬器

Ruby Motion的成本爲200美元/年,所以它不值得用於交互式shell特性雖然當然

相關問題