From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id QAA10025; Mon, 12 Jul 2004 16:03:09 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id QAA10330 for ; Mon, 12 Jul 2004 16:03:08 +0200 (MET DST) X-SPAM-Warning: Sending machine is listed in blackholes.five-ten-sg.com Received: from fep01-svc.flexmail.it (fep01.tuttopmi.it [212.131.248.100]) by nez-perce.inria.fr (8.12.10/8.12.10) with ESMTP id i6CE36EV024852 for ; Mon, 12 Jul 2004 16:03:07 +0200 Received: from baretta.com ([80.21.243.66]) by fep01-svc.flexmail.it with ESMTP id <20040712140306.NBXF18224.fep01-svc.flexmail.it@baretta.com>; Mon, 12 Jul 2004 16:03:06 +0200 Message-ID: <40F29A51.6010508@baretta.com> Date: Mon, 12 Jul 2004 16:04:01 +0200 From: Alex Baretta User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040113 X-Accept-Language: it, en-us, en MIME-Version: 1.0 To: "Brandon J. Van Every" CC: caml Subject: Re: [Caml-list] embedded OCaml References: In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce with ID 40F29A1A.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; baretta:01 baretta:01 caml-list:01 brandon:99 glass:99 plc:99 3.07:01 gpl:01 api:01 gpl:01 plc:99 low-level:01 ocamlopt:01 stateless:01 implemented:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Brandon J. Van Every wrote: > From: Alex Baretta > >>We are about to ship our first embedded ocaml application: an >>automatic >>glass cutting table. The PLC is 2Ghz Celeron with 256MB RAM, >>Linux 2.4 and Ocaml 3.07+2. It's just magnificent! > > > Sounds interesting. Love to hear about things that aren't theory. Very much, commercially. Industrial control is one of the few applications of computing where there still is some money to earn. >>We are working on a logical control framework based on Ocaml. We will >>release under the GPL when the API will have stabilized. > > > How does a GPL license help anyone else in commercial industry? Or are > you going to do one of those "GPL or you can pay us" licenses? We currently develop the complete automation solution: PLC kernel, low-level hardware drivers, application logic. We are more than willing to share our technology with the Ocaml community in order to further the development of the core and enhance our ability to develop custom application logic at lightning speed. And, BTW of benchmarking Ocaml vs. anything else, here are the figures. It does memory management, driver management and process management. We currently compile to bytecode for testing purposes because we are too lazy to use ocamlopt, yet the kernel runs an order of magnitude faster that the physical layer can handle. We spend most of our time waiting for IO. Typical CPU loads are under 10% on the above mentioned 2GHz Celeron. Typical memory usage is under 2MB. To communicate with the UI, the PLC kernel uses a stateless request-response binary protocol running over a TCP connection. This protocol is implemented with ocaml's native marshalling. The actual UI application has been written in Xcaml, my company's web application server. The PLC kernel was developed in two days and debugged in a couple more. The web UI required about a man week. The low level driver required a couple of man weeks. We believe that no other computer language would have given us anything close to the results we achieved with Ocaml. The conclusion: Ocaml is a mature industrial language. It's definitely not plain theory. Alex ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners