Skip to content

Commit 9d79c3f

Browse files
committed
feat: Release v1.0.0, updating project version and roadmap, and adding VS Code extension files, common header, and release notes.
1 parent 8ad7419 commit 9d79c3f

File tree

6 files changed

+94
-59
lines changed

6 files changed

+94
-59
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.15)
2-
project(ProXPL VERSION 0.9.0)
2+
project(ProXPL VERSION 1.0.0 LANGUAGES C CXX)
33

44
# Enable C and C++
55
enable_language(C CXX)

README.md

Lines changed: 34 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@
88

99
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
1010
[![ProXPL CI](https://github.com/ProgrammerKR/ProXPL/actions/workflows/build.yml/badge.svg)](https://github.com/ProgrammerKR/ProXPL/actions/workflows/build.yml)
11-
[![Version](https://img.shields.io/badge/version-0.9.0-blue.svg)](https://github.com/ProgrammerKR/ProXPL/releases)
11+
[![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)](https://github.com/ProgrammerKR/ProXPL/releases)
1212
[![Platform](https://img.shields.io/badge/platform-win%20%7C%20linux%20%7C%20macos-lightgrey.svg)]()
1313

14+
1415
**Clean Syntax • Static Typing • Stack-Based VM • C-Level Performance**
1516

1617
[Quick Start](#-quick-start)
@@ -528,60 +529,39 @@ See [BENCHMARKS.md](BENCHMARKS.md) for detailed performance comparisons.
528529

529530
---
530531

531-
## 🛣️ Roadmap
532-
533-
### v0.7.0 (Current - January 2026)
534-
**Status**: Released
535-
- ✅ 0.7.0 Features Complete
536-
- ✅ Testing Phase with Pre-release builds
537-
- ✅ Stack-based VM with bytecode execution
538-
- ✅ LLVM backend for AOT native compilation
539-
- ✅ 75+ standard library functions
540-
- ✅ Garbage collector (Mark & Sweep)
541-
- ✅ Type system with inference
542-
- ✅ Module system with `use` keyword
543-
- ✅ PRM package manager (basic)
544-
- ✅ CLI tools and LSP foundation
545-
- ✅ Cross-platform support (Windows/Linux/macOS)
546-
547-
### v0.8.0 (Current - Q1 2026)
548-
**Status**: Released
549-
-**Advanced Diagnostics**: Enhanced error reporting with **Column Tracking** and visual pointers (`^`) for precise debugging.
550-
-**VS Code Tooling**: Implementation of **Snippets** and **Hover Support** (documentation tooltips) in the official extension.
551-
-**System Standard Library**: Expansion of `std.fs` (File System I/O) and `std.sys` (Process args, exit codes, and env).
552-
-**LSP Evolution**: Transition from foundation to a functional Language Server (Go-to-definition, basic autocomplete).
553-
-**PRM Remote Support**: Enabling PRM to fetch and install packages directly from **GitHub repositories**.
554-
555-
### v0.9.0 (Current - Q1 2026)
532+
## 🗺️ Roadmap
533+
534+
- **v0.5.0 (Alpha)**: Core language features (variables, functions, control flow). ✅
535+
- **v0.8.0**: Advanced memory management, closures, upvalues. ✅
536+
- **v0.9.0**: Standard Library (fs, time, gc), IO improvements. ✅
537+
- **v1.0.0 (Current)**:
538+
- **Object-Oriented Programming**: Classes, Methods, Inheritance, Properties.
539+
- **Keywords**: `class`, `new`, `this`, `extends`, `interface`.
540+
- **Runtime**: Optimized VM with Object Support.
541+
- **v1.1.0** (Planned):
542+
- Advanced Strings/Lists.
543+
- Exception Handling (`try`/`catch`).
544+
- Module System refinements.
545+
- **v1.2.0**: Native Interface (FFI) full stability.
546+
547+
### v1.0.0 (Current - Alpha)
556548
**Status**: Released
557-
-**GC Optimization**: New `std.gc` module for manual collection control and memory statistics.
558-
-**Stdlib Expansion**: Enhanced `std.time` with `strftime`/`timestamp` and `std.fs` with `move`/`abspath`.
559-
-**Stability Improvements**: General bug fixes and performance tweaks in memory management.
560-
561-
### v1.0.0 (Planned - Q2 2026)
562-
**Focus**: OOP & Ecosystem (Major Release)
563-
- 📋 **Class-based OOP**: First-class support for Classes, Objects, Inheritance, and Interfaces.
564-
- 📋 **Access Control**: `pub`, `priv` modifiers for encapsulation.
565-
- 📋 **OOP Tooling**: IDE support for OOP constructs.
566-
- 📋 **ProX Studio Alpha**: Initial tailored IDE release.
567-
568-
### v1.3.0 (Q3 2026)
569-
**Focus**: Advanced Features
570-
- 📋 Pattern matching and Algebraic Data Types (Enums).
571-
- 📋 Generics, Traits, and Type Parameters.
572-
- 📋 Option/Result types for robust error handling.
573-
574-
### v2.0.0 (Q4 2026+)
575-
**Focus**: Concurrency & Integrated Tooling
576-
- 📋 **ProX Studio (Stable)**: A fully branded, dedicated IDE with integrated debugger, PRM GUI, and zero-config ProXPL environment.
577-
- 📋 Async/await, Green threads, and Actor model concurrency.
578-
- 📋 Foreign Function Interface (FFI) and WebAssembly target.
579-
- 📋 JIT compilation and advanced LLVM optimizations.
580-
581-
### Future Considerations
582-
- 📋 Memory safety guarantees (ownership/borrowing).
583-
- 📋 Compile-time reflection and metaprogramming.
584-
- 📋 Dedicated ProXPL Package Registry.
549+
-**Class-based OOP**: First-class support for Classes, Objects, Inheritance, and Interfaces.
550+
-**Runtime Architecture**: Enhanced VM with Class, Instance, and BoundMethod support.
551+
-**New Keywords**: `class`, `new`, `this`, `extends`, `interface`, `static`.
552+
-**Inheritance**: Single inheritance model with superclass method lookup.
553+
-**Verification**: Verified via `tests/oop_v1.0.0.prox`.
554+
555+
### v1.1.0 (Upcoming)
556+
**Status**: Planned
557+
- 📋 **Access Control**: `pub`/`priv` visibility enforcement.
558+
- 📋 **Constructors**: `init` constructor method.
559+
- 📋 **Exception Handling**: `try`/`catch` blocks.
560+
561+
### Future Roadmap (2026+)
562+
- 📋 **v1.2.0**: FFI Stability & ProX Studio Alpha.
563+
- 📋 **v1.3.0**: Pattern Matching, Enums, Generics.
564+
- 📋 **v2.0.0**: Async/Await, WebAssembly, JIT.
585565

586566
## 🛠️ Contributing
587567

RELEASE_NOTES_v1.0.0.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# ProXPL v1.0.0 Alpha Release Notes
2+
3+
**Build Status**: Passing (Windows/Linux/macOS)
4+
**Version**: 1.0.0 (Alpha)
5+
**Date**: January 2026
6+
7+
## 🚀 Major Features: Object-Oriented Programming
8+
9+
ProXPL v1.0.0 introduces fundamental support for Class-based Object-Oriented Programming, marking a significant milestone in the language's evolution.
10+
11+
### Core OOP Concepts
12+
- **Classes**: Define blueprints for objects using the `class` keyword.
13+
- **Instantiation**: Create objects using the `new` keyword (e.g., `let obj = new MyClass()`).
14+
- **Methods**: Define behavior attached to classes.
15+
- **Properties**: runtime-dynamic property access on instances.
16+
- **Inheritance**: Single inheritance supported via `class Dog extends Animal`.
17+
- **`this` Keyword**: Explicit access to the current instance within methods.
18+
19+
### New Keywords
20+
- `class`
21+
- `new`
22+
- `this`
23+
- `extends`
24+
- `interface` (Parser support only, runtime behavior in progress)
25+
- `static` (Parser support only)
26+
- `pub` / `priv` (Parser support only)
27+
28+
## 🛠️ Runtime & VM Enhancements
29+
- **Optimized Object Model**: New `ObjClass`, `ObjInstance`, and `ObjBoundMethod` runtime structures.
30+
- **New OpCodes**:
31+
- `OP_CLASS`, `OP_INHERIT`, `OP_METHOD` for class definitions.
32+
- `OP_GET_PROPERTY`, `OP_SET_PROPERTY` for field access.
33+
- `OP_INVOKE` for optimized method calls.
34+
- **Stack-based Instantiation**: Efficient object creation and initialization.
35+
36+
## 📦 Standard Library Updates (from v0.9.0)
37+
- **`std.gc`**: Manual garbage collection control and stats (`gc.collect()`, `gc.stats()`).
38+
- **`std.fs`**: Added `move()`, `abspath()`.
39+
- **`std.time`**: Added `strftime()`, `timestamp()`.
40+
41+
## 🐛 Bug Fixes
42+
- Fixed compiler state management during class recompilation.
43+
- Resolved build system issues with CMake across different platforms.
44+
- improved memory safety in `ObjInstance` property access.
45+
46+
## 🔜 Next Steps (v1.1.0)
47+
- Access Control enforcement (`pub`/`priv`).
48+
- `try`/`catch` exception handling.
49+
- `init` constructors.
50+
- Expanded standard library for file manipulation.
51+
52+
---
53+
54+
*Thank you to all contributors who made this release possible!*

extension/icons/icon-theme.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3498,6 +3498,7 @@
34983498
"tailwind.config.mjs": "_tailwindcss",
34993499
"tailwind.config.ts": "_tailwindcss",
35003500
"tailwind.config.cts": "_tailwindcss",
3501+
"Doxyfile": "_settings",
35013502
"tailwind.config.mts": "_tailwindcss",
35023503
"buildkite.yml": "_buildkite",
35033504
"buildkite.yaml": "_buildkite",

extension/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "proxpl",
33
"displayName": "ProXPL Language Support",
44
"description": "Syntax highlighting and language support for the ProXPL programming language",
5-
"version": "0.9.0",
5+
"version": "1.0.0",
66
"publisher": "ProXentix",
77
"repository": {
88
"type": "git",

include/common.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
#ifndef PROX_COMMON_H
88
#define PROX_COMMON_H
99

10-
#define PROXPL_VERSION_MAJOR 0
11-
#define PROXPL_VERSION_MINOR 9
10+
#define PROXPL_VERSION_MAJOR 1
11+
#define PROXPL_VERSION_MINOR 0
1212
#define PROXPL_VERSION_PATCH 0
13-
#define PROXPL_VERSION_STRING "0.9.0"
13+
#define PROXPL_VERSION_STRING "1.0.0"
1414
#define PROXPL_VERSION_PRERELEASE ""
1515

1616
#include <stdbool.h>

0 commit comments

Comments
 (0)