You'd do well to stick with existing syntax conventions. People care about this stuff and introducing changes just because you can seems like a bad idea if you want your language to get wide adoption.
So I'd like to see ; be restored as the comment character, to match every other lisp ever written, and you should probably use / for namespacing like in Clojure. The use of / for namespacing is already a well established convention, because we do that all the time on the web.
Your concerns are well founded but what's going on is this.
Import paths will be using / for the separation of the path, so you'll be writing things like:
(import foo/bar/bar #as baz)
I haven't added imports yet, but they're coming for v0.2
Regarding ; as comments and not namespacing, I chose it mostly because:
a) Using / for namespacing leaves the / function in a weird position.
b) I originally wanted to use : for namespacing, but ended up choosing it for the type-annotating macro, so I settled for ;.
c) ## Was chosen for comments because I get to save on reserved characters. For instance, Clojure reserves an awful lot of characters (, . / ^ # @ ~ ' ` ; : \), whereas Lux only reserves 2 (# ;). So I chose ## to save on characters and because if you squint, ; kinda looks like :
d) Ultimately, there is nothing written in stone and I can change my mind about syntax, but I don't see how rocking the boat a little bit with the syntax will cause much trouble.
Syntax is always a prime candidate for bicycle shedding so they'll always be brought up but uncommon syntax is jarring at first.
One problem I see is how overloaded the `#` character is right now. I think one problem that Scala is stuck with is how many things for which `_` is used.
Comments
You'd do well to stick with existing syntax conventions. People care about this stuff and introducing changes just because you can seems like a bad idea if you want your language to get wide adoption.
So I'd like to see ; be restored as the comment character, to match every other lisp ever written, and you should probably use / for namespacing like in Clojure. The use of / for namespacing is already a well established convention, because we do that all the time on the web.
Your concerns are well founded but what's going on is this.
Import paths will be using / for the separation of the path, so you'll be writing things like: (import foo/bar/bar #as baz)
I haven't added imports yet, but they're coming for v0.2
Regarding ; as comments and not namespacing, I chose it mostly because:
a) Using / for namespacing leaves the / function in a weird position.
b) I originally wanted to use : for namespacing, but ended up choosing it for the type-annotating macro, so I settled for ;.
c) ## Was chosen for comments because I get to save on reserved characters. For instance, Clojure reserves an awful lot of characters (, . / ^ # @ ~ ' ` ; : \), whereas Lux only reserves 2 (# ;). So I chose ## to save on characters and because if you squint, ; kinda looks like :
d) Ultimately, there is nothing written in stone and I can change my mind about syntax, but I don't see how rocking the boat a little bit with the syntax will cause much trouble.
Syntax is always a prime candidate for bicycle shedding so they'll always be brought up but uncommon syntax is jarring at first.
One problem I see is how overloaded the `#` character is right now. I think one problem that Scala is stuck with is how many things for which `_` is used.