se2016 exotic ruslan shevchenko "programming languages landscape new & old ideas"

9
PROGRAMMING LANGUAGES LANDSCAPE OLD & NEW IDEAS

Upload: inhacking

Post on 12-Jan-2017

42 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"

PROGRAMMING LANGUAGES LANDSCAPEOLD & NEW IDEAS

Page 2: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"

PROGRAMMING LANGUAGES LANDSCAPE: OLD & NEW IDEAS

What tomorrow programming will be like.

LanguagesComplexity

Hardware

Worlds

Learning CurveExpressibility

Layers

Page 3: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"
Page 4: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"
Page 5: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"

ASM

PASCAL

BASIC

JAVASCRIPT

ASM

C/C++

TCL

JAVA

C

RUST

SCALA (?)

JULIA (?)

CREOL ENGLISH ?

???

QUANTUM ???

2000 - 202080 - 2000

2020 - 20XX

J* ??

20XX - YYYY

COBOL

Page 6: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"

CREOLE LANGUAGEPidgin English (Hawaii Official)

Simplified grammar;

natural learning curve;

Use language without knowing one

Page 7: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"

Hardware

1 Processor Unit

1 Memory Unit

1 Machine

N Different Processors (CPU, GPU, NTU, QTU)

N Different Storage Systems (Cache, Mem, SSD, ..)

N Different Machines

PL: Main Language Constructs: still execution flows

Page 8: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"

val lines = load(uri) val count = lines.flatMap(_.split(“ “)) .map(word => (word, 1)) .reduceByKey(_ + _)

Scala, count lines:

// Same code, different execution

Page 9: SE2016 Exotic Ruslan Shevchenko "Programming languages landscape new & old ideas"

See during SE 2016.

3 Sep. 2016

TBD