Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/klange/taylor

Swift on bare metal. Explorations of compiling Swift code without a standard library.
https://github.com/klange/taylor

Last synced: about 2 months ago
JSON representation

Swift on bare metal. Explorations of compiling Swift code without a standard library.

Awesome Lists containing this project

README

        

# Taylor

Swift on bare metal.

## Requirements

Obviously, you need the Swift compiler, which should also get you a working Clang. Make sure your Clang supports bare ELF targets. I'm also using `yasm` for some assembly, and you'll need an `ld` that can spit out `elf_i386`.

## How it Works

We tell `swiftc` to spit out LLVM intermediate representation, and then have Clang (which is much more reasonable about retargeting) build it into an object file, and then we link that together with some Multiboot stuff.

## Swift standard library

What's in here right now doesn't need any Swift runtime support. That will change very quickly as we try to add support for things like arrays, classes, structs, strings, etc.