Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Дмитрий Нестерук «Хорошие идеи в современных языках программирования»

Дмитрий Нестерук «Хорошие идеи в современных языках программирования»

Прогресс не стоит на месте: старые языки вроде C# продолжают развиваться, а новые, такие как Rust и Kotlin изобилируют смелыми идеями. В этом докладе мы поговорим, о том какие же фичи современных языков являются самыми полезными и интересными, а также немного потеоретизируем на тему того, какие еще известные, но пока не реализованные, фичи были бы полезны в современных языках программирования.

DotNetRu

June 15, 2017
Tweet

More Decks by DotNetRu

Other Decks in Programming

Transcript

  1. • • int [,] x = new int[2,2] { {

    1,2 }, {3, 4} }; • x = [1 2; 3 4] • • • • Z = [A B] • X' X^-1 •
  2. X = [1 2; 3 4]; X = [ 1

    2 3 4 ]; X * Y; X .* Y;
  3. { … } (x:i32) -> float { … } f

    := (x:i32) -> float { … } f := (x:i32) -> float { … }
  4. data class Person(var name:String, var age:Int) equals()/hashCode() toString() val (name,

    age) = john val john = Person("John", 23) val jane = john.copy(name = "Jane")
  5. struct Foo SOA { int x; bool b; } Foo

    foos[128]; int[128] bool[128]
  6. x.Contains(y) !x.Contains(y) x.Count == 0 x.All(e => y.Contains(e)) x.Remove(e =>

    y.Contains(e)) y ∈ x or x ∋ y y ∉ x x = ∅ y ⊂ x x ∖= y ∀x : {x ∈ items | x > 0} { print(x) }