Skip to content

Investigate Prior Art #1

@Techcable

Description

@Techcable

Obviously the most well known Reflection APIs are going to be the Java-like runtime APIs or Python-style dynamic behavior. However, this crate would like to do as much as possible at compile time.

Rust

  • 8BitMate/reflect - Implement procedural macros using compiler time reflection (originally by dontolay)
    • This is incredibly awesome, although it's a little different than what we want to do (it is for implementing proc macros)
    • I almost don't trust it because it's so revolutionary
  • gimli - Dwarf debug API
    • Ofc, dwarf doesn't give much rust-specific info

C++

Java

  • TeaVM "metaprogramming API" - Used as a replacement for reflection, allowing fast startup and agressive size optimization
    • TeaVM is basically a better GWT
    • Very awesome and elegant project in general. Even emulates threading with green threads.
    • Tons of compile-time reflection, including a replacement implementing for jackson that avoids reflection (basically seeds)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions