Skip to content

Type system abuseΒ #3351

@chop0

Description

@chop0

Hello,

The way the library uses the type system for absolutely everything makes refactoring lambdas like run_client into full methods extremely difficult. It also makes compilation slow, and produces C++-like compiler errors.

Are there any plans to clean this up, perhaps by merging some of the interfaces or by using dyn/vtables? What's the reason it's designed like this? Interface-merging would make the library less flexible, and dynamic dispatch might make it marginally slower, but it'd improve the usability of the library significantly.

I understand changing this would be an enormous undertaking - I'm just curious about why it's like this in the first place.

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions