Wednesday, 26 August 2009

CfP: The Philosophy of Computer Science (special issue of Minds & Machines)

Special issue of Minds and Machines (Fall 2010)

Important dates:

  • Submission deadline: 1 Dec. 2009 extended to: 1 Jan. 2010
  • Notification: 1 May 2010
  • Appearance (tentative): Dec. 2010

Submission page: http://www.easychair.org/conferences/?conf=pcsmm2010

Size limit: fifteen thousand words. More submission guidelines: See Springer' Instructions to Authors

Two special editions of Minds and Machines (2007) and the Journal of Applied Logic (2008) dedicated to the philosophy of computer science have already appeared in print. Another special edition of Minds and Machines is planned for 2010. We invite submissions concerned with philosophical issues that arise from reflection upon the nature and practice of the academic discipline of computer science. In particular we welcome submissions concerned with questions such as the following (Turner & Eden 2008):

  1. What kinds of things are programs? Are they abstract or concrete? (Moor 1978; Colburn 2004)
  2. What are the differences between programs and algorithms? (Rapaport 2005a)
  3. What is a specification? And what is being specified? (Smith 1985; Turner 2005)
  4. Are specifications fundamentally different from programs? (Smith 1985)
  5. What is an implementation? (Rapaport 2005b)
  6. What distinguishes hardware from software? Do programs exist in both physical and symbolic forms? (Moor 1978; Colburn 2004)
  7. What kinds of things are digital objects? Do we need a new ontological category to house them? (Allison et al. 2005)
  8. What are the objectives of the various semantic theories of programming languages? (White 2004; Turner 2007)
  9. How do questions in the philosophy of programming languages relate to parallel ones in the philosophy of language? (White 2004)
  10. Does the principle of modularity (e.g., Dijkstra 1968) relate to the conceptual issues of full-abstraction and compositionality?
  11. What are the underlying conceptual differences between the following programming paradigms: structured, functional, logic, and object-oriented programming?
  12. What are the roles of types in Computer Science? (Barandregt 1992; Pierce 2002)
  13. What is the difference between operational and denotational semantics? (Turner 2007)
  14. What does it mean for a program to be correct? What is the epistemological status of correctness proofs? Are they fundamentally different from proofs in mathematics? (DeMillo et al. 1979; Smith 1985)
  15. What do correctness proofs establish? (Fetzer 1988; Fetzer 1999; Colburn 2004)
  16. What is abstraction in computer science? How is it related to abstraction in mathematics? (Colburn & Shute 2007; Fine 2008; Hale & Wright 2001)
  17. What are formal methods? What is formal about formal methods? What is the difference between a formal method and informal one? (Bowen & Hinchey 2005; Bowen & Hinchey 1995)
  18. What kind of discipline is computer science? What are the roles of mathematical modelling and experimentation? (Minsky 1970; Denning 1980; Denning 1981; Denning et al. 1989; Denning 1985; Denning 1980b; Hartmanis 1994; Hartmanis1993; Hartmanis 1981; Colburn 2004; Eden 2007)
  19. Should programs be considered as scientific theories? (Rapaport 2005a)
  20. How is mathematics used in computer science? Are mathematical models used in a descriptive or normative way? (White 2004; Turner 2007)
  21. Does the Church-Turing thesis capture the mathematical notion of an effective or mechanical method in logic and mathematics? Does it capture the computations that can be performed by a human? Does its scope apply to physical machines? (Copeland 2004; Copeland 2007; Hodges 2006)
  22. Can the notion of computational thinking withstand philosophical scrutiny? (Wing 2006)
  23. What is the appropriate logic with which to reason about program correctness and termination? (Hoare 1969; Feferman 1992) How is the logic dependent upon the underlying programming language?
  24. What is information? (Floridi 2004; Floridi 2005) does this notion throw light on some of the questions listed here?
  25. Why are there so many programming languages and programming paradigms? (Krishnamurthi 2003; Eden & Turner 2007)
  26. Do programming languages (and paradigms) have the nature of scientific theories? What causes a programming paradigm shift? (Kuhn 1970)
  27. Does software engineering raise any philosophical issues? (Eden 2007)

Raymond Turner, Amnon H. Eden
School of Computer Science and Electronic Engineering, University of Essex

References

  • Allison, A., Currall, J., Moss, M. and Stuart, S., 2005, “Digital identity matters”, Journal of American Society Information Science and Technology 56(4): 364–372.
  • Arkoudas, K. and Bringsjord, S., 2007, “Computers, Justification, and Mathematical Knowledge”, Minds and Machines 17(2): 185–202.
  • Barendregt, H.P., 1993, “Lambda calculi with types”, in: Handbook of logic in computer science, Vol. 2, New York, NY: Oxford University Press Inc.
  • Barker-Plummer, D., 2008, “Turing Machines”, The Stanford Encyclopedia of Philosophy (Fall 2008 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/fall2008/entries/turing-machine/>.
  • Bishop, E., 1977, Foundations of constructive analysis, McGraw-Hill.
  • Blass, A. and Gurevich, Y., 2003, “Algorithms: A Quest for Absolute Definitions”, Bulletin of the European Association for Theoretical Computer Science (EATCS) No. 81: 195-225.
  • Bowen, J.P. and Hinchey, M.G., 1995, “Ten Commandments of Formal Methods”, IEEE Computer 28(4): 56–63.
  • Bowen, J.P. and Hinchey, M.G., 2005, “Ten Commandments of Formal Methods: Ten Years Later”, IEEE Computer 39(1): 40–48.
  • Brooks, F. P., 1987, “No Silver Bullet: Essence and Accidents of Software Engineering”, IEEE Computer 20(4): 10-19.
  • Burge, T., 1998, “Computer Proof, A Priori Knowledge, and Other Minds”, Philosophical Perspectives 12: 1–37.
  • Bynum, T., 2001, “Computer Ethics: Basic Concepts and Historical Overview”, The Stanford Encyclopaedia of Philosophy (Winter 2001 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/win2001/entries/ethics-computer/>
  • Colburn, T., 2004, “Methodology of Computer Science”, The Blackwell Guide to the Philosophy of Computing and Information, Luciano Floridi (ed.), Malden: Blackwell, pp. 318–326.
  • Colburn, T., and Shute, G., 2007, “Abstraction in Computer Science”, Minds and Machines 17(2): 169–184.
  • Coleman, K.G., 2003, “Computing and Moral Responsibility”, The Stanford Encyclopedia of Philosophy (Fall 2003 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/entries/computing-responsibility/>
  • Copeland, B. Jack, 2008, “The Church-Turing Thesis”, The Stanford Encyclopedia of Philosophy (Fall 2008 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/fall2008/entries/church-turing/>.
  • Copeland, B.J., 2004, “Computation”, The Blackwell Guide to the Philosophy of Computing and Information, Luciano Floridi (ed.), Malden: Blackwell, pp. 3–17.
  • Coquand, T., 2006, “Type Theory”, The Stanford Encyclopedia of Philosophy (Winter 2006 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/win2006/entries/type-theory/>
  • DeMillo, R.A., Lipton, R.J. and Perlis, A.J., 1979, “Social Processes and Proofs of Theorems and Programs”, Communications of the ACM 22(5): 271–280.
  • Denning, P.J., 1980, “On Folk Theorems and Folk Myths”, Communications of the ACM 23(9): 493–494.
  • Denning, P.J., 1980b, “What is Experimental Computer Science?” Communications of the ACM 23(10): 534–544.
  • Denning, P.J., 1981, “Performance Analysis: Experimental Computer Science as its Best”, Communications of the ACM 24(11): 725–727.
  • Denning, P.J., 1985, “The Science of Computing: What is computer science?” American Scientist 73(1): 16–19.
  • Denning, P.J. (ed.), et al., 1989, “Computing as a Discipline”, Communications of the ACM 32(1): 9–23.
  • Dijkstra, E., 1968. “Go To Statement Considered Harmful”, Communications of the ACM 11(3): 147–148.
  • Dummett, M., 1991, “The Logical Basis of Metaphysics”, Harvard University Press.
  • Dummett, M., 2006, “Thought and Reality”, Oxford University Press.
  • Eden, A.H., 2007, “Three Paradigms in Computer Science”, Minds and Machines 17(2): 135–167.
  • Eden, A.H., and Turner, R., 2007. “Problems in the ontology of computer programs.” Applied Ontology 2(1):13–36. Amsterdam: IOS Press.
  • Feferman, S., 1992, “Logics for termination and correctness of functional programs”, Logic for Computer Science: 95–127, MSRI Pubs. vol. 21, New York, NY: Springer-Verlag.
  • Fetzer, J.H., 1988, “Program Verification: The Very Idea”, Communications of the ACM 31(9): 1048–1063.
  • Fetzer, J.H., 1999, “The Role of Models in Computer Science”, The Monist 82(1): 20–36.
  • Fine, K., 2008, “The Limits of Abstraction”. Oxford: Oxford University Press.
  • Floridi, L., 2004. “Information”, The Blackwell Guide to the Philosophy of Computing and Information, Luciano Floridi (ed.), Malden: Blackwell, pp. 40–62.
  • Floridi, Luciano 2007, “Semantic Conceptions of Information”, The Stanford Encyclopedia of Philosophy (Spring 2007 Edition), Edward N. Zalta (ed.)
  • Forrest, P., 2006, “The Identity of Indiscernibles”, The Stanford Encyclopedia of Philosophy (Fall 2008 Edition), Edward N. Zalta (ed.)
  • Fuchs, N.E., 1992, “Specifications Are (Preferably) Executable”. Software Engineering Journal 7(5): 323–334.
  • Gandy, R., 1980, “Church's thesis and principles for mechanisms”, The Kleene symposium, Barwise, J., Keisler, H. J. and Kunen, K. (eds.), Amsterdam: North-Holland.
  • Hagar, A., 2007, “Quantum Algorithms: Philosophical Lessons”, Minds and Machines 17(2): 233–247.
  • Hale, B. and Wright, C., 2001, “The Reason's Proper Study: Essays towards Neo-Fregean Philosophy of Mathematics”, Oxford Scholarships on Line, Oxford: Oxford University Press.
  • Hartmanis, J., 1993, “Some Observations about the Nature of Computer Science”, Lecture Notes in Computer Science 761, Shyamasundar, R.K. (ed.): 1–12.
  • Hartmanis, J., 1994, “Turing Award Lecture: On Computational Complexity and the Nature of Computer Science”, Communications of the ACM 37(10): 37–43.
  • Hoare, C.A.R., 1969, “An axiomatic basis for computer programming". Communications of the ACM 12(10):576–585.
  • Hodges, A., 2006, “Did Church and Turing have a thesis about machines?”, Church's Thesis after 70 years Olszewski, Adam (ed.)
  • Hodges, A., 2007, “Can quantum computing solve classically unsolvable problems?”
  • Horsten, L., 2008, “Philosophy of Mathematics”, The Stanford Encyclopedia of Philosophy (Fall 2008 Edition), Edward N. Zalta (ed.)
  • Immerman, N., 2006, “Computability and Complexity”, The Stanford Encyclopedia of Philosophy (Fall 2006 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/fall2006/entries/computability/>.
  • Irvine, A.D., 2003, “Russell’s Paradox”, The Stanford Encyclopedia of Philosophy (Fall 2006 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/fall2006/entries/russell-paradox/>
  • Jones. C.B. and Hayes, I.J., 1990, “Specifications Are Not (necessarily) Harmful”, Software Engineering Journal 4(6): 330–339.
  • Krishnamurthi, S., 2003. Programming Languages: Application and Interpretation,
  • Kreisel, G., and Gandy, R.O., 1975, “Some Reasons for Generalizing Recursion Theory.” The Journal of Symbolic Logic 40(2): 230–232.
  • Kripke, S., 1982, Wittgenstein on Rules and Private Language. Harvard University Press.
  • Kuhn, T.S., 1970, The Structure of Scientific Revolutions, 2nd. ed., Chicago: Univ. of Chicago Press.
  • Landin, P.J., 1964, “The mechanical evaluation of expressions”, Computer Journal 6(4): 308–320.
  • Milne, R. and Strachey, C., 1977, A Theory of Programming Language Semantics, New York, NY: Halsted Press.
  • McLaughlin, B., 2004, “Computationalism, Connectionism, and the Philosophy of Mind”, The Blackwell Guide to Philosophy of Computing and Information, Floridi, Luciano (ed.) Malden: Blackwell, pp. 135–152.
  • Minsky, M., 1970, “ACM Turing Lecture: Form and Content in Computer Science”, Journal of the Association for Computing Machinery 17(2): 197–215.
  • Moor, J.H., 1978, “Three Myths of Computer Science”, The British Journal for the Philosophy of Science 29(3): 213–222.
  • Moschovakis, Y.N., 1998, “On founding the theory of algorithms”, Truth in Mathematics Dales, Harold G. and Oliveri, Gianluigi (eds.), Oxford: Oxford University Press.
  • Pierce, B.C., 2002, Types and Programming Languages, Cambridge, MA: MIT Press.
  • Plotkin, G.D., 1981, “A Structural Approach to Operational Semantics”, Tech. Rep. DAIMI FN-19, Computer Science Department, Aarhus University, Aarhus, Denmark.
  • Rapaport, W.J., 2005a, “Philosophy of Computer Science: An Introductory Course”, Teaching Philosophy 28(4): 319–341.
  • Rapaport, W.J., 2005b, “Implementation is Semantic Interpretation: Further Thoughts.” Journal of Experimental and Theoretical Artificial Intelligence 17(4): 385–417.
  • Rosen, Gideon, 2008. “Abstract Objects”, The Stanford Encyclopedia of Philosophy (Fall 2008 Edition), Edward N. Zalta (ed.).
  • Shapiro, S., 1997, Philosophy of Mathematics: Structure and Ontology, Oxford: Oxford University Press.
  • Sieg, Wilfried, 2008, “Church without Dogma: Axioms for Computability”, New Computational Paradigms, Lowe, B., Sorbi, A. and Cooper, B. (eds.), Springer-Verlag, 139–152.
  • Smith, B.C., 1996, “Limits of Correctness in Computers”, Computerization and Controversy, Kling, R. (ed.), Morgan Kaufman, pp. 810–825.
  • Szab√≥, Z.G., 2007, “Compositionality”, The Stanford Encyclopedia of Philosophy (Spring 2007 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/spr2007/entries/compositionality/>.
  • Thomason, R., 2005, “Logic and Artificial Intelligence”, The Stanford Encyclopedia of Philosophy (Summer 2005 Edition), Edward N. Zalta (ed.), URL = <http://plato.stanford.edu/archives/sum2005/entries/logic-ai/>.
  • Turner, Raymond and Eden, Amnon H., 2007, “Towards Programming Language Ontology”, Computation, Information, Cognition—The Nexus and the Liminal, Dodig-Crnkovic, Gordana and Stuart, Susan (eds.), Cambridge, UK: Cambridge Scholars Press, pp. 147–159.
  • Turner, R., 2005, “The Foundations of Specification”, Journal of Logic Computation 15: 623–662.
  • Turner, R., 2007, “Understanding Programming Languages”. Minds and Machines 17(2): 129-133
  • Turner, R. and Eden, A.H., 2008, “The Philosophy of Computer Science”, The Stanford Encyclopedia of Philosophy, Edward N. Zalta (ed.)
  • Tymoczko, T., 1979, “The Four-Color Problem and Its Philosophical Significance”, Journal of Philosophy 76(2): 57–83.
  • White, G., 2004, “The Philosophy of Computer Languages”, The Blackwell Guide to the Philosophy of Computing and Information, Floridi, Luciano (ed.), Malden: Blackwell, pp. 318–326.
  • Wing, J.M., 2006, “Computational Thinking”, Communications of the ACM, 49(3): 33–35.
  • Wittgenstein, L., 1953. Philosophical Investigations. Blackwell Publishing.
  • Wright, Crispin, 1983, Frege's Conception of Numbers as Objects, Aberdeen University Press.

Future Shock: 30 years on

Alvin Toffler's Future Shock has won so many recommendations that I was afraid it will prove to be pop pulp. Finally I got over my prejudice and read the book. I was wrong.

30 years on, the book's numerous predictions are more accurate than any other I've ever come across (but please do enlighten me if you know better). He is right about the present. Consider this for example:

In the three short decades between now and the twenty-first century, millions of ordinary, psychologically normal people will face an abrupt collision with the future. Citizen’s of the world’s richest and most technologically advanced nations, will find it increasingly painful to keep up with the incessant demand for change that characterizes our time. For them, the future will have arrived too soon. (p.11)

For the acceleration of change ... is a concrete force that reaches deep into our personal lives, compels us to act out new roles, and confronts us with with the danger of a new and powerfully upsetting psychological disease. (p.12)

Future shock is a time phenomenon, a product of the greatly accelerated rate of change in society. It arises from the superimposition of a new culture on the old one[:] a culture shock in one's own society. ....

Take an individual out of his own culture and set him down suddenly in an environment sharply different from his own, with a different set of cues to react to—different conceptions of time, space, work, love, religion, sex, and everything else—then cut him off from any hope of retreat to a more familiar social landscape, and the dislocation he suffers is doubly severe. Moreover, if this new culture is itself in constant turmoil, and if—worse yet—its values are incessantly changing, the sense of disorientation will be still further intensified. ... The victim may become a hazard to himself and others.

Now imagine not merely an individual but an entire society, an entire generation—including its weakest ... members—suddenly transported into this new world. The result is mass disorientation, future shock on a grand scale.

This is the prospect that man now faces. (p. 14)

Tuesday, 25 August 2009

The truth about Amsterdam...

Someone in Fox News has apparently decided that Amsterdam is a sink of iniquity which should be used as an warning against legalizing marijuana. As a rebuttal, a diligent Dutch has prepared this hilarious clip titled "The truth about Amsterdam"