560 likes | 969 Views
Polyglot Programming. Mark Bloodworth Microsoft. Polyglot Programming :. is. “ Programming in more than one language in the same context ” Nick Watts. Origins :. p olyglot : a person who knows or uses several languages Compact Oxford English Dictionary. Neal Ford 2006. Meme Agora.
E N D
Polyglot Programming Mark BloodworthMicrosoft
“Programming in more than one language in the same context” Nick Watts
polyglot: a person who knows or uses several languages Compact Oxford English Dictionary
Neal Ford2006 Meme Agora
“The times of writing an application in a single general purpose language is over” Meme Agora
Bertrand Meyer2002 Dr.Dobb's
“This ability to mix languages offers great promise for the future of programming languages” Dr.Dobb's
Babel2000 Lawrence Livermore National Laboratory
“New languages for HPC will not replace the current patchwork” Lawrence Livermore National Laboratory
C# CSS HTML XML SQL Javascript
class Program{ static void Main(string[] args) {Console.WriteLine("Hello World"); } }
delegate byte[] AsyncOpenMethod(string filename);static byte[] AsyncOpen(string filename){ byte[] pixels = null; using (BinaryReaderbr= new BinaryReader(new FileStream(filename, FileMode.Open))) { Pixels = br.ReadBytes(4096); }}static void AsyncOpenTheFile(string filename){ byte[] pixels = null;AsyncOpenMethodaom = new AsyncOpenMethod(Class1.AsyncOpen);IAsyncResultiar = aom.BeginInvoke(filename, null, null); while (!iar.IsCompleted) { //Do something? }} The Polyglot Programmer: Mixing and Matching Languages
async{use inStream = File.OpenRead(filename)let! Pixels = inStream.AsyncRead(4096)} The Polyglot Programmer: Mixing and Matching Languages
>8500 Languages HOPL
Imperative Object-Oriented Functional Declarative
General Domain Specific
Strong Weak Dynamic Static
+ Maintenance Productivity Perspective Polyglot Programming - A Business Perspective
- Maintenance Knowledge Tools Polyglot Programming - A Business Perspective