1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
v/ROADMAP.md
2023-05-29 01:35:38 +02:00

2.0 KiB

[Version 0.3]

-- [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')

[Version 0.4]

  • Coroutines
  • vfmt: add missing imports (like goimports)
  • Recursive structs via options: struct Node { next ?Node }
  • First class Option type
  • Optional function struct fields
  • Handle function pointers safely, remove if function == 0 {
  • Bundle OpenSSL like GC
  • Anonymous structs
  • any type
  • Improve vweb: allow separation of logic via "controllers", lots of other fixes
  • New VPM site

[Version 0.5]

  • Thread safe maps
  • Parallel parser
  • Parallel checker
  • Parallel C compilation
  • recover() from panics
  • -usecache on by default
  • -skip-unused on by default
  • 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)

[Version 1.0]

  • Cross compilation of C
  • Big remaining bugs fixed
  • More powerful comptime
  • Constraits for generics
  • Coroutines on Windows
  • 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
    • New VPM site
    • Package versioning
  • A better documentation platform

Web

  • Site that brings everything together in a single style
  • Interactive educational platform (learning to program for beginners)