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

Feyerabend Stuff

Expand Messages
  • Richard P. Gabriel
    Feyerabend has probably seemed dead to you all for the last few years. However, things have been happening. A key activity has been the establishment and
    Message 1 of 1 , Aug 22, 2007
    • 0 Attachment
      Feyerabend has probably seemed dead to you all for the last few
      years. However, things have been happening. A key activity has been
      the establishment and flourishing of the Onward! conference, which is
      a conference within OOPSLA for new thinking in computing. Many if not
      all of you are aware of Onward!, but it doesn't hurt to refresh
      memories. Here is the description of the 2005 edition of Onward!:

      "Onward! is a separate track that explores or examines new ideas,
      approaches or paradigms; it includes refereed papers, panels, invited
      talks, a session called Breakthrough Ideas, a Film Festival, a
      keynote, and reviewed presentations.

      Papers describing new paradigms or metaphors in computing, new
      thinking about objects, new framings of computational problems or
      systems, and new technologies are presented in the Onward! Track.
      Such papers don't necessarily advance the state of the art, but aim,
      instead, to alter or redefine the art by proposing a leap forward-or
      sideways-regarding computing. Although an Onward! Track paper might
      not contain a fully worked out theory or implemented system, it must
      be well thought out, well-written, and compelling in its vision or
      uniqueness of thinking. Onward! papers are published in the

      A Breakthrough Idea is a 5-minute remark and a 250-word micro-essay
      on an idea that could change the world or is something the author
      wished he or she had the nerve to say in public about computing.
      Breakthrough Ideas are solicited by the Onward! program chair.

      A presentation is a 45-minute talk along with a short (4-page) paper
      published in the Companion or its equivalent. A presentation is
      judged primarily by the likelihood of its stimulating discussion.

      Some ideas are not suitable for standard slideware and talking-head
      presentation. The film festival is for those ideas, concepts,
      insights, and oddities that require a more thoroughly multi-media
      presentation. Films are solicited by the Onward! chair, and
      unsolicited submissions are accepted by the Onward! program
      committee. Each film is screened during the conference with a special
      back-to-back screening of all films one evening-probably very late."

      At that time it was a track, and now it's considered its own
      conference, and soon it probably will be as we start that process.
      You should think about submitting material to the conference.

      Last year, Ron Goldman and I submitted a paper that was well-received
      and in the Feyerabend vein. You can read it here:


      This year at Onward! there are a couple of interesting papers. One of
      them builds on the one Ron and I did. Here are the papers and

      Epi-Aspects: Aspect-Oriented Conscientious Software
      Sebastian Fleissner (The Chinese University of Hong Kong), Elisa L.
      A. Baniassad (The Chinese University of Hong Kong)

      Conscientious software is a recently proposed paradigm for developing
      reliable, self-sustaining software systems. Conscientious software
      systems consist of an allopoietic part, which encapsulates
      application functionality, and an autopoietic part that is
      responsible for keeping the system alive by monitoring the
      application and adapting it to environmental changes. Whilst the
      application can be implemented in a general purpose programming
      language, the autopoietic part requires a special autopoietic
      programming language, which does not contain any elements that allow
      programmers to introduce critical bugs that might crash or stall the
      conscientious software system. Practical application of the
      conscientious software paradigm requires solutions to two open
      problems: The design of suitable lithe programming languages and the
      proposal of concrete architectures for combining the autopoietic and
      allopoietic parts. In this paper, we propose a concrete,
      aspect-oriented architecture for realizing conscientious software. In
      particular, we introduce epi-aspects, a construct for upgrading new
      and existing applications into conscientious software. Apart from
      presenting the architectural design of epi-aspects, we provide an
      autopoietic simulator and a concrete framework for developing
      epi-aspects in Java. This framework and the simulator are used to
      conduct a case study in which we develop and test a conscientious
      Java application.

      Living in the Comfort Zone
      Martin Rinard (MIT)

      A comfort zone is a tested region of a system's input space within
      which it has been observed to behave acceptably. To keep systems
      operating within their comfort zones, we advocate the interposition
      of rectifiers between systems and their input sources. Rectifiers are
      designed to transform inputs to ensure that they are within the
      comfort zone before they are presented to the system. Rectifiers
      enforce a highly constrained input format and, if necessary, discard
      information to force inputs to conform to this format. Potential
      benefits of this approach include the elimination of errors and
      vulnerabilities, the excision of undesirable excess functionality
      from large, complex systems, and a simplification of the computing
      environment. We have developed a rectifier for email messages and
      used this rectifier to force messages into a specific constrained
      form. Our results show that this rectifier can successfully produce
      messages that keep the Pine email client strictly within code
      previously confirmed (during a small testing and training session) to
      function acceptably. Our results also show that the rectifier
      completely eliminates a security vulnerability in the Pine email
      client. And finally, the rectifier is able to accomplish these goals
      while still preserving an acceptable amount of information from the
      original messages.

      Living it up with a Live Programming Language
      Sean Mcdirmid (Ecole Polytechnique Federale de Lausanne (EPFL))

      A dynamic language improves programmer productivity through flexible
      typing, a focus on high-level programming, and by streamlining the
      edit-compile-debug cycle. Live languages go beyond dynamic languages
      with more programmer-centric features. A live language supports live
      programming that provides programmers with responsive and continuous
      feedback about how their edits affect program execution. A live
      language is also based on declarative programming constructs such as
      rules or data-flow connections so that programmers can write less
      code. A live language should also provide programmers with responsive
      semantic feedback to enable time-saving services such as code
      completion. This paper describes the design a textual live language
      known as SuperGlue. SuperGlue is based on reactive values known as
      signals that are supported with declarative data-flow connections and
      dynamic inheritance. Through signals and dynamic inheritance,
      SuperGlue supports live programming, declarative programming, and
      responsive semantic feedback. We demonstrate live programming in
      SuperGlue with a working prototype.

      No Ifs, Ands, or Buts: Uncovering the Simplicity of Conditionals
      Jonathan Edwards (MIT Computer Science and Artificial Intelligence Lab)

      Schematic tables are a new representation for conditionals. Roughly a
      cross between decision tables and data flow graphs, they represent
      computation and decision-making orthogonally. They unify the full
      range of conditional constructs, from if statements through pattern
      matching to polymorphic predicate dispatch. Program logic is
      maintained in a declarative canonical form that enforces completeness
      and disjointness among choices. Schematic tables can be used either
      as a code specification/generation tool, or as a self-contained
      diagrammatic programming language. They give program logic the
      clarity of truth tables, and support high-level direct manipulation
      of that logic, avoiding much of the mental computation demanded by
      conventional conditionals. keywords decision tables, control
      structures, polymorphism, visual programming, refactoring .


      October 23-25, http://oopsla.org

      There is also a film festival and a keynote by the Second Life guys.


      Another thrust is happening: Ultra Large Scale Systems. About 2 years
      ago I was asked to be on an expert panel at the SEI to look at what
      billion-line programs would be like and how to build and maintain
      them. I brought my Feyerabendian ideas, and they were embraced! It
      was recognized that such systems would be incomprehensible, and hence
      unusual means were needed to design, implement, and build them. We
      wrote a report and it's filled with things like metaheuristics,
      digital evolution, self-sustaining, self-designing, and
      self-implementing stuff (along with a lot of more mundane ideas).
      Building such systems is as weird as the systems themselves since the
      systems include people.

      The report was written for the US DoD and has some very unappealing
      language and examples, but it might be worth a read:


      (there is a PDF version there).

      We have held 2 workshops on this topic at OOPSLA and ICSE, and a
      sanitized, sane version of the report is being worked on now to be
      published by Addison-Wesley - I am one of the editors/authors.


      I have certainly not given up the fight to rethink computing, and
      these days it seems that others are joining the effort. Would there
      be any interest in picking up on it again and holding a workshop
      somewhere in the next year or so? Let me know.

    Your message has been successfully submitted and would be delivered to recipients shortly.