{"id":"https://openalex.org/W4412444696","doi":"https://doi.org/10.1109/access.2025.3589353","title":"P4Muse: Enabling Modular P4 Programming via Compiler-Managed Code Merging Without Syntax Modifications","display_name":"P4Muse: Enabling Modular P4 Programming via Compiler-Managed Code Merging Without Syntax Modifications","publication_year":2025,"publication_date":"2025-01-01","ids":{"openalex":"https://openalex.org/W4412444696","doi":"https://doi.org/10.1109/access.2025.3589353"},"language":"en","primary_location":{"id":"doi:10.1109/access.2025.3589353","is_oa":true,"landing_page_url":"https://doi.org/10.1109/access.2025.3589353","pdf_url":null,"source":{"id":"https://openalex.org/S2485537415","display_name":"IEEE Access","issn_l":"2169-3536","issn":["2169-3536"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Access","raw_type":"journal-article"},"type":"article","indexed_in":["crossref","doaj"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://doi.org/10.1109/access.2025.3589353","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5118995139","display_name":"Mohsen Rahmati","orcid":null},"institutions":[{"id":"https://openalex.org/I45683168","display_name":"Polytechnique Montr\u00e9al","ror":"https://ror.org/05f8d4e86","country_code":"CA","type":"education","lineage":["https://openalex.org/I45683168"]}],"countries":["CA"],"is_corresponding":true,"raw_author_name":"Mohsen Rahmati","raw_affiliation_strings":["Department of Computer and Software Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada"],"raw_orcid":"https://orcid.org/0009-0005-8102-485X","affiliations":[{"raw_affiliation_string":"Department of Computer and Software Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada","institution_ids":["https://openalex.org/I45683168"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5111748115","display_name":"Fran\u00e7ois-Raymond Boyer","orcid":null},"institutions":[{"id":"https://openalex.org/I45683168","display_name":"Polytechnique Montr\u00e9al","ror":"https://ror.org/05f8d4e86","country_code":"CA","type":"education","lineage":["https://openalex.org/I45683168"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Fran\u00e7ois-Raymond Boyer","raw_affiliation_strings":["Department of Computer and Software Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computer and Software Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada","institution_ids":["https://openalex.org/I45683168"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5038356079","display_name":"Bill Pontikakis","orcid":"https://orcid.org/0009-0001-5074-3473"},"institutions":[{"id":"https://openalex.org/I45683168","display_name":"Polytechnique Montr\u00e9al","ror":"https://ror.org/05f8d4e86","country_code":"CA","type":"education","lineage":["https://openalex.org/I45683168"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Bill Pontikakis","raw_affiliation_strings":["Department of Computer and Software Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada"],"raw_orcid":"https://orcid.org/0009-0001-5074-3473","affiliations":[{"raw_affiliation_string":"Department of Computer and Software Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada","institution_ids":["https://openalex.org/I45683168"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5067086966","display_name":"Jean\u2010Pierre David","orcid":"https://orcid.org/0000-0002-7707-0483"},"institutions":[{"id":"https://openalex.org/I45683168","display_name":"Polytechnique Montr\u00e9al","ror":"https://ror.org/05f8d4e86","country_code":"CA","type":"education","lineage":["https://openalex.org/I45683168"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Jean Pierre David","raw_affiliation_strings":["Department of Electrical Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada"],"raw_orcid":"https://orcid.org/0000-0002-7707-0483","affiliations":[{"raw_affiliation_string":"Department of Electrical Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada","institution_ids":["https://openalex.org/I45683168"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5038488044","display_name":"Yvon Savaria","orcid":"https://orcid.org/0000-0002-3404-9959"},"institutions":[{"id":"https://openalex.org/I45683168","display_name":"Polytechnique Montr\u00e9al","ror":"https://ror.org/05f8d4e86","country_code":"CA","type":"education","lineage":["https://openalex.org/I45683168"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Yvon Savaria","raw_affiliation_strings":["Department of Electrical Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada"],"raw_orcid":"https://orcid.org/0000-0002-3404-9959","affiliations":[{"raw_affiliation_string":"Department of Electrical Engineering, Polytechnique Montr&#x00E9;al, Montreal, QC, Canada","institution_ids":["https://openalex.org/I45683168"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5118995139"],"corresponding_institution_ids":["https://openalex.org/I45683168"],"apc_list":{"value":1850,"currency":"USD","value_usd":1850},"apc_paid":{"value":1850,"currency":"USD","value_usd":1850},"fwci":2.0883,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.86278927,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":96,"max":98},"biblio":{"volume":"13","issue":null,"first_page":"124138","last_page":"124157"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9965999722480774,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9965999722480774,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10904","display_name":"Embedded Systems Design Techniques","score":0.9962000250816345,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9921000003814697,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8555697202682495},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7839645147323608},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6723262071609497},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.6525396108627319},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.5819403529167175},{"id":"https://openalex.org/keywords/syntax","display_name":"Syntax","score":0.5662124752998352},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.42686328291893005},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.37075430154800415},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.11740037798881531},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.0662291944026947}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8555697202682495},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7839645147323608},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6723262071609497},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.6525396108627319},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.5819403529167175},{"id":"https://openalex.org/C60048249","wikidata":"https://www.wikidata.org/wiki/Q37437","display_name":"Syntax","level":2,"score":0.5662124752998352},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.42686328291893005},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.37075430154800415},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.11740037798881531},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.0662291944026947},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1109/access.2025.3589353","is_oa":true,"landing_page_url":"https://doi.org/10.1109/access.2025.3589353","pdf_url":null,"source":{"id":"https://openalex.org/S2485537415","display_name":"IEEE Access","issn_l":"2169-3536","issn":["2169-3536"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Access","raw_type":"journal-article"},{"id":"pmh:oai:publications.polymtl.ca:66568","is_oa":false,"landing_page_url":null,"pdf_url":null,"source":{"id":"https://openalex.org/S4306401013","display_name":"PolyPublie (\u00c9cole Polytechnique de Montr\u00e9al)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I45683168","host_organization_name":"Polytechnique Montr\u00e9al","host_organization_lineage":["https://openalex.org/I45683168"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":null,"raw_type":"PeerReviewed"},{"id":"pmh:oai:doaj.org/article:c27b96035c0444abb4c8d4e3c9d460ec","is_oa":true,"landing_page_url":"https://doaj.org/article/c27b96035c0444abb4c8d4e3c9d460ec","pdf_url":null,"source":{"id":"https://openalex.org/S4306401280","display_name":"DOAJ (DOAJ: Directory of Open Access Journals)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-sa","license_id":"https://openalex.org/licenses/cc-by-sa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"IEEE Access, Vol 13, Pp 124138-124157 (2025)","raw_type":"article"}],"best_oa_location":{"id":"doi:10.1109/access.2025.3589353","is_oa":true,"landing_page_url":"https://doi.org/10.1109/access.2025.3589353","pdf_url":null,"source":{"id":"https://openalex.org/S2485537415","display_name":"IEEE Access","issn_l":"2169-3536","issn":["2169-3536"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Access","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320307102","display_name":"Intel Corporation","ror":"https://ror.org/01ek73717"},{"id":"https://openalex.org/F4320334593","display_name":"Natural Sciences and Engineering Research Council of Canada","ror":"https://ror.org/01h531d29"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":26,"referenced_works":["https://openalex.org/W1994926493","https://openalex.org/W2147118406","https://openalex.org/W2557702138","https://openalex.org/W2746559355","https://openalex.org/W2754907853","https://openalex.org/W2912321846","https://openalex.org/W2983361290","https://openalex.org/W2983700260","https://openalex.org/W2984638479","https://openalex.org/W3018140677","https://openalex.org/W3032992439","https://openalex.org/W3035335288","https://openalex.org/W3039705373","https://openalex.org/W3046227456","https://openalex.org/W3046697300","https://openalex.org/W3107811038","https://openalex.org/W3125704518","https://openalex.org/W3155427278","https://openalex.org/W3195527776","https://openalex.org/W3212578550","https://openalex.org/W3212617633","https://openalex.org/W3213294203","https://openalex.org/W4200197748","https://openalex.org/W4321021079","https://openalex.org/W4386396615","https://openalex.org/W6795023668"],"related_works":["https://openalex.org/W2077104824","https://openalex.org/W4294658953","https://openalex.org/W2536864162","https://openalex.org/W2390421503","https://openalex.org/W2364428493","https://openalex.org/W4400066978","https://openalex.org/W44541701","https://openalex.org/W2387926336","https://openalex.org/W2385522099","https://openalex.org/W2354135050"],"abstract_inverted_index":{"Domain-specific":[0],"programming":[1,13],"languages":[2],"such":[3],"as":[4,40,43],"P4":[5,19,36,52,82,118,152,158],"enable":[6],"flexible":[7],"and":[8,28,31,45,54,59,67,104,127,139,170],"high-performance":[9],"packet":[10],"processing":[11],"for":[12,69,97],"network":[14],"data":[15,123],"planes.":[16],"However,":[17],"many":[18],"programs":[20],"remain":[21],"monolithic,":[22],"limiting":[23],"the":[24,51,79,136,140],"development":[25,154],"of":[26,81,113],"modular":[27,102,151],"reusable":[29],"protocols":[30],"libraries.":[32],"Introducing":[33],"modularity":[34,80],"to":[35],"has":[37],"proven":[38],"challenging,":[39],"existing":[41,157],"approaches\u2014such":[42],"trans-compilers":[44],"virtualization\u2014often":[46],"sidestep":[47],"direct":[48],"integration":[49],"with":[50],"language":[53],"compiler,":[55],"constraining":[56],"backward":[57,174],"compatibility":[58],"extensibility.":[60],"This":[61],"paper":[62],"introduces":[63],"P4Muse":[64,89,148],"(P4":[65],"Modularity":[66],"Unification":[68],"Seamless":[70],"Extensibility),":[71],"an":[72],"open-source":[73],"P4C":[74],"compiler":[75,95],"extension":[76],"that":[77,116,147,164],"enhances":[78],"without":[83,155],"requiring":[84],"new":[85,94],"syntax":[86],"or":[87],"annotations.":[88],"is":[90],"developed":[91],"by":[92],"integrating":[93],"passes":[96],"automatic":[98],"code":[99,121,167],"merging,":[100],"fostering":[101],"design":[103],"reuse.":[105],"We":[106],"demonstrate":[107],"its":[108],"benefits":[109],"through":[110],"three":[111],"classes":[112],"use":[114],"cases":[115],"support":[117],"modularity,":[119],"enabling":[120],"reusability,":[122,168],"plane":[124],"pipeline":[125],"composition,":[126],"vendor-customer":[128],"compatibility.":[129,175],"Six":[130],"case":[131],"studies":[132],"explore":[133],"these":[134],"using":[135],"V1Model":[137],"architecture":[138],"BMv2":[141],"software":[142],"switch.":[143],"Our":[144],"results":[145],"show":[146],"effectively":[149],"supports":[150],"program":[153],"altering":[156],"syntax,":[159],"providing":[160],"a":[161],"robust":[162],"solution":[163],"significantly":[165],"improves":[166],"flexibility,":[169],"extensibility":[171],"while":[172],"maintaining":[173]},"counts_by_year":[{"year":2026,"cited_by_count":1}],"updated_date":"2026-05-06T08:25:59.206177","created_date":"2025-10-10T00:00:00"}
