- Introduction to Functional Programming Johannes Weiß - https://vimeo.com/100786088
- ReactiveCocoa at MobiDevDay Andrew Sardone - https://vimeo.com/65637501
- The Future Of ReactiveCocoa Justin Spahr-Summers - https://www.youtube.com/watch?v=ICNjRS2X8WM
- Enemy of the State Justin Spahr-Summers - https://www.youtube.com/watch?v=7AqXBuJOJkY
- WWDC 2014 Session 229 - Advanced iOS Application Architecture and Patterns Andy Matuschak - https://developer.apple.com/videos/play/wwdc2014/229/
- Functioning as a Functionalist Andy Matuschak - https://www.youtube.com/watch?v=rJosPrqBqrA
- Controlling Complexity in Swift Andy Matuschak - https://realm.io/news/andy-matuschak-controlling-complexity/
This file contains hidden or 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
NSDate *date = [NSDate new]; | |
NSDateFormatter *dateFormatter = [NSDateFormatter new]; | |
dateFormatter.locale = [NSLocale localeWithLocaleIdentifier:@"nl_NL"]; | |
dateFormatter.dateStyle = NSDateFormatterFullStyle; | |
dateFormatter.formattingContext = NSFormattingContextDynamic; // this is the important setting | |
NSString *dateString = [dateFormatter stringFromDate:date]; | |
NSString *s1 = [NSString stringWithFormat:@"Foo %@", dateString]; // "Foo dinsdag 13 december 2016" |
This file contains hidden or 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
Process: Xcode [59837] | |
Path: /Applications/Xcode-beta.app/Contents/MacOS/Xcode | |
Identifier: com.apple.dt.Xcode | |
Version: 7.1 (9069) | |
Build Info: IDEFrameworks-9069000000000000~10 | |
Code Type: X86-64 (Native) | |
Parent Process: ??? [1] | |
Responsible: Xcode [59837] | |
User ID: 1199935289 |
This file contains hidden or 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
import Foundation | |
extension String { | |
var isHomogeneous: Bool { | |
if lengthOfBytesUsingEncoding(NSUTF8StringEncoding) == 0 { | |
return true | |
} | |
var homogeneous = true | |
var character: NSString? |
This file contains hidden or 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
import Foundation | |
struct Dice : SequenceType { | |
typealias Generator = GeneratorOf<Int> | |
let dice:[Int] | |
init (rolls:Int, sides:Int) { | |
dice = Array(count:rolls, repeatedValue:sides) | |
} | |
func roll() -> Int { | |
return dice.map { Int(arc4random_uniform(UInt32($0 - 1)) + 1) } |
This file contains hidden or 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
// | |
// Warnings.xcconfig | |
// | |
// The list of warnings we (don’t) use, and the reasons why. | |
// | |
// :MARK: Warnings in use: | |
// :MARK: -everything | |
// We want the best possible diagnostics, so we simply enable everything that exists, and then opt–out of what doesn’t make sense for us. | |
// | |
// :MARK: - Warnings not to be promoted: |
The UIView animation API results in different CAAnimations being added to the layer on iOS 7 and 8. Changing the bounds of a view like this:
[UIView animateWithDuration:0.3
animations:^{
self.myView.bounds = CGRectMake(0, 0, 100, 100); // was (0,0) (200, 200)
}];
will result in one animation for the bounds
key path being added to the backing layer if you are running iOS 7:
This file contains hidden or 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
enum FizzBuzz { | |
case fizz | |
case buzz | |
case fizzBuzz | |
case number(Int) | |
init(rawValue: Int) { | |
switch (rawValue % 3, rawValue % 5) { | |
case (0, 0): self = .fizzBuzz | |
case (0, _): self = .fizz |
This file contains hidden or 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
#! /usr/bin/ruby | |
require 'pathname' | |
platform = "iphonesimulator" # or "macosx" | |
contents_xcplayground = <<XML | |
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |
<playground version='1.0' sdk='#{platform}'> | |
<sections> | |
<code source-file-name='section-1.swift'/> | |
</sections> |
The easiest way to start using the LLVM C++ API by example is to have LLVM generate the API usage for a given code sample. In this example it will emit the code required to rebuild the test.c
sample by using LLVM:
$ clang -c -emit-llvm test.c -o test.ll
$ llc -march=cpp test.ll -o test.cpp
NewerOlder