Computational science is a productive intellectual activity. It produces highly useful computer programs that require much creativity and ingenuity to develop. Moreover, computation is a powerful theoretical tool for natural scientists. However, can computational science have a scientiic foundation, quite apart from its roles as a juxtaposition of disciplines and as another theoretical tool for scientists? That is, can computational science develop concepts that enable a broad systematic understanding of inference and discovery in science? This paper makes a case for an aarmative answer that relies on the concept of \generic scientiic task." We will argue that theoretical understanding is to be attained by identifying and automating such tasks. To develop the idea, we conngure samples of previous work in computational science (broadly construed), lay a road map to guide further research, and suggest experimental tools to generate research problems and to redeploy proven techniques.