Apple、WWDCで新言語Swiftを発表 78
ストーリー by hylom
Objective-Cよりは取っつきやすそうではある 部門より
Objective-Cよりは取っつきやすそうではある 部門より
あるAnonymous Coward 曰く、
現在開催中のAppleによる開発者向けイベント「WWDC」にて、「Objective-C without the C」というキャッチフレーズで新プログラミング言語Swiftが紹介された。
開発はXcode 6(現在はベータ版)で行い、MacOS X 10.10以降、iOS 8以降のハードウェアでSwiftで書かれたアプリが利用できる模様。
言語仕様的には、変数は型指定無しでも利用できるが関数の宣言時には引数の型指定が必要といった雰囲気だ。そのほか、RubyやPythonといった動的言語で見られるような文法も多く取り入れられている模様。
アプリを2つのどちらかの言語で作れるということなの? (スコア:2)
新言語が出るのは構わないんだけど従来のものとは完全に別物ってことでいいの?
Re:アプリを2つのどちらかの言語で作れるということなの? (スコア:1)
プロジェクト内で混在できる [apple.com]らしいですよ。
生理的にダメなObjective-Cよりはマシかな。
Re: (スコア:0)
どうせAppleのことだから2、3バージョン後にはSwiftでしか作れなくなるんでしょ?
Re: (スコア:0)
Objective-Cでも充分にガラパゴスで囲い込んでるので
今よりさらにガラパゴス囲い込みに向かって突進する必要もないような
Re: (スコア:0)
Re:アプリを2つのどちらかの言語で作れるということなの? (スコア:1)
Win32はプラットフォームAPIで、Objective-Cはプログラミング言語。比較する対象がおかしい。
Swift (スコア:1)
いいですか。 SWIFT じゃなくて Swiftですよ。
SPAM じゃなくて Spam と同じように、全部大文字で書かないでくださいね。
とかいう日がくるかな?かな?
==========================================
投稿処理前プレビュー確認後書込処理検証処理前反映可否確認処理後……
Re:Swift (スコア:2)
SwiftではなくSwyft。誰かいい加減Wikipedia日本語版の誤植を直せ。
仕様読んで気になったところ (スコア:1)
Objective-Cの後継としては、クラスにアクセス修飾子が見当たらないのが気になるところです。
あとクロージャの書き方にバリエーションありすぎて [apple.com]他人のコードが読みづらそう。
Operator Functionsはなんか気持ち悪いながらも慣れそうですが、
Trailing Closuresは無駄に混乱招きそうで、ないほうがいいんじゃないかとすら思います。
クロージャの構文に in が入ってる理由もよく分からない…これは私の英語力の問題なんでしょうけど。
新言語じゃないだろ (スコア:0)
swift 自体は http://swift-lang.org/ [swift-lang.org] で開発されている。
'06年ぐらいからずっと開発されてて'07年とかには論文とかになっているんでそれなりに歴史のある言語。
RubyCocoaやPyObjC みたいに スクリプト言語とCocoa のバインディングを Apple がして、WWDCで発表したって話。
Re:新言語じゃないだろ (スコア:2, 興味深い)
いや、完全に別言語ですよ
Apple による名前乗っ取り事例です
Re: (スコア:0)
Re: (スコア:0, フレームのもと)
一番したにわざわざリンクしてあったからこっちの方が元かと思ったのに。
他にこの名前を使っている言語があると知ってて知れっと自分たちが占有すんのか。
さすがアップル。いままでも人が使っている名前を使っているだけあんな。
Re: (スコア:0)
そうだね。アップルが悪いね。
Re: (スコア:0)
アンチじゃなくても、さすがにちょっと酷いと思うぞ。自分のプロジェクトでやられたことを考えると、たまったもんじゃない。
Re:新言語じゃないだろ (スコア:1)
だぁね。
でも対応について、ニャンパス [srad.jp]のように偽らないのは偉いと思った。
Re: (スコア:0)
Appleの名前乗っ取りがひどいのはその通り。しかし、
この言い訳はないです。ちゃんと読まない人が悪い。
Re: (スコア:0)
他に近い分野で使用しているのしってて使うっていうこと自体がどうなのよ。
Firebird なんてブラウザとDBだったのに問題になったし。
Re: (スコア:0)
自分勝手つーか、他人に対する敬意が全くないつーか、
善悪というより、この体質は病気なんじゃないだろうか。
Re: (スコア:0)
「Looking for the Swift parallel scripting language? 」と書いて別言語へのリンクを張るなんて悪質すぎるなアップル!
許すまじ!
Re: (スコア:0)
その昔、テキストファイルに使われていた.docという拡張子を自社のワープロソフトで占有した会社がありまして
Re: (スコア:0)
そんなの金で解決すりゃいいんだよ。
某社も"Explorer"はともかく、"Internet Explorer"は他社から金で買ったよね?
Re:新言語じゃないだろ (スコア:1)
https://en.wikipedia.org/wiki/Swift_(parallel_scripting_language) [wikipedia.org]
https://en.wikipedia.org/wiki/Swift_(programming_language) [wikipedia.org]
Re: (スコア:0)
どちらもプログラム言語なのになあ。
Re: (スコア:0)
早漏だな
リンク下部にswift-langはこちらという案内すらあるのに見てないの丸わかり
Re: (スコア:0)
すごいな。タイトルしか読んでないのかな。
without Cはいいんだけどさ (スコア:0)
Core GraphicsのCベースのAPIはどうなるんかな。別途APIあるんかな。
ざっと調べてるけど情報が見つからん。
CG使ってる部分はObjective-Cでwrapして、swiftから呼び出せってことかな。
Re:without Cはいいんだけどさ (スコア:1)
https://developer.apple.com/library/prerelease/ios/documentation/Swift... [apple.com]
ここに書いてある型使って、普通にC関数名で呼べそうな気がする。
帰宅したら試そう。
Re: (スコア:0)
Note that C function pointers are not imported in Swift
ってかかれてるよ
なんでや!python関係ないやろ! (スコア:0)
swiftってコンパイル言語でしょ。
速度比較のグラフでpythonを挙げる意味が分からん。
モダンな構文やコンパイラ言語としてなら、比較対象として Go 辺りか、せめてPyPyと比較して欲しい。
Re: (スコア:0)
確かに速度はそうですね。
ちなみに
https://twitter.com/dankogai/status/473540927777034240 [twitter.com]
だそうです。
むしろActionScript3→ActionScript2の流れ?
どっちも良く知りませんが。
Re:なんでや!python関係ないやろ! (スコア:2)
SwiftはOSXやiOSのAPIを使うプログラミングのためにあるのであって、ウェブとは関係ありません。
Re:なんでや!python関係ないやろ! (スコア:1)
マトモなdom操作のAPIがないと、JavaScriptに変換できてもであんまり使い道がない。
canvas要素の中にGUIを書き出す方法も有るにはあるけど、こんなかんじ [etotheipiplusone.com]
Re: (スコア:0)
それ、ソースも無い「こうだったら良いな」じゃないですか?
名前の由来 (スコア:0)
ガリバー旅行記のスウィフト?
# pythonっぽさと最近の言語っぽさがいろいろ詰まってていい感じですね。
# Apple縛りのない汎用言語になって欲しい感じ。
Re:名前の由来 (スコア:1)
ちょっとPythonっぽいところが好印象。
あと、C#風の部分も多いですね。
Objective-Cはちょっと設計が古すぎるように思うので、Swiftには期待したいところです。
# Ahead-Of-Timeコンパイルはやらないのかな?
Re: (スコア:0)
1作目では Newton を皮肉ってる箇所があるんですが、あのPDAとかはなかったことにしたんでしょうかね。
# 関係ないけど4作目ではYahoo をほぼ全否定してました。 (馬丁を除いて)
JavaScriptでよくね (スコア:0)
今からスクリプトっぽい言語作るんなら進化のめどが立ってるJavaScript+HTML5でのアプリ開発を公式にサポートした方がいいと思う。
そうすれば型がほしいのならTypeScriptでも書けるし、3年かけて演算子オーバーロードまでは入るから将来の機能に不満はないし。
Re: (スコア:0)
わざわざObjective-Cより速いって速度アピールしてるのに
javascriptとかないわー。
Re: (スコア:0)
なんで?
Re: (スコア:0)
構文はJavascriptで、あとは都合の良いコードに変換してコンパイルすりゃいいんでない?
Re: (スコア:0)
速くなるならそれでいいだろうけど、たぶん元がJavaScriptではそんなに速くならないんじゃないかな。
ObjC比でもSwiftのほうが速いのってそういうことでしょ。
Re:利用できるアプリ (スコア:2)
Swiftで書かれた利用できるアプリは、MacOS X 10.10以降、iOS 8以降のハードウェアで利用できる。
と、並べ替えてみた。
Re:利用できるアプリ (スコア:1)
MacOS X 10.10以降、iOS 8以降のハードウェア
OS XやiOSがハードウェアだったとは…
Re: (スコア:0)
何度読んでも意味がわからず、頭痛が痛くなってきた
Re: (スコア:0)
わかりやすいだろ。利用できないアプリは利用できないってだけなんだから。
Re: (スコア:0)
無意味な命題から知識は得られないので、何かをわかることはできませんね。
Re: (スコア:0)
逆命題は元の命題と同値じゃないでしょう。正しくは「利用できないなら、それは利用できないアプリだ」。けっきょく意味不明だけど。
Re: (スコア:0)
もちろん一般には逆命題は同値とは限らないけど、
(¬A→¬A)
⇔(A∨¬A)
⇔(¬A∨A)
⇔(A→A)
だからトートロジーの場合は同値。
Re: (スコア:0)
分かる人には分かるんですよ。