FuncADL: Functional Analysis Description Language
The traditional approach in HEP analysis software is to loop over every event and every object via the ROOT framework. This method follows an imperative paradigm, in which the code is tied to the storage format and steps of execution. A more desirable strategy would be to implement a declarative lan...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
EDP Sciences
2021-01-01
|
Series: | EPJ Web of Conferences |
Online Access: | https://www.epj-conferences.org/articles/epjconf/pdf/2021/05/epjconf_chep2021_03068.pdf |
_version_ | 1819101300231503872 |
---|---|
author | Proffitt Mason Watts Gordon |
author_facet | Proffitt Mason Watts Gordon |
author_sort | Proffitt Mason |
collection | DOAJ |
description | The traditional approach in HEP analysis software is to loop over every event and every object via the ROOT framework. This method follows an imperative paradigm, in which the code is tied to the storage format and steps of execution. A more desirable strategy would be to implement a declarative language, such that the storage medium and execution are not included in the abstraction model. This will become increasingly important to managing the large dataset collected by the LHC and the HL-LHC. A new analysis description language (ADL) inspired by functional programming, FuncADL, was developed using Python as a host language. The expressiveness of this language was tested by implementing example analysis tasks designed to benchmark the functionality of ADLs. Many simple selections are expressible in a declarative way with FuncADL, which can be used as an interface to retrieve filtered data. Some limitations were identified, but the design of the language allows for future extensions to add missing features. FuncADL is part of a suite of analysis software tools being developed by the Institute for Research and Innovation in Software for High Energy Physics (IRIS-HEP). These tools will be available to develop highly scalable physics analyses for the LHC. |
first_indexed | 2024-12-22T01:16:28Z |
format | Article |
id | doaj.art-17662c42279348b7bff7a023f68ff422 |
institution | Directory Open Access Journal |
issn | 2100-014X |
language | English |
last_indexed | 2024-12-22T01:16:28Z |
publishDate | 2021-01-01 |
publisher | EDP Sciences |
record_format | Article |
series | EPJ Web of Conferences |
spelling | doaj.art-17662c42279348b7bff7a023f68ff4222022-12-21T18:43:50ZengEDP SciencesEPJ Web of Conferences2100-014X2021-01-012510306810.1051/epjconf/202125103068epjconf_chep2021_03068FuncADL: Functional Analysis Description LanguageProffitt Mason0Watts Gordon1University of WashingtonUniversity of WashingtonThe traditional approach in HEP analysis software is to loop over every event and every object via the ROOT framework. This method follows an imperative paradigm, in which the code is tied to the storage format and steps of execution. A more desirable strategy would be to implement a declarative language, such that the storage medium and execution are not included in the abstraction model. This will become increasingly important to managing the large dataset collected by the LHC and the HL-LHC. A new analysis description language (ADL) inspired by functional programming, FuncADL, was developed using Python as a host language. The expressiveness of this language was tested by implementing example analysis tasks designed to benchmark the functionality of ADLs. Many simple selections are expressible in a declarative way with FuncADL, which can be used as an interface to retrieve filtered data. Some limitations were identified, but the design of the language allows for future extensions to add missing features. FuncADL is part of a suite of analysis software tools being developed by the Institute for Research and Innovation in Software for High Energy Physics (IRIS-HEP). These tools will be available to develop highly scalable physics analyses for the LHC.https://www.epj-conferences.org/articles/epjconf/pdf/2021/05/epjconf_chep2021_03068.pdf |
spellingShingle | Proffitt Mason Watts Gordon FuncADL: Functional Analysis Description Language EPJ Web of Conferences |
title | FuncADL: Functional Analysis Description Language |
title_full | FuncADL: Functional Analysis Description Language |
title_fullStr | FuncADL: Functional Analysis Description Language |
title_full_unstemmed | FuncADL: Functional Analysis Description Language |
title_short | FuncADL: Functional Analysis Description Language |
title_sort | funcadl functional analysis description language |
url | https://www.epj-conferences.org/articles/epjconf/pdf/2021/05/epjconf_chep2021_03068.pdf |
work_keys_str_mv | AT proffittmason funcadlfunctionalanalysisdescriptionlanguage AT wattsgordon funcadlfunctionalanalysisdescriptionlanguage |