Skip to main content

Software Is Part Poetry, Part Prose

  • Conference paper
  • First Online:
Knowledge Discovery, Knowledge Engineering and Knowledge Management (IC3K 2015)

Abstract

Software is part Poetry, part Prose. But it has much more in common with both forms of natural language, than usually admitted: software concepts, rather than defined by syntactic oriented computer programming languages, are characterized by the semantics of natural language. This paper exploits these similarities in a two-way sense. In one way the software perspective is relevant to the analysis of natural language forms, such as poems. In the other way round, this paper uses properties of both Poetry and Prose to facilitate a deeper understanding of highest-level software abstractions. Running software or poetry leads to understanding of the meaning conveyed by the conceptual structure. Refactoring embeds the understanding obtained by running software or poetry, into their modified conceptual structure.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Backus, J.W.: The syntax and semantics of the proposed international algebraic language of Zurich ACM-GAMM conference. In: Proceedings of the International Conference on Information Processing, Paris (1959)

    Google Scholar 

  2. Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide, 2nd edn. Addison-Wesley, Boston (2005)

    Google Scholar 

  3. Borges, J.L.: Selected Poems. English translation by A.S. Kline (2013). http://www.poetryintranslation.com/PITBR/Spanish/Borges.htm#_Toc192667921

  4. Borges, J.L.: Borges y yo. Original text and audio in Spanish by the poet. http://palabravirtual.com/index.php?ir=ver_voz1.php&wid=725&p=Jorge%20Luis%20Borges&t=Borges%20y%20yo

  5. Brown, J.R., Fehige, Y.: Thought experiments. In: Zalta, E.N. (ed.) Stanford Encyclopedia of Philosophy (2011). http://plato.stanford.edu/archives/fall2011/entries/thought-experiment/

  6. Chomsky, N.: Syntactic Structures. Mouton, Berlin (1957)

    MATH  Google Scholar 

  7. Exman, I., Yagel, R.: ROM: an approach to self-consistency verification of a runnable ontology model. In: Fred, A., Dietz, Jan, L.,G., Liu, K., Filipe, J. (eds.) IC3K 2012. CCIS, vol. 415, pp. 271–283. Springer, Heidelberg (2013). doi:10.1007/978-3-642-54105-6_18

    Chapter  Google Scholar 

  8. Exman, I., Speicher, D.: Linear software models: equivalence of modularity matrix to its modularity lattice. In: Proceedings of the 10th ICSOFT International Joint Conference on Software Technologies, Colmar, France, pp. 109–116 (2015). doi:10.5220/0005557701090116

  9. Fauconnier, G.: Mappings in Thought and Language. Cambridge University Press, Cambridge (1997)

    Book  Google Scholar 

  10. Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston (1999)

    Google Scholar 

  11. Gabriel, R.P.: Designed as designer. In: Proceedings of the 23rd ACM SIGPLAN Conference on Object Oriented Programming Systems, Languages and Applications, OOPSLA 2008 (2008). ACM SIGPLAN Not. 43(10), 617–632. doi:10.1145/1449955.1449813

    Google Scholar 

  12. Galilei, G.: Dialogue Concerning the Two Chief World Systems (1632). Italian, Translated by Stillman Drake. University of California Press, Berkeley, CA (1953)

    Google Scholar 

  13. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Addison-Wesley, Boston (1995)

    MATH  Google Scholar 

  14. Ganter, B., Wille, R.: Formal Concept Analysis: Mathematical Foundations. Springer, New York (1999)

    Book  MATH  Google Scholar 

  15. Ganter, B., Stumme, G., Wille, R.: Formal Concept Analysis - Foundations and Applications. Springer, Berlin (2005)

    MATH  Google Scholar 

  16. Hopper, G.M.: Compiling routines. Comput. Autom. 2(4), 1–5 (1953)

    Google Scholar 

  17. Lakoff, G.: A principled exception to the coordinate structure constraint. In: Proceedings of the 21st Regional Meeting Chicago Linguistic Society. Chicago Linguistic Society (1986)

    Google Scholar 

  18. Langacker, R.W.: Foundations of Cognitive Grammar. Stanford University Press, Stanford (1987)

    Google Scholar 

  19. Lindig, C., Snelting, G.: Assessing modular structure of legacy code based on mathematical concept analysis. In: ICSE 1997 Proceedings of the 19th International Conference on Software Engineering, pp. 349–359. ACM (1997). doi:10.1145/253228.253354

  20. McCarthy, J.: Recursive functions of symbolic expressions and their computation by machine. Commun. ACM 3(4), 184–195 (1960). doi:10.1145/367177.367199

    Article  MATH  Google Scholar 

  21. Mens, T., Tourwe, T.: A survey of software refactoring. IEEE Trans. Softw. Eng. 32, 126–139 (2004). doi:10.1109/TSE.2004.1265817

    Article  Google Scholar 

  22. St. Vincent Millay, E.: Unnamed Sonnets I-XII, pp. 97–110. Mitchell Kennerley, New York (1921)

    Google Scholar 

  23. Modern American Poetry, Online Poems. www.english.illinois.edu/maps/poets/m_r/millay/online_poems.htm

  24. Noble, J., Biddle, R., Tempero, E.: Metaphor and metonymy in object-oriented design patterns. In: ACSC 2002 Proceedings of the 25th Australasian Conference on Computer Science, vol. 4, pp. 187–195 (2002). doi:10.1145/563857.563823

  25. Nofre, D., et al.: When technology became language, the origins of the linguistic conception of computer programming, 1950–1960. Technol. Cult. 55(1), 40–75 (2014). doi:10.1353/tech.2014.0031

    Article  Google Scholar 

  26. OMG (Object Management Group): Unified Modeling Language (UML) Specification version 2.5 (2015). http://www.omg.org/spec/UML/2.5

  27. Pan, J.Z., et al. (eds.): Ontology-Driven Software Development. Springer, Heidelberg (2013)

    MATH  Google Scholar 

  28. Piccinini, G.: Computation without representation. Philos. Stud. 137(2), 205–241 (2008). doi:10.1007/s11098-005-5385-4

    Article  MathSciNet  Google Scholar 

  29. Plath, S.: Edge Poem (1963). http://www.poetryfoundation.org/poem/178970

  30. Smith, B.C.: The foundations of computing. In: Scheutz, M. (ed.) Computationalism: New Directions, pp. 23–58. MIT Press, Cambridge (2002)

    Google Scholar 

  31. Turing, A.: On computable numbers with an application to the entscheidungsproblem. Proc. London Math. Soc. s2-42, 230–265 (1937). doi:10.1112/plms/s2-42.1.230

    Article  MathSciNet  MATH  Google Scholar 

  32. White, G.: Descartes among the robots – computer science and inner/outer distinction. Mind. Mach. 21(2), 179–202 (2011). doi:10.1007/s11023-011-9232-4

    Article  Google Scholar 

  33. Plath, S.: Wikipedia (2015). https://en.wikipedia.org/wiki/Sylvia_Plath

Download references

Acknowledgements

The authors wish to acknowledge significant suggestions by two anonymous referees. I.E. is grateful to Yedidia Argaman for actual experiments with “running” poetry.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Iaakov Exman .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Exman, I., Plebe, A. (2016). Software Is Part Poetry, Part Prose. In: Fred, A., Dietz, J., Aveiro, D., Liu, K., Filipe, J. (eds) Knowledge Discovery, Knowledge Engineering and Knowledge Management. IC3K 2015. Communications in Computer and Information Science, vol 631. Springer, Cham. https://doi.org/10.1007/978-3-319-52758-1_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-52758-1_20

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-52757-4

  • Online ISBN: 978-3-319-52758-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics