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=1.6 required=5.0 tests=AWL,DATE_IN_PAST_06_12, SPF_NEUTRAL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 05F8FBBC4 for ; Thu, 5 Mar 2009 16:29:37 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AiIJAAN/r0lDWxLCaWdsb2JhbABFgQmTMhQEIgS0I4cViE2ECAY X-IronPort-AV: E=Sophos;i="4.38,307,1233529200"; d="scan'208";a="36143802" Received: from ip67-91-18-194.z18-91-67.customer.algx.net (HELO server1.bertec.net) ([67.91.18.194]) by mail4-smtp-sop.national.inria.fr with ESMTP; 05 Mar 2009 16:29:20 +0100 Received: from kuba-laptop.bertec.net (kuba-laptop.bertec.net [192.168.2.48]) by server1.bertec.net (Postfix) with ESMTP id E846F10575C for ; Thu, 5 Mar 2009 10:29:18 -0500 (EST) Message-Id: From: Kuba Ober To: caml-list@yquem.inria.fr In-Reply-To: <200903042250.36421.jon@ffconsultancy.com> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Subject: Re: [Caml-list] stl? Date: Thu, 5 Mar 2009 03:17:09 -0500 References: <91a2ba3e0903031340wcdc976cp52522eb35f7ccb73@mail.gmail.com> <8763ipypx1.fsf@aryx.cs.uiuc.edu> <49AEF7EC.2000809@naughtydog.com> <200903042250.36421.jon@ffconsultancy.com> X-Mailer: Apple Mail (2.930.3) X-Spam: no; 0.00; stl:01 inlining:01 inlining:01 gcc:01 cheers:01 inline:01 caml-list:01 functions:01 assembler:02 assembler:02 long:06 interface:06 osu:07 written:07 function:08 > >> Of course, you can always say that you can use the foreign function >> interface, but then you lose inlining and speed. > > The same is true of C/C++. You can get much better performance from > assembler > but calling assembler from C or C++ not only costs inlining and > speed but > even functionality because you have an ABI to conform to. gcc can and does inline user functions written in assembly, as long as they are wrapped in a C function. It's pretty nice in that respect, actually. Cheers, Kuba