1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
//! OpenScript: High-Performance AI-Powered Scripting Language Runtime
//!
//! OpenScript is a modern scripting language designed for automation, AI integration,
//! and rapid prototyping. It combines the simplicity of shell scripting with the
//! power of AI services and modern language features.
//!
//! # Features
//!
//! - **AI Integration**: Native support for OpenAI GPT, DALL-E, and other AI services
//! - **High Performance**: Built in Rust with zero-cost abstractions
//! - **Memory Safe**: Guaranteed memory safety without garbage collection
//! - **Concurrent**: Built-in support for async/await and parallel execution
//! - **Extensible**: Plugin architecture for custom commands and integrations
//!
//! # Quick Start
//!
//!
//! use openscript::{Runtime, Script};
//!
//! #[tokio::main]
//! async fn main() -> Result<(), Box<dyn std::error::Error>> {
//! let mut runtime = Runtime::new();
//! let script = Script::parse("echo 'Hello, OpenScript!'")?;
//! let result = runtime.execute(script).await?;
//! println!("{}", result);
//! Ok(())
//! }
//!
pub use ;
// pub use runtime::Runtime;
pub use Value;
use Statement;
use fmt;
/// Represents a parsed OpenScript program
/// Convenience function to execute a script string directly
///
/// This function creates a new runtime, parses the script, and executes it.
/// For better performance when running multiple scripts, create a `Runtime`
/// instance and reuse it.
///
/// # Arguments
///
/// * `source` - The OpenScript source code to execute
///
/// # Returns
///
/// A `Result` containing the execution result or an error
pub async