Skip to content

Precompiling and Embedding Resources for Performance Optimization #352

Closed as not planned
@BSFishy

Description

@BSFishy

As I'm exploring the fluent crate, specifically the usage section in the README, I had a question about resource handling. The documentation suggests that resources are parsed at runtime every time an application starts. I'm curious if there's a way to precompile and bundle the AST to enhance startup performance.

I'm relatively new to localization system design, so forgive me for any negligence. My primary concern revolves around runtime slow downs related to parsing resource files. For instance, if my application supports multiple languages but typically only one is used per session, wouldn't embedding pre-parsed ASTs for each language speed up the initialization process? Although this might increase memory usage, it could potentially eliminate the need for parsing during runtime.

Am I off base here? Is the time it takes to parse negligible? Or is this a valid concern, the systems just haven't been built out to support something like this out of the box?

Additionally, references to issue #36 and the i18n-embed-fl crate suggest that embedding data might be beneficial, but I'd like a better understanding of the rationale behind this.

I'm enthusiastic about contributing to the Fluent project and have been closely following discussions on issues projectfluent/fluent#358 and #347. Looking forward to getting to know more about the project and hopefully contributing as soon as the safe harbor stuff gets through!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions