Fast Flexible Function Dispatch in Julia

08/09/2018
by   Jeff Bezanson, et al.
0

Technical computing is a challenging application area for programming languages to address. This is evinced by the unusually large number of specialized languages in the area (e.g. MATLAB, R), and the complexity of common software stacks, often involving multiple languages and custom code generators. We believe this is ultimately due to key characteristics of the domain: highly complex operators, a need for extensive code specialization for performance, and a desire for permissive high-level programming styles allowing productive experimentation. The Julia language attempts to provide a more effective structure for this kind of programming by allowing programmers to express complex polymorphic behaviors using dynamic multiple dispatch over parametric types. The forms of extension and reuse permitted by this paradigm have proven valuable for technical computing. We report on how this approach has allowed domain experts to express useful abstractions while simultaneously providing a natural path to better performance for high-level technical code.

READ FULL TEXT
research
07/15/2021

Duplicated Code Pattern Mining in Visual Programming Languages

Visual Programming Languages (VPLs), coupled with the high-level abstrac...
research
08/12/2018

Linguistic Relativity and Programming Languages

The use of programming languages can wax and wane across the decades. We...
research
10/16/2020

Probabilistic Programming with CuPPL

Probabilistic Programming Languages (PPLs) are a powerful tool in machin...
research
02/20/2023

Technical Dimensions of Programming Systems

Programming requires much more than just writing code in a programming l...
research
07/24/2023

The potential of LLMs for coding with low-resource and domain-specific programming languages

This paper presents a study on the feasibility of using large language m...
research
10/29/2007

Code Similarity on High Level Programs

This paper presents a new approach for code similarity on High Level pro...
research
05/13/2017

Learning Semantic Correspondences in Technical Documentation

We consider the problem of translating high-level textual descriptions t...

Please sign up or login with your details

Forgot password? Click here to reset