This is a feedback page for the Genie Langauge
Feel free to add comments on syntax or stuff you would like to see in genie here
Wishlist
Support for nullable generic types, for example the vala snippet
LinkedList<string>? lst = new LinkedList<string>();
has no genie analogue.pythonesque syntax for declaring and initializing arrays, for example
# compiler should assume this is a list of int var a_int = [ 1, 2, 3, 4, 5, 6] # same here with string var a_str = [ "one", "too", "sree"]
maybe with optional type hint
# tell the compile to cast all values var a_float : array of float = [ 1, 2, 3 ]
have a complete test suite for genie. I always like to grep in the vala test for specific usages of certain types, having a full set of genie programs to borrow from would suite me very well
- docstrings! If they make sense with GObjects, that is ... Even if GObject/GLib don't have hooks for them, they'd make sense to produce static API documentation
Better iterator support. At the moment you cant return an Gee.Iterator and use it in a for loop. For example:
[indent=4] l : list of string def returns_iterator() : Gee.Iterator of string return l.iterator() init l.add("wan") l.add("tuu") for s in l print s for s in returns_iterator() print s
fails at compilation:
test_iterator.gs:14.5-14.32: error: Gee.List not iterable for s in returns_iterator() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Generate apps that need libc only. Jamie, this wiki page is perhaps not the best way to post feedback. I have posted my suggestion to your livejournal: http://jamiemcc.livejournal.com/12009.html?view=224745#t224745
- "protected" classifier (ala Vala) for internal variables/methods which should be accessible (and potentially overridable) by child classes, but not outside of the class
Bugs
(Do we list bugs here or should I use bugzilla?)
- When doing continuing lines with backslashes, the error output from the compiler is thrown off. It lists the correct line numbers, but the actual data is from teh wrong line. This makes it very awkward to see what is wrong.
Dicts will not compile with Vala 0.5.1. It has Gee in the source, so an external libgee should not be required? I have reported this bug here: http://jamiemcc.livejournal.com/12009.html?view=225001#t225001