Created
September 21, 2011 18:51
-
-
Save pmbauer/1232966 to your computer and use it in GitHub Desktop.
Strangeloop Programming Languages Panel
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
Programming Languages Panel | |
September 20, 2011 | |
StrangeLoop | |
St. Louis, Missouri | |
Members: | |
Dean Wampler: Moderator | |
Rich Hickey: Clojure | |
Jeremy Ashkenas: CoffeeScript, NY Times | |
Dr. Gerald Sussman: MIT Prof, SICP | |
Allen Wirfs-Brock: Mozilla research fellow, project editor for ECMAScript 5 | |
Joe Palmer: F# project | |
Andrei Alexandrescu: researcher, D programming language | |
What is the worst idea in programming languages that afflict us today, and what can we do to make money from it? | |
Alexandrescu: parenthesis *joke* | |
Sussman: complex syntax | |
"syntactic sugar causes cancer of the semicolon" - perlis | |
"Syntax without representation is tyranny." | |
Hickey: unlabeled mutability | |
Ashkenas: mathematics envy | |
Wirfs-Brock: source code in filesystem | |
Palmer: focus on code rather than data | |
Alexandrescu: dynamic scoping | |
implicit def of symbols is "typo-oriented programming" | |
Wampler: nulls | |
What concepts and constructs are the most important to express in a programming language? (Daniel Spiewak) | |
Hickey: functions and data | |
Wirfs-Brock: functions with data | |
Palmer: functions as data | |
Hickey: data as functions | |
How to introduce concepts of re-use and encapsulation for user-facing "programming" environments like Excel? | |
Wirfs-Brock: maybe not a space we want to be, trade-offs create worst of both worlds | |
must get data out of those systems into someplace that can be accessed by professional tools | |
don't impose concept of types in these systems | |
Palmer: generalized serialization formats, data/object mapping for re-use | |
Sussman: data dimensions as an option | |
Ashkenas: with appropriate abstractions, text is still the perfect way to represent code | |
How to harness mutli-core? | |
Wirfs-Brock: we are already doing it | |
Alexandrescu: no clear answer yet | |
highly specialized kernels: nlp, ml | |
Sussman: mechanism for interconnecting these modules is not a solved problem | |
need a dynamic, organic, self-organizing communication between modules | |
Hickey: stop telling the computer "how" to do things (Sussman says "yep") | |
Which language other than your own do you wish you had created? | |
Alexandrescu: Lisp | |
Palmer: COBOL, because no one else will say that *laughs* | |
Wirfs-Brock: Lisp | |
Ashkenas: Scheme | |
How to raise operating level of programmers or motivate programming in functional languages? | |
Hickey: you don't solve the problem at the programmer level | |
people in power must see the need and create the market | |
if demand is there, programmers will commit to learning | |
Sussman: break inertia of being like the person next to you | |
Palmer: ask forgiveness rather than permission, sneak stuff into production | |
Wirfs-Brock: environment drives adoption | |
internet drove Java adoption | |
GUI drove Smalltalk/OO adoption | |
Alexandrescu: take personal responsibility | |
demonstrate productivity to peers | |
On the cycle of "pop culture" software concepts ... | |
Wirfs-Brock: it's just fashion, cycles of human interest | |
Ashkenas: it's not just fashion | |
Sussman: It's not cyclical at all | |
pace of progression is so fast that what we do is made quickly obsolete | |
e.g. Lisp required a progression of hardware to become viable, re-spark interest | |
Palmer: don't focus on language, focus on problems | |
problems of the day drive language. | |
Alexandrescu: spiral but not cyclical | |
progressive refinement on each pass |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment