The expression problem in platform-aware programming

Resumo


Platform-aware programming involves making assumptions about specific features of the target execution environment to improve performance. We restate a fundamental problem in software extensibility called The Expression Problem for platform-aware programming to show how a solution based on dynamic multiple dispatch over platform types may improve such a performance engineering practice.

Referências

J. Bezanson, J. Chen, B. Chung, S. Karpinski, V. B. Shah, J. Vitek, and L. Zoubritzky. 2018. Julia: Dynamism and Performance Reconciled by Design. Proceedings of ACM Programming Languages 2, OOPSLA, Article 120 (oct 2018), 23 pages.

W. R. Cook. 1991. Object-oriented programming versus abstract data types. In Foundations of Object-Oriented Languages, J. W. de Bakker, W. P. de Roever, and G. Rozenberg (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 151–178.

F. H. de Carvalho Junior, A. B. Dantas, J. M. Hoffiman, T. Carneiro, C. S. Sales, and P. A. S. Sales. 2023. Structured Platform-Aware Programming. In XXIV Simpósio em Sistemas Computacionais de Alto Desempenho (SSCAD’2023) (Porto Alegre, RS). SBC, Porto Alegre, Brazil, 301–312. [link]

A. Grama, A. Gupta, J. Karypis, and V. Kumar. 2003. Introduction to Parallel Computing. Addison-Wesley. 256 pages.

Matthias Z. and Martin O. 2005. Independently Extensible Solutions to the Expression Problem. In 12th International Workshop on Foundations of Object-Oriented Languages (FOOL’2005). ACM.

H. Meuer, E. Strohmaier, J. Dongarra, and H. D. Simon. 2013. Top 500 Supercomputer sites. [link]

F. Z. Nardelli, J. Belyakova, A. Pelenitsyn, B. Chung, J. Bezanson, and J. Vitek. 2018. Julia Subtyping: A Rational Reconstruction. Proceedings of the ACM Programming Languages 2, Article 113 (oct 2018), 27 pages.

B. C. d. S. Oliveira. 2014. Functional programming, object-oriented programming, and algebras!. In 10th ACM SIGPLAN Workshop on Generic Programming (Gothenburg, Sweden). ACM, New York, USA, 1.

N. C. Thompson and S. Spanuth. 2021. The decline of computers as a general purpose technology. Communications of the ACM 64, 3 (feb 2021), 64–72.

M. Torgersen. 2004. The Expression Problem Revisited. In ECOOP 2004 – Object-Oriented Programming. Springer, Berlin, Heidelberg, 123–146.

P. Wadler. 1998. The Expression Problem. [link]

Y. Wang and B. C. d. S. Oliveira. 2016. The expression problem, trivially!. In 15th International Conference on Modularity (Málaga, Spain). ACM, 37–41.

W. Zhang, Y. Sun, and B. C. d. S. Oliveira. 2021. Compositional Programming. ACM Transactions on Programming Language Systems 43, 3 (sep 2021), 61 pages.
Publicado
30/09/2024
CARVALHO JUNIOR, Francisco Heron de. The expression problem in platform-aware programming. In: SIMPÓSIO BRASILEIRO DE LINGUAGENS DE PROGRAMAÇÃO (SBLP), 28. , 2024, Curitiba/PR. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 94-97. DOI: https://doi.org/10.5753/sblp.2024.3689.