skip to main content
article

Principled design of logical fisheye views of functional expressions

Published:01 August 2006Publication History
Skip Abstract Section

Abstract

We face the problem of simplifying automatically the visualization of expressions in an eager functional language. The problem is relevant for debugging in a programming environment, based on a rewriting model of expression evaluation that displays large intermediate expressions. The simplification technique must filter automatically the parts of an expression which are not interesting for debugging/understanding. We propose the use of logical fisheye views because they provide a balance between showing global context and local information (focus). A straightforward implementation of fisheye views displays too simplified expressions. In the article, we identify five design requirements and describe how they are satisfied. We also include several examples, a discussion and related work.

References

  1. Bartram, L., Ho, A., Dill, J. and Henigman, F. The continuous zoom: A constrained fisheye technique for viewing and navigating large information space. In Proceedings of the ACM Symposium on User Interface Software and Technology (UIST'95), ACM Press, 207--215. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Citrin, W. and Santiago, C. Incorporating fisheying into a visual programming environment. In Proceedings of Visual Languages (VL'96), IEEE Computer Society Press, 20--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Cockburn, A. Supporting tailorable program visualization through literate programming and fisheye views. Information and Software Technology, 43, 13 (2001), 745--758.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Field, A. J. and Harrison, P. E. Functional Programming. Addison-Wesley, 1988.Google ScholarGoogle Scholar
  5. Foubister, S. P. and Runciman, C. Techniques for simplifying the visualization of graph reduction. In Functional Programming, Glasgow 1994. Springer-Verlag, 1994, 66--77.Google ScholarGoogle Scholar
  6. Furnas, G. W. Generalized fisheye views. In ACM SIGCHI'86 Conference on Human Factors in Computing Systems, ACM Press, 16--23 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Hill, T., Noble, J. and Potter, J. Scalable visualizations of object-oriented systems with ownership trees. Journal of Visual Languages and Computing, 13 (2002), 319--339.Google ScholarGoogle ScholarCross RefCross Ref
  8. Jacobs, T. and Musial, B. Interactive visual debugging with UML. In ACM Symposium on Software Visualization, ACM Press, 2003, 115--122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Jiménez-Peris, R., Pareja-Flores, C., Patiño-Martínez, M. and Velázquez-Iturbide, J.Á. Graphical visualization of the evaluation of functional programs. In SIGCSE/SIGCUE Conference on Integrating Technology into Computer Science Education (ITiCSE'96). ACM Press, 36--38. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Leung, Y. K. and Apperley, M. D. A review and taxonomy of distortion-oriented presentation techniques. ACM Transactions of Human-Computer Interaction, 1, 2 (June 1994), 126--160. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Perry, N. Hope+. Technical Report IC/FPR/LANG/2.5.1/7, Dept. of Computing, Imperial College, University of London, October 1989.Google ScholarGoogle Scholar
  12. Sarkar, M. and Brown, M. H. Graphical fisheye views. Communications of the ACM, 37, 12 (Dec. 1994), 73--84. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Shzuki, B., Toyoda, M., Shibayama, E. and Takahashi, S. Smart browsing among multiple aspects of data-flow visual program execution, using visual patterns and multifocus fisheye views. Journal of Visual Languages and Computing, 11, 5 (Oct. 2000), 529--548.Google ScholarGoogle Scholar
  14. Storey, M.-A. D., Müller, H. A. and Wong, K. Manipulating and documenting software structures. In P. Eades and K. Zhang (eds.), Software Visualisation. World Scientific, 1996, 244--263.Google ScholarGoogle Scholar
  15. Sugiyama, K. Graph Drawing and Applications for Software and Knowledge Engineers. World Scientific, 2002.Google ScholarGoogle ScholarCross RefCross Ref
  16. Turetken, O., Schuff, D., Sharda, R. and Ow, T. T. Supporting systems analysis and design through fisheye views. Comunications of the ACM, 47, 9 (Dept. 2004), 72--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Velázquez-Iturbide, J. Á. Improving functional programming environments for education. In M. D. Brouwer-Janse and T. L. Harrington (eds.), Man-Machine Communication for Educational Systems Design, Springer-Verlag, 1994, 325--332.Google ScholarGoogle Scholar
  18. Velázquez-Iturbide, J. Á., Pareja-Flores, C. and Urquiza-Fuentes, J. An approach to effortless construction of program animations, Computers & Education, in press.Google ScholarGoogle Scholar
  19. Velázquez-Iturbide, J. Á. and Vázquez-Presa, A. Customization of visualizations in a functional programming environment. In Proceedings of the 29th ASEE/IEEE Frontiers in Education Conference (FIE'99), Stipes Publishing, 22--28 (session 12b3).Google ScholarGoogle Scholar

Index Terms

  1. Principled design of logical fisheye views of functional expressions

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader