Paul Krill
Editor at Large

Apple to reimplement Swift compiler driver in Swift

news
Oct 11, 20192 mins

The goal is to replace the current Swift driver with a more extensible, maintainable, and flexible Swift code base

falling swift
Credit: Dominic Sherony

With the new swift-driver project, Apple is developing a new implementation of the Swift compiler driver. Written in Swift, the new Swift compiler driver is intended to replace the existing driver, which is written in C++, with a more extensible and maintainable code base.

The new Swift compiler driver is still a work in progress, with Apple pursuing a goal to provide a drop-in replacement for the existing driver. This means there is a fixed initial feature set to implement prior to deprecating and removing the existing driver. The development plan covers the feature set and describes tasks to improve the Swift driver including code clean-ups, improving testing, adding missing features, and integrating with existing systems.

The Swift compiler driver is a program to coordinate the compilation of Swift source code into compiled results including executables, libraries, object files, and modules. This program is used to invoke builds of Swift code such as swift or swiftc from the command line, and also is invoked by tools such as the Swift Package Manager and Xcode.

Other goals of swift-driver include:

  • Offering a library-based architecture for better integration with build tools.
  • Providing a platform for experimenting with more efficient build models for Swift.
  • Leveraging existing Swift build technologies such as SwiftPM and llbuild.

Accessing swift-driver

Apple has posted instructions on getting started with swift-driver in GitHub, including using swift-driver in place of the current Swift driver. Contributions to the project are welcome.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author