[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] pretty charts from OCaml and js_of_ocaml



Le vendredi, 19 juin 2015 Ã 16:06, Anil Madhavapeddy a Ãcrit :
> The notebook (or perhaps toploop_js to be more specific?) predicate
> does seem like the right way to do things, despite the OASIS tooling
> issue.  

Actually I prefer the addition of a package PKG.notebook. The less we put in 
META files the happier I am.  

I have now personally settelled on the following scheme for toploops in my 
packages: requiring a package should only load the package and never have any 
other side effect.  

If you want to have toploop support for the package you provide a PKG.top 
package that requires PKG and does its toplevel business. This seems to better 
match user expectations (see [1] for a discussion) and it could end up being 
annoying that you are not able to #require a package without having its side 
effect on the toplevel. Examples are if packages end up installing conflicting 
printers, or if a package automatically opens it's namespace like gg does and 
you dont' want that.  

See for example the current toploop support for gg [2] which doesn't use any 
special predicate in the meta file.

Best,

Daniel

[1]
https://github.com/dbuenzli/gg/issues/1



[2]
https://github.com/dbuenzli/gg/blob/b0ac9b1d3ae9c9521bd31ff0bfab9769afbeb133/pkg/META#L10-L19
https://github.com/dbuenzli/gg/blob/b0ac9b1d3ae9c9521bd31ff0bfab9769afbeb133/src/gg_top.ml#L7
https://github.com/dbuenzli/gg/blob/b0ac9b1d3ae9c9521bd31ff0bfab9769afbeb133/src/gg_top_init.ml#L7-L18






_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.