- プログラミング雑談スレ♯++
507 :デフォルトの名無しさん[sage]:2014/06/03(火) 06:00:10.46 ID:9Ltabfc6 - 新しいプログラミング言語 Swift
http://dev.classmethod.jp/smartphone/swift/
|
- プログラミング雑談スレ♯++
508 :デフォルトの名無しさん[sage]:2014/06/03(火) 06:20:09.71 ID:9Ltabfc6 - 米アップル、iOSアプリの新開発言語にSwiftを導入
http://ggsoku.com/2014/06/ios-8-swift/ 米アップルは2日(現地時間)、iOS 8に新開発言語「Swift」を導入すると発表した。 Swiftは非常に軽快に動くことが特徴であり、Objective-CとC言語の中間に位置するようなイメージであるという。 コード体系はC言語を踏襲。 CocoaやCocoa Touchに対応することはもちろん、LLVMコンパイラを利用してビルドされる。 LLVM http://ja.wikipedia.org/wiki/LLVM LLVM とは、コンパイル時、リンク時、実行時などあらゆる時点でプログラムを最適化するよう設計された、任意のプログラミング言語に対応可能なコンパイラ基盤である。 LLVM は、JavaとJava VMの関係のように、まず仮想機械をターゲットとした中間コード(ビットコード)を生成し、その仮想機械向けコードを特定のマシンの機械語に変換する。
|
- Swiftスレ
19 :デフォルトの名無しさん[sage]:2014/06/03(火) 06:51:51.09 ID:9Ltabfc6 - 早いよ。 マシンレベルでも最適化されるし言語仕様自体見ても高速に動きそう。
|
- Swiftスレ
20 :デフォルトの名無しさん[sage]:2014/06/03(火) 06:52:31.51 ID:9Ltabfc6 - >>18 Clangの発展形。
|
- Swiftスレ
21 :デフォルトの名無しさん[sage]:2014/06/03(火) 06:56:19.45 ID:9Ltabfc6 - 新しいプログラミング言語 Swift
http://dev.classmethod.jp/smartphone/swift/ 米アップル、iOSアプリの新開発言語にSwiftを導入 http://ggsoku.com/2014/06/ios-8-swift/ 米アップルは2日(現地時間)、iOS 8に新開発言語「Swift」を導入すると発表した。 Swiftは非常に軽快に動くことが特徴であり、Objective-CとC言語の中間に位置するようなイメージであるという。 コード体系はC言語を踏襲。 CocoaやCocoa Touchに対応することはもちろん、LLVMコンパイラを利用してビルドされる。 LLVM http://ja.wikipedia.org/wiki/LLVM LLVM とは、コンパイル時、リンク時、実行時などあらゆる時点でプログラムを最適化するよう設計された、任意のプログラミング言語に対応可能なコンパイラ基盤である。 LLVM は、JavaとJava VMの関係のように、まず仮想機械をターゲットとした中間コード(ビットコード)を生成し、その仮想機械向けコードを特定のマシンの機械語に変換する。 playgrounds を使うとインタラクティブに実行できる。 https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/Art/largeshot_2x.png
|
- 【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 16
139 :デフォルトの名無しさん[sage]:2014/06/03(火) 06:58:45.83 ID:9Ltabfc6 - Swiftスレ
http://peace.2ch.net/test/read.cgi/tech/1401736341/
|
- 【iPhoneも】Titanium Mobileスレッド【Androidも】
675 :デフォルトの名無しさん[sage]:2014/06/03(火) 08:50:14.95 ID:9Ltabfc6 - iOSはほぼSwift一択になるだろうな。 言語的にもJavascriptライクな所が有るからわかりやすいし。
インタラクティブなデバッグが出来るし。 そのうちAndroid用のコンパイラがサードパーティーから出てくると思うよ。 基本のコンパイラ自体はLLVM/Clangでオープンソースだし。 LLVM/ClangはEclipseプラグインも有るし、Visual StudioもLLVMプラグインは持ってるしTypeScriptには近い言語だし。 また、Javascriptを吐き出すコンパイラも出てきそう。(TypeScriptがそうだが)
|
- Swiftスレ
35 :デフォルトの名無しさん[sage]:2014/06/03(火) 09:30:10.40 ID:9Ltabfc6 - >>29 Javascript コンパイラは有るみたいだよ。
Emscripten is an LLVM to JavaScript compiler https://github.com/kripken/emscripten/wiki Swiftは次の様なコンパイル手順を取ってる。 Swift > Clang > LLVM byte code > マシン語 だからこんな感じになるのでは Swift > Clang > LLVM byte code > Emscripten > Javascript またLLVM中間語をわざわざコンパイルしなくてもそれ自体を実行できるJavascriptも存在しているようだから、そのままHTMLで使える。 LLVM.js - Badass JavaScript Ruby, Python, Haskell, Java, D, PHP, Pure, Lua 等へもコンパイルできるらしい。 これは夢が広がるな。
|
- 【PHP,JavaScript】スクリプト バトルロワイヤル43【pl,rb,py】
714 :デフォルトの名無しさん[sage]:2014/06/03(火) 09:36:37.04 ID:9Ltabfc6 - >>712 >>713 Swiftが使うLLVMプロジェクトでは、Python やRuby、Javascript、Java、PHP、Dなどあらゆるものにコンパイルできるらしい。
今後これが主流になるんじゃないか。
|
- Swiftスレ
40 :デフォルトの名無しさん[sage]:2014/06/03(火) 09:50:18.20 ID:9Ltabfc6 - そもそもCocoaの遺伝子がLLVMに受け継がれそれが発展してSwiftが生まれたんだから正常進化形だな。
|
- Swiftスレ
46 :デフォルトの名無しさん[sage]:2014/06/03(火) 10:07:55.16 ID:9Ltabfc6 - >>41 行けると思うよ。 LLVMバイトコードは同じはずだから。
|
- Swiftスレ
47 :デフォルトの名無しさん[sage]:2014/06/03(火) 10:11:30.41 ID:9Ltabfc6 - >>46 まさかWindowsのJITで動いたりしてくれないよな。 あれもLLVMだから同じバイトコードを使ってるはず。
|
- TypeScript(MS) VS Swift(Apple)
5 :デフォルトの名無しさん[sage]:2014/06/03(火) 12:41:30.87 ID:9Ltabfc6 - >>4 nativeを吐き出せるのか? 単にJITが動くだけだろ?
|
- TypeScript(MS) VS Swift(Apple)
6 :デフォルトの名無しさん[sage]:2014/06/03(火) 12:44:55.01 ID:9Ltabfc6 - しかしどちらも中核にLLVMを使ってるからLLVM byte codeは基本的に同じ物を吐き出すんだろうな。
だからやろうと思ったら TypeScriptとSwiftのマージも比較的簡単に出来そう。 LLVMはJavascriptに限らず、Ruby, Phyton、Java等等色んな言語にもコンパイルできる。
|
- Swiftスレ
78 :デフォルトの名無しさん[sage]:2014/06/03(火) 12:50:30.70 ID:9Ltabfc6 - >>75 呼べるに決まってるだろ。 呼べなかったらOBJ-CとSwiftをどうやってマージして使うんだよ。
|
- 【PHP,JavaScript】スクリプト バトルロワイヤル43【pl,rb,py】
718 :デフォルトの名無しさん[sage]:2014/06/03(火) 12:59:24.58 ID:9Ltabfc6 - >>715 言語自体は多分早い時期にオープンソースとして提供されると思うよ。 LLVMもAppleが育てたようなものだし。
コンパイラ自体は0から作ってもすぐに出来るだろ。 勿論マシン依存のライブラリは別物だが。 Javascriptが主流になる訳が無い。 簡単だから理解できる人口が多いと言うだけの話。 Web開発言語と一般言語を一緒くたに考えるな。 このスレ的にはWeb開発言語だからその範囲ではJavascriptを押す意味は解らんでもない。 既にLLVMからJavascriptを吐き出すコンパイラは有るから、SwiftからJavascriptは吐き出せると考えても良いかも。
|
- Swiftスレ
109 :デフォルトの名無しさん[sage]:2014/06/03(火) 14:12:29.29 ID:9Ltabfc6 - >>81 LLVMでコンパイルしてるから中間コードは必要な情報は持ってるはずだろ。 中間コードではC、OBJC、C++全て同じ形式になってるはず。
C系のコンパイラにはClangを使ってると思った。 LLVM Compiler Overview https://developer.apple.com/library/prerelease/ios/documentation/CompilerTools/Conceptual/LLVMCompilerOverview/ In Xcode, the LLVM compiler uses the Clang front end (a C-based languages project on LLVM.org) to parse source code and turn it into an interim format.
|
- Swiftスレ
114 :デフォルトの名無しさん[sage]:2014/06/03(火) 15:11:23.41 ID:9Ltabfc6 - >>113 MSのTypeScriptみたいなものだよ。 あっちはJavascriptを生成し、こっちはマシン語を生成すると言う違いだけ。
中身は同じLVMMだからVSもEclipseプラグインも似たような物。 Swiftはインタラクティブなデバッグ環境を用意しているためにプリプロセッサを使っていないため多少敷居が高いだろうがプリプロセッサを通したコンパイラなら簡単に出来るだろ。 近いうちにオープンソース化されるよ。
|
- TypeScript(MS) VS Swift(Apple)
8 :デフォルトの名無しさん[sage]:2014/06/03(火) 15:12:49.72 ID:9Ltabfc6 - >>7 Javascriptを介してるんじゃなくてLVMMの中間コードから各種コードを生成しているから何も失われない。
|
- Swiftスレ
136 :デフォルトの名無しさん[sage]:2014/06/03(火) 20:07:08.58 ID:9Ltabfc6 - >>134 取りあえず OSXが無いとどうにもならない。 WindowsにVMware入れて動かす手も有る。 お試しなら十分だろ。
今俺がこうしてる。 その上でデベロッパ登録すれば直ぐにダウンロードして使える。
|
- TypeScript(MS) VS Swift(Apple)
13 :デフォルトの名無しさん[sage]:2014/06/03(火) 20:10:32.12 ID:9Ltabfc6 - >>10 コンパイラはLLVMだよ。 LLVMからJavascriptを出してる。
LLVMは中間コードを作り、そこからJavascriptや、マシン語やJavaコードを作り出せる。
|
- TypeScript(MS) VS Swift(Apple)
17 :デフォルトの名無しさん[sage]:2014/06/03(火) 21:41:49.11 ID:9Ltabfc6 - >>15 ごめん勘違いしてた。 おっしゃるとおり。
|
- Swiftスレ
157 :デフォルトの名無しさん[sage]:2014/06/03(火) 21:52:13.73 ID:9Ltabfc6 - >>153 出来ない。 今の処
|
- Swiftスレ
166 :デフォルトの名無しさん[sage]:2014/06/03(火) 22:17:49.49 ID:9Ltabfc6 - swift = アマツバメ
http://upload.wikimedia.org/wikipedia/commons/d/dd/Apus_apus_01.jpg
|
- Swiftスレ
169 :デフォルトの名無しさん[sage]:2014/06/03(火) 22:26:13.34 ID:9Ltabfc6 - Swiftだろ。 今更OBJCでやる意味が無い。
急ぎでやるなら別だが。 完成が秋以降の予定ならSwift
|
- Swiftスレ
176 :デフォルトの名無しさん[sage]:2014/06/03(火) 22:38:35.11 ID:9Ltabfc6 - >>170 ObjC からSwift のコンバータで変換する方向みたいだよ。
>>171 微妙なところだが、納期が決まってたら冒険出来ないね。
|