pub fn new() -> Self {
        let inner = Arc::new(polar_core::polar::Polar::new());
        let host = Host::new(inner.clone());

        let mut oso = Self { inner, host };

        for class in crate::builtins::classes() {
            oso.register_class(class)
                .expect("failed to register builtin class");
        }
        oso.register_constant(Option::<crate::PolarValue>::None, "nil")
            .expect("failed to register the constant None");
        oso
    }
/// Create a new instance of Oso. Each instance is separate and can have different rules and classes loaded into it.
Create a new instance of Oso. Each instance is separate and can have different rules and classes loaded into it.
Create a new instance of Oso . Each instance is separate and can have different rules and classes loaded into it .
pub fn new() -> Self {
        let inner = Arc::new(polar_core::polar::Polar::new());
        let host = Host::new(inner.clone());
        let mut oso = Self { inner, host };
        for class in crate::builtins::classes() {
            oso.register_class(class)
                .expect("failed to register builtin class");
        }
        oso.register_constant(Option::<crate::PolarValue>::None, "nil")
            .expect("failed to register the constant None");
        oso
    }
pub fn new ( ) -> Self { let inner = Arc :: new ( polar_core :: polar :: Polar :: new ( ) ) ; let host = Host :: new ( inner . clone ( ) ) ; let mut oso = Self { inner , host } ; for class in crate :: builtins :: classes ( ) { oso . register_class ( class ) . expect ( " " ) ; } oso . register_constant ( Option :: < crate :: PolarValue > :: None , " " ) . expect ( " " ) ; oso }
Create a new instance of Oso.
Create a new instance of Oso .