From dev-return-4132-archive-asf-public=cust-asf.ponee.io@groovy.apache.org Mon Jan 22 14:27:54 2018 Return-Path: X-Original-To: archive-asf-public@eu.ponee.io Delivered-To: archive-asf-public@eu.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by mx-eu-01.ponee.io (Postfix) with ESMTP id 1DFB4180609 for ; Mon, 22 Jan 2018 14:27:54 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 0DC33160C4B; Mon, 22 Jan 2018 13:27:54 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 5335A160C3A for ; Mon, 22 Jan 2018 14:27:53 +0100 (CET) Received: (qmail 48622 invoked by uid 500); 22 Jan 2018 13:27:52 -0000 Mailing-List: contact dev-help@groovy.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@groovy.apache.org Delivered-To: mailing list dev@groovy.apache.org Received: (qmail 48602 invoked by uid 99); 22 Jan 2018 13:27:51 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 22 Jan 2018 13:27:51 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 009E51805C8 for ; Mon, 22 Jan 2018 13:27:51 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.293 X-Spam-Level: *** X-Spam-Status: No, score=3.293 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, URI_HEX=1.313] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=asert-com-au.20150623.gappssmtp.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id ZnvLCeWU_hyp for ; Mon, 22 Jan 2018 13:27:48 +0000 (UTC) Received: from mail-ot0-f170.google.com (mail-ot0-f170.google.com [74.125.82.170]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 8D6075F1F3 for ; Mon, 22 Jan 2018 13:27:48 +0000 (UTC) Received: by mail-ot0-f170.google.com with SMTP id d9so7420659oth.6 for ; Mon, 22 Jan 2018 05:27:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asert-com-au.20150623.gappssmtp.com; s=20150623; h=mime-version:reply-to:in-reply-to:references:from:date:message-id :subject:to; bh=pdWKVNqnuNHxt9d39qDMFOLu1d19Y/rOi6/ToWgv1bw=; b=XNRz25j5V8WMRyWUqM+PWn2H9aSS4PVKMwvdMeWujNoW0Jr+Ym1NXbMEbGN/AGmfVn HaMEGjhBIIIgCOd0Y4VNDi0OwtGKkg28iHpruKRkD3TFJ0Ug1TUEUG4mr6EsRY/sFEv2 z96b5G4Y5me510jrcYjVlQaxEk4XzmDC60U/L+fjs7ksXZb8hjq8Vn3DiVVj7StHT8o6 GLoq+gysLyI+49wqkrhmftw2x4zhAd+vZzrlK49qM6EQSQbH8zrik3baBEm0TKfx8mge xkSmUk5/M7qggr/52reIVP5k9OUHX6X7HiwH9jmM7ZnQVnFz2X7eL+Ofv+DrHBkJU5FK tWXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to; bh=pdWKVNqnuNHxt9d39qDMFOLu1d19Y/rOi6/ToWgv1bw=; b=gD0w6epvpkfTZzw80g0cqbEYvhUGC1sTNasp3eiNK96XfFwmsxrQ/qQ/YpICk+DyMl qB8bcDzsVXazO8FbCDHWsW5OgTlzuLxeUgGjY6vce/A3Xnvcjx0An8U8sxjxGuTxHnLH +6I5GjsBooXQqx8v/So65k2DnfATz62spsOW9yOT9vV+MR41mz/glpPuhBn4f5nsW0ok M5t7MZE8iCJLvk2OH9ICgk+W9LtZLRpe+pTrAnyH8BV2kdXv6nrQ733g5XRmY/4tMiRM M+zYROjqN4l1Wl72nWKFH6jmdYCOShG6ooPOl7XcDeTgVxbDE38vFYwA3IWJjuHiYdLo wEjw== X-Gm-Message-State: AKwxytcUvCwOuTvCCdVXONA4oozSYgvjVu2cNX68SXUfGlysUYtSbgfZ 1pf1MPTgNKX/VNUFsQT0FKtS5aDvXZXijc5R0tUJfw== X-Google-Smtp-Source: AH8x226If5JlEWBZmYMIoN5nLdrHixvuV/g2ztskzVeySQsOBFjMcAIJnAgRWXLtj615uoxjnFKIp+h41wZhT9tK1/c= X-Received: by 10.157.38.253 with SMTP id i58mr4520626otd.378.1516627667644; Mon, 22 Jan 2018 05:27:47 -0800 (PST) MIME-Version: 1.0 Received: by 10.74.77.205 with HTTP; Mon, 22 Jan 2018 05:27:47 -0800 (PST) Reply-To: paulk@asert.com.au In-Reply-To: <1516626766517-0.post@n5.nabble.com> References: <1516626766517-0.post@n5.nabble.com> From: Paul King Date: Mon, 22 Jan 2018 23:27:47 +1000 Message-ID: Subject: Re: About extracting common methods to reduce the size of class files To: dev@groovy.apache.org Content-Type: multipart/alternative; boundary="001a114083fa63055605635d65fb" --001a114083fa63055605635d65fb Content-Type: text/plain; charset="UTF-8" Obviously for 3.0. I like the idea in general. I'd check with Jochen on whether he thinks any future MOP work might change which methods we'd want to extract. Cheers, Paul. On Mon, Jan 22, 2018 at 11:12 PM, Daniel Sun wrote: > Hi all, > > `$getStaticMetaClass`, `getMetaClass`, `setMetaClass`, > `invokeMethod`, `getProperty`, `setProperty`, etc. are generated for all > groovy classes(implements `groovy.lang.GroovyObject`). In order to reduce > the size of class files and speed up generating class files, I suggest > extracting the implementation of the common methods to the existing > interface `groovy.lang.GroovyObject` by leveraging the power of Java8's > default method feature. > > Any thoughts? > > Cheers, > Daniel.Sun > > > > -- > Sent from: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html > --001a114083fa63055605635d65fb Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Obviously for 3.0. I like the idea in general. I'd che= ck with Jochen on whether he thinks any future MOP work might change which = methods we'd want to extract.

Cheers, Paul.

On Mon, Jan 22= , 2018 at 11:12 PM, Daniel Sun <realbluesun@hotmail.com> wrote:
Hi all,

=C2=A0 =C2=A0 =C2=A0 =C2=A0`$getStaticMetaClass`, `getMetaClass`, `setMetaC= lass`,
`invokeMethod`, `getProperty`, `setProperty`, etc. are generated for all groovy classes(implements `groovy.lang.GroovyObject`). In order to reduce the size of class files and speed up generating class files, I suggest
extracting the implementation of the common methods to the existing
interface `groovy.lang.GroovyObject` by leveraging the power of Java8's=
default method feature.

=C2=A0 =C2=A0 =C2=A0 =C2=A0 Any thoughts?

Cheers,
Daniel.Sun



--
Sent from: http://groovy.329449.n5.na= bble.com/Groovy-Dev-f372993.html

--001a114083fa63055605635d65fb--