Sorry for the delayed response; I won't try to give more of an excuse than "I've been busy." :-) I'm very glad to have your contributions, and I'd also be interested in hearing more about any Ur/Web projects you're working on.

Also, the patches you sent are missing username information. Is that intentional? I like to give credit to the right people in version control history, and usernames in patches make that easiest.

On 11/18/2012 06:08 PM, Austin Seipp wrote:
Attached are some patches. In order:

1.) Add a 'username' tag, mostly to match 'password'. I wanted to have
a nice bootstrap-style login, but it wants the type attribute to be
'text' for the login and 'password' for the pass, and there's no way
to specify the type for the attribute (you could theme this with CSS
or something, but this is just the out of the box config for bootstrap
it seems.) So this just specifies type="text" - This patch also adds
'placeholder' attributes to 'username' and 'password' to match
'textbox.'

What would you think about instead making the compiler include 'type="text"' with every <textbox> tag? For this one especially, I'm interested in others' opinions, too.

2.) A bugfix for 'urweb daemon stop'

I agree it was a bug.  Patch applied.

3.) Standard library additions - add 'Basis.exp' for nums and
'Option.unsafeGet' for mild convenience. I'm using these both in an
scrypt binding. I didn't bother to add any changes to the grammar to
support exponents, but that could be nice. :)

Patch applied, and then followed up with a cosmetic change of my own: I like [pow] better than [exp] for exponentiation, since the latter makes me think "expression" first, so I changed it.

I think I'll skip changing the grammar for now.

4.) Enable MLton options in the 'Makefile', including DEBUG, PROFILE,
and I added VERBOSE. I like to see what the compiler is doing
sometimes while sipping my drink, and I don't see any reason why they
should be turned off. :)

Unfortunately, I had those parts of Makefile.am commented out because I couldn't figure out how to get them to work with Automake. Presumably they work for you, but from the version in Debian stable, I get error messages like:
    Makefile.am:52: endif without if
I'd be happy to accept a patch for this functionality if it doesn't require super-new Autotools.

As for the questions, here are some things I might hack on if they are
deemed OK:

1.) I would like to be able to have the Ur/Web compiler build basic .c
files.

Sounds completely reasonable, as it's an easy feature to ignore if unwanted.

I have an in flight patch that almost does this. It will add 2
directives to .urp files:

'CSource file.c'

[...]

'COptions ...'

Sounds reasonable, except that I'd prefer lowercase directive names, to match the convention already in use for .urp files.

2.) Is it reasonable to support ad-hoc tags in the compiler, defined
by the user? Previously I proposed some tags as compiler patches, but
I realize this is inflexible. Instead, I would like to be able to
write a syntactic form similar to the basis library. Say:

    tag audio : ...

I can support this easily with a small patch to allow tags to be defined in FFI modules beside [Basis]. The core tags don't have actual implementations anywhere, and it's easy to enable the same possibilities for tags in further FFI modules. I.e., no need to define a C function returning a string. (The identifier is used to figure out the tag name.)

Sound good?

3.) Is there a reason the 'num' type-class is closed, other than 'it
just is'?

No one asked for it be open yet, so I didn't implement that. :) I'd be glad to have a patch opening it.

_______________________________________________
Ur mailing list
[email protected]
http://www.impredicative.com/cgi-bin/mailman/listinfo/ur

Reply via email to