Skip to main content

Command Palette

Search for a command to run...

Swiftの将来を期待させるプレゼン

Updated
1 min read

最近、アップルのエコシステムや、モバイル向けのカンファレンス以外でSwiftのトークを3つほど見て、今後のSwiftの発展を期待させる内容だったので、紹介させてください。

[CppNow 2023] Introducing a Memory-Safe Successor Language in Large C++ Code Bases

John McCall / Apple, Swift Language Steering GroupのChair

  • C++のカンファレンスCppNowでの公演
  • Appleではシステムのカーネルからアプリの開発までC, C++, Objective-C, Objective-C++などの先行言語を利用してきた
  • しかし、安全性などの観点からこれらの先行言語を置き換える必要があると認識している
  • 先行言語は複数あるものの、その後継言語としてはSwiftで統一する計画と発表
  • それを実現するために、C++との相互運用性に取り組んでいて、徐々に移行を可能にした

[Strange Loop 2023] Swift as C++ Successor in FoundationDB

Konrad Malawski / Apple, Swift Server Workgroup

  • FoundationDBはAppleが買収してOpen Source化した分散key-value DB
  • iCloudなどのサーバーサイドで利用されている
  • FoundationDBではC++のソースジェネレータとして作成されたFlow言語で10年開発されている
  • そのFlow言語の改善を模索していたが、根本的にC++の後継としてSwiftを採用するに至った
  • パフォーマンスを犠牲にすることなく、Swiftを導入できた

[GodotCon 2023] Paying my Debt to Society: SwiftGodot

Miguel de Icaza

  • GnomeやMono (Ximian, Xamarin)を立ち上げてきた
  • C#, MonoをUnityやUnreal、PS4、Vitaなどゲーム開発で利用できるよう尽力
  • C#をオープンソースのゲームエンジンのGodotに入れるために資金確保なども行なった
  • ただ、C#をゲームで利用する際にガーベッジコレクションが支障になり、様々な挑戦したが解決には至らなかった
  • Swiftに期待を寄せるように
  • GodotのSwiftバインディングであるSwiftGodotに取り組んでいる
  • Swift利用することで、C#で直面していた問題を解決したいとC#を広めてしまった責任感から取り組んでいる
  • 将来的にC/C++での新しいコードが減らせるよう、Godot EditorをSwiftで書くことも提案

More from this blog

swift-collectionsのSortedCollectionsを試す方法

swift-collectionsを読み込む際にmainブランチを指定する 2024年4月14日現在のswift-collectionsのリリースバージョン1.1.0では、SortedCollectionsが含まれていません(取り除かれました…)。そのため、SortedCollectionsを利用するにはリリースブランチではなく、mainブランチを利用する必要があります。 package.swiftで指定する場合は、下記のようにdependenciesでブランチを指定します。 // swift-...

Apr 14, 20241 min read

Swift 5.9からの `swift package init` の変更点

先日、 swift package init コマンドを使った際にswift 5.9に合わせた変更点に気づきました。 情報があまりなく、私自身が戸惑ったこともあり、コマンドを実行する時の--typeを基準にどういった変更があったのか概要をまとめたいと思います。 Init template cleanup #6144 Swift Fromsでの議論によると、狙いとしてはシンプルなユースケースへの最適化にあるようです。 system-module、manifestと、empty これまであった、 s...

Dec 25, 20231 min read

アルゴ式: 961 Q4. 二部グラフ判定 (DFS ver.) (Swift)

Q4. 二部グラフ判定 (DFS ver.) なんとか毎日問題は解いていたけれども、ブログは空いてしまった Bool?に対してSwitch文を書こうとしたけれども、Optionalの場合は、.some()を挟むというので方針を変更 提出したコードはその名残が残ってしまった 提出はしていないけれども簡単な修正もした このブログを書いている際に、改めてSwitch分で書いたりもした(1, 2) 提出 AC

Jun 18, 20221 min read

Continuous Tumbling

123 posts

Learning Swift/Swift UI, and competitive programming. (he/him)