v/ROADMAP.md

70 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

## [Version 0.3]
2023-05-30 19:39:37 +03:00
- [x] gc option
- [x] channels
- [x] lock{}
- [x] thread safe arrays
- [x] rune type
- [x] replace `ustring` with `[]rune`
- [x] fix `byte.str()`
- [x] maps with non-string keys
- [x] iOS/Android support
- [x] parallel cgen
- [x] IO streams
- [x] struct embedding
- [x] interface embedding
- [x] interfaces: allow struct fields (not just methods)
- [x] short generics syntax (`foo(5)` instead of `foo<int>(5)`)
- [x] more advanced errors, not just `error('message')`
2022-06-30 10:41:09 +03:00
## [Version 0.4]
2023-02-13 11:29:02 +03:00
- [x] [Coroutines](https://github.com/vlang/v/discussions/11582)
- [x] vfmt: add missing imports (like goimports)
- [x] Recursive structs via options: `struct Node { next ?Node }`
2023-03-03 16:58:49 +03:00
- [x] First class Option type
2023-03-13 16:51:58 +03:00
- [x] Optional function struct fields
2023-07-01 13:47:57 +03:00
- [x] Handle function pointers safely, remove `if function == 0 {`
- [x] Bundle OpenSSL like GC
- [x] Anonymous structs
- [x] Improve vweb: allow separation of logic via "controllers", lots of other fixes
- [x] New VPM site
## [Version 0.5]
- [ ] [Thread safe maps](https://github.com/vlang/v/discussions/11729)
- [ ] Parallel parser
- [ ] Parallel checker
- [ ] Parallel C compilation
2023-06-23 11:19:15 +03:00
- [ ] Direct C/C++ interop without generating wrappers
- [ ] `recover()` from panics
2022-07-06 21:38:40 +03:00
- [ ] -usecache on by default
- [ ] -skip-unused on by default
2023-04-10 06:01:01 +03:00
- [ ] 64/32 bit int depending on arch (will remove array.len limitation on 64 bit systems)
- [ ] `copy()` builtin function (e.g. for easier conversion from `[]Foo` to `[4]Foo`)
2023-07-05 16:59:48 +03:00
- [ ] Lambdas: `a.sort(|a, b| a > b)`
2023-03-03 16:58:49 +03:00
## [Version 1.0]
- [ ] Cross compilation of C
- [ ] Big remaining bugs fixed
- [ ] More powerful comptime
- [ ] Constraits for generics
- [ ] Coroutines on Windows
2023-03-13 16:51:58 +03:00
- [ ] Autofree memory management option ready for production
- [ ] C2V supporting entire C99 standard
### Tooling
- [ ] More stable VLS
- [ ] Profiler improvements
- [ ] Basic interactive shell with search, sort, filter, etc.
- [ ] VPM
- [x] New VPM site
- [ ] Package versioning
- [ ] A better documentation platform
2023-03-03 16:58:49 +03:00
### Web
- [ ] Site that brings everything together in a single style
- [ ] Interactive educational platform (learning to program for beginners)