User Tools

Site Tools


2013:an_integrated_programming_language

Back to proposals-2013

Title: An integrated programming language
Proposer: julian_smith
Type: Presentation
Duration: 45/90 minutes
Description:
The programming world is full of compromise; popular languages have serious flaws, better languages are not popular and even the best languages have significant restrictions.

However there are still many examples of languages doing things well enough to suggest ways of doing things in a better and more unified way. For all its well-known limitations, C++ demonstrates that a single language can support multiple programming styles while imposing no ultimate performance limits. Python shows that syntax doesn't need to be confusing, and that introspection can be easy to use. Even the humble Unix shell demonstrates that one can have a syntax that is convenient to use from the command line.

Python also exposes what i think is an oddity in how most languages define functions; this leads to a way of embedding the components of a parser and code-generator into a language, allowing the programmer an enormous amount of flexibility. E.g. the use of sub-languages for particular pieces of code, supporting advanced optimisation techniques, and providing for almost unlimited expansion of the language as required.

Rather than targeting a virtual machine or C, the system i've been working on generates machine code; so for example coroutines can be implemented within the language.

I'm not necessarily expecting my particular take on how programming langages should work, to be widely adopted. But the current state of programming languages is frankly embarrasing, and i would like to think that we could do so much better if only we tried a little harder to consider radical changes to the systems we use for so much of our working life.

[MAYBE. Could go either way. Ewan]
Roger: maybe from me too
Asti: I too am ambivalent so, as usual, suggest a 45 min if anything

2013/an_integrated_programming_language.txt · Last modified: 2016/06/11 14:05 by 127.0.0.1