From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Antipov Newsgroups: gmane.emacs.devel Subject: Re: Note on 109327 Date: Tue, 31 Jul 2012 17:25:18 +0400 Message-ID: <5017DCBE.6020606@yandex.ru> References: <5017D1D4.2050601@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1343741139 28262 80.91.229.3 (31 Jul 2012 13:25:39 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 31 Jul 2012 13:25:39 +0000 (UTC) Cc: Emacs development discussions To: Dan Nicolaescu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 31 15:25:36 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1SwCS8-00074q-7I for ged-emacs-devel@m.gmane.org; Tue, 31 Jul 2012 15:25:36 +0200 Original-Received: from localhost ([::1]:35809 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwCS7-0004yZ-IG for ged-emacs-devel@m.gmane.org; Tue, 31 Jul 2012 09:25:35 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:51585) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwCS2-0004xo-RS for emacs-devel@gnu.org; Tue, 31 Jul 2012 09:25:34 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SwCS1-0003Jr-He for emacs-devel@gnu.org; Tue, 31 Jul 2012 09:25:30 -0400 Original-Received: from forward8.mail.yandex.net ([77.88.61.38]:37734) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwCRv-0003Iy-08; Tue, 31 Jul 2012 09:25:23 -0400 Original-Received: from smtp8.mail.yandex.net (smtp8.mail.yandex.net [77.88.61.54]) by forward8.mail.yandex.net (Yandex) with ESMTP id 2FD77F61305; Tue, 31 Jul 2012 17:25:21 +0400 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1343741121; bh=S6iITv+SyDGooe/I24QfSJvRbhGskvpsv4gdjp+PZtY=; h=Message-ID:Date:From:MIME-Version:To:CC:Subject:References: In-Reply-To:Content-Type:Content-Transfer-Encoding; b=UUnPyMH+rt8b9z04fFFMtZ2zY2VAmEfHd+v19Qpe3vGJ6DqsOMd2SreLiJpHi2+vO hgPquMCrnTsIWpRDYXa4nrx54aicDDLgfamOy9cqqDql0re5sR0CigxoO7nyOFEdvB yH1Ylgmg41LUKFXpBJ/kIs4YCtYcUJ09YAXevRLU= Original-Received: from smtp8.mail.yandex.net (localhost [127.0.0.1]) by smtp8.mail.yandex.net (Yandex) with ESMTP id 0B9511B6072C; Tue, 31 Jul 2012 17:25:21 +0400 (MSK) Original-Received: from 155.gprs.mts.ru (155.gprs.mts.ru [213.87.130.155]) by smtp8.mail.yandex.net (nwsmtp/Yandex) with ESMTP id PJ24sGXQ-PK24ZRYg; Tue, 31 Jul 2012 17:25:20 +0400 X-Yandex-Rcpt-Suid: dann@gnu.org X-Yandex-Rcpt-Suid: emacs-devel@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1343741121; bh=S6iITv+SyDGooe/I24QfSJvRbhGskvpsv4gdjp+PZtY=; h=Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject: References:In-Reply-To:Content-Type:Content-Transfer-Encoding; b=dcmX7k2I+/h6KdlBd09B6VRoUwqqXP/Oe6ApTTF3sAKxN5a63DRWPeMHiWsYesvQY Y9BA8eMwXyYNk1IkyRLRdZ6ZVRIerkK8mvQvp/GYJIRVkJX25GcCYq8zEY2d8bIMs6 4aSrB5mGo4KYlmy+rx82vx8gE5eQoVhF1dc8kjTw= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120713 Thunderbird/14.0 In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 77.88.61.38 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:151998 Archived-At: On 07/31/2012 05:13 PM, Dan Nicolaescu wrote: > What's the motivation for changes like: > - f->icon_name = Qnil; > + FVAR (f, icon_name) = Qnil; > ? > > The new version looks more obfuscated ... Yes. I'm always thinking about improving internal stuff, GC at first. For me, the main motivation for BVAR, KVAR, FVAR etc. is the ability to catch the moment when the pointer (e.g. Lisp_Object) within buffer, or keyboard, of frame, etc. is read or written, which may be useful to implement write barriers (see, for exmaple, http://www.hoelzle.org/publications/write-barrier.pdf, but do not get confused with http://en.wikipedia.org/wiki/Memory_barrier). Dmitry