Skip to main content

Compositional Model-Views with Generic Graphical User Interfaces

  • Conference paper
Practical Aspects of Declarative Languages (PADL 2004)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3057))

Included in the following conference series:

Abstract

Creating GUI programs is hard even for prototyping purposes. Using the model-view paradigm makes it somewhat simpler since the model-view paradigm dictates that the model contains no GUI programming, as this is done by the views. Still, a lot of GUI programming is needed to implement the views.

We present a new method for constructing GUI applications that fits well in the model-view paradigm. Novel in our approach is that the views also contain no actual GUI programming. Instead, views are constructed in a fully compositional way by defining a model of the view. We use a technique developed earlier to generate the GUI part. We show how the method supports flexibility, compositionality and incremental change by introducing abstract components in the view models.

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 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Achten, P., Plasmeijer, R.: Interactive Functional Objects in Clean. In: Clack, C., Hammond, K., Davie, T. (eds.) IFL 1997. LNCS, vol. 1467, pp. 304–321. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  2. Achten, P., Peyton Jones, S.: Porting the Clean Object I/O Library to Haskell. In: Mohnen, M., Koopman, P. (eds.) IFL 2000. LNCS, vol. 2011, pp. 194–213. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  3. Achten, P., van Eekelen, M., Plasmeijer, R.: Generical Graphical User Interfaces. In: Trinder, P., Michaelson, G.J., Peña, R. (eds.) IFL 2003. LNCS, vol. 3145, pp. 152–167. Springer, Heidelberg (2004) (to appear)

    Google Scholar 

  4. Alimarine, A., Plasmeijer, R.: A Generic Programming Extension for Clean. In: Arts, T., Mohnen, M. (eds.) IFL 2002. LNCS, vol. 2312, pp. 168–186. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  5. Angelov, K.A.: ObjectIO for Haskell. Description and Sources at www.haskell.org/ObjectIO/ , Applications at /free.top.bg/ka2_mail/ (2003)

  6. Barendsen, E., Smetsers, S.: Handbook of Graph Grammars and Computing by Graph Transformation. In: Graph Rewriting Aspects of Functional Programming, vol. ch. 2, pp. 63–102. World Scientific, Singapore (1999)

    Google Scholar 

  7. Carlsson, M., Hallgren, T.: Fudgets - a graphical user interface in a lazy functional language. In: Proceedings of the ACM Conference on Functional Programming and Computer Architecture, FPCA 1993, Kopenhagen, Denmark (1993)

    Google Scholar 

  8. Claessen, K., Vullinghs, T., Meijer, E.: Structuring Graphical Paradigms in TkGofer. In: Proceedings of the 1997 ACM SIGPLAN International Conference on Functional Programming (ICFP 1997), Amsterdam, The Netherlands, June 1997, vol. 32(8), pp. 251–262. ACM Press, New York (1997)

    Chapter  Google Scholar 

  9. Clarke, D., Löh, A.: Generic Haskell, Specifically. In: Gibbons, J., Jeuring, J. (eds.) Proceedings of the IFIP TC2 Working Conference on Generic Programming, Schloss Dagstuhl, July 2003, pp. 21–48. Kluwer Academic Publishers, Dordrecht (2003) ISBN 1-4020-7374-7

    Google Scholar 

  10. Hinze, R.: A new approach to generic functional programming. In: The 27th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Boston, Massachusetts, January 2000, pp. 119–132 (2000)

    Google Scholar 

  11. Karlsen, E.W., Westmeier, S.: Using Concurrent Haskell to Develop Views over an Active Repository. In: Clack, C., Hammond, K., Davie, T. (eds.) IFL 1997. LNCS, vol. 1467, pp. 285–303. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  12. Krasner, G., Pope, S.: A cookbook for using the Model-View-Controller user interface paradigm in Smalltalk-80. Journal of Object-Oriented Programming 1(3), 26–49 (1988)

    Google Scholar 

  13. Schrage, M.: Proxima, a presentation-oriented XML editor. PhD thesis, University of Utrecht (2004) (to appear)

    Google Scholar 

  14. Shneiderman, B.: Designing the User Interface: strategies for effective humancomputer interaction, 2nd edn. Addison-Wesley, Reading (1992)

    Google Scholar 

  15. van Weelden, A., Plasmeijer, R.: A functional shell that dynamically combines compiled code. In: Trinder, P., Michaelson, G.J., Peña, R. (eds.) IFL 2003. LNCS, vol. 3145, pp. 36–52. Springer, Heidelberg (2004) (to appear)

    Chapter  Google Scholar 

  16. Vervoort, M., Plasmeijer, R.: Lazy dynamic input/output in the lazy functional language Clean. In: Peña, R., Arts, T. (eds.) IFL 2002. LNCS, vol. 2670, pp. 101–117. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  17. Kahl, W., Braun, O., Scheffczyk, J. (eds.): Combinators - A First Account. Technical Report Nr. 2000-01, Fakultät für Informatik, Universität der Bundeswehr München (2000)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Achten, P., van Eekelen, M., Plasmeijer, R. (2004). Compositional Model-Views with Generic Graphical User Interfaces. In: Jayaraman, B. (eds) Practical Aspects of Declarative Languages. PADL 2004. Lecture Notes in Computer Science, vol 3057. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24836-1_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-24836-1_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22253-8

  • Online ISBN: 978-3-540-24836-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics