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.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 107f24,582dff0b3f065a52 X-Google-Attributes: gid107f24,public X-Google-Thread: 109fba,582dff0b3f065a52 X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,bc1361a952ec75ca X-Google-Attributes: gid103376,public X-Google-Thread: 1014db,582dff0b3f065a52 X-Google-Attributes: gid1014db,public X-Google-ArrivalTime: 2001-08-01 23:53:07 PST Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!headwall.stanford.edu!feeder.via.net!newshub2.rdc1.sfba.home.com!news.home.com!news1.rdc1.bc.home.com.POSTED!not-for-mail From: kaz@ashi.footprints.net (Kaz Kylheku) Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.lang.functional Subject: Re: How Ada could have prevented the Red Code distributed denial of service attack. References: <3B6555ED.9B0B0420@sneakemail.com> <87n15lxzzv.fsf@deneb.enyo.de> <3B672322.B5EA1B66@home.com> <9ka1e1$b5h$2@bird.wu-wien.ac.at> <3B68C447.4F6C2F6B@worldnet.att.net> <9kakda$f11$1@news-central.tiac.net> Organization: Psycho-Neurotic Institute for the Very, Very Nervous Reply-To: kaz@ashi.footprints.net User-Agent: slrn/0.9.6.3 (Linux) Message-ID: Date: Thu, 02 Aug 2001 06:53:06 GMT NNTP-Posting-Host: 24.68.85.82 X-Complaints-To: abuse@home.net X-Trace: news1.rdc1.bc.home.com 996735186 24.68.85.82 (Wed, 01 Aug 2001 23:53:06 PDT) NNTP-Posting-Date: Wed, 01 Aug 2001 23:53:06 PDT Xref: archiver1.google.com comp.lang.ada:11038 comp.lang.c:71536 comp.lang.c++:79262 comp.lang.functional:7153 Date: 2001-08-02T06:53:06+00:00 List-Id: In article <9kakda$f11$1@news-central.tiac.net>, David Starner wrote: >Kaz Kylheku wrote in message >news:WG3a7.3350$B37.128229@news1.rdc1.bc.home.com... >> In article <3B68C447.4F6C2F6B@worldnet.att.net>, Bruce G. Stewart wrote: >> >Markus Mottl wrote: >> > >> >> Any language that attempts to be called serious bootstraps >> >> itself. Needless to say that the first compiler of a new language >wasn't >> >> written in the language itself, but the same holds true for C/C++... >> > >> >Perhaps this is true of any language that aspires to be suitable for >> >writing compilers. It would be silly to restrict onself to writing, say, >> >an SQL statement compiler as an SQL statement. >> >> Note that everything that SQL does could be expressed in a serious >> language that bootstraps itself. E.g. a Lisp form could represent a >> structured query. So the existence of a dedicated language just for >> database queries is superfluous. > >Sure, you can hack a database query language unto the side of any "serious" >language, and implement it. If that language is Lisp or something like it, then you only have to write code in that language; you don't have to hack the language. That's because the parser is available to you; you can call on it to parse and give you the resulting structure. >You've then spent much time implementing a >"serious" language and a little time writing a database query language, >which is all you really needed. You are assuming that everything is done from scratch: first the implementation language and then the query language. If that is the case, it's a lot of work no matter what. But suppose the implementation language is already available, and your job is only to write a database language. Then depending on what kind of implementation language you have, the difficulty of your task will vary. >Oh, and now you need to filter all queries >coming into your database, because they can include arbitrary code. In Lisp, there is already a parser built in that will give you a tree. That tree could be code or data; the representation is uniform. You can process that tree. That's a labor saving right there; not having to write a parser, just worry about the structure that pops out. That structure could support an arbitrarily complex syntax for representing queries. Think about all the time wasted implementing parsers for all these silly data formats like SQL and XML, when there is a programming language that can uniformly handle structured data in its own syntax: query languages, markup languages, you name it.