WWDC2014で発表されたAppleの新言語Swiftについて語りましょう
関連スレ
プログラミング言語Swift Part4
http://potato.2ch.net/test/read.cgi/mac/1484763495/
[SDK]iPhoneアプリ開発初心者質問箱48[touch][iPad]
http://potato.2ch.net/test/read.cgi/mac/1484217623/
Xcode part14
http://potato.2ch.net/test/read.cgi/mac/1476190499/
Swiftアンチスレ part1
http://echo.2ch.net/test/read.cgi/tech/1458491343/
前スレ
Swift part9
http://echo.2ch.net/test/read.cgi/tech/1476758084/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
Swift part10 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 3b3c-eq+O)
2017/02/20(月) 10:00:13.40ID:ChbPWtRt0295デフォルトの名無しさん (ワッチョイ 133c-QFag)
2017/03/21(火) 19:42:18.10ID:jxZBoDQT0296デフォルトの名無しさん (スッップ Sddf-CJUg)
2017/03/21(火) 19:59:01.53ID:H55j2XV7d >>293
この場合のとかの用法は明確に定義しないことを明示するための、、、、、、
とかではなくて、
説明しよう!(富山敬風)
ターゲットが特定のキーワードに高確率で定型のレスをつけることを利用して
ターゲットのレスを意図的に引き出そうとする
ドメイン特化キーワード、いわゆる釣りワードである
(↑これが言いたかっただけなのだ)
釣りとわかって付き合ってくれてありがとう
この場合のとかの用法は明確に定義しないことを明示するための、、、、、、
とかではなくて、
説明しよう!(富山敬風)
ターゲットが特定のキーワードに高確率で定型のレスをつけることを利用して
ターゲットのレスを意図的に引き出そうとする
ドメイン特化キーワード、いわゆる釣りワードである
(↑これが言いたかっただけなのだ)
釣りとわかって付き合ってくれてありがとう
297デフォルトの名無しさん (ブーイモ MMdf-nFTW)
2017/03/21(火) 20:48:23.31ID:2GTRnHWPM298デフォルトの名無しさん (スップ Sddf-nPNM)
2017/03/21(火) 20:59:06.98ID:MDnLMEwZd >>292
ゲロ吐く
ゲロ吐く
299デフォルトの名無しさん (ワッチョイ 0354-QFag)
2017/03/21(火) 21:05:21.27ID:/qkJhfYu0 >>295
アスペ好き
アスペ好き
300デフォルトの名無しさん (ワッチョイ a392-v7qi)
2017/03/21(火) 22:39:55.95ID:O0GOXggs0 アスペとかと遊ぶためのキーワードに爆釣(釣り糸タラー
>>290
結構冗長処理の差分があるけど、どんなオプションで吐いた?
% swiftc -S -O test.swift
--
import Foundation
func main() -> Int {
let a: CGFloat = 1
let b = Int(a)
return b
}
% test -S -O test.m
--
int main() {
float a = 1;
int b = a;
return b;
}
>>290
結構冗長処理の差分があるけど、どんなオプションで吐いた?
% swiftc -S -O test.swift
--
import Foundation
func main() -> Int {
let a: CGFloat = 1
let b = Int(a)
return b
}
% test -S -O test.m
--
int main() {
float a = 1;
int b = a;
return b;
}
301デフォルトの名無しさん (ワッチョイ a392-v7qi)
2017/03/21(火) 22:40:48.24ID:O0GOXggs0 スマン、後者のコマンド間違えた
% clang -S -O test.m
で読み替えて
% clang -S -O test.m
で読み替えて
302デフォルトの名無しさん (ワッチョイ bff3-QFag)
2017/03/22(水) 01:02:49.55ID:FLAiJ+iN0 >>300
当たり前だけどそのコードじゃ、どっちも意味のないaの行は消えて直接整数の1を置くだけのコードに最適化された
[swift]
func foo(f: Float) -> Int {
let i = Int(f)
return i
}
[c]
int foo(float f) {
int i = f
return i
}
これで見ればfloat→intの変換はどっちもcvttss2siの1ステップになった
Swiftの方は-Oだとcvttss2siの前にprecondition由来のコードが残るけど-Ouncheckedならそれも消えて完全にCと同じ
当たり前だけどそのコードじゃ、どっちも意味のないaの行は消えて直接整数の1を置くだけのコードに最適化された
[swift]
func foo(f: Float) -> Int {
let i = Int(f)
return i
}
[c]
int foo(float f) {
int i = f
return i
}
これで見ればfloat→intの変換はどっちもcvttss2siの1ステップになった
Swiftの方は-Oだとcvttss2siの前にprecondition由来のコードが残るけど-Ouncheckedならそれも消えて完全にCと同じ
303デフォルトの名無しさん (ワッチョイ 23bc-JN/B)
2017/03/22(水) 01:09:43.24ID:+9rAaXcc0 var i = Inf(f)
じゃないと
int i = f;
と等価じゃなくね?
んでもってCではセミコロンいるけどね
じゃないと
int i = f;
と等価じゃなくね?
んでもってCではセミコロンいるけどね
304デフォルトの名無しさん (ワッチョイ bff3-QFag)
2017/03/22(水) 01:15:25.70ID:FLAiJ+iN0305デフォルトの名無しさん (ワッチョイ 133c-jYbd)
2017/03/22(水) 11:24:01.24ID:kq8u5G9J0 数値の型変換がイニシャライザなのは良いけど
情報欠落するケースかどうかが変換箇所のコードで分からないのは好きじゃない
Int32→Int64のような拡張でも暗黙変換しない方針を選んだのなら
逆に縮小をラベル付きにしてコードから判別出来るようにして欲しかった
Int32.init(_: Int16)
Int32.init(narrow: Int64) // init(_: Int64)
Int32.init(truncatingBitPattern: Int64)
例えばC#では拡張は暗黙変換、縮小は明示キャスト必須になっている
情報欠落するケースかどうかが変換箇所のコードで分からないのは好きじゃない
Int32→Int64のような拡張でも暗黙変換しない方針を選んだのなら
逆に縮小をラベル付きにしてコードから判別出来るようにして欲しかった
Int32.init(_: Int16)
Int32.init(narrow: Int64) // init(_: Int64)
Int32.init(truncatingBitPattern: Int64)
例えばC#では拡張は暗黙変換、縮小は明示キャスト必須になっている
306デフォルトの名無しさん (スッップ Sddf-CJUg)
2017/03/22(水) 12:38:51.99ID:dwmeJil9d そうだよな、CでもC++でもSwiftでも
自信を持ってキャストできた試しがない
何が起こるキャストなのか詳細に分かると便利だね
自信を持ってキャストできた試しがない
何が起こるキャストなのか詳細に分かると便利だね
307デフォルトの名無しさん (スッップ Sddf-CJUg)
2017/03/22(水) 12:43:22.27ID:dwmeJil9d >>282
こん中だとけっこう感動したのは
>switch文が強力すぎて鼻血でたー
これだな
複雑なif文の入れ子がかなりシンプルにできる
日常的に一番お世話になってるのはオプショナル型
ヌルポ踏むことが無くなったかな
こん中だとけっこう感動したのは
>switch文が強力すぎて鼻血でたー
これだな
複雑なif文の入れ子がかなりシンプルにできる
日常的に一番お世話になってるのはオプショナル型
ヌルポ踏むことが無くなったかな
308デフォルトの名無しさん (ワッチョイ 03f3-JN/B)
2017/03/22(水) 13:02:23.51ID:GcLM8SyP0309デフォルトの名無しさん (ワッチョイ 133c-jYbd)
2017/03/22(水) 14:23:57.53ID:kq8u5G9J0 >>308
得意かどうかや違うかどうかは関係無いよ
考慮された上での仕様かどうかという話
数値型の暗黙変換を無くしたことは前進だと見ている
しかしその結果、拡張変換の構文が縮小変換に追いついてしまい
非対称性による利点が失われてしまった
得意かどうかや違うかどうかは関係無いよ
考慮された上での仕様かどうかという話
数値型の暗黙変換を無くしたことは前進だと見ている
しかしその結果、拡張変換の構文が縮小変換に追いついてしまい
非対称性による利点が失われてしまった
310デフォルトの名無しさん (スッップ Sddf-CJUg)
2017/03/22(水) 15:23:52.69ID:dwmeJil9d >>308
まさにこれ
Perl風の正規表現サポート構文を全言語で採用しないなんて信じられない!
文字列処理なんてプログラミングの基本中の基本でしょ!
一文字ずつの処理をプログラマが書くなんてあり得ない!!
待ってるぜSwift5
まさにこれ
Perl風の正規表現サポート構文を全言語で採用しないなんて信じられない!
文字列処理なんてプログラミングの基本中の基本でしょ!
一文字ずつの処理をプログラマが書くなんてあり得ない!!
待ってるぜSwift5
311デフォルトの名無しさん (ササクッテロリ Spd3-Lcoi)
2017/03/23(木) 09:17:23.40ID:9ddE+onEp312デフォルトの名無しさん (スップ Sdea-6g7I)
2017/03/27(月) 13:39:55.07ID:9ObHSaYAd 型推論削除まだー?
313デフォルトの名無しさん (ワッチョイ 8a32-mQmu)
2017/03/27(月) 14:34:32.14ID:jJTT24eR0 >一文字ずつの処理をプログラマが書くなんてあり得ない!!
いや、じゃあ誰が書くんだおw
アプリプログラマ、だけな、それ言うの
あと、1文字ずつの処理「も」かける、というのが便利
とりあえず「デフォ」を便利にして欲しい
いや、じゃあ誰が書くんだおw
アプリプログラマ、だけな、それ言うの
あと、1文字ずつの処理「も」かける、というのが便利
とりあえず「デフォ」を便利にして欲しい
314デフォルトの名無しさん (ササクッテロラ Spd3-1VOV)
2017/03/27(月) 20:33:27.48ID:d0WItvzjp 勉強で単純なカメラアプリを作ってるんだけど、せっかくだからフレームとサイズだけはオリジナルにしたい
でもやり方がよく分からなくて困ってる
良ければ誰かヒントをくれないだろうか
でもやり方がよく分からなくて困ってる
良ければ誰かヒントをくれないだろうか
315デフォルトの名無しさん (ワッチョイ 433c-+Vyq)
2017/03/27(月) 20:57:49.35ID:MSHIb1n80 UIWindowクラスでググったら?
と思ったら、すぐ見つかった。
“UIImagePickerController cameraOverlayView”でググレカス
http://chicketen.blog.jp/archives/7404852.html
と思ったら、すぐ見つかった。
“UIImagePickerController cameraOverlayView”でググレカス
http://chicketen.blog.jp/archives/7404852.html
316デフォルトの名無しさん (スププ Sd4a-1VOV)
2017/03/28(火) 11:35:36.43ID:t5HIbgfEd >>313
>いや、じゃあ誰が書くんだおw
>アプリプログラマ、だけな、それ言うの
もちろん、カーネルプログラマや、ライブラリプログラマの皆さんの成果を美味しくいただけるという前提の話です。
アリガタヤ〜
なんか、入力が文字列だと、自分でプログラム組んで処理する以外の方法を思いつかない人が多くて困るのだ。
>いや、じゃあ誰が書くんだおw
>アプリプログラマ、だけな、それ言うの
もちろん、カーネルプログラマや、ライブラリプログラマの皆さんの成果を美味しくいただけるという前提の話です。
アリガタヤ〜
なんか、入力が文字列だと、自分でプログラム組んで処理する以外の方法を思いつかない人が多くて困るのだ。
317デフォルトの名無しさん (ササクッテロル Sp17-kVPK)
2017/03/30(木) 06:19:29.38ID:W8d4MsA8p318デフォルトの名無しさん (アウアウオー Sa1f-mlhd)
2017/03/30(木) 08:42:10.41ID:9khgRv1/a https://goo.gl/8by4rX
これは嫌だなー。。本当?
これは嫌だなー。。本当?
319デフォルトの名無しさん (ワッチョイ 83f3-c5kk)
2017/03/30(木) 13:01:15.79ID:9EoNq1220 guro
320デフォルトの名無しさん (ササクッテロリ Sp17-K8zl)
2017/04/01(土) 12:38:15.61ID:rvZpcbcFp let isFool = false
let YouAreFool = !(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!isFool))))))))))))))))))))))
今年のグーグルのエイプリルフールネタはイマイチだね
let YouAreFool = !(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!isFool))))))))))))))))))))))
今年のグーグルのエイプリルフールネタはイマイチだね
321デフォルトの名無しさん (アウアウエー Sa8a-qYl2)
2017/04/07(金) 23:27:50.08ID:A4pCb4U0a 過疎りすぎだろ
お前らやる気あんのか
let π = Double.pi
お前らやる気あんのか
let π = Double.pi
322デフォルトの名無しさん (ワッチョイ f354-TNox)
2017/04/08(土) 09:36:51.95ID:jKlH6mxl0323デフォルトの名無しさん (ワッチョイ fb0f-B+LC)
2017/04/08(土) 09:37:52.65ID:FmwPLc4P0 そんなのに驚かれても...
とっくの昔にJavaでも動くけどな...
とっくの昔にJavaでも動くけどな...
324デフォルトの名無しさん (ワッチョイ f354-TNox)
2017/04/08(土) 10:33:14.51ID:jKlH6mxl0325デフォルトの名無しさん (ワッチョイ fb0f-B+LC)
2017/04/08(土) 10:36:29.24ID:FmwPLc4P0326デフォルトの名無しさん (アウアウエー Sa8a-qYl2)
2017/04/08(土) 10:50:30.96ID:63G3fI6va Option + P でπが入力できることは当然知ってるよな?
327デフォルトの名無しさん (スプッッ Sdb2-YI5e)
2017/04/08(土) 11:15:21.87ID:zwbfOwFqd 知らねぇだろお前ら感がにじみ出すぎててイタい
328デフォルトの名無しさん (アウアウエー Sa8a-qYl2)
2017/04/08(土) 11:36:08.72ID:63G3fI6va なんだ知らなかったのか
1つ賢くなったな
1つ賢くなったな
329デフォルトの名無しさん (ワッチョイ fb0f-B+LC)
2017/04/08(土) 12:01:07.48ID:FmwPLc4P0 聞いてもいないのにいきなり言い出して確かにイタいな
330デフォルトの名無しさん (ササクッテロラ Sp57-8GAO)
2017/04/08(土) 12:17:13.50ID:59elDVKip 急にJavaを比較対象として出して草
ObjCと比較しろやw
ObjCと比較しろやw
331デフォルトの名無しさん (ワッチョイ fb0f-B+LC)
2017/04/08(土) 12:21:16.17ID:FmwPLc4P0 >>330
??
??
332デフォルトの名無しさん (ワッチョイ f354-TNox)
2017/04/08(土) 12:50:51.72ID:jKlH6mxl0333デフォルトの名無しさん (ワッチョイ f354-TNox)
2017/04/08(土) 12:53:01.39ID:jKlH6mxl0334デフォルトの名無しさん (ワッチョイ f73c-D6lx)
2017/04/08(土) 13:26:15.68ID:bcrLvy920 4マダァ?
335デフォルトの名無しさん (ササクッテロラ Sp57-8GAO)
2017/04/08(土) 13:33:22.85ID:59elDVKip iアプリやAndroidくらいしかやったことないと比較はJavaで適当だろうけど
動作OSとかランタイムの在り方とか言語文法の系譜とか違いすぎる
同じAppleOSで動いて、.soランタイムだけ要して、without C程度の系譜の同じ土俵で評価すべきじゃね
自分が知ってる言語って程度で比較に挙げるならC#でもGoでもRubyでもなんでもアリだからw
動作OSとかランタイムの在り方とか言語文法の系譜とか違いすぎる
同じAppleOSで動いて、.soランタイムだけ要して、without C程度の系譜の同じ土俵で評価すべきじゃね
自分が知ってる言語って程度で比較に挙げるならC#でもGoでもRubyでもなんでもアリだからw
336デフォルトの名無しさん (ワッチョイ f73c-D6lx)
2017/04/08(土) 14:39:02.66ID:bcrLvy920 非ASCII識別子のネタなんて何の言語引き合いに出しても別に問題ないっしょ
337デフォルトの名無しさん (ワッチョイ 32f3-qYl2)
2017/04/08(土) 16:52:22.92ID:EanGPAz+0 おっπ
338デフォルトの名無しさん (ワッチョイ fb0f-B+LC)
2017/04/08(土) 17:04:27.68ID:FmwPLc4P0 はい
339デフォルトの名無しさん (ワッチョイ 32f3-qYl2)
2017/04/09(日) 16:19:12.39ID:dBjEGHWC0 揉ませろ
340デフォルトの名無しさん (ワッチョイ 1f3c-xLT8)
2017/04/13(木) 16:26:07.95ID:P0VwbMdt0 メモリー管理方式取り入れるってニュース見かけたんだけど
Swiftまた互換性無くなるんか?
Swiftまた互換性無くなるんか?
341デフォルトの名無しさん (ササクッテロラ Sp6f-+fOQ)
2017/04/13(木) 16:43:28.23ID:0o/hjfdWp342デフォルトの名無しさん (アウアウオー Sabf-vZSP)
2017/04/13(木) 16:50:05.36ID:JlstuCPca 「タイム互換」短すぎやでほんま
タイム互換いいたいだけやけどな
タイム互換いいたいだけやけどな
343デフォルトの名無しさん (アウアウエー Sabf-vZSP)
2017/04/13(木) 16:58:45.96ID:Z4M4iBLva _ __
/ \ / \
/ \ / \
/ / ̄ ̄\ \ / / ̄ ̄ ̄\__\
// ̄ / ̄| ̄ | ̄`くヽ__/> | \
 ̄ `ー'`ー'`ー'/刧凵R  ̄ ̄
| | / 、/⌒ヽ,ヽ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | 〇 O) | < ブタモ オダテリャ キニノボル。。。
| __|_> ̄ ̄ ̄く \___________
| (___ノ |
| __|_|_ /e
| (___ノ、___/
| |
| |
| |
| |
| |
| |
/ \ / \
/ \ / \
/ / ̄ ̄\ \ / / ̄ ̄ ̄\__\
// ̄ / ̄| ̄ | ̄`くヽ__/> | \
 ̄ `ー'`ー'`ー'/刧凵R  ̄ ̄
| | / 、/⌒ヽ,ヽ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | 〇 O) | < ブタモ オダテリャ キニノボル。。。
| __|_> ̄ ̄ ̄く \___________
| (___ノ |
| __|_|_ /e
| (___ノ、___/
| |
| |
| |
| |
| |
| |
344デフォルトの名無しさん (ワッチョイ 1f3c-xLT8)
2017/04/13(木) 17:49:06.53ID:P0VwbMdt0 見つけた。つい最近のやつ
swiftメモリオーナシップのマニフェストが公開
https://www.infoq.com/jp/news/2017/04/swift-memory-ownership-model
swiftメモリオーナシップのマニフェストが公開
https://www.infoq.com/jp/news/2017/04/swift-memory-ownership-model
345デフォルトの名無しさん (アウアウエー Sabf-vZSP)
2017/04/13(木) 17:53:40.70ID:Z4M4iBLva オナニストに空目した
346デフォルトの名無しさん (ワッチョイ 1ff3-vZSP)
2017/04/13(木) 18:33:03.91ID:WsZTJ2Pb0 またInfoQは2ヶ月前の話を今更ニュースにして
今日の本当の界隈ニュースはABI Dashboardがやっと公開されたこと
今日の本当の界隈ニュースはABI Dashboardがやっと公開されたこと
347デフォルトの名無しさん (ワッチョイ 5b54-axuq)
2017/04/13(木) 20:46:27.09ID:gaxJh+J40348デフォルトの名無しさん (ササクッテロラ Sp6f-+fOQ)
2017/04/13(木) 21:43:29.30ID:0o/hjfdWp 結局、C++11 unique_ptrの文法ラップなのかな
ObjCでも使えるなら使いたいから頼むよー
ObjCでも使えるなら使いたいから頼むよー
349デフォルトの名無しさん (ワッチョイ 4b3c-HE/W)
2017/04/14(金) 00:10:47.26ID:CJipXrOe0 Rust inspiredとのことだからunique_ptrなんてレベルじゃない
ライフタイムかそれに類するものを導入する気だろう
ライフタイムかそれに類するものを導入する気だろう
350デフォルトの名無しさん (ワッチョイ 1f3c-xLT8)
2017/04/17(月) 11:21:13.44ID:rZd85UOy0 Swift4で何がかわりそうなのか
ttp://qiita.com/d_date/items/b3562f542afc306791ce
ttp://qiita.com/d_date/items/b3562f542afc306791ce
351デフォルトの名無しさん (ワッチョイ 5bf3-CJGP)
2017/04/17(月) 11:34:40.27ID:H6wmE3lW0 SE-0110
Swift3.1
let fn1: (Int, Int) -> Void = { x in
// some procedure
}
Swift4
let fn1: ((Int, Int)) -> Void = { x in
// some procedure
}
Intを要素とするtupleを引数に取るclosureの記述方法が、変わるらしい。
(Int, Int)型引数は、((Int, Int))としてx.0, x.1って感じでアクセスする。ってこった。
Swift3.1
let fn1: (Int, Int) -> Void = { x in
// some procedure
}
Swift4
let fn1: ((Int, Int)) -> Void = { x in
// some procedure
}
Intを要素とするtupleを引数に取るclosureの記述方法が、変わるらしい。
(Int, Int)型引数は、((Int, Int))としてx.0, x.1って感じでアクセスする。ってこった。
352デフォルトの名無しさん (ワッチョイ 5bf3-CJGP)
2017/04/17(月) 11:41:37.59ID:H6wmE3lW0 func curry<A, B, C>(_ f: @escaping (A, B) -> C) -> (A) -> (B) -> C {
return { x in
{ y in f(x, y) }
}
}
この関数の読み方が判らん!
戻り値が
(A) -> (B) -> C
って事は、
1. A型の引数を受け取り、(B) -> Cなるclosureを返すclosureが戻り値
2. (A) -> (B)なるclosureを受け取りC型を返すclosureが戻り値
どっちだ?
return { x in
{ y in f(x, y) }
}
}
この関数の読み方が判らん!
戻り値が
(A) -> (B) -> C
って事は、
1. A型の引数を受け取り、(B) -> Cなるclosureを返すclosureが戻り値
2. (A) -> (B)なるclosureを受け取りC型を返すclosureが戻り値
どっちだ?
353デフォルトの名無しさん (スプッッ Sd3f-IVUN)
2017/04/17(月) 12:20:26.64ID:vkFfzl9Jd354デフォルトの名無しさん (ワッチョイ fbf9-kKgC)
2017/04/17(月) 16:19:08.73ID:3GD20cJp0 >>352
1の方だね
1の方だね
355デフォルトの名無しさん (ワッチョイ eb92-D+C1)
2017/04/17(月) 17:25:42.88ID:D/VW2xRY0 もういい加減にしてほしいな
言語ヲタが「ボクチンが考えた最高の言語」遊びしてるようにしか見えない
言語ヲタが「ボクチンが考えた最高の言語」遊びしてるようにしか見えない
356デフォルトの名無しさん (ワッチョイ 1ff3-vZSP)
2017/04/17(月) 18:59:19.87ID:nd1F7ywi0 批判なら具体的に
でなければアンチスレへ
でなければアンチスレへ
357デフォルトの名無しさん (アウアウオー Sabf-vZSP)
2017/04/17(月) 19:03:02.31ID:kDXw+CZ7a ->が出てきたらその時点で->より前が引数、->より後ろが戻り値
358デフォルトの名無しさん (ワッチョイ 5b54-axuq)
2017/04/17(月) 20:39:28.09ID:oD+wMWyY0359デフォルトの名無しさん (ワッチョイ 5b54-axuq)
2017/04/17(月) 20:40:25.07ID:oD+wMWyY0360デフォルトの名無しさん (アウアウウー Saaf-vZSP)
2017/04/17(月) 20:46:01.79ID:lXU86btga ヒマなんですね
361デフォルトの名無しさん (エムゾネ FF3f-IVUN)
2017/04/17(月) 21:24:11.38ID:6RZC9xguF >>354
まあ、curry化ってそういうものだしね
まあ、curry化ってそういうものだしね
362デフォルトの名無しさん (アウアウウー Saaf-vZSP)
2017/04/17(月) 21:25:12.82ID:lXU86btga インド人もびっくりだよね
363デフォルトの名無しさん (ワッチョイ 4b3c-5IwN)
2017/04/17(月) 22:47:26.87ID:+gxNPbQK0364デフォルトの名無しさん (ワッチョイ 3b0f-n2Cn)
2017/04/17(月) 23:10:09.48ID:/M+7HM4c0 >>350
いいからさっさと++、--、for(;;)を復活させろ
いいからさっさと++、--、for(;;)を復活させろ
365デフォルトの名無しさん (ワッチョイ 3b0f-n2Cn)
2017/04/17(月) 23:10:51.44ID:/M+7HM4c0366デフォルトの名無しさん (ササクッテロラ Sp6f-+fOQ)
2017/04/18(火) 00:02:25.56ID:xQgWcwpBp >>355は4で破壊変更あることを今更知ったnewbieじゃないかな
破壊しないswiftなんてswiftじゃないと思って使ってるけど、3で安定したと思っちゃった子はそこそこいそう
破壊しないswiftなんてswiftじゃないと思って使ってるけど、3で安定したと思っちゃった子はそこそこいそう
367デフォルトの名無しさん (ワッチョイ 3b0f-bNqD)
2017/04/18(火) 00:31:05.68ID:nxzSbT3m0 >>355
こんなぶれぶれの独善言語についてってる奴の気が知れんわ
こんなぶれぶれの独善言語についてってる奴の気が知れんわ
368デフォルトの名無しさん (アウアウウー Saaf-vZSP)
2017/04/18(火) 00:36:29.63ID:84Yej/faa そんな言語のスレをヲチしてるお前もなー
369デフォルトの名無しさん (ワッチョイ fbf9-kKgC)
2017/04/18(火) 10:13:46.23ID:GdlQD+8N0 型表記中の「->」は右結合ってことでいいんだよね?
370デフォルトの名無しさん (ワッチョイ 1ff3-vZSP)
2017/04/18(火) 12:14:40.44ID:Q87oUFLG0 https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Types.html#//apple_ref/swift/grammar/function-type
If a function type includes more than a single arrow (->), the function types are grouped from right to left.
For example, the function type (Int) -> (Int) -> Int is understood as (Int) -> ((Int) -> Int)
―that is, a function that takes an Int and returns another function that takes and returns an Int.
引数は必ず()で囲まないといけないから、もし ((Int) -> (Int)) -> Int なら前半の()が必須
そういう意味でも (Int) -> ((Int) -> Int) としか解釈できない
If a function type includes more than a single arrow (->), the function types are grouped from right to left.
For example, the function type (Int) -> (Int) -> Int is understood as (Int) -> ((Int) -> Int)
―that is, a function that takes an Int and returns another function that takes and returns an Int.
引数は必ず()で囲まないといけないから、もし ((Int) -> (Int)) -> Int なら前半の()が必須
そういう意味でも (Int) -> ((Int) -> Int) としか解釈できない
371デフォルトの名無しさん (ワッチョイ 5bf3-CJGP)
2017/04/18(火) 12:45:37.54ID:3Ay0w4VK0 >>370
THX
原則は、
1. 引数は()で囲む。囲まないと、error: require parentheses
2. 右から左方向へグループ化
例:
(S) -> (T) -> (U)
は
(S) -> ((T) -> (U))
と解釈される。
THX
原則は、
1. 引数は()で囲む。囲まないと、error: require parentheses
2. 右から左方向へグループ化
例:
(S) -> (T) -> (U)
は
(S) -> ((T) -> (U))
と解釈される。
372デフォルトの名無しさん (ワッチョイ 5bf3-CJGP)
2017/04/18(火) 12:47:38.45ID:3Ay0w4VK0 Reactive.itemsメソッドがこんな感じ
public func items<S: Sequence, Cell: UICollectionViewCell, O : ObservableType>
(cellIdentifier: String, cellType: Cell.Type = Cell.self)
-> (_ source: O)
-> (_ configureCell: @escaping (Int, S.Iterator.Element, Cell) -> Void)
-> Disposable where O.E == S {
以下略
public func items<S: Sequence, Cell: UICollectionViewCell, O : ObservableType>
(cellIdentifier: String, cellType: Cell.Type = Cell.self)
-> (_ source: O)
-> (_ configureCell: @escaping (Int, S.Iterator.Element, Cell) -> Void)
-> Disposable where O.E == S {
以下略
373デフォルトの名無しさん (ササクッテロラ Sp6f-+fOQ)
2017/04/18(火) 13:01:42.04ID:XspPM/3op 右から左方向が優先度高いのか
左から右に流してるイメージで逆方向のがしっくりくるが
関数型の思想としてそういうものだっけかな
左から右に流してるイメージで逆方向のがしっくりくるが
関数型の思想としてそういうものだっけかな
374デフォルトの名無しさん (アウアウウー Saaf-vZSP)
2017/04/18(火) 13:28:19.45ID:AUE9Rrcca 俺は若干右曲がり
375デフォルトの名無しさん (スプッッ Sd3f-bNqD)
2017/04/18(火) 20:55:52.53ID:L5MP9LYsd 可読性の高いSwift()
376デフォルトの名無しさん (ワッチョイ 1f3c-xLT8)
2017/04/18(火) 21:25:36.15ID:dlRGmA3w0377デフォルトの名無しさん (ササクッテロロ Sp6f-vZSP)
2017/04/18(火) 22:03:34.33ID:Cbc6ZCQLp Ojb-C使ってても毎年のようにAPIレベルでDeprecatedが量産されるから
Obj-Cなら変更コストが低いってわけでもない
Obj-Cなら変更コストが低いってわけでもない
378デフォルトの名無しさん (スプッッ Sd3f-IVUN)
2017/04/19(水) 10:54:38.73ID:aMVSfr6md379デフォルトの名無しさん (ワッチョイ 5bf3-CJGP)
2017/04/19(水) 11:22:12.10ID:2o4P71X40 >>378
let fn1: ((Int, Int)) -> Void = { x in
print(x.0 + x.1)
}
fn1((1,2)) // => 3
//fn1(1,2) // error: extra argument、引数が多すぎ!
let fn1: ((Int, Int)) -> Void = { x in
print(x.0 + x.1)
}
fn1((1,2)) // => 3
//fn1(1,2) // error: extra argument、引数が多すぎ!
380デフォルトの名無しさん (スプッッ Sd3f-IVUN)
2017/04/19(水) 12:18:48.30ID:aMVSfr6md >>379
ということは、元々括弧を省略した書き方をしなければ問題ないわけね
ということは、元々括弧を省略した書き方をしなければ問題ないわけね
381デフォルトの名無しさん (スプッッ Sd3f-bNqD)
2017/04/19(水) 20:19:15.30ID:Vhy+qJiMd Swiftの関数の書き方に近いシンタックスの言語ってある?
382デフォルトの名無しさん (ワッチョイ 1ff3-vZSP)
2017/04/19(水) 22:12:07.64ID:RnslI5DB0 たくさんある
383デフォルトの名無しさん (アウアウエー Sa82-p2Ky)
2017/04/20(木) 14:01:17.17ID:sKYAHXfOa たくさんあるかは分からんけど、Rustは比較的似てる気がする
Go とか Kotlin辺りもちょっと似てるかな
Go とか Kotlin辺りもちょっと似てるかな
384デフォルトの名無しさん (ササクッテロラ Sp23-G776)
2017/04/20(木) 14:07:23.48ID:Vb04xDKlp Java8も近い気がする
385デフォルトの名無しさん (ワッチョイ 4af3-p2Ky)
2017/04/20(木) 17:04:27.86ID:VpJy20l50 String再実装の第一弾と複数行文字列リテラルがレビュー通った
386デフォルトの名無しさん (ワッチョイ bff3-QkHB)
2017/04/21(金) 08:24:24.47ID:ZBCs1arm0387デフォルトの名無しさん (ワッチョイ 4af3-p2Ky)
2017/04/21(金) 12:37:01.73ID:PVM41qEx0 let json = """
{
"lang": "Swift"
}
""""
json == "{¥n ¥"lang¥": ¥"Swift¥"¥n}"
閉じ"""の行と同じインデントが自動的に削除される(行頭が閉じ"""に揃う)
便利
{
"lang": "Swift"
}
""""
json == "{¥n ¥"lang¥": ¥"Swift¥"¥n}"
閉じ"""の行と同じインデントが自動的に削除される(行頭が閉じ"""に揃う)
便利
388デフォルトの名無しさん (ササクッテロラ Sp23-p2Ky)
2017/04/21(金) 12:49:25.47ID:z0f2AZORp 発展途上の言語はどんどん便利になるからいいね
389デフォルトの名無しさん (ワッチョイ 7f54-ddVw)
2017/04/22(土) 08:43:07.39ID:kAxmCg/50 >>387
詳しく!
詳しく!
390デフォルトの名無しさん (ワッチョイ de92-UbXF)
2017/04/22(土) 15:30:44.86ID:z7G2zYcp0 こんなものが今頃入るとか発展途上すぎるんだよ
391デフォルトの名無しさん (アウアウエー Sa82-p2Ky)
2017/04/22(土) 15:35:08.08ID:PgVA7Plza Javaにはないけどな
Swiftのはインデントまで考慮されて洗練されてるし
Swiftのはインデントまで考慮されて洗練されてるし
392デフォルトの名無しさん (ワッチョイ de92-UbXF)
2017/04/22(土) 15:42:53.58ID:z7G2zYcp0 インデント考慮って逆に分かりづらくなるような気が。。。
Optionalもそうだと思うけどSwiftって一見便利そうに見えて却って面倒くさくなってる要素が多いと思う
Optionalもそうだと思うけどSwiftって一見便利そうに見えて却って面倒くさくなってる要素が多いと思う
393デフォルトの名無しさん (ワッチョイ 7f54-2dAw)
2017/04/22(土) 15:58:34.23ID:kAxmCg/50 >>392
あんまり、ルールが多くなると、C++みたく、不人気になるんだよねぇ。
あんまり、ルールが多くなると、C++みたく、不人気になるんだよねぇ。
394デフォルトの名無しさん (ササクッテロリ Sp23-G776)
2017/04/23(日) 12:04:02.69ID:OKIxwLfDp395デフォルトの名無しさん (ワッチョイ 8a3c-06LW)
2017/04/23(日) 13:12:37.68ID:PRvAU6qE0 >>393
今のSwiftも十分ルール多いと思うぞ
今のSwiftも十分ルール多いと思うぞ
■ このスレッドは過去ログ倉庫に格納されています
