Skip to content
Journal article

IPFLang: A Domain-Specific Language for Multi-Currency Regulatory Fee Computation with Static Verification

Valer Bocan · Valentina E. Balas

Record

Type
Journal article
Venue
IEEE Open Journal of the Computer Society
Quartile
Q1 · fully open access
Pages
1-13
Year
2026
Publisher
IEEE Computer Society
ISSN
2644-1268
Language
English
Indexed in
IEEE Xplore · Scopus · Google Scholar · dblp

Abstract

Regulatory fee calculations involve complex, jurisdiction-specific rules typically implemented as ad-hoc code or spreadsheets, leading to errors and maintenance difficulties. No formal specification exists for encoding fee computation rules. This paper presents IPFLang, a domain- specific language addressing these software engineering challenges through novel language design and static verification. We develop a formal EBNF grammar with declarative fee computation blocks, a currency-aware type system supporting the 161 active ISO 4217 currencies, static analysis algorithms for completeness and monotonicity verification, and provenance tracking for auditability. The open-source reference implementation includes 118 production jurisdiction files covering PCT national/regional phase entry fees validated by a domain expert, a comprehensive test suite with 269 test methods achieving 100% pass rate, and sub-millisecond execution performance. The currency-aware type system prevents cross-currency arithmetic errors at compile time.

Domain-specific languageType systemStatic verificationProgram correctnessCurrency safetyRegulatory automationFormal specification

Notes

IPFLang is the language behind IPFees, which implements it against 118 jurisdictions.

Cite

@article{bocan2026ipflang,
  author    = {Bocan, Valer and Balas, Valentina E.},
  title     = {IPFLang: A Domain-Specific Language for Multi-Currency Regulatory Fee Computation with Static Verification},
  journal   = {IEEE Open Journal of the Computer Society},
  year      = {2026},
  pages     = {1--13},
  publisher = {IEEE Computer Society},
  issn      = {2644-1268},
  doi       = {10.1109/OJCS.2026.3726037}
}