Swiftスレ
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2014/06/03(火) 04:12:21.08ID:rEEU5ykvhttps://developer.apple.com/swift/
0102デフォルトの名無しさん
2014/06/03(火) 13:41:30.08ID:Nh2RM5Loさっきから、SwiftでC言語ライブラリをそのまま呼べるか
(もちろんObjective-Cコード無しで)
という話をしているから。
0103デフォルトの名無しさん
2014/06/03(火) 13:42:54.08ID:XlUvQuDjこれ見ると制限付きではあるがCの関数も呼べそうな雰囲気があるが
Cの引数型がSwiftで定義されてて、それを与えた関数はCの関数を呼んでるとみなし
Cのcalling conventionで静的リンクされるんじゃないの?
0104デフォルトの名無しさん
2014/06/03(火) 13:44:33.07ID:XlUvQuDjいやいや、誰もCでObjCのクラスが書けるなんて言ってないが
0105デフォルトの名無しさん
2014/06/03(火) 13:45:27.17ID:Nh2RM5LoC言語の関数をそのまま呼べるんだよ。
Public Declare Function GetUserNameA Lib "advapi32" (ByVal buf as string, size as long) As Long
Public Declare Function GetUserName Lib "advapi32" Alias "GetUserNameA" (ByVal buf as string, size as long) As Long
0106デフォルトの名無しさん
2014/06/03(火) 13:46:29.73ID:Nh2RM5Lo俺もそんな話してないが?
SwiftからC言語の関数をラッパー無しで
そのまま呼ぶことは出来ないって話しかしてない。
0107デフォルトの名無しさん
2014/06/03(火) 13:48:57.11ID:9AiAEfmm0108デフォルトの名無しさん
2014/06/03(火) 13:49:36.62ID:XlUvQuDjんじゃ98は何なんだよ...
特定のクラスをObjCで実装すれば、そのクラスでCの関数を呼べる
そのクラスはSwiftで使える
という話じゃないの?
0109デフォルトの名無しさん
2014/06/03(火) 14:12:29.29ID:9Ltabfc6C系のコンパイラには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.
0110デフォルトの名無しさん
2014/06/03(火) 14:31:47.48ID:6yhmnutt0111デフォルトの名無しさん
2014/06/03(火) 14:49:23.83ID:M9d0+DYH実行環境側に適切なバージョンのライブラリを配置する必要がある
0112デフォルトの名無しさん
2014/06/03(火) 14:53:58.14ID:XlUvQuDjそうでないものは@objcを付けるとObjC互換
単にマングリングの問題なのか、ブリッジが入ってオーバーヘッドが生じるのか...
0113デフォルトの名無しさん
2014/06/03(火) 14:55:22.49ID:/aqJorFA信者がTwitterで絶賛してて気持ち悪い
LinuxとWIndowsで開発できない言語なんてロクでもない
ただの信者向け言語
0114デフォルトの名無しさん
2014/06/03(火) 15:11:23.41ID:9Ltabfc6中身は同じLVMMだからVSもEclipseプラグインも似たような物。
Swiftはインタラクティブなデバッグ環境を用意しているためにプリプロセッサを使っていないため多少敷居が高いだろうがプリプロセッサを通したコンパイラなら簡単に出来るだろ。
近いうちにオープンソース化されるよ。
0115デフォルトの名無しさん
2014/06/03(火) 15:34:29.27ID:AkPA7OdE0116デフォルトの名無しさん
2014/06/03(火) 16:32:51.94ID:xS1agrJxダサいっつうか、普通って感じだな。
obj-cから解放されるだけで大歓迎だが。
0117デフォルトの名無しさん
2014/06/03(火) 16:35:20.87ID:/aqJorFA0118デフォルトの名無しさん
2014/06/03(火) 16:38:05.79ID:xS1agrJxでもobj-cの難点はあの文法だから、そういう側面ではJavaScriptに似てると思われても仕方がないと思う。
0119デフォルトの名無しさん
2014/06/03(火) 16:38:06.66ID:sk2oOubrコレだから Twitter 民は
0120デフォルトの名無しさん
2014/06/03(火) 17:52:53.68ID:d3S2ffsw触りたいけどMacが修理中だお…
0121デフォルトの名無しさん
2014/06/03(火) 17:55:34.76ID:7VCuqd/GCの関数は直接呼べるようだ
というかそもそもSwiftの(クラスメソッドじゃない)funcは
引数に名前付けない限りはCの関数と同じ名前空間、呼び出し規則でバイナリに落とされるのかな?
0122デフォルトの名無しさん
2014/06/03(火) 18:08:07.36ID:2BJr+HwU0123デフォルトの名無しさん
2014/06/03(火) 19:08:14.72ID:+L5eE3yS0124デフォルトの名無しさん
2014/06/03(火) 19:12:17.00ID:7VCuqd/G0125デフォルトの名無しさん
2014/06/03(火) 19:15:09.53ID:t1I4ETzW.NET案件の多いWindowsの業務アプリ系の開発者はかなり嬉しいんじゃないの
TypeScriptをM$の技術者が作っただけあってそれをパクってるSwiftは.NETやってれば手癖で書けるから楽だわwww
0126デフォルトの名無しさん
2014/06/03(火) 19:20:17.45ID:xS1agrJx大体あってると思う。
Cの拡張版だからというか、拡張部分のツギハギ文法が嫌われてる理由だと思うけど。
0127デフォルトの名無しさん
2014/06/03(火) 19:23:28.64ID:xS1agrJx0128デフォルトの名無しさん
2014/06/03(火) 19:27:43.38ID:lYocvdBa0129デフォルトの名無しさん
2014/06/03(火) 19:29:50.57ID:E7KMzTZf正直、Titanium Mobileは食指が伸びなかったので期待してるんだが
0130デフォルトの名無しさん
2014/06/03(火) 19:35:55.05ID:sk2oOubr普通にC標準ライブラリも呼び出せるな。fopen とか
俺module はどうやって作るんだこれ
0131デフォルトの名無しさん
2014/06/03(火) 19:40:30.12ID:GrNLWq+f0132デフォルトの名無しさん
2014/06/03(火) 19:42:03.11ID:qHlXCI8o0133デフォルトの名無しさん
2014/06/03(火) 19:49:00.11ID:E7KMzTZfon error goto や on error resume nextが使えるようになったらいいな
0134デフォルトの名無しさん
2014/06/03(火) 19:54:35.79ID:SsmCsZ51Windows か FreeBSD ならなんとか
0135デフォルトの名無しさん
2014/06/03(火) 19:58:36.38ID:thu5Bo8Uobj-c = 沖縄方言
javascript = 関西弁(大阪)
swift = 関西弁(京都)
0136デフォルトの名無しさん
2014/06/03(火) 20:07:08.58ID:9Ltabfc6今俺がこうしてる。
その上でデベロッパ登録すれば直ぐにダウンロードして使える。
0137デフォルトの名無しさん
2014/06/03(火) 20:19:05.04ID:t1I4ETzWAppleの開発環境はMac持ってないやつには公開・提供されないんだよ
クソ犬やクソドザは負けを認めてMac買え
0138デフォルトの名無しさん
2014/06/03(火) 20:43:00.95ID:W3xt/cSkC++とかJavaライクなものなら嬉しかったのに
0139デフォルトの名無しさん
2014/06/03(火) 20:52:20.93ID:Y/pEIVnr0140デフォルトの名無しさん
2014/06/03(火) 20:56:57.99ID:9AiAEfmmどのへんがC++やJavaと違ってJavaScriptに見えた?
0141デフォルトの名無しさん
2014/06/03(火) 21:02:30.24ID:kzI/DT6H0142デフォルトの名無しさん
2014/06/03(火) 21:03:23.90ID:LbUp5C5M取り敢えずMac miniでも買え。
飽きたらMac miniにWindowsやFreeBSDを突っ込めばO.K.
0143デフォルトの名無しさん
2014/06/03(火) 21:10:51.16ID:5DO4L7dm0144デフォルトの名無しさん
2014/06/03(火) 21:13:14.39ID:F1SxNhy20145デフォルトの名無しさん
2014/06/03(火) 21:13:49.53ID:9AiAEfmmSwiftは基本セミコロンいらないよ?いま上がってるサンプルとかにもほとんどセミコロンは無い
(一行に複数の文書きたいときだけ使うらしい)
JavaScriptはセミコロン省略できるとこもあるけど、文末にセミコロン欲しいしなるべく省略しないように書く
変数宣言構文はJavaScriptの拡張とかで使われてる形式で、
現在のJavaScriptでよく使う形式とはちょっと違うと思うんだが
0146デフォルトの名無しさん
2014/06/03(火) 21:20:57.57ID:LbUp5C5MMacの中古相場は旧OSを欲しがる需要が高く、値崩れし難いのでかなり高い。
新品を買って、要らなくなったら売っても、買値からあまり落ちずに高く売れるので新品買った方が良い。
場合によっては型落ち中古が現行機よりも高い事もあったりするので、投機目的ついでに買っちゃえ。
0147デフォルトの名無しさん
2014/06/03(火) 21:22:13.68ID:Y/pEIVnr0148デフォルトの名無しさん
2014/06/03(火) 21:27:55.61ID:qHlXCI8oMacにはWindowsいれられるのに
WindowsにはMac入れちゃいけないキチガイな企業のOSとか言語なんて滅びちゃえよ!
0149デフォルトの名無しさん
2014/06/03(火) 21:28:06.80ID:kzI/DT6Hんなことは知ってるから国語の教科書でも読んでろ
0150デフォルトの名無しさん
2014/06/03(火) 21:29:33.63ID:M9d0+DYH0151デフォルトの名無しさん
2014/06/03(火) 21:34:06.35ID:9AiAEfmm>>141はSwiftの変数宣言の構文とかセミコロンの扱いがJavaScriptと似てるって言いたいんじゃないの?
それに対してかなり違うよっていう俺の意見なんだが?
0152デフォルトの名無しさん
2014/06/03(火) 21:37:46.29ID:lI9Ae8oAどっちかって言うとTypeScriptに似てるよね。
0153デフォルトの名無しさん
2014/06/03(火) 21:46:19.90ID:D/9V5d8o0154デフォルトの名無しさん
2014/06/03(火) 21:47:13.03ID:kzI/DT6H「C++やJavaと違って」
0155,,・´∀`・,,)っ-○○○
2014/06/03(火) 21:48:55.94ID:h45MFUqG0156デフォルトの名無しさん
2014/06/03(火) 21:51:54.07ID:pg5ki0wv0157デフォルトの名無しさん
2014/06/03(火) 21:52:13.73ID:9Ltabfc60158デフォルトの名無しさん
2014/06/03(火) 21:55:37.09ID:hO8OPW7Z0159デフォルトの名無しさん
2014/06/03(火) 21:58:16.37ID:9AiAEfmmコンパイラだけきても、WindowsでCocoa API呼べてもしょうがないし、
WindowsのAPIが呼べるようにするのは簡単ではないだろう
0160デフォルトの名無しさん
2014/06/03(火) 21:58:53.82ID:9AiAEfmmセミコロンの扱いに関しては、C++やJavaは、ほぼJavaScriptと同じ。SwiftはC++やJavaやJavaScriptとは異なる。
だから、Swiftのセミコロンの扱いが、C++やJavaと違って、JavaScriptに見えるのはおかしい。
変数宣言構文に関しては、C++やJavaとは違うし、JavaScriptとも違う。
だから、Swiftの変数構文がC++やJavaとは違うのはいいとして、JavaScriptに見えるのはおかしい。
0161デフォルトの名無しさん
2014/06/03(火) 22:01:17.28ID:rRxa4+Jqhttp://www.goo-net.com/carphoto/10551014_200910.jpg
0162デフォルトの名無しさん
2014/06/03(火) 22:08:09.98ID:pg5ki0wv0163デフォルトの名無しさん
2014/06/03(火) 22:10:02.93ID:0x6aWx6Rttp://d.hatena.ne.jp/matarillo/20140603/p1
0164,,・´∀`・,,)っ-○○○
2014/06/03(火) 22:15:03.10ID:h45MFUqG改行が文の区切りとみなされるようだ。
ということはバックスラッシュで行連結とかもあるのかな。
ifやfor文で括弧使わないところとかprintlnの文字列組み立てとかもRubyっぽくて素敵
0165デフォルトの名無しさん
2014/06/03(火) 22:15:38.30ID:Q95pPloD自作自演の売名乙
0166デフォルトの名無しさん
2014/06/03(火) 22:17:49.49ID:9Ltabfc6http://upload.wikimedia.org/wikipedia/commons/d/dd/Apus_apus_01.jpg
0167デフォルトの名無しさん
2014/06/03(火) 22:20:13.02ID:WDX0jN2+0168デフォルトの名無しさん
2014/06/03(火) 22:25:51.60ID:pg5ki0wv納期はいつなのか?
0169デフォルトの名無しさん
2014/06/03(火) 22:26:13.34ID:9Ltabfc6急ぎでやるなら別だが。 完成が秋以降の予定ならSwift
0170,,・´∀`・,,)っ-○○○
2014/06/03(火) 22:26:21.75ID:h45MFUqG0171デフォルトの名無しさん
2014/06/03(火) 22:27:10.18ID:WDX0jN2+0172デフォルトの名無しさん
2014/06/03(火) 22:27:53.60ID:d9BmVsD90173デフォルトの名無しさん
2014/06/03(火) 22:29:06.38ID:pg5ki0wv残念だったな
0174デフォルトの名無しさん
2014/06/03(火) 22:31:06.89ID:kzI/DT6Hへー
0175デフォルトの名無しさん
2014/06/03(火) 22:38:05.27ID:WDX0jN2+だそうだから、Swiftで書こうかな。
0176デフォルトの名無しさん
2014/06/03(火) 22:38:35.11ID:9Ltabfc6>>171 微妙なところだが、納期が決まってたら冒険出来ないね。
0177デフォルトの名無しさん
2014/06/03(火) 22:44:42.15ID:WDX0jN2+0178デフォルトの名無しさん
2014/06/03(火) 22:47:41.12ID:Fqc6zuT2昔、Cのパーサーについて書かれた文章に、何となくそんな感じのことが書いてあったような気がするんだが。
0179デフォルトの名無しさん
2014/06/03(火) 22:48:31.36ID:h+Sf66BKhttp://blog.livedoor.jp/dankogai/archives/51922323.html
0180デフォルトの名無しさん
2014/06/03(火) 22:58:24.37ID:lI9Ae8oA省略可能だから。
int i ・・・ intを省略できない。
var i: int・・・intを省略したらvar i
型ありでありながら、型の記述を省略できるようにすると
必然的にこうなってしまう。
まあ、var<int> i みたいな書き方も考えられるけどね。
そこはJavaScriptみたいな言語でのvar iという書き方を
ふまえたからそうなったのだろう。
0181デフォルトの名無しさん
2014/06/03(火) 23:16:05.25ID:JVBQ3X9Gマシン語が透けて見える
0182デフォルトの名無しさん
2014/06/03(火) 23:16:48.39ID:5GNqzpIYvar 変数名 : データ型名;
var 変数名1, 変数名2, ・・・ ,変数名n : データ型名;
0183デフォルトの名無しさん
2014/06/03(火) 23:23:22.22ID:OIzVF/VN0184デフォルトの名無しさん
2014/06/03(火) 23:30:09.34ID:OsTKsrgO結局C言語で書くわけだから、特に何も変わらないだろう
0185デフォルトの名無しさん
2014/06/03(火) 23:31:00.44ID:9AiAEfmm0186デフォルトの名無しさん
2014/06/03(火) 23:39:29.36ID:LbUp5C5M出たばっかでまだ不明な事が多いのに、イキナリ本番ぶつけるなんてチャレンジャーだな。
0187デフォルトの名無しさん
2014/06/03(火) 23:42:28.57ID:nZtxpwF+0188デフォルトの名無しさん
2014/06/03(火) 23:54:24.32ID:lYocvdBa静的型付けの関数型言語って、ほぼ全て後者だと思うけど
前者の例って何かあるかな?
0189,,・´∀`・,,)っ-○○○
2014/06/04(水) 00:14:41.71ID:IxbVXe6Hリテラルから型が推定できるからこそできる業であって。
とはいえもともとObj-Cが動的バインディングを売りにしてたし
ある程度は実行時評価の部分は残るのかなという気がしている。
0190デフォルトの名無しさん
2014/06/04(水) 00:18:30.10ID:F6AvD4LEC++でも採用されてる多態性のことだよね?
動的に実行するクラスが決まる。
0191デフォルトの名無しさん
2014/06/04(水) 00:20:20.77ID:lzmGUwMb俺は静的な方が好きなんだけどObjective-Cじゃないならなんでもいいや
あと>>163でジェネリクスと変性って同じだろw
0192デフォルトの名無しさん
2014/06/04(水) 00:22:57.35ID:lzmGUwMbなんで団子がここにいんだよ、自作板専住じゃないんかよw
セレクターを指定したメッセージだろ、売りっつーかリフレクションなんてC#でもあるじゃん
0193デフォルトの名無しさん
2014/06/04(水) 00:26:25.62ID:HmwUcklb型推論付きの静的型付け言語じゃないの?
0194デフォルトの名無しさん
2014/06/04(水) 00:32:12.69ID:3yUc27H80195デフォルトの名無しさん
2014/06/04(水) 00:46:21.56ID:Kny2oUjp0196デフォルトの名無しさん
2014/06/04(水) 00:56:00.63ID:aeQAlcnR0197デフォルトの名無しさん
2014/06/04(水) 00:58:18.18ID:5LoqN5d1でも俺もけっこう心揺れてる。
ちょうどノートPC壊れてるとこだし、次はMac Book Pro の英語キーボードモデル買ってしまうかもしれんw
0198デフォルトの名無しさん
2014/06/04(水) 01:00:06.63ID:HmwUcklbその手の言語を使ってた人には
ARCの関係でオブジェクト間の参照が循環しないように強参照とか弱参照とか使い分ける必要があるのが
ちょっと解り難かったりするんじゃないのかね?
0199デフォルトの名無しさん
2014/06/04(水) 01:05:15.86ID:5LoqN5d1c++erにはshared_ptrとweak_ptrでとっつきやすかも。
0200デフォルトの名無しさん
2014/06/04(水) 01:05:16.40ID:zW2IOeMv0201デフォルトの名無しさん
2014/06/04(水) 01:19:28.21ID:HmwUcklb■ このスレッドは過去ログ倉庫に格納されています