From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 8AB317F7AD for ; Wed, 2 Mar 2016 16:09:31 +0100 (CET) IronPort-PHdr: 9a23:xzwOgh3LnJYpcujWsmDT+DRfVm0co7zxezQtwd8ZsegSIvad9pjvdHbS+e9qxAeQG96LtLQb0aGJ6ujJYi8p39WoiDg6aptCVhsI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6kO74TNaIBjjLw09fr2zQd6NyZvtnL/rs7ToICx2xxOFKYtoKxu3qQiD/uI3uqBFbpgL9x3Sv3FTcP5Xz247bXianhL7+9vitMU7q3cY6Lod8JtvXL/2N58kSrhACT0gNShh5cvlsjHMQBGDo2AAVWEOlxNOBU7J4UepcI32t37eu+015ymbIcC+GbQ5Xhym97gxFVnuhTtRZG1xy33elsEl1PETmxmmvREqm4M= Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=leo@lpw25.net; spf=None smtp.mailfrom=leo@lpw25.net; spf=None smtp.helo=postmaster@out3-smtp.messagingengine.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of leo@lpw25.net) identity=pra; client-ip=66.111.4.27; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="leo@lpw25.net"; x-sender="leo@lpw25.net"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of leo@lpw25.net) identity=mailfrom; client-ip=66.111.4.27; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="leo@lpw25.net"; x-sender="leo@lpw25.net"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@out3-smtp.messagingengine.com) identity=helo; client-ip=66.111.4.27; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="leo@lpw25.net"; x-sender="postmaster@out3-smtp.messagingengine.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0C5AQAYAddWlhsEb0JehHm8HIYTAoFGPBABAQEBAQEBARABAQEBBw0JCSEvQQEBAwkEgVqCFQEBAwFAOQEECwsOOCwrBogsCKl7hSyKVwEBAQEBBQEBAQEBAQETBogGgkaHYIEPjiWIco9Dh2mFLY5MN4I/gW4eLoV2VYIVAQEB X-IPAS-Result: A0C5AQAYAddWlhsEb0JehHm8HIYTAoFGPBABAQEBAQEBARABAQEBBw0JCSEvQQEBAwkEgVqCFQEBAwFAOQEECwsOOCwrBogsCKl7hSyKVwEBAQEBBQEBAQEBAQETBogGgkaHYIEPjiWIco9Dh2mFLY5MN4I/gW4eLoV2VYIVAQEB X-IronPort-AV: E=Sophos;i="5.22,529,1449529200"; d="scan'208";a="205453636" Received: from out3-smtp.messagingengine.com ([66.111.4.27]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 Mar 2016 16:09:30 +0100 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id 2EF3C20BF4 for ; Wed, 2 Mar 2016 10:09:29 -0500 (EST) Received: from web1 ([10.202.2.211]) by compute2.internal (MEProxy); Wed, 02 Mar 2016 10:09:29 -0500 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=lpw25.net; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-sasl-enc :x-sasl-enc; s=mesmtp; bh=XReyD3VylIr6TSom1uOFI8I+VGo=; b=dNY1p6 +t9oe75E1uR8EHVproSKfhjRFbwy4G8aEJ9LS8jC3/RxAkdaR/a7KcEv9503j5HV 4PY3qVGx2zepUsgxR87oyV9TpLzGWsZLTtCUoWyB21NNUkKlwvBwa+tkkAQGQ6G3 pTTIkXOS5qJMtwkpR5ylx/A1kzZu/0qQELNdE= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=XReyD3VylIr6TSo m1uOFI8I+VGo=; b=n1h7SrxEUTiRd+qKkFe43QHX/WO1Ah5A7RlUQZbAz8ZM+dy jgrCzxe6y7ZLz/9sVxFVk04X0RTNrTIEmH2Gj/VndxAqeParAIDjm4iQG95EQrIi dh+qIX3UCBMU8beFZd43GIQHxs9c2KdKeAUXP2wTh1KxYLWpMPADl47RAH4w= Received: by web1.nyi.internal (Postfix, from userid 99) id EB20FAED084; Wed, 2 Mar 2016 10:09:28 -0500 (EST) Message-Id: <1456931368.1487155.537417866.38AF827B@webmail.messagingengine.com> X-Sasl-Enc: ezUUwwud/oz+dGiIAis+caqKy9hq6Um1ZL1Hdk9jWYb5 1456931368 From: Leo White To: Gerd Stolpmann Cc: caml-list@inria.fr MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain X-Mailer: MessagingEngine.com Webmail Interface - ajax-04035516 In-Reply-To: <1456929013.13827.52.camel@e130.lan.sumadev.de> References: <867fhlgjmj.fsf@gmail.com> <1456925836.1464341.537330890.53BDFE3A@webmail.messagingengine.com> <1456929013.13827.52.camel@e130.lan.sumadev.de> Date: Wed, 02 Mar 2016 10:09:28 -0500 Subject: Re: [Caml-list] Are implicit modules too implicit? > Currently I'm in a Scala project where there are a number of implicits, > and the question which implicit is actually used is a real one. It is worth bearing in mind that the resolution of implicits in Scala is much more complicated than the rules for modular implicits. Scala has very complex scoping rules for implicits, whereas modular implicits just uses lexical scope. Scala also allows ambiguous implicits to be resolved according to a complex set of overloading rules, whereas modular implicits always gives an error for ambiguous implicits. > Having > support in Merlin is good, but I think there could also be support in > the compiler. What about adding a warning "implicit X is resolved > as ..." which can be used for tracing the resolution during the build? I suspect a warning would be a bit too noisy to read usefully, but it should be quite easy to have the compiler print the source of the program with all the implicit parameters passed explicitly (so [show 5] would become [show {Show_int} 5]). It wouldn't be able to keep the indentation of the source, but it should still be easy to find the implicit you're interested in. Regards, Leo