Skip to main content

Optimizing a Geomodeling Domain Specific Language

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7554))

Abstract

In this paper we describe Dinamica EGO, a domain specific languages (DSL) for geomodeling. Dinamica EGO provides users with a rich suite of operators available in a script language and in a graphical interface, which they can use to process information extracted from geographic entities, such as maps and tables. We analyze this language through the lens of compiler writers. Under this perspective we describe a key optimization that we have implemented on top of the Dinamica EGO execution environment. This optimization consists in the systematic elimination of memory copies that Dinamica EGO uses to ensure referential transparency. Our algorithm is currently part of the official distribution of this framework. We show, via a real-life case study, that our optimization can speedup geomodeling applications by almost 100x.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   54.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   72.00
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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools, 2nd edn. Addison Wesley (2006)

    Google Scholar 

  2. Beven, K.: Towards a coherent philosophy for modelling the environment. Proceedings of the Royal Society 458, 2465–2484 (2002)

    Article  MathSciNet  Google Scholar 

  3. Carlson, K.M., Curran, L.M., Ratnasari, D., Pittman, A.M., Soares-Filho, B.S., Asner, G.P., Trigg, S.N., Gaveau, D.A., Lawrence, D., Rodrigues, H.O.: Committed carbon emissions, deforestation, and community land conversion from oil palm plantation expansion in West Kalimantan, Indonesia. Proceedings of the National Academy of Sciences (2012)

    Google Scholar 

  4. Ferreira, B.M., Pereira, F.M.Q., Rodrigues, H., Soares-Filho, B.S.: Optimizing a geomodeling domain specific language. Tech. Rep. LLP001/2012, Universidade Federal de Minas Gerais (2012)

    Google Scholar 

  5. Garey, M.R., Johnson, D.S., Miller, G.L., Papadimitriou, C.H.: The complexity of coloring circular arcs and chords. J. Algebraic Discrete Methods 1, 216–227 (1980)

    Article  MathSciNet  Google Scholar 

  6. Garey, M.R., Johnson, D.S., Sockmeyer, L.: Some simplified NP-complete problems. Theoretical Computer Science 1, 193–267 (1976)

    Article  MathSciNet  Google Scholar 

  7. Golumbic, M.C.: Algorithmic Graph Theory and Perfect Graphs, 1st edn. Elsevier (2004)

    Google Scholar 

  8. Hajek, F., Ventresca, M.J., Scriven, J., Castro, A.: Regime-building for redd+: Evidence from a cluster of local initiatives in south-eastern peru. Environmental Science and Policy 14(2), 201–215 (2011)

    Article  Google Scholar 

  9. Huong, H.T.L., Pathirana, A.: Urbanization and climate change impacts on future urban flood risk in Can Tho city, Vietnam. Hydrology and Earth System Sciences Discussions 8(6), 10781–10824 (2011)

    Google Scholar 

  10. Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316–344 (2005)

    Article  Google Scholar 

  11. Nepstad, D., Soares-Filho, B., Merry, F., Lima, A., Moutinho, P., Carter, J., Bowman, M., Cattaneo, A., Rodrigues, H., Schwartzman, S., McGrath, D., Stickler, C., Lubowski, R., Piris-Cabeza, P., Rivero, S., Alencar, A., Almeida, O., Stella, O.: The end of deforestation in the brazilian amazon. Science 326, 1350–1351 (2009)

    Article  Google Scholar 

  12. Pérez-Vega, A., Mas, J.F., Ligmann-Zielinska, A.: Comparing two approaches to land use/cover change modeling and their implications for the assessment of biodiversity loss in a deciduous tropical forest. Environmental Modelling and Software 29(1), 11–23 (2012)

    Article  Google Scholar 

  13. Soares-Filho, B., Nepstad, D., Curran, L., Cerqueira, G., Garcia, R., Ramos, C., Voll, E., McDonald, A., Lefebvre, P., Schlesinger, P.: Modelling conservation in the Amazon basin. Nature 440, 520–523 (2006)

    Article  Google Scholar 

  14. Soares-Filho, B., Pennachin, C., Cerqueira, G.: Dinamica - a stochastic cellular automata model designed to simulate the landscape dynamics in an Amazonian colonization frontier. Ecological Modeling 154, 217–235 (2002)

    Article  Google Scholar 

  15. Soares-Filho, B., Rodrigues, H., Costa, W.: Modeling Environmental Dynamics with Dinamica EGO. Centro de Sensoriamento Remoto, IGC/UFMG (2009)

    Google Scholar 

  16. Spring, J.H., Privat, J., Guerraoui, R., Vitek, J.: Streamflex: high-throughput stream programming in java. In: OOPSLA, pp. 211–228. ACM (2007)

    Google Scholar 

  17. Thapa, R.B., Murayama, Y.: Urban growth modeling of Kathmandu metropolitan region, Nepal. Computers, Environment and Urban Systems 35(1), 25–34 (2011)

    Article  Google Scholar 

  18. Zadeck, F.K.: Incremental Data Flow Analysis in a Structured Program Editor. Ph.D. thesis, Rice University (1984)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ferreira, B.M., Pereira, F.M.Q., Rodrigues, H., Soares-Filho, B.S. (2012). Optimizing a Geomodeling Domain Specific Language. In: de Carvalho Junior, F.H., Barbosa, L.S. (eds) Programming Languages. Lecture Notes in Computer Science, vol 7554. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33182-4_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33182-4_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33181-7

  • Online ISBN: 978-3-642-33182-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics