From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: ** X-Spam-Status: No, score=2.0 required=5.0 tests=DNS_FROM_SECURITYSAGE autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id BE735BB84 for ; Wed, 12 Nov 2008 03:21:58 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AucCAJjMGUnAXQImgWdsb2JhbACUKQEBFiK4XINX X-IronPort-AV: E=Sophos;i="4.33,586,1220220000"; d="p7s'?scan'208";a="19096137" Received: from discorde.inria.fr ([192.93.2.38]) by mail3-smtp-sop.national.inria.fr with ESMTP; 12 Nov 2008 03:21:58 +0100 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id mAC2Lv45032499 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Wed, 12 Nov 2008 03:21:58 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AucCAFvMGUnQRG99gWdsb2JhbACUKQEBFiK4WYNX X-IronPort-AV: E=Sophos;i="4.33,586,1220220000"; d="p7s'?scan'208";a="17110470" Received: from mx02.metaweb.com ([208.68.111.125]) by mail2-smtp-roc.national.inria.fr with SMTP; 12 Nov 2008 03:21:56 +0100 Received: from zimbra01.corp.sjc1.metaweb.com (localhost [127.0.0.1]) by mx02.metaweb.com (Spam Firewall) with ESMTP id 87F4FB839D; Tue, 11 Nov 2008 18:26:52 -0800 (PST) Received: from zimbra01.corp.sjc1.metaweb.com (zimbra01.corp.sjc1.metaweb.com [172.29.253.13]) by mx02.metaweb.com with ESMTP id PjWyCIsMSFSJa9Vf; Tue, 11 Nov 2008 18:26:52 -0800 (PST) Received: from localhost (localhost.localdomain [127.0.0.1]) by zimbra01.corp.sjc1.metaweb.com (Postfix) with ESMTP id E2744160C096; Tue, 11 Nov 2008 18:21:52 -0800 (PST) X-Virus-Scanned: amavisd-new at Received: from zimbra01.corp.sjc1.metaweb.com ([127.0.0.1]) by localhost (zimbra01.corp.sjc1.metaweb.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mz9hudIKvdtD; Tue, 11 Nov 2008 18:21:52 -0800 (PST) Received: from [192.168.0.31] (ipsec-250-75.corp.vpn.metaweb.com [172.29.250.75]) by zimbra01.corp.sjc1.metaweb.com (Postfix) with ESMTP id 63C54160C048; Tue, 11 Nov 2008 18:21:52 -0800 (PST) Cc: caml-list@inria.fr Message-Id: <84762F8F-9615-47D8-A5A1-BBAA7982E6B3@metaweb.com> From: Warren Harris To: forum@x9c.fr In-Reply-To: <265612EB-D831-4993-9B43-6BEE42A3831B@x9c.fr> Content-Type: multipart/signed; boundary=Apple-Mail-14--958821425; micalg=sha1; protocol="application/pkcs7-signature" Mime-Version: 1.0 (Apple Message framework v929.2) Subject: Re: [Caml-list] [ANN] OCaml-Java project: 1.1 release Date: Tue, 11 Nov 2008 18:21:21 -0800 References: <1FE63159-2C69-4F8C-9D04-6721E98D4DDB@x9c.fr> <1A9267AD-B392-40CC-A2AF-0C3F68BF1750@metaweb.com> <265612EB-D831-4993-9B43-6BEE42A3831B@x9c.fr> X-Mailer: Apple Mail (2.929.2) X-Miltered: at discorde with ID 491A3DC5.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; flowed:01 compilation:01 ocaml:01 ocaml:01 ocamlrun:01 bytecode:01 runtime:01 jni:01 ocaml's:01 compiler:01 runtime:01 bytecode:01 compilation:01 subset:01 ocaml's:01 --Apple-Mail-14--958821425 Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit On Nov 11, 2008, at 8:17 AM, forum@x9c.fr - forum@x9c.fr wrote: > > Your (dual) suggestion of compilation of Java sources > into either OCaml sources of OCaml binaries for ocamlrun > (or even interpretation of Java bytecode) is interesting. > The Java language is clearly easy to parse, type, and > compile. However, the runtime support library would > be quite large (listing only the first items that come to > mind): > - implementation of a 'native' method from the JDK; As the original designer of the Java native method mechanism (JRI at netscape which became JNI at Sun)... I'll be the first to say that I'd be very happy to write all my native methods using ocaml's methodology. > > - explicit encoding of the algorithm for message dispatch; > - explicit encoding of elements need by the reflection > mechanism. Reflection is another feature of Java that one could get pretty far without. Certainly when porting an application to a new VM this would be a consideration, but when developing a new application, there are simple alternatives that avoid much of the need for reflection. > > At the opposite, the Java compiler performs the bare minimum > checks. Then, at runtime the bytecode is verified before > execution. More, through the security manager some > checks are done at runtime to verify if the JVM is allowed > to access a file, open a network connection, etc. > All these runtime checks are obiously needed to grant the > user that some code will not harm its computer (e.g. inside > applets). Java's focus on downloaded applet security and JIT compilation made a lot of sense in the browser world, but is somewhat useless in a server context, which is where most java applications are deployed today. I think that a server-only subset of Java could make a lot of sense, particularly in conjunction with a VM such as ocaml's that provides superior performance and footprint. I think many developers would happily sacrifice a few language features for performance. Warren --Apple-Mail-14--958821425 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIKlzCCBREw ggP5oAMCAQICAQEwDQYJKoZIhvcNAQEEBQAwgb8xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxp Zm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMSMwIQYDVQQKExpNZXRhd2ViIFRlY2hub2xv Z2llcywgSW5jLjEbMBkGA1UECxMSTWV0YXdlYiBPcGVyYXRpb25zMSEwHwYDVQQDExhNZXRhd2Vi IFJvb3QgQ2VydGlmaWNhdGUxHjAcBgkqhkiG9w0BCQEWD29wc0BtZXRhd2ViLmNvbTAeFw0wNjEw MTcxNjAyNTRaFw0xNjEwMTQxNjAyNTRaMIGrMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZv cm5pYTEjMCEGA1UEChMaTWV0YXdlYiBUZWNobm9sb2dpZXMsIEluYy4xGzAZBgNVBAsTEk1ldGF3 ZWIgT3BlcmF0aW9uczElMCMGA1UEAxMcTWV0YXdlYiBWUE4gUm9vdCBDZXJ0aWZpY2F0ZTEeMBwG CSqGSIb3DQEJARYPb3BzQG1ldGF3ZWIuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAus7rUEDLJAA7HelQnBvXWO06L3OUgyEfnj3ToI/Iop+LI513Y3/b3CHCR3bfIi3QzCPZUctt 7IOpT403qG1l3fI13n5fWoBNKXPP3jGs0ev2pDPclXK8SazndQNOVb0I6tdOj1osnARcX/Nj+zfm z7hAbDYzBba2VrfS/zHyVgxqhP/7B9etHva2UEX9ZxHk6prbP/hFc2Rp1PpyDRfaOdwSfVB9vxWE DX7BSfGO0oodK7YH1kk1CSZwjddXiemHUg6zztXJ4OohhhNsoWJ3gSqBG3RXWOpBRtqKZEkA1cS9 13hJ1qcG1XQHmyr8bY21x9oJT+qe6qLN0MCM6jkkdwIDAQABo4IBKDCCASQwHQYDVR0OBBYEFPEL NnHIEcBCuTE7rnw9YTnRs7g7MIH0BgNVHSMEgewwgemAFBLhBR58Q0Ibe+Q6UzvA0yk3eDeFoYHF pIHCMIG/MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy YW5jaXNjbzEjMCEGA1UEChMaTWV0YXdlYiBUZWNobm9sb2dpZXMsIEluYy4xGzAZBgNVBAsTEk1l dGF3ZWIgT3BlcmF0aW9uczEhMB8GA1UEAxMYTWV0YXdlYiBSb290IENlcnRpZmljYXRlMR4wHAYJ KoZIhvcNAQkBFg9vcHNAbWV0YXdlYi5jb22CCQDAK3meYNperzAMBgNVHRMEBTADAQH/MA0GCSqG SIb3DQEBBAUAA4IBAQAJ4X3ts+LJ16deo00h5nUA+IuVLR+h9BlzkQi6LCp5dZx97Ex2PaiQc4b2 G7kJA5OP/T68roWlj6LwoCTQmOZHK/W4xqm9Di9FqhvsigGeliFk5OIcTgot0GiVPoH4avCwa/mk 5uPj+RTAGTMxSjlUyNu4RzKD0WypKSP6ghc/55tosB/1WTbC8k/pV5EyL1FgF/3AnlG7O0uYFIYt OWmIMHm5XFLPHxjeUqDyEVeZm4STu8eWyo17ac+/JrPzd7zSnZGZd1nMXSSDuywRtCZEStq0SzkN oQbu6JGrL57TEL3HZdHPaIV5leYPyvGQMGplTiTAOIf+q+L5ro3+6FZaMIIFfjCCBGagAwIBAgIB VDANBgkqhkiG9w0BAQQFADCBqzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExIzAh BgNVBAoTGk1ldGF3ZWIgVGVjaG5vbG9naWVzLCBJbmMuMRswGQYDVQQLExJNZXRhd2ViIE9wZXJh dGlvbnMxJTAjBgNVBAMTHE1ldGF3ZWIgVlBOIFJvb3QgQ2VydGlmaWNhdGUxHjAcBgkqhkiG9w0B CQEWD29wc0BtZXRhd2ViLmNvbTAeFw0wODA0MTEyMTU3MzhaFw0xODA0MDkyMTU3MzhaMIGgMQsw CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEjMCEGA1UEChMaTWV0YXdlYiBUZWNobm9s b2dpZXMsIEluYy4xHDAaBgNVBAsTE01ldGF3ZWIgRW5naW5lZXJpbmcxFjAUBgNVBAMTDVdhcnJl biBIYXJyaXMxITAfBgkqhkiG9w0BCQEWEndhcnJlbkBtZXRhd2ViLmNvbTCCASIwDQYJKoZIhvcN AQEBBQADggEPADCCAQoCggEBAK0aYgN/4a6011jghtHtD4mt8FwE+fVakIiPYRRliLAVK54gIVJ3 Sw8LMlZli/TZcwThyD+d30k558k4R75Dkov5YarKPt0THlLDczqn4uw0L3hlrQKu0WWWCGHxf8kk 6w0LAxAgOqPsBSW8LhraOHQMANQ8MHlpuLg1bVdWG/G1WLs7A3uuhfpsImWeCrPjeEEnZ5O24aEx EwqFvrTtfLBYJBcK2u8Qb0HevjwXpeO71/4L9gPJGA3kPdDPbULAFbAr06Y9fTf6YLBPzMfKd1OP zIyjo75TjqCQ+GyV8Up1WXk9Vwa9s3t6qDINaCwTyO9DBwu9uS+gMfSkygn73F8CAwEAAaOCAbQw ggGwMAsGA1UdDwQEAwIF4DAdBgNVHQ4EFgQU6NZ6Tlb2wX+hA5ME3wLTneBEtI0wgewGA1UdIwSB 5DCB4YAU8Qs2ccgRwEK5MTuufD1hOdGzuDuhgcWkgcIwgb8xCzAJBgNVBAYTAlVTMRMwEQYDVQQI EwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMSMwIQYDVQQKExpNZXRhd2ViIFRl Y2hub2xvZ2llcywgSW5jLjEbMBkGA1UECxMSTWV0YXdlYiBPcGVyYXRpb25zMSEwHwYDVQQDExhN ZXRhd2ViIFJvb3QgQ2VydGlmaWNhdGUxHjAcBgkqhkiG9w0BCQEWD29wc0BtZXRhd2ViLmNvbYIB ATAtBglghkgBhvhCAQQEIBYeaHR0cDovL3d3dy5tZXRhd2ViLmNvbS92cG4uY3JsMC8GA1UdHwQo MCYwJKAioCCGHmh0dHA6Ly93d3cubWV0YXdlYi5jb20vdnBuLmNybDAzBggrBgEFBQcBAQQnMCUw IwYIKwYBBQUHMAKGF2h0dHA6Ly93d3cubWV0YXdlYi5jb20vMA0GCSqGSIb3DQEBBAUAA4IBAQAs klPdQRHS1ZQimiVfDtDHr1gAmAGFj3mJhJbhg3eHnKd5vHlCGyoSzcR1ix/nWyx/7pcdXOoIrngi zVL18h1tRJKbTlfrtzJozEdUSEPmRLXqrzo5MdwyKnUZ7ZqT+FzmJhiyvBcX1vbGR1l0SCFLFO4w piuHIFWYmZcr4pq7UAXvmQKfjKFJhoAmTYEUW7BlJDGLIN5skai6XOAyWHzOugLwKkaEPn5p+sMf JL75PE3f84Ipf8AEmvdUCEXz9znn0YxDfypzHblFXEUKtAeGhY854bzxga6n1hJHOSzRhF/PfUOI MbatQSJ+SyDDkmW5wPIGckbFd0HZFSEsqrw3MYIDxjCCA8ICAQEwgbEwgasxCzAJBgNVBAYTAlVT MRMwEQYDVQQIEwpDYWxpZm9ybmlhMSMwIQYDVQQKExpNZXRhd2ViIFRlY2hub2xvZ2llcywgSW5j LjEbMBkGA1UECxMSTWV0YXdlYiBPcGVyYXRpb25zMSUwIwYDVQQDExxNZXRhd2ViIFZQTiBSb290 IENlcnRpZmljYXRlMR4wHAYJKoZIhvcNAQkBFg9vcHNAbWV0YXdlYi5jb20CAVQwCQYFKw4DAhoF AKCCAekwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMDgxMTEyMDIy MTIyWjAjBgkqhkiG9w0BCQQxFgQUmjPjnjZ/x1ClQ0XybDmGj5fn5a0wgcIGCSsGAQQBgjcQBDGB tDCBsTCBqzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExIzAhBgNVBAoTGk1ldGF3 ZWIgVGVjaG5vbG9naWVzLCBJbmMuMRswGQYDVQQLExJNZXRhd2ViIE9wZXJhdGlvbnMxJTAjBgNV BAMTHE1ldGF3ZWIgVlBOIFJvb3QgQ2VydGlmaWNhdGUxHjAcBgkqhkiG9w0BCQEWD29wc0BtZXRh d2ViLmNvbQIBVDCBxAYLKoZIhvcNAQkQAgsxgbSggbEwgasxCzAJBgNVBAYTAlVTMRMwEQYDVQQI EwpDYWxpZm9ybmlhMSMwIQYDVQQKExpNZXRhd2ViIFRlY2hub2xvZ2llcywgSW5jLjEbMBkGA1UE CxMSTWV0YXdlYiBPcGVyYXRpb25zMSUwIwYDVQQDExxNZXRhd2ViIFZQTiBSb290IENlcnRpZmlj YXRlMR4wHAYJKoZIhvcNAQkBFg9vcHNAbWV0YXdlYi5jb20CAVQwDQYJKoZIhvcNAQEBBQAEggEA eCOXhK8HydZhQzD7VZpBfmsgeraSRv10S/BPunELALPPBBRV1mHYJ5i2vZ5T+EGNvBUi+4uxB+ff Tzy7gDIaPMb8qpo9c5TEOAzmahLcTIpm8ThlGGo4aRvYnyreg7Lk1apLCn7c8jhCOyxEElI0y+bZ xJUbPt/wyZnnkxxqMaRNNRVu9x31lTgmRYuXHwPc7yV5KASzKfyyUFXBzeoa8ckn0EJMoXxOXMU2 aXbOcMvbUyEYUYiAWvgDEWCM0/b5KOun+RRMKaEqsoAyxy7mi7Tjres6n0ZYZBfSTjHoMwxb1OKK xpmItD6kZARhQSOXefO+4BEW/6zfny2cXj0k3AAAAAAAAA== --Apple-Mail-14--958821425--