Skip to content

esthedebeste/YIPPEE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

yippee

programming language!!!! yippee!

Note

YIPPEE is in a very early phase and not yet open for contributions.
Talk to me if you would like to help the project (contact information on my website)

TODO (highest to lowest priority):

  • (☆) if, while, for statements. (parser, ast, backend)
  • (☆) create with struct field names (parser, ast, backend)
  • (☆) struct default template argument values (ast, backend)
  • (☆☆) array types (parser, ast, backend)
    • (☆) subscript operator (backend)
    • (☆) array literals (parser, ast, backend)
  • (☆☆☆) generic functions (parser, ast, backend)
    • (☆) weak linkage (backend)
  • (☆) member function call (fun double(x: int32) callable as x.double()) (parser, ast, backend)
  • (☆☆) operator overloading (parser, ast, backend)
  • (☆☆) boolean logic (parser, ast, backend)
  • (☆☆☆) infer template arguments (backend?)
  • (☆☆☆☆☆) import statement loads a file as type declarations. (parser, ast, backend)
    • (☆☆☆) get started on a standard library (...?, stdlib)
  • (☆☆☆) possible(...) expression (parser, ast, backend)
    • (☆☆☆☆) template argument constraints (parser, ast, backend)
  • (☆☆☆☆) compile directly to exe (backend)
  • (☆☆☆) const types (parser, ast, backend)
  • (☆☆☆) some form of reference types (out/in?) (parser, ast, backend)
  • (☆☆☆☆☆☆☆☆☆☆) RAII, constructors, destructors, and the such (parser, ast, backend)
  • (☆) allow reordering of fields in create (C++ doesn't support this either so I'm letting this one sit) (backend)
  • (☆☆☆) infer template arguments in create (backend?)

not sure how to design:

  • (☆☆☆☆) os checking (best design would be a if constexpr analogue?) (parser?, ast?, backend)
  • (☆) get array length (array.size, std::length(array), ???) (backend? stdlib?)
  • (☆) character literals. C uint8, go rune, rust max-4-byte UTF-8 char, ??? (parser, ast, backend, stdlib?)
  • (☆) string literals. automatically compile to a std::something? should YIPPEE be a UTF-8, UTF-16, or UTF-32 language? C++-style user literals? (parser, ast, backend, stdlib?)

About

YIPPEE programming language

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published