Skip to content

andersoxie/xpact

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xpact

xpact is an Eiffel XML parser project inspired by Finnian Reilly's Eiffel.org proposal, "Finding a billion-user project for Eiffel: How DbC catches the security flaws that Rust misses."

Tagline: XML parsing, by contract.

The Phase 1 target is a credible contracted parser release:

  • pass the libexpat test suite,
  • publish honest benchmark results,
  • keep the Design by Contract annotations visible in source.

This checkpoint contains a contract-enabled Eiffel streaming parser core, XML 1.0 tokenization, internal/external entity handling through an opt-in resolver policy, a SAX-style event handler interface, Eiffel-side native bridge target, handle-installer, and export classes, a native Eiffel-runtime trampoline, test and benchmark ECF targets, a published same-machine benchmark table including measured Windows native C ABI rows, a libexpat 2.8.1-compatible public API header/manifest, a bridge-only native DLL/SO export layer with C ABI/link smoke tests, a C-ABI-to-Eiffel runtime smoke target, Windows Eiffel-backed DLL packaging smoke, a Windows-only native release package script, and an upstream libexpat test-suite adapter with explicit green/red parity rows.

Build

ec -batch -config tests\xpact_tests.ecf -target xpact_tests
.\EIFGENs\xpact_tests\W_code\xpact_tests.exe

See docs/phase-1.md, docs/benchmarks.md, docs/libexpat-api-compatibility.md, and docs/libexpat-parity.md for the current Windows Phase 1 scope.

Package the initial Windows x64 native release with:

.\scripts\package_windows_release.ps1

About

Eiffel versoin of libexpat

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors