diff --git a/bellos_scripts/basic_math.bellos b/bellos_scripts/basic_math.bellos
index 02c1db2..74adac5 100644
--- a/bellos_scripts/basic_math.bellos
+++ b/bellos_scripts/basic_math.bellos
@@ -1,22 +1,22 @@
#!/usr/bin/env bellos
-# File: file_operations.bellos
+# File: file_operations.bellos
# Demonstrating file operations
# Writing to a file
-echo "This is a test file" > test.txt
-echo "Adding another line" > test.txt
+write test.txt "This is a test file"
+append test.txt "Adding another line"
# Reading from a file
echo "Contents of test.txt:"
-cat test.txt
+read test.txt
-# Using a while loop to read file line by line
+# Using a loop to read file line by line
echo "Reading file line by line:"
-while read -r line
+for line in $(read_lines test.txt)
do
- echo "Line: $line"
-done < test.txt
+ echo "Line: ${line}"
+done
# Cleaning up
-rm test.txt
+delete test.txt
diff --git a/src/bellos.rs b/src/bellos.rs
index c5b945d..5d1af5f 100644
--- a/src/bellos.rs
+++ b/src/bellos.rs
@@ -6,9 +6,8 @@ mod utilities;
use crate::interpreter::interpreter::Interpreter;
use crate::lexer::lexer::Lexer;
use crate::parser::parser::Parser;
-use crate::utilities::Token;
+use crate::utilities::utilities::Token;
-use glob::glob;
use std::env;
use std::fs::File;
use std::io::{self, BufRead, Write};
diff --git a/src/executor/executor.rs b/src/executor/executor.rs
new file mode 100644
index 0000000..e69de29
diff --git a/src/executor/mod.rs b/src/executor/mod.rs
new file mode 100644
index 0000000..0c95fda
--- /dev/null
+++ b/src/executor/mod.rs
@@ -0,0 +1 @@
+pub mod executor;
diff --git a/src/interpreter/interpreter.rs b/src/interpreter/interpreter.rs
index 70036e4..bb26122 100644
--- a/src/interpreter/interpreter.rs
+++ b/src/interpreter/interpreter.rs
@@ -13,7 +13,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
-use crate::utilities::ASTNode;
+use crate::utilities::utilities::ASTNode;
use glob::glob;
use std::collections::HashMap;
diff --git a/src/lexer/lexer.rs b/src/lexer/lexer.rs
index 03456d8..9988811 100644
--- a/src/lexer/lexer.rs
+++ b/src/lexer/lexer.rs
@@ -13,7 +13,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
-use crate::utilities::Token;
+use crate::utilities::utilities::Token;
pub struct Lexer {
input: Vec,
diff --git a/src/parser/parser.rs b/src/parser/parser.rs
index 101d4be..a639a3e 100644
--- a/src/parser/parser.rs
+++ b/src/parser/parser.rs
@@ -13,7 +13,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
-use crate::utilities::{ASTNode, Token};
+use crate::utilities::utilities::{ASTNode, Token};
pub struct Parser {
tokens: Vec,
diff --git a/src/utilities/mod.rs b/src/utilities/mod.rs
new file mode 100644
index 0000000..89db166
--- /dev/null
+++ b/src/utilities/mod.rs
@@ -0,0 +1 @@
+pub mod utilities;
diff --git a/src/utilities.rs b/src/utilities/utilities.rs
similarity index 100%
rename from src/utilities.rs
rename to src/utilities/utilities.rs