Loading ...
Sorry, an error occurred while loading the content.

An introduction to Lisp

Expand Messages
  • Pascal Costanza
    Hi everybody, In February we had a short discussion on Lisp on the pattern discussion mailing list, especially the entry barriers of Lisp because of allegedly
    Message 1 of 22 , Aug 21, 2002
    • 0 Attachment
      Hi everybody,

      In February we had a short discussion on Lisp on the pattern discussion
      mailing list, especially the entry barriers of Lisp because of allegedly
      strange syntax, and so on.

      During the past few months I have digged deeply into Common Lisp and
      Scheme, and in order to give something back to the community (and get
      some ideas out of my head) I have written an introduction to Lisp. It
      can be found at http://www.pascalcostanza.de/lisp/guide.html. I hope you
      find it useful.

      All the best,
      Pascal

      --
      Pascal Costanza Email: costanza@...
      University of Bonn Römerstr. 164
      Institute of Computer Science III D-53117 Bonn (Germany)

      Fon: +49 (0)228 73-4505 Homepage:
      Fax: +49 (0)228 73-4382 http://www.pascalcostanza.de
    • jmadams@stsci.edu
      Nice job. What you have written is useful to me. Here at Space Telescope we are thrashing somewhat over the question should we continue to use lisp in the
      Message 2 of 22 , Aug 21, 2002
      • 0 Attachment
        Nice job. What you have written is useful to me. Here at Space
        Telescope we are thrashing somewhat over the question should we
        continue to use lisp in the next generation space telescope planning
        and scheduling systems? It is not easy for non-lisp people to get
        their head around the subject. That your perspective is based on
        years of java experience will help some folks in this regard.

        Thanks.

        Pascal Costanza <costanza@...> writes:
        > Hi everybody,
        >
        > In February we had a short discussion on Lisp on the pattern discussion
        > mailing list, especially the entry barriers of Lisp because of allegedly
        > strange syntax, and so on.
        >
        > During the past few months I have digged deeply into Common Lisp and
        > Scheme, and in order to give something back to the community (and get
        > some ideas out of my head) I have written an introduction to Lisp. It
        > can be found at http://www.pascalcostanza.de/lisp/guide.html. I hope you
        > find it useful.

        --
        John Michael Adams
      • Dirk Riehle
        Hi all, I m a fan of all the List/CLOS papers I ve read, but never became a friend of Lisp as an everyday tool. (That is, I never used it outside school.) If
        Message 3 of 22 , Aug 21, 2002
        • 0 Attachment
          Hi all,

          I'm a fan of all the List/CLOS papers I've read, but never became a friend of Lisp as an everyday tool. (That is, I never used it outside school.)

          If you were the CTO of a startup, and you would have to convince your CEO to start development efforts using CLOS rather than Java, how would you argue its case?

          This is a serious question. When discussing this, I've always ended up choosing Java. Please convince me otherwise.

          Dirk

          PS: This is meant primarily as a social/managerial question, not a technology question.


          At 8/21/2002 +0200, Pascal Costanza wrote:
          Hi everybody,

          In February we had a short discussion on Lisp on the pattern discussion
          mailing list, especially the entry barriers of Lisp because of allegedly
          strange syntax, and so on.

          During the past few months I have digged deeply into Common Lisp and
          Scheme, and in order to give something back to the community (and get
          some ideas out of my head) I have written an introduction to Lisp. It
          can be found at http://www.pascalcostanza.de/lisp/guide.html. I hope you
          find it useful.

          All the best,
          Pascal

          --
          Pascal Costanza                    Email: costanza@...
          University of Bonn                 Römerstr. 164
          Institute of Computer Science III  D-53117 Bonn (Germany)

          Fon: +49 (0)228 73-4505            Homepage:
          Fax: +49 (0)228 73-4382            http://www.pascalcostanza.de

          To unsubscribe from this group, send an email to:
          feyerabend-project-unsubscribe@yahoogroups.com



          Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
        • Ward Cunningham
          ... I would begin by asking if the CEO s goals were really consistent with the Feyerabend project. -- Ward Cunningham v 503-245-5633 mailto:ward@c2.com f
          Message 4 of 22 , Aug 21, 2002
          • 0 Attachment
            Dirk Riehle wrote:

            > If you were the CTO of a startup, and you would have to convince your
            > CEO to start development efforts using CLOS rather than Java, how
            > would you argue its case?

            I would begin by asking if the CEO's goals were really consistent with
            the Feyerabend project.

            --
            Ward Cunningham
            v 503-245-5633 mailto:ward@...
            f 503-246-5587 http://c2.com/
          • Dirk Riehle
            Hehe, thanks Ward. I had no intent of starting a flame war. I restricted this email to the feyerabend emailing list (rather than replying to
            Message 5 of 22 , Aug 21, 2002
            • 0 Attachment
              Hehe, thanks Ward.

              I had no intent of starting a flame war. I restricted this email to the feyerabend emailing list (rather than replying to patterns-discussion), because people here are seasoned enough to give good answers, if they care about the question (as I do).

              I don't think you could build a company based on the feyerabend project, so I fear your question would not get a discussion started on the right foot.

              Even if a company had a larger vision than shareholder value, let's say stakeholder value, where stakeholders are shareholder, employees, customers, and society at large, it is not clear to me how using better technology because it is technologicially better figures in. It is not even clear to me that developers would choose it by themselves.

              Thanks,
              Dirk


              At 8/21/2002 -0700, Ward Cunningham wrote:
              Dirk Riehle wrote:

              > If you were the CTO of a startup, and you would have to convince your
              > CEO to start development efforts using CLOS rather than Java, how
              > would you argue its case?

              I would begin by asking if the CEO's goals were really consistent with
              the Feyerabend project.

              --
              Ward Cunningham
              v 503-245-5633   mailto:ward@...
              f 503-246-5587   http://c2.com/

              Yahoo! Groups Sponsor
              ADVERTISEMENT

              To unsubscribe from this group, send an email to:
              feyerabend-project-unsubscribe@yahoogroups.com



              Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
            • Erann Gat
              ... It depends on what kind of product the company makes. If the source code is actually part of the company s business strategy (e.g. if the exit strategy is
              Message 6 of 22 , Aug 21, 2002
              • 0 Attachment
                > Dirk Riehle wrote:
                >
                > > If you were the CTO of a startup, and you would have to convince your
                > > CEO to start development efforts using CLOS rather than Java, how
                > > would you argue its case?

                It depends on what kind of product the company makes.

                If the source code is actually part of the company's business strategy
                (e.g. if the exit strategy is to be acquired, or the company provides
                software consulting services or some such thing) then I would not try to
                convince my CEO because developing in CLOS under that assumption is almost
                certainly the wrong thing to do. (I think that's an unfortunate statement
                about the state of the world.)

                On the other hand, if the development language is not an integral part of
                the business strategy (e.g. the software is purely server-side, no
                strategic plan to be acquired, etc.), then it's a purely technical
                decision and as CTO I would expect that to be my call. Again, no reason
                to do any "convincing". (I might have to do some explaining, but that's
                not the same thing at all.) I would expect my CEO to either support me in
                my decision or ask me to resign.

                The situation is very different if you're not in an executive position.
                Then it gets much more complicated, and very often you really do need to
                "convince" your superiors. To say it isn't easy is, alas, a serious
                understatement.

                <rant>
                The whole situation with languages in software engineering has
                always struck me as rather bizzare. The skills of a software engineer are
                almost invariably defined in terms of the languages they use, which is to
                say, in terms of the tools they use, not in terms of the tasks they
                perform. Job ads ask for a "C++ programmer" or a "Perl programmer". If
                you had the equivalent situation in, say, building construction you'd see
                "hammer user" or "screwdriver user" instead of "carpenter." Of course,
                you do see things like "forklift operator", but even there the task is
                implicit in the tool. There's only one thing people do with forklifts,
                which is move big pallets around. Not so with hammers, screwdrivers, or
                programming languages. Writing software is (or ought to be) a lot more
                like carpentry than it is like operating a forklift. I think that a big
                part of the reason that so much software sucks is that businesses try to
                construct software with employees whom they treat like forklift operators.
                </rant>

                E.
              • Mike Beedle
                ... Dirk: Use large ROI Case Studies of companies that made killer apps using Lisp to present a _business case_: ITA/Orbitz: http://www.itasoftware.com/
                Message 7 of 22 , Aug 21, 2002
                • 0 Attachment
                  Dirk Riehle wrote:
                  >If you were the CTO of a startup, and you would
                  >have to convince your CEO to start development
                  >efforts using CLOS rather than Java, how would
                  >you argue its case?

                  Dirk:

                  Use large ROI Case Studies of companies that made killer apps
                  using Lisp to present a _business case_:

                  ITA/Orbitz:
                  http://www.itasoftware.com/
                  http://www.paulgraham.com/carl.html
                  http://www.franz.com/success/customer_apps/data_mining/itastory.lhtml

                  Yahoo Stores (was Viacom):
                  http://www.paulgraham.com/lib/paulgraham/sec.txt
                  http://www.paulgraham.com/lib/paulgraham/bbnexcerpts.txt

                  Overture:
                  http://www.franz.com/success/customer_apps/data_mining/cadabra.lhtml
                  http://www.overture.com/

                  Ascent:
                  http://www.franz.com/success/customer_apps/scheduling/ascent.lhtml
                  http://www.ascent.com/

                  Northwest Airlines:
                  http://www.franz.com/success/customer_apps/scheduling/nwa.lhtml

                  British Telecom:
                  http://www.franz.com/success/customer_apps/it_management/btlabs.lhtml

                  I specially like the ITA/Orbitz and the Yahoo Stores stories.

                  I believe Paul Graham sold Viaweb to Yahoo Stores for 57 mil --
                  that's no small change.

                  However, presenting a good _business case_ is the hard part -- it needs
                  to be more than just technology. The business case would underline
                  a hard business problem that can be either uniquely solved, or
                  solved better with Lisp and lead to either large profits or
                  large savings.

                  Believe or not, this was the kind of thinking that went on
                  at ITA before it was founded. Their founders, AI Lab MIT graduate
                  students wanted to own a company and code it Lisp -- that was
                  decided first. Then, they looked for a hard business problem
                  and they found it :-)

                  The rest is history. I would have loved to be part of that deal,

                  - Mike
                • Pascal Costanza
                  Hi, You re welcome. ;) Please let me know how this worked out... All the best, Pascal ... -- Pascal Costanza University of Bonn
                  Message 8 of 22 , Aug 22, 2002
                  • 0 Attachment
                    Hi,

                    You're welcome. ;)

                    Please let me know how this worked out...

                    All the best,
                    Pascal

                    jmadams@... wrote:
                    >
                    > Nice job. What you have written is useful to me. Here at Space
                    > Telescope we are thrashing somewhat over the question should we
                    > continue to use lisp in the next generation space telescope planning
                    > and scheduling systems? It is not easy for non-lisp people to get
                    > their head around the subject. That your perspective is based on
                    > years of java experience will help some folks in this regard.
                    >
                    > Thanks.
                    >
                    > Pascal Costanza <costanza@...> writes:
                    > > Hi everybody,
                    > >
                    > > In February we had a short discussion on Lisp on the pattern discussion
                    > > mailing list, especially the entry barriers of Lisp because of allegedly
                    > > strange syntax, and so on.
                    > >
                    > > During the past few months I have digged deeply into Common Lisp and
                    > > Scheme, and in order to give something back to the community (and get
                    > > some ideas out of my head) I have written an introduction to Lisp. It
                    > > can be found at http://www.pascalcostanza.de/lisp/guide.html. I hope you
                    > > find it useful.
                    >
                    > --
                    > John Michael Adams
                    >
                    >
                    > To unsubscribe from this group, send an email to:
                    > feyerabend-project-unsubscribe@yahoogroups.com
                    >
                    >
                    >
                    > Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/

                    --
                    Pascal Costanza University of Bonn
                    mailto:costanza@... Institute of Computer Science III
                    http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)
                  • Pascal Costanza
                    ... What about giving a cool demo? This is how I managed at several stages in the past to convince people to use a certain technology. (no Lisp yet, though) An
                    Message 9 of 22 , Aug 22, 2002
                    • 0 Attachment
                      Dirk Riehle wrote:

                      > Hi all,
                      >
                      > I'm a fan of all the List/CLOS papers I've read, but never became a friend
                      > of Lisp as an everyday tool. (That is, I never used it outside school.)
                      >
                      > If you were the CTO of a startup, and you would have to convince your CEO
                      > to start development efforts using CLOS rather than Java, how would you
                      > argue its case?

                      What about giving a cool demo? This is how I managed at several stages
                      in the past to convince people to use a certain technology. (no Lisp
                      yet, though)

                      An important thing is to learn to understand how managers think. Don't
                      argue on the basis of technical merits. Give them a demo and show them
                      new cool features they haven't seen before. Show them, for example, how
                      you can change the behavior of a program without stopping it.

                      In my experience, managers think that we are people with only crazy,
                      non-realistic ideas (and sometimes they're right ;). They only believe
                      what they see. That's not necessarily a bad thing.

                      Pascal

                      --
                      Pascal Costanza University of Bonn
                      mailto:costanza@... Institute of Computer Science III
                      http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)
                    • Dirk Riehle
                      Thanks for the answers so far: - I don t think showing some success stories help. For every Lisp success story there are, unfortunately, substantially more
                      Message 10 of 22 , Aug 25, 2002
                      • 0 Attachment
                        Thanks for the answers so far:

                        - I don't think showing some success stories help. For every Lisp success
                        story there are, unfortunately, substantially more success stories for C,
                        C++, Java (success measured as commercial success...)

                        - Business goals change and I would believe only the most seasoned CEOs
                        with strong backing can rule out an exit strategy that involves being
                        bought. And even then, it is probably still stupid if they ruled it out
                        right away.

                        Let me play the devil's advocate. It is a well-known sermon:

                        Choosing CLOS or the like:

                        - you don't get enough people
                        - those people you get cost too much
                        - you are incompatible with the rest of the world
                        - adapters and bug-fixes will always be last for you

                        Specifically for a startup:

                        - choosing a niche language at the core of your technology strategy may
                        make you liable to shareholder lawsuits if the company goes south

                        Actually this isn't even about a specific language but about any
                        non-mainstream technology. I remember these arguments from the days when we
                        tried to convince UBS to widely deploy a meta-programming approach to
                        achieve flexibility etc. on an enterprise level.

                        Looks like this is the standard "Crossing the Chasm" problem. Well, then
                        CLOS is dead, because you don't get a second chance. Unless, maybe, you
                        position it right to solve a new business problem. But then think Java:
                        Smalltalk would have been a better choice as the browser language that Java
                        started out as, but it didn't happen.

                        Dirk
                      • Pascal Costanza
                        ... I don t know, it depends on how you sell it. I have found Paul Graham s story about Yahoo stores quite impressive, especially the bit about changing code
                        Message 11 of 22 , Aug 26, 2002
                        • 0 Attachment
                          Dirk Riehle wrote:
                          >
                          > Thanks for the answers so far:
                          >
                          > - I don't think showing some success stories help. For every Lisp success
                          > story there are, unfortunately, substantially more success stories for C,
                          > C++, Java (success measured as commercial success...)

                          I don't know, it depends on how you sell it. I have found Paul Graham's
                          story about Yahoo stores quite impressive, especially the bit about
                          changing code on the fly.

                          > - Business goals change and I would believe only the most seasoned CEOs
                          > with strong backing can rule out an exit strategy that involves being
                          > bought. And even then, it is probably still stupid if they ruled it out
                          > right away.

                          I don't know enough about the way the economy works in the US currently.
                          However, my impression is that it is capitalism and liberalism driven to
                          the extreme. I don't know if there are any chances at all to do decent
                          work in such a situation.

                          Especially, I find the various "scientific" ways to predict success or
                          failure extremely strange, like for example expressed in Dick's "Models
                          of Software Acceptance". IMHO, they are self-fulfilling prophecies at
                          best. We're dealing with people's behaviors and any theory about them
                          will probably change them as well - that's an essential property of
                          social sciences. So you can only explain successful projects in
                          retrospect but you cannot predict what will happen in the future. The
                          future can and eventually will be different.

                          > Let me play the devil's advocate. It is a well-known sermon:
                          >
                          > Choosing CLOS or the like:
                          >
                          > - you don't get enough people
                          > - those people you get cost too much
                          > - you are incompatible with the rest of the world
                          > - adapters and bug-fixes will always be last for you

                          That's a static view. If people would be allowed to learn at their
                          workspace, things could be different.

                          > Specifically for a startup:
                          >
                          > - choosing a niche language at the core of your technology strategy may
                          > make you liable to shareholder lawsuits if the company goes south
                          >
                          > Actually this isn't even about a specific language but about any
                          > non-mainstream technology. I remember these arguments from the days when we
                          > tried to convince UBS to widely deploy a meta-programming approach to
                          > achieve flexibility etc. on an enterprise level.

                          Java was non-mainstream in the beginning, but companies opted for it
                          nevertheless.

                          > Looks like this is the standard "Crossing the Chasm" problem. Well, then
                          > CLOS is dead, because you don't get a second chance.

                          Who says so? (i.e. that you don't get a second chance)

                          > Unless, maybe, you
                          > position it right to solve a new business problem.

                          For example.

                          In my opinion, the situation is currently as follows. Java was
                          successful in bringing some properties of higher-level languages to the
                          mainstream, like garbage collection and a disregard of pure efficiency
                          in favor of more convenient features. IMHO it's important to note that
                          this is an improvement over Algol- and C-like languages. (This is to say
                          that, apart from its shortcomings, Java has real merits.)

                          Now, Microsoft has jumped on the unhappiness of many programmers about a
                          Java-centric world and created (the illusion of) a language-independent
                          virtual machine as part of .NET. However, .NET's IL is still too close
                          to Java bytecode, and so still too limited, and with a too-strong focus
                          on OOP, for many programming languages.

                          I think this story will eventually lead into a true paradigm-agnostic
                          virtual machine by some other vendor that will (consciously or
                          unconsciously) be based on a Lisp-variant internally. Only then the
                          abstract instruction set will be powerful enough to have the potential
                          to be targeted by any language. Lisp treats data and programs uniformly
                          and I guess that this will turn out as an essential property of such a
                          virtual machine.

                          Because we are living in a post-modern world, there will never be a
                          single language for all purposes. The deliberate restrictions of many
                          languages have their merits (for example static type systems). Common
                          Lisp could be repackaged as a virtual machine for many languages, with
                          Common Lisp as the low-level entry for "power users". This would reduce
                          the need to build "bridges" between different languages.

                          Just my 0.02€

                          Pascal

                          --
                          Pascal Costanza University of Bonn
                          mailto:costanza@... Institute of Computer Science III
                          http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)
                        • Pascal Costanza
                          ... Well, I think this is mostly our own fault (i.e., the fault of computer scientists). The term programming language raises certain associations in
                          Message 12 of 22 , Aug 26, 2002
                          • 0 Attachment
                            Erann Gat wrote:
                            >

                            > <rant>
                            > The whole situation with languages in software engineering has
                            > always struck me as rather bizzare. The skills of a software engineer are
                            > almost invariably defined in terms of the languages they use, which is to
                            > say, in terms of the tools they use, not in terms of the tasks they
                            > perform. Job ads ask for a "C++ programmer" or a "Perl programmer". If
                            > you had the equivalent situation in, say, building construction you'd see
                            > "hammer user" or "screwdriver user" instead of "carpenter."

                            Well, I think this is mostly our own fault (i.e., the fault of computer
                            scientists). The term "programming language" raises certain associations
                            in non-programmers. If they ask for "C++ programmers" they think about
                            it in the same way as in asking for people who speak Spanish or French.
                            Perhaps "programming tools" would be a better term?

                            I don't know - several factors contribute to the fact that computer
                            science is totally different from other disciplines. In a historical
                            perspective, we are still at a very early stage and so we probably need
                            metaphors and analogies. How can we avoid that non-experts misunderstand
                            our terminology?

                            > </rant>

                            Pascal

                            --
                            Pascal Costanza University of Bonn
                            mailto:costanza@... Institute of Computer Science III
                            http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)
                          • David Leibs
                            Thanks Pascal, You have inspired me. Next time I start something significant I am going to use Common Lisp. I have never gotten to take Common Lisp for a
                            Message 13 of 22 , Aug 26, 2002
                            • 0 Attachment
                              Thanks Pascal,
                              You have inspired me. Next time I start something significant I am going to use
                              Common Lisp. I have never gotten to take Common Lisp for a proper ride because
                              I was tied up pushing Smalltalk between 1984-2000. I have really missed Lisp.

                              Given how the world has gone so wacky over XML I can imagine an S-Expression
                              Renaissance.

                              -David Leibs



                              feyerabend-project@yahoogroups.com wrote:

                              >
                              > To unsubscribe from this group, send an email to:
                              > feyerabend-project-unsubscribe@yahoogroups.com
                              >
                              > ------------------------------------------------------------------------
                              >
                              > There are 3 messages in this issue.
                              >
                              > Topics in this digest:
                              >
                              > 1. Re: An introduction to Lisp
                              > From: Pascal Costanza <costanza@...>
                              > 2. Re: An introduction to Lisp
                              > From: Pascal Costanza <costanza@...>
                              > 3. From Lisp to ???
                              > From: "Logan, Patrick D" <patrick.d.logan@...>
                              >
                              > ________________________________________________________________________
                              > ________________________________________________________________________
                              >
                              > Message: 1
                              > Date: Mon, 26 Aug 2002 17:23:49 +0200
                              > From: Pascal Costanza <costanza@...>
                              > Subject: Re: An introduction to Lisp
                              >
                              > Dirk Riehle wrote:
                              > >
                              > > Thanks for the answers so far:
                              > >
                              > > - I don't think showing some success stories help. For every Lisp success
                              > > story there are, unfortunately, substantially more success stories for C,
                              > > C++, Java (success measured as commercial success...)
                              >
                              > I don't know, it depends on how you sell it. I have found Paul Graham's
                              > story about Yahoo stores quite impressive, especially the bit about
                              > changing code on the fly.
                              >
                              > > - Business goals change and I would believe only the most seasoned CEOs
                              > > with strong backing can rule out an exit strategy that involves being
                              > > bought. And even then, it is probably still stupid if they ruled it out
                              > > right away.
                              >
                              > I don't know enough about the way the economy works in the US currently.
                              > However, my impression is that it is capitalism and liberalism driven to
                              > the extreme. I don't know if there are any chances at all to do decent
                              > work in such a situation.
                              >
                              > Especially, I find the various "scientific" ways to predict success or
                              > failure extremely strange, like for example expressed in Dick's "Models
                              > of Software Acceptance". IMHO, they are self-fulfilling prophecies at
                              > best. We're dealing with people's behaviors and any theory about them
                              > will probably change them as well - that's an essential property of
                              > social sciences. So you can only explain successful projects in
                              > retrospect but you cannot predict what will happen in the future. The
                              > future can and eventually will be different.
                              >
                              > > Let me play the devil's advocate. It is a well-known sermon:
                              > >
                              > > Choosing CLOS or the like:
                              > >
                              > > - you don't get enough people
                              > > - those people you get cost too much
                              > > - you are incompatible with the rest of the world
                              > > - adapters and bug-fixes will always be last for you
                              >
                              > That's a static view. If people would be allowed to learn at their
                              > workspace, things could be different.
                              >
                              > > Specifically for a startup:
                              > >
                              > > - choosing a niche language at the core of your technology strategy may
                              > > make you liable to shareholder lawsuits if the company goes south
                              > >
                              > > Actually this isn't even about a specific language but about any
                              > > non-mainstream technology. I remember these arguments from the days when we
                              > > tried to convince UBS to widely deploy a meta-programming approach to
                              > > achieve flexibility etc. on an enterprise level.
                              >
                              > Java was non-mainstream in the beginning, but companies opted for it
                              > nevertheless.
                              >
                              > > Looks like this is the standard "Crossing the Chasm" problem. Well, then
                              > > CLOS is dead, because you don't get a second chance.
                              >
                              > Who says so? (i.e. that you don't get a second chance)
                              >
                              > > Unless, maybe, you
                              > > position it right to solve a new business problem.
                              >
                              > For example.
                              >
                              > In my opinion, the situation is currently as follows. Java was
                              > successful in bringing some properties of higher-level languages to the
                              > mainstream, like garbage collection and a disregard of pure efficiency
                              > in favor of more convenient features. IMHO it's important to note that
                              > this is an improvement over Algol- and C-like languages. (This is to say
                              > that, apart from its shortcomings, Java has real merits.)
                              >
                              > Now, Microsoft has jumped on the unhappiness of many programmers about a
                              > Java-centric world and created (the illusion of) a language-independent
                              > virtual machine as part of .NET. However, .NET's IL is still too close
                              > to Java bytecode, and so still too limited, and with a too-strong focus
                              > on OOP, for many programming languages.
                              >
                              > I think this story will eventually lead into a true paradigm-agnostic
                              > virtual machine by some other vendor that will (consciously or
                              > unconsciously) be based on a Lisp-variant internally. Only then the
                              > abstract instruction set will be powerful enough to have the potential
                              > to be targeted by any language. Lisp treats data and programs uniformly
                              > and I guess that this will turn out as an essential property of such a
                              > virtual machine.
                              >
                              > Because we are living in a post-modern world, there will never be a
                              > single language for all purposes. The deliberate restrictions of many
                              > languages have their merits (for example static type systems). Common
                              > Lisp could be repackaged as a virtual machine for many languages, with
                              > Common Lisp as the low-level entry for "power users". This would reduce
                              > the need to build "bridges" between different languages.
                              >
                              > Just my 0.02€
                              >
                              > Pascal
                              >
                              > --
                              > Pascal Costanza University of Bonn
                              > mailto:costanza@... Institute of Computer Science III
                              > http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)
                              >
                              > ________________________________________________________________________
                              > ________________________________________________________________________
                              >
                              > Message: 2
                              > Date: Mon, 26 Aug 2002 17:31:32 +0200
                              > From: Pascal Costanza <costanza@...>
                              > Subject: Re: An introduction to Lisp
                              >
                              > Erann Gat wrote:
                              > >
                              >
                              > > <rant>
                              > > The whole situation with languages in software engineering has
                              > > always struck me as rather bizzare. The skills of a software engineer are
                              > > almost invariably defined in terms of the languages they use, which is to
                              > > say, in terms of the tools they use, not in terms of the tasks they
                              > > perform. Job ads ask for a "C++ programmer" or a "Perl programmer". If
                              > > you had the equivalent situation in, say, building construction you'd see
                              > > "hammer user" or "screwdriver user" instead of "carpenter."
                              >
                              > Well, I think this is mostly our own fault (i.e., the fault of computer
                              > scientists). The term "programming language" raises certain associations
                              > in non-programmers. If they ask for "C++ programmers" they think about
                              > it in the same way as in asking for people who speak Spanish or French.
                              > Perhaps "programming tools" would be a better term?
                              >
                              > I don't know - several factors contribute to the fact that computer
                              > science is totally different from other disciplines. In a historical
                              > perspective, we are still at a very early stage and so we probably need
                              > metaphors and analogies. How can we avoid that non-experts misunderstand
                              > our terminology?
                              >
                              > > </rant>
                              >
                              > Pascal
                              >
                              > --
                              > Pascal Costanza University of Bonn
                              > mailto:costanza@... Institute of Computer Science III
                              > http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)
                              >
                              > ________________________________________________________________________
                              > ________________________________________________________________________
                              >
                              > Message: 3
                              > Date: Mon, 26 Aug 2002 10:29:06 -0700
                              > From: "Logan, Patrick D" <patrick.d.logan@...>
                              > Subject: From Lisp to ???
                              >
                              > Getting this conversation back on-topic... I think Lisp is a good vehicle to
                              > get to the next thing, but we should not mistake it for the next thing.
                              >
                              > Something interesting I read this weekend...
                              >
                              > http://www.paulgraham.com/spam.html
                              >
                              > Paul Graham's simple statistical approach to handling spam. This is an
                              > example of the little bits and pieces that can be used in new ways. It was
                              > easy for him to prototype it in Lisp. The solution is beyond Lisp, Lisp was
                              > the vehicle for his thought process.
                              >
                              > How else can these little ideas be strung together into new and simpler ways
                              > of doing useful things?
                              >
                              > -Patrick
                              >
                              > ________________________________________________________________________
                              > ________________________________________________________________________
                              >
                              > Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
                            • Richard P. Gabriel
                              ... Though it s not relevant, I would argue like this: My team will be able to program circles around everyone else. They will be able to construct rapidly a
                              Message 14 of 22 , Aug 26, 2002
                              • 0 Attachment
                                At 22:23 +0200 8/25/02, Dirk Riehle wrote:
                                >Choosing CLOS or the like:
                                >
                                >- you don't get enough people
                                >- those people you get cost too much
                                >- you are incompatible with the rest of the world
                                >- adapters and bug-fixes will always be last for you

                                Though it's not relevant, I would argue like this:

                                My team will be able to program circles around everyone else. They
                                will be able to construct rapidly a language specific to the problem
                                we are solving rather than using a language designed by computer
                                scientists worrying about their place in history and a herd of
                                library writers working in cubicles a thousand miles from our
                                business. My team will be able to use a language without training
                                wheels. Strong typing is for weak minds, and it's exactly like they
                                say at MIT: Our current popular languages are designed to help losers
                                lose less.

                                I will be able to point to various examples where Lisp programmers
                                have written not only 3-5 times faster, but they wrote things other
                                programmers thought were impossible. In this regard, I'd tell the
                                CEO, our competitors will be spending all their time trying to figure
                                out that it's really possible we're doing what we're doing, because
                                they will be thinking in terms of customization at compile time or
                                link time, not at runtime.

                                Moreover, we will be operating where the CEO is focusing on his or
                                her specialty and not imposing his or her knuckleheaded view on
                                technology.

                                Because Lisp is dead, I'll get better programmers for less money.
                                I'll be able to guarantee 50 more IQ points for the same pay. And my
                                guys will be able to spend their time typing in value not book
                                keeping overhead and typing in type descriptions because their guys
                                are too stupid to know when they type + numbers are involved.

                                Because no one uses Lisp, I'll have my pick of thousands of great,
                                experienced programmers looking to work for someone with a non-zero
                                IQ, not the ones fresh out of college with 10 programs under their
                                belts.

                                I'll be compatible with everything because it is right now. And if
                                someone throws me a bug, I can code around it in a few minutes. Being
                                a niche market means we're more proprietary. People will not use Lisp
                                to compete with us because they are lamebrains listening to the
                                latest fashion statement from Sun or Microsoft.The open source crowd
                                isn't even smart enough to notice C++, so they are especially nowhere
                                in the picture.

                                Of course, no CEO will belive this because every one of them is stupid.

                                -rpg-
                              • Brian Wallis
                                ... Thanks Dick, That was a great way to start my morning. I ll be quoting from it all day :-) brian wallis...
                                Message 15 of 22 , Aug 27, 2002
                                • 0 Attachment
                                  On Tue, 27 Aug 2002 13:03, Richard P. Gabriel wrote:

                                  > Though it's not relevant, I would argue like this:

                                  Thanks Dick, That was a great way to start my morning. I'll be quoting from it
                                  all day :-)

                                  brian wallis...
                                • eliot@parcplace.com
                                  ...and to folow on I d argue that the current post-9/11 downturn is the time when Lisp and Smalltalk will come to be dominant players in the enterprise .
                                  Message 16 of 22 , Aug 27, 2002
                                  • 0 Attachment
                                    ...and to folow on I'd argue that the current "post-9/11 downturn" is the time when Lisp and Smalltalk will come to be dominant players in "the enterprise". In fact 9/11 has little to do with the current economic realities, but marks the time; that being the bursting of the 90's stock market bubble, with corporate collapse the new commonplace (which could soon include Microsoft, see www.billparish.com/presslist.html, especially http://www.billparish.com/msftfraudfacts.html).

                                    Those "stupid" CEOs and their inefficient companies are now being culled in a darwinian selection process caused by a "sudden" change in the environment. Gone is the easy investment provided by the stock market, and with it the realities of unweildy mergers (WorldCom) have been exposed as fradulent; but which in biological terms are grotesque mutations too gluttonous to survive in lean times, too unweildy to move fast and too disabled in their malformed nervous systems to actually coordinate their limbs. As the regulatory environment grows harsher so companies are put under greater strain, more fail and seek the rich feeding grounds of chapter 11 bankruptcy in which they can stave off payments to creditors.

                                    Those CEOs were adaptations to an environment which in the short-term supported the gigantic and that which could grow at the highest rate. But the meteor has hit and if governments don't step in only the mammals and insects will survive (if the whole thing doesn't collapse, but then computer languages may be the least of our problems). Analogously, Java was/is force-fed marketing dollars and promoted by significant tools players (Sun, IBM, Microsoft) at least one of which is a dinosaur on the verge of extinction. Java was extremely fit for the pre 9/11 environment; replicated at zero cost (ok, not _zero_; IBM charged $11 for their offering), highly visible, and so able to find many willing hosts. Its failure to carve out the ecological niche it claimed to be able to dominate at the start (mobile code on the internet) mattered little in an environment where hype was what a language needed to prosper, and Java was the one and only language to get the huge amount of hype it did get from corporate backers.

                                    In the mean time Smalltalk and Lisp companies have learnt to survive on the scraps left by the behemoth. [In actual fact they've existed largely on existing customers with mission-critical applications to keep running; existing customers who specifically ban the vendors from mentioning their use of said languages since it constitutes an important competitive advantage]. Those vendors who avoided or miraculously survived the same stock-market-derived temptations to grow via merger and aquisition and start selling snake-oil (i.e. try to con their share holders that a move into selling Java GUI builders would make them irresistable stock-market picks), have emerged with mature reliable products, that can be maintained by small teams (beautifully formed by nearly a decade in the cold). Some have been aquired by older more stable com,panies that have provided the necessary veneer of stability to get their existing customers to provide new revenue and upgrade.

                                    The mission-critical applications deployed in Lisp and Smalltalk are impressive. The Smalltalk ones I'm aware of include the timetable calculation for a major European railway, derivatives trading systems generating $10^9 annual profit, command and control of all petroleum distribution in the U.S. for a consortium of three major oil companies, and so on. Amongst these are systems that their corporate IS teams have estimated would cost two to three times their entire existing development costs to port to Java. Others are systems maintained by teams of three or four programmers being harrassed by know-nothing managers pushing them to port to Java when the team is well aware of the infeasibility of the task. Still others are running on eight year old versions with management pushing for reimplementation for Java and the vendor negotiating for upgrades, a solution orders of magnitude cheaper for the customer.

                                    In short, the languages are being used, their markets are growing and the competition is becoming less and less attractive. But Smalltalk and Lisp only win when the imposed fitness function is an objective one. The fitness function being imposed on U.S. corporations post 9/11 is in turn forcing - from a management perspective, or enabling - from a programmer perspective, IS departments to impose an objective fitness program on their technologies.

                                    Of course, the context of existing users of Lisp and Smalltalk is entirely different from "pre-enlightenment" companies. What can be done to drag such denizens forward from the dark ages? [Argh! I have to go home and buy diapers on the way...] Please let it not be hype, but industry journals typically favour paid articles, academic journals all too readily follow fashion as their contributors abandon principle to chase funding, and an objective, temperate and informative medium usenet does not make.

                                    This leaves schools (but those run by followers of fashion are lowering IWQs with C++ and Java) and Open Source (Python is prospering). [Damn, I really do have to go home now; the supporting argumentation and completion of this article is too small to write in the margin of this screed...]

                                    +-----------------------------
                                    | Date: Mon, 26 Aug 2002 20:03:49 -0700
                                    | From: "Richard P. Gabriel" <rpg@...>
                                    | Subject: Re: [feyerabend-project] An introduction to Lisp

                                    | At 22:23 +0200 8/25/02, Dirk Riehle wrote:
                                    | >Choosing CLOS or the like:
                                    | >
                                    | >- you don't get enough people
                                    | >- those people you get cost too much
                                    | >- you are incompatible with the rest of the world
                                    | >- adapters and bug-fixes will always be last for you

                                    | Though it's not relevant, I would argue like this:

                                    | My team will be able to program circles around everyone else. They
                                    | will be able to construct rapidly a language specific to the problem
                                    | we are solving rather than using a language designed by computer
                                    | scientists worrying about their place in history and a herd of
                                    | library writers working in cubicles a thousand miles from our
                                    | business. My team will be able to use a language without training
                                    | wheels. Strong typing is for weak minds, and it's exactly like they
                                    | say at MIT: Our current popular languages are designed to help losers
                                    | lose less.

                                    | I will be able to point to various examples where Lisp programmers
                                    | have written not only 3-5 times faster, but they wrote things other
                                    | programmers thought were impossible. In this regard, I'd tell the
                                    | CEO, our competitors will be spending all their time trying to figure
                                    | out that it's really possible we're doing what we're doing, because
                                    | they will be thinking in terms of customization at compile time or
                                    | link time, not at runtime.

                                    | Moreover, we will be operating where the CEO is focusing on his or
                                    | her specialty and not imposing his or her knuckleheaded view on
                                    | technology.

                                    | Because Lisp is dead, I'll get better programmers for less money.
                                    | I'll be able to guarantee 50 more IQ points for the same pay. And my
                                    | guys will be able to spend their time typing in value not book
                                    | keeping overhead and typing in type descriptions because their guys
                                    | are too stupid to know when they type + numbers are involved.

                                    | Because no one uses Lisp, I'll have my pick of thousands of great,
                                    | experienced programmers looking to work for someone with a non-zero
                                    | IQ, not the ones fresh out of college with 10 programs under their
                                    | belts.

                                    | I'll be compatible with everything because it is right now. And if
                                    | someone throws me a bug, I can code around it in a few minutes. Being
                                    | a niche market means we're more proprietary. People will not use Lisp
                                    | to compete with us because they are lamebrains listening to the
                                    | latest fashion statement from Sun or Microsoft.The open source crowd
                                    | isn't even smart enough to notice C++, so they are especially nowhere
                                    | in the picture.

                                    | Of course, no CEO will belive this because every one of them is stupid.

                                    | -rpg-


                                    | To unsubscribe from this group, send an email to:
                                    | feyerabend-project-unsubscribe@yahoogroups.com

                                    |

                                    | Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
                                    ---
                                    Eliot Miranda ,,,^..^,,, mailto:eliot@...
                                    VisualWorks Engineering, Cincom Smalltalk: scene not herd Tel +1 408 216 4581
                                    3350 Scott Blvd, Bldg 36 Suite B, Santa Clara, CA 95054 USA Fax +1 408 216 4500
                                  • patrickdlogan
                                    Trying to stay very much on topic (and trimming my replies too, folks!)... Even if Microsoft is allowed to fail, there will be work to do on the Feyerabend
                                    Message 17 of 22 , Aug 27, 2002
                                    • 0 Attachment
                                      Trying to stay very much on topic (and trimming my replies too,
                                      folks!)...

                                      Even if Microsoft is allowed to fail, there will be work to do on the
                                      Feyerabend Project. Sticking to technical aspects, a large number of
                                      developers have the Microsoft mind-set. They cherish the traditional
                                      one-upsmanship of knowing anachronistic details of the proposed WS-
                                      Complexity spec ver. 1.2.1. This same spec can be implemented in
                                      CLOS. So that is not enough, even if it is the better choice today.

                                      I believe and hope that a successful Feyerabend Project result would
                                      be taking computing out of the hands of developers with this mind-
                                      set. (They would be allowed to give up that mind-set and follow along
                                      the new path.)

                                      This is not about some CEO agreeing to a Lisp or Smalltalk pilot
                                      project, and a bunch of geeks putting on a show Friday night in a
                                      barn. This is about cutting to the chase of something that would not
                                      require marketing. It would be so obviously better.

                                      Er, I hope.

                                      -Patrick
                                    • Dirk Riehle
                                      Since we are discussing an age-old problem that the Lisp/CLOS companies had already 10-15 years ago, I wonder whether hasn t been proof of CLOS (programmers )
                                      Message 18 of 22 , Aug 28, 2002
                                      • 0 Attachment
                                        Since we are discussing an age-old problem that the Lisp/CLOS companies had
                                        already 10-15 years ago, I wonder whether hasn't been proof of CLOS
                                        (programmers') higher effectiveness. Aren't there any studies that show how
                                        much more effective you can be with a CLOS (language + tool set) over a
                                        C/C++/Java (language + tool set)?

                                        I also believe that you can do more things faster and better with CLOS etc.
                                        However, it is not clear to me that this is the case the first half year of
                                        a startup that is doing product development. Doesn't it kick in only after
                                        a certain amount of time? When you really start evolving the product? When
                                        you need features that typically aren't there in a first release?

                                        >Because Lisp is dead, I'll get better programmers for less money.

                                        Well, the sad thing is, I wonder whether it's that easy still to get them.
                                        The universities I've been connected with don't really teach Lisp/CLOS
                                        anymore. (To any real degree.)

                                        >latest fashion statement from Sun or Microsoft.The open source crowd
                                        >isn't even smart enough to notice C++, so they are especially nowhere
                                        >in the picture.

                                        After a talk a few years back I asked Eric Raymond whether there is real
                                        open source outside the C/Unix world. He didn't know. Of course there is,
                                        but not anywhere near where we would like it to be. It's strange.

                                        >Of course, no CEO will belive this because every one of them is stupid.

                                        Oh did you enjoy writing this sentence with bitterness in your words.

                                        Well, I think most CEOs are clueless when it comes to technology. They
                                        shouldn't be, but then, they are clueless about many things, just like most
                                        people. So they go with the "safe" solution, except that it will kill them.
                                        (Most of them anyway, except for the few survivors, who survive for
                                        whatever other reason. Evolutionary selection is so apparent among startups.)

                                        Enough rambling.

                                        Dirk
                                      • Erann Gat
                                        ... http://www.flownet.com/gat/papers/lisp-java.pdf (See also http://www.flownet.com/gat/papers/ljfaq.html) All this interest in Lisp motivated me to finish a
                                        Message 19 of 22 , Aug 28, 2002
                                        • 0 Attachment
                                          On Wed, 28 Aug 2002, Dirk Riehle wrote:

                                          > Since we are discussing an age-old problem that the Lisp/CLOS companies had
                                          > already 10-15 years ago, I wonder whether hasn't been proof of CLOS
                                          > (programmers') higher effectiveness. Aren't there any studies that show how
                                          > much more effective you can be with a CLOS (language + tool set) over a
                                          > C/C++/Java (language + tool set)?

                                          http://www.flownet.com/gat/papers/lisp-java.pdf

                                          (See also http://www.flownet.com/gat/papers/ljfaq.html)

                                          All this interest in Lisp motivated me to finish a writing project that
                                          I've been working on for about two years recounting my experiences with
                                          Lisp at JPL. You can find it at:

                                          http://www.flownet.com/gat/jpl-lisp.html

                                          Warning: it's not a happy ending (though the first half is actually not
                                          too terribly depressing, and there's a warning before the scary part.)

                                          My bottom line on selling Lisp is that if you find yourself having to
                                          argue about it you've already lost. The right thing to do at that point
                                          is to find someone else to work for, or even better, start your own
                                          company and kick your old company's ass.

                                          Erann
                                          gat@...
                                        • Theo D'Hondt
                                          I promised myself not to let myself be dragged into this kind of discussion but ... Theo D Hondt Programming Technology Lab : Computer Science Department
                                          Message 20 of 22 , Aug 30, 2002
                                          • 0 Attachment
                                            I promised myself not to let myself be dragged into this kind of
                                            discussion but


                                            ----------------------------------------------------------------
                                            Theo D'Hondt
                                            Programming Technology Lab : Computer Science Department
                                            Faculty of Sciences : Brussels Free University
                                            Pleinlaan 2 / B-1050 Brussels / BELGIUM EUROPE
                                            mailto:tjdhondt@... http://prog.vub.ac.be/~tjdhondt
                                            Phone : +32-2-629 33 08 Fax : +32-2-629 35 25
                                            ----------------------------------------------------------------
                                          • Theo D'Hondt
                                            but here goes: Common Lisp isn t Lisp and (certainly) neither is CLOS. Lisp might be a thing of beauty but ... I remember being disgusted by the ADA reference
                                            Message 21 of 22 , Aug 30, 2002
                                            • 0 Attachment
                                              but here goes:

                                              Common Lisp isn't Lisp and (certainly) neither is CLOS. Lisp might be a
                                              thing of beauty but ... I remember being disgusted by the ADA reference
                                              manual and then having to submit to the fact that CL/CLOS manuals were
                                              triple its size. Somewhere in this thread somebody used the term
                                              "bloated" for something entirely different but it might be applicable
                                              here. And Scheme as (Common) Lisp subjected to a fitness regime is
                                              still not satisfactory (does Scheme count 3 or 4 variations on the Let
                                              special form?). During the first issue of the Feyerabend workshop Dave
                                              Thomas insisted on the importance of LITTLE languages - I am convinced
                                              he is right. Lisp might be the original little language but we might be
                                              able to do better ...
                                              ----------------------------------------------------------------
                                              Theo D'Hondt
                                              Programming Technology Lab : Computer Science Department
                                              Faculty of Sciences : Brussels Free University
                                              Pleinlaan 2 / B-1050 Brussels / BELGIUM EUROPE
                                              mailto:tjdhondt@... http://prog.vub.ac.be/~tjdhondt
                                              Phone : +32-2-629 33 08 Fax : +32-2-629 35 25
                                              ----------------------------------------------------------------
                                            • Pascal Costanza
                                              ... Here is a quote from an interview with James Gosling (see http://java.sun.com/features/2002/03/gosling.html) ... I think that this is just a pattern that
                                              Message 22 of 22 , Sep 2 6:27 AM
                                              • 0 Attachment
                                                Theo D'Hondt wrote:
                                                > Common Lisp isn't Lisp and (certainly) neither is CLOS. Lisp might be a
                                                > thing of beauty but ... I remember being disgusted by the ADA reference
                                                > manual and then having to submit to the fact that CL/CLOS manuals were
                                                > triple its size. Somewhere in this thread somebody used the term
                                                > "bloated" for something entirely different but it might be applicable
                                                > here.

                                                Here is a quote from an interview with James Gosling (see
                                                http://java.sun.com/features/2002/03/gosling.html)

                                                | JDC: The Java language adds features with every release, and this is
                                                | generally good, but the whole thing is getting pretty large. If you
                                                | could take a few things out, what would they be?

                                                | JG: The Java language actually doesn't add very many features. [...]
                                                | What has really gone nuts is all the different APIs [...]. And this
                                                | question, in some sense, is unanswerable. It says, if you could take
                                                | a few things out of [the] J2SE [platform], what would they be? One
                                                | of the tragedies we have is that we've got so many customers and
                                                | everything that is in the platform is critical to a pretty large
                                                | group of customers. So, for any particular person, any particular
                                                | developer, not all of [the] J2SE [platform] is going to matter. But
                                                | for every developer, the slice of the platform that they care about
                                                | is different. [...]

                                                I think that this is just a pattern that emerges when you try to balance
                                                several forces. They are: trying to serve the needs of many potential
                                                users, trying to achieve portability, and trying to do this all in a
                                                unified framework. If you drop the unified framework then you get
                                                several interoperability problems that you need to solve on a case by
                                                case basis.

                                                > And Scheme as (Common) Lisp subjected to a fitness regime is
                                                > still not satisfactory (does Scheme count 3 or 4 variations on the Let
                                                > special form?). During the first issue of the Feyerabend workshop Dave
                                                > Thomas insisted on the importance of LITTLE languages - I am convinced
                                                > he is right. Lisp might be the original little language but we might be
                                                > able to do better ...

                                                I don't think that it is possible to show that "little languages" are
                                                inherently better than big languages (or than languages with big
                                                libraries). They just resolve different sets of forces.

                                                The size of a language cannot be a measure in its own right. Although
                                                "umlambda"
                                                (http://www.eleves.ens.fr:8080/home/madore/programs/unlambda/) is
                                                clearly a joke, it shows that the size of a language must be balanced
                                                against other forces in order to provide something useful.

                                                I think we are in need of a kind of "Pattern Language of Programming
                                                Language Design". I am convinced that language advocacies don't make any
                                                sense and that a PLoPLD would clarify that each programming language
                                                just tries to balance a different set of forces. I don't think that
                                                there can ever be a single general-purpose programming language because
                                                I am convinced that there cannot be consistent resolution of all
                                                thinkable forces in this regard. However, from what I have seen so far,
                                                Common Lisp has obviously (to me, at least) successfully managed to
                                                resolve a relatively large set of fundamental forces.

                                                Pascal

                                                --
                                                Pascal Costanza University of Bonn
                                                mailto:costanza@... Institute of Computer Science III
                                                http://www.pascalcostanza.de Römerstr. 164, D-53117 Bonn (Germany)
                                              Your message has been successfully submitted and would be delivered to recipients shortly.