<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>http://groups.google.com/group/jvm-languages</id>
  <title type="text">JVM Languages Google Group</title>
  <subtitle type="text">
  An interest group surrounding language implementation for the JVM, including static, dynamic, functional, and anything else. Discussions on implementation strategy, pain points, and the future of the platform.
  </subtitle>
  <link href="/group/jvm-languages/feed/atom_v1_0_msgs.xml" rel="self" title="JVM Languages feed"/>
  <updated>2009-12-22T11:07:03Z</updated>
  <generator uri="http://groups.google.com" version="1.99">Google Groups</generator>
  <entry>
  <author>
  <name>Rémi Forax</name>
  <email>fo...@univ-mlv.fr</email>
  </author>
  <updated>2009-12-22T11:07:03Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/c4670d330c933311?show_docid=c4670d330c933311</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/c4670d330c933311?show_docid=c4670d330c933311"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  Le 22/12/2009 00:25, Rich Hickey a �crit : &lt;br&gt; If you have a type representing a type variable, it is. &lt;br&gt; [...] &lt;br&gt; R�mi
  </summary>
  </entry>
  <entry>
  <author>
  <name>Charles Oliver Nutter</name>
  <email>head...@headius.com</email>
  </author>
  <updated>2009-12-22T00:14:13Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/cabb804559ca5c77?show_docid=cabb804559ca5c77</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/cabb804559ca5c77?show_docid=cabb804559ca5c77"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  I don&#39;t know yet :) &lt;br&gt; I don&#39;t know whether the inference case is a requirement. &lt;br&gt; I don&#39;t know whether the fine-grained online reflective querying of &lt;br&gt; type information from arbitrary languages&#39; files is a requirement. &lt;br&gt; I&#39;m exploring options. &lt;br&gt; A lingua franca, yes, but a cumbersome one to deal with if your goal
  </summary>
  </entry>
  <entry>
  <author>
  <name>Rich Hickey</name>
  <email>richhic...@gmail.com</email>
  </author>
  <updated>2009-12-21T23:25:03Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/7e7d4b84f1e04dda?show_docid=7e7d4b84f1e04dda</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/7e7d4b84f1e04dda?show_docid=7e7d4b84f1e04dda"/>
  <title type="text">Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  But it&#39;s not just the coordinator, it&#39;s also the consumers (other &lt;br&gt; compilers). And we already know how to consume type information from &lt;br&gt; class files. &lt;br&gt; When, how, with what granularity, and how often to generate type &lt;br&gt; information seems to me orthogonal to how that information is &lt;br&gt; represented. Is there any evidence that the javax.lang representation
  </summary>
  </entry>
  <entry>
  <author>
  <name>Charles Oliver Nutter</name>
  <email>head...@headius.com</email>
  </author>
  <updated>2009-12-21T22:58:39Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/c7cf8aaf87af8a1e?show_docid=c7cf8aaf87af8a1e</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/c7cf8aaf87af8a1e?show_docid=c7cf8aaf87af8a1e"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  Sure, I agree with that. It&#39;s an outlier, in any case. &lt;br&gt; I think we need more than that: there&#39;s other non-Sun-javac Java &lt;br&gt; compilers out there, that would presumably want to participate. Maybe &lt;br&gt; we by presenting stubs we&#39;ll be good enough, but having a standard &lt;br&gt; interface for each language that can 1. generate stubs and 2. trigger
  </summary>
  </entry>
  <entry>
  <author>
  <name>Per Bothner</name>
  <email>p...@bothner.com</email>
  </author>
  <updated>2009-12-21T22:23:01Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/d8a853fda20f65da?show_docid=d8a853fda20f65da</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/d8a853fda20f65da?show_docid=d8a853fda20f65da"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  If the return type of an exported method depends on type inference &lt;br&gt; and that inference may have circular cross-module dependencies, &lt;br&gt; my reaction is: Don&#39;t do that. You can&#39;t define a stable API &lt;br&gt; that way, at least not a library API. It might be OK for a &lt;br&gt; module-private method (in the sense of JSR-294 - i.e. a group of
  </summary>
  </entry>
  <entry>
  <author>
  <name>Charles Oliver Nutter</name>
  <email>head...@headius.com</email>
  </author>
  <updated>2009-12-21T20:54:24Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/f46c7786bd2e41cc?show_docid=f46c7786bd2e41cc</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/f46c7786bd2e41cc?show_docid=f46c7786bd2e41cc"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  Perhaps we should take a deep breath before proceeding. Ready? &lt;br&gt; Eventually a shared compiler has to work with some API against some &lt;br&gt; &amp;quot;data&amp;quot; to coordinate different languages and the types they consume or &lt;br&gt; produce. Whether that data comes from class files (a common format) or &lt;br&gt; just appears to the coordinator as a set of interface-implementing
  </summary>
  </entry>
  <entry>
  <author>
  <name>John Cowan</name>
  <email>johnwco...@gmail.com</email>
  </author>
  <updated>2009-12-21T20:52:31Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/c2c0abcd0b322c06?show_docid=c2c0abcd0b322c06</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/c2c0abcd0b322c06?show_docid=c2c0abcd0b322c06"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  I agree. Because my compiler is not (yet) self-hosting, I use &amp;quot;javap &lt;br&gt; -public&amp;quot; to get what I need out of .class files, so I definitely want &lt;br&gt; an offline way of getting information about classes I don&#39;t generate. &lt;br&gt; In any case, the issue of how to consume a remote class is not &lt;br&gt; trivial. I know how to consume Java classes and expose them, but
  </summary>
  </entry>
  <entry>
  <author>
  <name>Rich Hickey</name>
  <email>richhic...@gmail.com</email>
  </author>
  <updated>2009-12-21T20:24:56Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/36308e79bc5733aa?show_docid=36308e79bc5733aa</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/36308e79bc5733aa?show_docid=36308e79bc5733aa"/>
  <title type="text">Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  You are missing the point. .class file *are* a data format. And &lt;br&gt; everything in the Java ecosystem understands them already. APIs *are &lt;br&gt; not* a data format, they are a means for live communication between &lt;br&gt; program entities. &lt;br&gt; Dumb stubs vs smart stubs? &lt;br&gt; That doesn&#39;t follow. We will have to do precisely and just as much
  </summary>
  </entry>
  <entry>
  <author>
  <name>Charles Oliver Nutter</name>
  <email>head...@headius.com</email>
  </author>
  <updated>2009-12-21T18:50:13Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/096efcfa2c967e8d?show_docid=096efcfa2c967e8d</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/096efcfa2c967e8d?show_docid=096efcfa2c967e8d"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  I&#39;m not sure where reflection comes into this, unless you&#39;re referring &lt;br&gt; to one way the top-level compiler stuff would get class data (and &lt;br&gt; reflection may be a particularly poor way, since it has to *load* the &lt;br&gt; classes and requires that they be valid/complete to do so, rather than &lt;br&gt; just reading the data format). Generally we&#39;re talking about .class
  </summary>
  </entry>
  <entry>
  <author>
  <name>Charles Oliver Nutter</name>
  <email>head...@headius.com</email>
  </author>
  <updated>2009-12-21T18:39:46Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/a461ccfda320bfbc?show_docid=a461ccfda320bfbc</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/a461ccfda320bfbc?show_docid=a461ccfda320bfbc"/>
  <title type="text">Re: [jvm-l] Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  Ok, now I see where the right bits go in the javax.lang stuff...I was &lt;br&gt; thrown off initially because there&#39;s far fewer interfaces, but they &lt;br&gt; appear to have been condensed a bit (ExecutableElement for all &lt;br&gt; method-like things, and so on). So using javax.lang plus a jarred-up &lt;br&gt; backport version of it would be just as good as apt, and javac would
  </summary>
  </entry>
  <entry>
  <author>
  <name>James Iry</name>
  <email>james...@gmail.com</email>
  </author>
  <updated>2009-12-21T15:21:07Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/76dc3d4feaaa5d49?show_docid=76dc3d4feaaa5d49</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/76dc3d4feaaa5d49?show_docid=76dc3d4feaaa5d49"/>
  <title type="text">Re: [jvm-l] Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  This seems like a clean approach in general, but it needs some refinement to &lt;br&gt; deal with languages with type inference. As a simple example, a bit of &lt;br&gt; Scala code can say &lt;br&gt; class SomeScalaClass { &lt;br&gt; def foo(x : SomeNonScalaClass) = x.something() &lt;br&gt; The return type of foo depends on the return type of &lt;br&gt; SomeNonScalaClass#something. If that&#39;s the only dependency then compiling
  </summary>
  </entry>
  <entry>
  <author>
  <name>David MacIver</name>
  <email>da...@drmaciver.com</email>
  </author>
  <updated>2009-12-21T15:20:16Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/be89a065419824e3?show_docid=be89a065419824e3</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/be89a065419824e3?show_docid=be89a065419824e3"/>
  <title type="text">Re: [jvm-l] Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  2009/12/21 Rich Hickey &amp;lt;richhic...@gmail.com&amp;gt;: &lt;br&gt; One issue to bear in mind is that this potentially generates a lot of &lt;br&gt; stubs where it doesn&#39;t need to. With Scala at least the generation of &lt;br&gt; a large number of small class files is a big performance hit. &lt;br&gt; Potentially doubling the number generated (even if the version
  </summary>
  </entry>
  <entry>
  <author>
  <name>Rich Hickey</name>
  <email>richhic...@gmail.com</email>
  </author>
  <updated>2009-12-21T12:43:21Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/8bd817452c9f85a8?show_docid=8bd817452c9f85a8</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/8bd817452c9f85a8?show_docid=8bd817452c9f85a8"/>
  <title type="text">Re: Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  On Dec 20, 8:37 pm, &amp;quot;Martin C. Martin&amp;quot; &amp;lt;mar...@martincmartin.com&amp;gt; &lt;br&gt; wrote: &lt;br&gt; Generating .class files isn&#39;t necessarily &#39;overkill&#39;. I agree with &lt;br&gt; Per, this is a standard representation. Given such .class files in the &lt;br&gt; classpath, all of our existing compilers and tools will &#39;just work&#39;, &lt;br&gt; right now. Reflection will work, etc.
  </summary>
  </entry>
  <entry>
  <author>
  <name>Jim White</name>
  <email>j...@pagesmiths.com</email>
  </author>
  <updated>2009-12-21T12:34:01Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/6e9c7f59ef7c7cc7?show_docid=6e9c7f59ef7c7cc7</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/6e9c7f59ef7c7cc7?show_docid=6e9c7f59ef7c7cc7"/>
  <title type="text">Re: [jvm-l] Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  That private API has been replaced by the standard Java extension API &lt;br&gt; Per referred to (javax.annotation.processing.P rocessor processes &lt;br&gt; javax.lang.model.element.TypeE lements). &lt;br&gt; &lt;a target=&quot;_blank&quot; rel=nofollow href=&quot;http://java.sun.com/javase/6/docs/technotes/guides/apt/index.html&quot;&gt;[link]&lt;/a&gt; &lt;br&gt; And as I said, if you want to do something like Groovy&#39;s unified
  </summary>
  </entry>
  <entry>
  <author>
  <name>Miles Sabin</name>
  <email>mi...@milessabin.com</email>
  </author>
  <updated>2009-12-21T09:56:53Z</updated>
  <id>http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/902517d8b7778ce7?show_docid=902517d8b7778ce7</id>
  <link href="http://groups.google.com/group/jvm-languages/browse_frm/thread/4f20c8c916db33cb/902517d8b7778ce7?show_docid=902517d8b7778ce7"/>
  <title type="text">Re: [jvm-l] Common compiler infrastructure?</title>
  <summary type="html" xml:space="preserve">
  On Mon, Dec 21, 2009 at 9:21 AM, Charles Oliver Nutter &lt;br&gt; I like the sound of this ... good choice :-) &lt;br&gt; Cheers, &lt;br&gt; Miles
  </summary>
  </entry>
</feed>
