From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,a84eaf8fb2470909 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!postnews.google.com!48g2000cwx.googlegroups.com!not-for-mail From: "Hyman Rosen" Newsgroups: comp.lang.ada Subject: Re: Ada generics Date: 27 Dec 2006 11:06:36 -0800 Organization: http://groups.google.com Message-ID: <1167246396.057028.325080@48g2000cwx.googlegroups.com> References: <1166710494.869393.108730@a3g2000cwd.googlegroups.com> <17fe4xfogg7p5.1dcyc5nyc2gsl.dlg@40tude.net> <1166805696.291429.239590@48g2000cwx.googlegroups.com> <186qujlcx6rwl.1h6eq4mbdaa5s$.dlg@40tude.net> <1167150212.165097.289010@73g2000cwn.googlegroups.com> <1qmdvus6du3xu.1n21tzgev46ia$.dlg@40tude.net> NNTP-Posting-Host: 204.253.248.208 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Trace: posting.google.com 1167246402 11364 127.0.0.1 (27 Dec 2006 19:06:42 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Wed, 27 Dec 2006 19:06:42 +0000 (UTC) User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1; .NET CLR 2.0.50727) Gecko/20061204 Firefox/2.0.0.1,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: 48g2000cwx.googlegroups.com; posting-host=204.253.248.208; posting-account=lJDDWg0AAACmMd7wLM4osx8JUCDw_C_j Xref: g2news2.google.com comp.lang.ada:8027 Date: 2006-12-27T11:06:36-08:00 List-Id: Dmitry A. Kazakov wrote: > The "encoding language" is outside the programming language, > so it is not the language problem Remember that Ada wishes to be case-insensitive, so it cannot ignore Unicode issues if it wishes to allow Unicode characters in identifiers. Not to mention "normalization form KC". > No, it would not. Consider 1.0 / 3.0 I believe an arbitrary-precision rational number package can portably represent 1/3! An encoded name for an instantiation involving floating point numbers could simply represent the number portably as a rational in lowest terms. > But it is not same as having legal finite programs which cannot be compiled > no matter how much resources you have. So what? Since templates form a compile-time Turing-complete language, C++ compilers can be sent into calculations which may or may not terminate, just like programs themselves have always been able to do. No one has palpitations over the fact that for some programs you can't tell whether they're wrong or just haven't finished yet. Why should anyone worry that there are some programs which you can't tell whether they're wrong or the compiler hasn't finished yet? In order for a compilation to not terminate, it must constantly generate new instantiations, so anyway real compilers will just notice and give up.