User loginNavigation |
Cross language runtimesAbstract Interface Types in GNAT: Conversions, Discriminants, and C++Abstract Interface Types in GNAT: Conversions, Discriminants, and C++. Javier Miranda and Edmond Schonberg.
The addition of interface types, of the type found in Java, to Ada2005 presented compiler writers with an implementation challenge. This is a third paper in a series describing the implementation of interfaces in the GNAT Ada compiler (an earlier paper dealt with synchronized interfaces, an interesting special case). The present paper deals mainly with issues caused by interface type conversions, and the related data layout issues. Of special interest is section 6 which shows how to write a C++/Ada multi-language program, in which method calls can be dispatched across language boundaries. Handling the multiple inheritance in the C++ code in this example is possible because the base classes have only pure virtual functions. By Ehud Lamm at 2007-04-14 15:52 | Cross language runtimes | Implementation | OOP | login or register to post comments | other blogs | 7879 reads
Misc NewsI'm back... Going through my RSS feeds, two items caught my attention: Tim Bray: Charles Nutter and Thomas Enebo, better known as “The JRuby Guysâ€, are joining Sun this month. Jon Udell: Why argue about dynamic versus static languages when you can use both? Which discusses, among other things, why the first three versions of the IronPython compiler were written in Python, but today it's written in C#. By Ehud Lamm at 2006-09-09 08:48 | Cross language runtimes | General | Ruby | 7 comments | other blogs | 8241 reads
eWeek: Sun Digging Deep for Dynamic Language SupportA report on Gilad Bracha's presentation at Lang.NET 2006 entitled "Dynamically Typed Languages on the Java Platform". We discussed several of the ideas mentioned, but I think we should continue to follow this story. Gilad Bracha: Will Continuations continue?
Many here will not like the answer. This issue was discussed here mnay time, of course, but I think it is of interest to know what the people at Sun are thinking... Tim Bray's response is also worth checking out, if only for the sake of this sound bite: The worst AJAX apps are like bad Nineties VB. By Ehud Lamm at 2006-05-20 11:57 | Cross language runtimes | Functional | Software Engineering | 46 comments | other blogs | 15806 reads
Lang .NET 2006The .NET Programming Languages And Compilers Symposium: Lang .NET 2006 Seattle, Washington, United States, August 1-3, 2006 Call for contributions Lang .NET 2006 is a forum for discussion of programming languages, managed execution environments, compilers, multi-language libraries, and integrated development environments. It provides an excellent opportunity for programming language implementers and researchers from both industry and academia to meet and share their knowledge, experience, and suggestions for future research and development in the area of programming languages.Lang.NET 2006 will be held from August 1-3 on the Microsoft corporate campus in Redmond immediately after OSCON 2006 in Portland. The conference program will focus on the pragmatics and experience of designing languages, implementing compilers, and building language tools that target managed execution platforms such as the .NET CLR and other implementations of the ECMA CLI. That is, on how to get real programming tools into the hands of real programmers to solve real problems, and on how researchers and practitioners can learn from each other to make this happen. If you are a language designer, compiler writer, or tool builder in industry or academia, Lang.NET 2006 is a unique opportunity to directly interact with the architects of Microsoft language platforms. Microsoft language technologist will be very active participants in the conference but at least 50% of the program is reserved for presentations by non-Microsoft employees. Each day is concluded with a panel debate. In the evenings there will be ample opportunity for networking during the social events and dinners. The program committee invites 1-page abstracts of experience reports, demonstrations and presentations related to programming language and compilers to be given at the symposium. There will be two types of talks:
We are looking for lively presentations that are provocative, stimulating and educational. Submit your proposals at here. Areas of interest include but are not limited to:
Dates
Conference chair Thottam Sriram, Microsoft Program committee
By Erik Meijer at 2006-04-18 18:08 | Cross language runtimes | 43 comments | other blogs | 23580 reads
JRubyI just noticed this project and since we like discussing language-in-a-language projects, I thought I'd mention it. It seems that they are almost ready to run Rails. Now that's going to be cool! By Ehud Lamm at 2006-04-12 11:51 | Cross language runtimes | Ruby | 1 comment | other blogs | 10590 reads
Class decorators in Python
More + links: here. By Ehud Lamm at 2006-03-30 15:48 | Cross language runtimes | OOP | Python | login or register to post comments | other blogs | 11421 reads
Jon Udell: Multi-language runtimesNot a technical perspective, but one that might be important none the less,
By Ehud Lamm at 2006-02-27 15:16 | Cross language runtimes | 12 comments | other blogs | 152427 reads
An Overview of the Singularity ProjectSingularity is a research project in Microsoft Research that started with the question: what would a software platform look like if it was designed from scratch with the primary goal of dependability? Singularity is working to answer this question by building on advances in programming languages and tools to develop a new system architecture and operating system (named Singularity), with the aim of producing a more robust and dependable software platform. Singularity demonstrates the practicality of new technologies and architectural decisions, which should lead to the construction of more robust and dependable systems... An interesting overview of what sounds like an intersting project. The choice of implementation language is also interesting:
Singularity is written in Sing#, which is an extension to the Spec# language developed in Microsoft Research. Spec# itself is an extension to Microsoft’s C# language that provides constructs (pre- and post-conditions and object invariants) for specifying program behavior. Specifications can be statically verified by the Boogie verifier or checked by compiler-inserted run-time tests. Sing# extends this language with support for channels and low-level constructs necessary for system code....integrating a feature into a language allows more aspects of a program to be verified. Singularity’s constructs allow communication to be statically verified. An interesting aspect is the support for meta-programming, which is implemented in an unusal manner:
Compile-time reflection (CTR) is a partial substitute for the CLR’s full reflection capability. CTR is similar to techniques such as macros, binary code rewriting, aspects, meta-programming, and multi-stage languages. The basic idea is that programs may contain place-holder elements (classes, methods, fields, etc.) that are subsequently expanded by a generator. Many other intersting design decisions are discussed in the paper (e.g., various DbC facilities), so do check it out. By Ehud Lamm at 2005-10-28 14:54 | Cross language runtimes | Implementation | Meta-Programming | Parallel/Distributed | Software Engineering | 30 comments | other blogs | 35563 reads
Invokedynamic
Gilad Bracha:
Basically, it will be a lot like invokevirtual (if you don’t know what that is, either open a JVM spec and find out, or stop reading). The big difference is that the verifier won’t insist that the type of the target of the method invocation (the receiver, in Smalltalk speak) be known to support the method being invoked, or that the types of the arguments be known to match the signature of that method. Instead, these checks will be done dynamically. The goal: Improve the support for dynamically type checked languages on the JVM, of course. By Ehud Lamm at 2005-09-29 21:06 | Cross language runtimes | 21 comments | other blogs | 46140 reads
|
Browse archives
Active forum topics |
Recent comments
23 weeks 2 days ago
23 weeks 3 days ago
23 weeks 3 days ago
45 weeks 4 days ago
49 weeks 6 days ago
51 weeks 3 days ago
51 weeks 3 days ago
1 year 2 weeks ago
1 year 6 weeks ago
1 year 6 weeks ago