Skip to content

Latest commit

 

History

History
58 lines (53 loc) · 2.17 KB

the-perfect-programming-language.md

File metadata and controls

58 lines (53 loc) · 2.17 KB

THE PERFECT PROGRAMMING LANGUAGE

Michael R. Bernstein / Code Climate @mrb_bk

  • Introduction
    • Box of records
    • Sun Ra, 1968 (jazz composer, performer)
    • FOUND: The Perfect Programming Language by J. Piano 😮
    • A perfect human language can never really exist
    • McCarthy, Lisp
  • The Perfect Language (J. Piano’s)
    • Semantics
    • Type system
    • Macros
    • Data queries
    • Declarative
    • Concurrency
    • Distributed
    • Object-Oriented
    • Functional
    • Gradual Typing
      • Dynamic script, evolved, enriched over time with types as domain concepts solidify (Swift?)
    • Data Types
    • Pattern Matching
    • Data Structures
    • Compiles to a small core language (Haskell -> Hask)
      • OCaml allows you to target intermediary languages, for example
    • Portable
    • Formally verifiable
      • Implementations of algorithms
    • Syntax doesn’t matter, just allow higher level language to compile to this language
  • ☝️ Found in a Notebook 😮
  • Would you use this language now?
    • Why you shouldn’t?
      • It’s not real lolol
      • The Perfect programming language doesn’t exist
      • Neither does the perfect programming language
    • Constructed (natural) languages, intended to be better than the ones we use
      • A ⚠️ to us when deciding what languages to use
  • The perfect programming language is the one you’re using right now
    • Measured by what they’re capable of creating
    • Even the most maligned languages are capable of creating wonderful things
  • How should we measure the success of a language, if not perfection?
    • Languages succeed because of people, and because of the communities around them, that we build and nourish
    • Languages succeed because of the stuff that we build
    • Languages succeed because of the tools we create to support them
  • Languages are not killing themselves to be perfect, which can infuriate us
    • You’re missing the point if that’s what you’re spending your time focusing on
  • We should not aim for perfection. If that’s our aim, we should recalibrate.
    • When they come up with a good idea for their overly complex framework, steal it 😆

Metadata


Tue Jun 28 10:11:40 PDT 2016