220 32733 <CAEfefmxzKZ1cnOneTm5Fekje2c+WthrbUQkpLrVJ_hJ=kUCP0Q@mail.gmail.com> article
Path: news.gmane.org!.POSTED!not-for-mail
From: Dejan Milosavljevic <dmilos@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Why do we include a Matrix and Vector class into
 the proposed 2D Graphics Library?
Date: Mon, 12 Jun 2017 22:22:31 +0200
Lines: 125
Approved: news@gmane.org
Message-ID: <CAEfefmxzKZ1cnOneTm5Fekje2c+WthrbUQkpLrVJ_hJ=kUCP0Q@mail.gmail.com>
References: <7e3ee19d-f758-4d38-a015-0c474424073d@isocpp.org>
 <20170610193134.5132345.14750.31022@gmail.com> <CAEfefmwFwB3AoeGmGTCrvMTWxt7rF7V_2ZOwVpy6DVEUQOK1ig@mail.gmail.com>
 <2818656.ZnHkfKFBaa@tjmaciei-mobl1>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="94eb2c12cac81fc3f80551c91412"
X-Trace: blaine.gmane.org 1497298955 21608 195.159.176.226 (12 Jun 2017 20:22:35 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Mon, 12 Jun 2017 20:22:35 +0000 (UTC)
To: std-proposals@isocpp.org
Original-X-From: std-proposals+bncBDFYFDOFWUGBBCHQ7PEQKGQEE2BNKJI@isocpp.org Mon Jun 12 22:22:28 2017
Return-path: <std-proposals+bncBDFYFDOFWUGBBCHQ7PEQKGQEE2BNKJI@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-wr0-f199.google.com ([209.85.128.199])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBDFYFDOFWUGBBCHQ7PEQKGQEE2BNKJI@isocpp.org>)
	id 1dKVr1-0005EH-UW
	for gclcip-std-proposals@m.gmane.org; Mon, 12 Jun 2017 22:22:28 +0200
Original-Received: by mail-wr0-f199.google.com with SMTP id n7sf25141841wrb.0
        for <gclcip-std-proposals@m.gmane.org>; Mon, 12 Jun 2017 13:22:33 -0700 (PDT)
ARC-Seal: i=2; a=rsa-sha256; t=1497298953; cv=pass;
        d=google.com; s=arc-20160816;
        b=VfpKpnthZy2X9EA12fNsacmI2VdtOswT90/D4fiJ1E0RoZW0VTzhJDrYNlpD1rDkbb
         b592mAlilIjkmFZFJ1K7r0tLWYWXm0UeKYkaUnJodzzWZHaT9XMzUqr8DAsz1tAh0UJj
         yNELZPT9Fe8+LoygBw8sIXu43QOcfSsBgDZxhe3h4RK3CP9KHe/CdjikwoVAxrScEK1m
         Pw7SP+aqih9a/0A5hCC4rKtzW0LvUaSQcgd8Wy4Lf6dQkDFBa5HxpnIL0dxW+8Py4SSU
         9U7wwKlEAiRdy4do3cb+S55yGQkKmC2PAZOGYT3Sy3oZLsGBS3+54lc9G3AWQpfmUyby
         S5uA==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to:to:subject:message-id:date
         :from:references:in-reply-to:mime-version:arc-authentication-results
         :arc-message-signature:dkim-signature:arc-authentication-results;
        bh=okmAeFojTWTyzeTomraTx/1cO/JCti5NC5eL06XUB0Y=;
        b=vmjW5RAcxFFsrnacDjT1QhgYCArSuAM4l7BWFNljvF91kf9KMlwY1EJ0PeEEqpaIst
         yKDCEag5rermMOOUGMlEFVHUWkKbtUUHn5C4mDozsBtcfgrR4QqB9ssoI+voFWcBXCAj
         hw9tJ04F9alKg8aWJwrvXW7pZ9Vasioky0qJSkceqRKcO0Uf9zsD949oT8pdH4RM0d4h
         uVxRV9M/BckLbXZiqhfHc9ymeZGfHfG0tD9zzqSczz0vhiz8ZRmSQJV8gV6wIv69BXc6
         aN3lzhnbu1eG8U9TA1tTGRuW9Gx7AsbfdYbCCUdtWPeKQRqocWhYbJhV7Eg5YVyiXp1F
         JCpg==
ARC-Authentication-Results: i=2; mx.google.com;
       dkim=pass header.i=@gmail.com;
       spf=pass (google.com: domain of dmilos@gmail.com designates 2a00:1450:400c:c0c::233 as permitted sender) smtp.mailfrom=dmilos@gmail.com;
       dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=mime-version:in-reply-to:references:from:date:message-id:subject:to
         :x-original-sender:x-original-authentication-results:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=okmAeFojTWTyzeTomraTx/1cO/JCti5NC5eL06XUB0Y=;
        b=qORIz1T6fTSNJyq5J7regFRNDYqE7Y8Dj6H/lgTqrJVP/orrO8FR1WG6x4XMkBcGgy
         V5F69xyfBm2GZ6blLsItRIPWIVizCvLUsbs+tpkCjijBaSa6W0ikMZIku6yqhE+COGzh
         wRCf06Bkso/BNPG9Hhh+eVklPc2M7wpgUMEgjx+8tTVxcrqsO3dWdd+HHmgFHu+rjFJM
         A9g/zizRLjSUkUWv+/Ik2lZDNUWNsrH31r2PWqc+IA2hnMe73hi+BFM0JrJPAnScroxK
         mxk+9pZEVNwxsWPMGuHBJ4OPaffrpVBemeAE/nMpmnFLxcX6UUGT7Wr6AQBoZaNN9CZE
         ebyw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:in-reply-to:references:from:date
         :message-id:subject:to:x-original-sender
         :x-original-authentication-results:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=okmAeFojTWTyzeTomraTx/1cO/JCti5NC5eL06XUB0Y=;
        b=jfs10I3eaqcD4isDfvXxgf4/lOnb9EynldJI4LdtmTgOxb97SXq/ZCJrcnfSFWqS32
         i9XP5yuH935jFCs4YrM0tJbX79ETrDHpiDBWaFyt3gODgP7knywWY47SWD97AY1Jtlnb
         qVL3ZmkF/cO/PZOdIXAqod4Uwk6HLgslRPf5U08pTOKa8WT/mz9B44Yuuv88ZZQUlIDe
         m/tqw2JXGJ3VjkmthM5avMiQ4QsbDfeUtKi52b2UQYqP6IZFAZNFAExEqdZ/GMH12PHM
         LIOg1v53qAxQc8dFmhky48NFluZ20J124LDN95wy2r3e5UcTZMoirR1yWxE8tSY7I81L
         rkPQ==
X-Gm-Message-State: AKS2vOw8pCez7T7DXOtotoFEiYdgwXOWDvo9vqaysw+77dkBQJ7Oxp6t
	ZUWitPUIDtGrifSu
X-Received: by 10.28.51.195 with SMTP id z186mr214459wmz.23.1497298953484;
        Mon, 12 Jun 2017 13:22:33 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.28.230.215 with SMTP id e84ls1480349wmi.10.gmail; Mon, 12 Jun
 2017 13:22:32 -0700 (PDT)
X-Received: by 10.28.134.3 with SMTP id i3mr9008458wmd.68.1497298952024;
        Mon, 12 Jun 2017 13:22:32 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1497298951; cv=none;
        d=google.com; s=arc-20160816;
        b=f2a4MlaQdy9cOc2PiEc2RtZj9/WGpXZHf0Kpgv5q8gf3cjj1B4qV4Ash9AVOWS3W/A
         G8OaDR8o8q4WLmEDZnzVhCIa9WeJutHfRgK46fF3CnViJ9GcsWPYb3s7z/TzQGqUdpog
         E3E02HNxqF8y1GHV2c1OvUtzhRFE1Xo2fb77QOKTxifhEZz2LrZxOoI8a/X0LtGsTfcc
         9tdQ4e8mlwlw9WINhpUUgd0gUPdAWEmAKO9vbR3QhJC6ZG1dWsEsRyeVcD0goLUj2WgX
         9XdoLeoIfrc6w7U4GvnHEh/8YJb55fIozGYppbQ510xT6I/2t6sHXZ6X3bdKvkwRfVHJ
         whuw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=to:subject:message-id:date:from:references:in-reply-to:mime-version
         :dkim-signature:arc-authentication-results;
        bh=dVqmLrP1dgif9Q5/hsSjpBWs74LnTdAKYhlo9vvJVEY=;
        b=cr2ZueKduQY6fZJ5lFJgkPI0Y85kLutCHPKgZIU424errnUnlDi5eKOv6S0i3APPGk
         0shAXsoiv8p1S3vIm7PNMSil+F2MRi9pfq80Y5aXDpV9poqgHAm5Gw4h4m6KiyMdCP6k
         /Ein4xN+lGvtYJh8447Q0u2vegmsvO7jOPNze0a4qSnC/KmHbEl7I79pK0DtmrCbhaCp
         qRiGr9kdOtyf6BpfgvRZSLuKuo7agJCGXD8GCBuA9SUg2b79GkTpmfJuwIt3MRNwY6DW
         WhFeMhkK8yzuyYABqGXcI6g0oZri5b6rNUOyTYydD9aH3gL36mwahqDZUJniHhB5EWne
         aZyA==
ARC-Authentication-Results: i=1; mx.google.com;
       dkim=pass header.i=@gmail.com;
       spf=pass (google.com: domain of dmilos@gmail.com designates 2a00:1450:400c:c0c::233 as permitted sender) smtp.mailfrom=dmilos@gmail.com;
       dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com
Original-Received: from mail-wr0-x233.google.com (mail-wr0-x233.google.com. [2a00:1450:400c:c0c::233])
        by mx.google.com with ESMTPS id j3si9710907wrb.194.2017.06.12.13.22.31
        for <std-proposals@isocpp.org>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Mon, 12 Jun 2017 13:22:31 -0700 (PDT)
Received-SPF: pass (google.com: domain of dmilos@gmail.com designates 2a00:1450:400c:c0c::233 as permitted sender) client-ip=2a00:1450:400c:c0c::233;
Original-Received: by mail-wr0-x233.google.com with SMTP id q97so112778543wrb.2
        for <std-proposals@isocpp.org>; Mon, 12 Jun 2017 13:22:31 -0700 (PDT)
X-Received: by 10.28.166.204 with SMTP id p195mr411586wme.23.1497298951453;
 Mon, 12 Jun 2017 13:22:31 -0700 (PDT)
Original-Received: by 10.28.216.72 with HTTP; Mon, 12 Jun 2017 13:22:31 -0700 (PDT)
In-Reply-To: <2818656.ZnHkfKFBaa@tjmaciei-mobl1>
X-Original-Sender: dmilos@gmail.com
X-Original-Authentication-Results: mx.google.com;       dkim=pass
 header.i=@gmail.com;       spf=pass (google.com: domain of dmilos@gmail.com
 designates 2a00:1450:400c:c0c::233 as permitted sender) smtp.mailfrom=dmilos@gmail.com;
       dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:32733
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/32733>

--94eb2c12cac81fc3f80551c91412
Content-Type: text/plain; charset="UTF-8"

> Where is operator+ for this type going to be defined?
Global name space. 'string operator+ (const string& lhs, const string&
rhs);' is situated in it.
But this question is for library designers.

My point is: reuse exiting ( or add new if necessary ) containers and make
vector/matrix to be strong typedefs.

On Mon, Jun 12, 2017 at 5:59 PM, Thiago Macieira <thiago@macieira.org>
wrote:

> On Monday, 12 June 2017 01:54:52 PDT Dejan Milosavljevic wrote:
> > He is one possible vector definition:
> >
> >  namespace std::_space_to_be_named_
> >   {
> >     template< class T,  std::size_t N>
> >      using vector = std::array<T,N>; // Fixed length vector
> >   }
> >
> > This has to be combined with strong typedefs ( when they arrive ), and
> > additional requirements for T ( concepts ).
> >
> > For matrix things are similar. First we need appropriate container(s) and
> > then typedef(s) in same manner.
>
> Where is operator+ for this type going to be defined?
>
> --
> Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
>    Software Architect - Intel Open Source Technology Center
>
> --
> You received this message because you are subscribed to the Google Groups
> "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> To view this discussion on the web visit https://groups.google.com/a/
> isocpp.org/d/msgid/std-proposals/2818656.ZnHkfKFBaa%40tjmaciei-mobl1.
>

-- 
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAEfefmxzKZ1cnOneTm5Fekje2c%2BWthrbUQkpLrVJ_hJ%3DkUCP0Q%40mail.gmail.com.

--94eb2c12cac81fc3f80551c91412
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>&gt; Where is operator+ for this type going to be def=
ined?</div><div>Global name space. &#39;string operator+ (const string&amp;=
 lhs, const string&amp; rhs);&#39; is situated in it.</div><div>But this qu=
estion is for library designers.</div><div><br></div><div><div>My point is:=
 reuse exiting ( or add new if necessary ) containers and make vector/matri=
x=C2=A0to be=C2=A0strong typedefs.</div></div></div><div class=3D"gmail_ext=
ra"><br><div class=3D"gmail_quote">On Mon, Jun 12, 2017 at 5:59 PM, Thiago =
Macieira <span dir=3D"ltr">&lt;<a href=3D"mailto:thiago@macieira.org" targe=
t=3D"_blank">thiago@macieira.org</a>&gt;</span> wrote:<br><blockquote class=
=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padd=
ing-left:1ex"><span>On Monday, 12 June 2017 01:54:52 PDT Dejan Milosavljevi=
c wrote:<br>
&gt; He is one possible vector definition:<br>
&gt;<br>
&gt;=C2=A0 namespace std::_space_to_be_named_<br>
&gt;=C2=A0 =C2=A0{<br>
&gt;=C2=A0 =C2=A0 =C2=A0template&lt; class T,=C2=A0 std::size_t N&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 using vector =3D std::array&lt;T,N&gt;; // Fixed l=
ength vector<br>
&gt;=C2=A0 =C2=A0}<br>
&gt;<br>
&gt; This has to be combined with strong typedefs ( when they arrive ), and=
<br>
&gt; additional requirements for T ( concepts ).<br>
&gt;<br>
&gt; For matrix things are similar. First we need appropriate container(s) =
and<br>
&gt; then typedef(s) in same manner.<br>
<br>
</span>Where is operator+ for this type going to be defined?<br>
<br>
--<br>
Thiago Macieira - thiago (AT) <a href=3D"http://macieira.info" target=3D"_b=
lank" rel=3D"noreferrer">macieira.info</a> - thiago (AT) <a href=3D"http://=
kde.org" target=3D"_blank" rel=3D"noreferrer">kde.org</a><br>
=C2=A0 =C2=A0Software Architect - Intel Open Source Technology Center<br>
<span><br>
--<br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals%2Bunsubscribe@isocpp.org">std-propo=
sals+unsubscribe@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br>
</span>To view this discussion on the web visit <a href=3D"https://groups.g=
oogle.com/a/isocpp.org/d/msgid/std-proposals/2818656.ZnHkfKFBaa%40tjmaciei-=
mobl1" target=3D"_blank" rel=3D"noreferrer">https://groups.google.com/a/<wb=
r>isocpp.org/d/msgid/std-<wbr>proposals/2818656.ZnHkfKFBaa%<wbr>40tjmaciei-=
mobl1</a>.<br>
</blockquote></div><br></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAEfefmxzKZ1cnOneTm5Fekje2c%2BWthrbUQ=
kpLrVJ_hJ%3DkUCP0Q%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter"=
>https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAEfefmxzKZ1c=
nOneTm5Fekje2c%2BWthrbUQkpLrVJ_hJ%3DkUCP0Q%40mail.gmail.com</a>.<br />

--94eb2c12cac81fc3f80551c91412--

.
