Last active
June 20, 2017 02:58
-
-
Save kavu/79f05be2383e97843867 to your computer and use it in GitHub Desktop.
Minimal Swift command line Hello World
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# So you've installed XCode 6 Beta | |
# Now we could use Swift toolchain to build a minimal | |
# command line Hellow World | |
# let's set new Developer Toolchain bundled with Xcode6-Beta.app | |
# as default toolchain | |
# sudo xcode-select -s /Applications/Xcode6-Beta.app/Contents/Developer | |
# alias for Swift binary | |
# export SWIFT=/Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift | |
# simple program | |
#echo 'println("Hello World")' > swifthello.swift | |
# build stuff | |
#$SWIFT -sdk $(xcrun --show-sdk-path --sdk macosx) swifthello.swift | |
## Thanks to @caius, lines 10-17 now obsolete. Just use `xcrun' | |
echo 'println("Hello World")' > swifthello.swift | |
xcrun swift swifthello.swift | |
# run stuff | |
./swifthello | |
# By the way, Swift had a lot of options, invoke with `xcrun swift --help' | |
# Hope that helps |
Below example is more simpler :
hello.swift
print("Hello World");
then
swift hello.swift
output
Hello World
or you could do this:
echo print("Yo Planet") | swift
Welcome to Apple Swift version 3.1 (swiftlang-802.0.53 clang-802.0.42). Type :help for assistance.
Yo Planet
Can't figure out how to suppress the welcome blurb, there is no -q (aka quiet) argument.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
When I tried this, it couldn't find
println
, but I swapped it withprint
and it worked. Also note that I seem to haveswift
as a binary in/usr/bin/swift
, so for me it was justecho 'print("Hello World")' > hw.swift && swift hw.swift
. Amusingly, since runningswift
without args starts a repl, which reads from stdin, I was also able toecho 'print("Hello World")' | swift