Letting claude-code generate some boilerplate

This commit is contained in:
Greg Shuflin 2025-03-25 01:30:59 -07:00
parent cf783fe597
commit d9ba328e74
4 changed files with 1791 additions and 5 deletions

1738
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,15 @@ name = "schala"
version = "0.1.0"
authors = ["greg <greg@everydayimshuflin.com>"]
edition = "2021"
description = "Schala programming language compiler"
[dependencies]
clap = { version = "4.4", features = ["derive"] }
log = "0.4"
env_logger = "0.10"
wasmtime = "31.0"
codespan-reporting = "0.11"
[dev-dependencies]
insta = "1.34"

16
README
View File

@ -1,4 +1,16 @@
# Schala
No-runtime-value-error-language
A strongly-typed, pure functional language with imperative syntax affordances.
A language wth a largely-python-like where there are no value errors. Can call null like a function
## Key Features
- Pure functional core with imperative syntax sugar
- Strong static typing system
- Curly-brace syntax (no significant whitespace)
- Rust-style manual memory management without GC
- WebAssembly compilation target (with plans for native targets)
## Design Philosophy
Schala aims to combine the safety and reasoning benefits of functional programming with familiar syntax for developers from imperative backgrounds. The language prioritizes compile-time checks to eliminate runtime value errors.
## Project Status
Early experimental development.

View File

@ -1,3 +1,33 @@
fn main() {
println!("Hello, world!");
/*
mod lexer;
mod parser;
mod ast;
mod typechecker;
mod codegen;
*/
mod error;
use clap::Parser;
use log::{info, error};
#[derive(Parser, Debug)]
#[command(author, version, about, long_about = None)]
struct Args {
/// Source file to compile
#[arg(required = true)]
input_file: String,
/// Output file path
#[arg(short, long)]
output: Option<String>,
}
fn main() {
env_logger::init();
let args = Args::parse();
info!("Compiling {}...", args.input_file);
println!("Schala compiler initialized");
// TODO: Implement compilation pipeline
}