On 2015-11-15 07:54, Dan Partelly wrote:
> 
> Hi all,
> 
> I was looking at the new facility of dumping JSON,XML from many utils in base 
> and after some funny minutes, I couldn't stop ask myself “ Ok, this is funny 
> , but why ? “ And I couldn't find a real answer. Ill outline what I think:
> 
> 
> 1. Undoubtedly, it makes base code slightly harder to understand and 
> maintain. 

I am not sure that libxo actually makes the code any harder to
understand and maintain. It might actually make it slightly better.

replacing:

printf("%s %s %d\n", foo, bar, number);

with:

xo_emit("{:foo/%s} {:bar/%s} {:number/%d}", foo, bar, number);

it not really hurting much.

> 2. I have seen the idea that this makes the information dumped by utilities 
> in the base easily accessible programatically. OK, maybe it does , but
> it doesn't fit with the current paradigm of "tool | filter | tool” at all. 
> There are no tools able to accept JSON and filter it in any meaningful way, 
> and I
> dont see too many ppl changing their code to read JSON instead of text.  I 
> don't even see the base tools changing. This output may be useful in corner 
> cases only.
> 3. The integration of libxo IMO only points at a much deeper issue IMO. It is 
> only an expression of the need of a mechanism aimed at binary code reuse. But 
> it does not solve the problem, it only adds yet another possibility in a 
> world where too much choices already result in too much splits and 
> incompatible APIs. 
> 4. This whole effort would have been IMO much better served  by porting the 
> bulk of ifconfig(8) , route(8) and wpaclient(8) to a library API, much like 
> the libs for geom, zfs , etc , ready for reuse of 3rd party code. Eventually 
> writing network control daemons in time over it , much like solaris does.
> 
> 5. A port of partial OS config data to UCL …. would induce yet induce another 
> orthogonality violation. What makes UCL better than the bestiary of ad hoc 
> databases already existing in BSDs ? Programatic readability, yes. but it 
> does not add any real much needed functionality such as *transactional 
> databases* for system tools.   Why not research a proper solution - easily 
> accessible by other programs ,orthogonal , transactional, and ACL protected   
> solution  which can be used all over the place , from OS boot, to ABI 
> management, service management, network management, user management.  I hope 
> this day will come, a day when I will not have to edit a single config file 
> manually, yet I would have access to all the config and system state  easy 
> with wrapper APIs. In the light of this point, why go with UCL ? It is not 
> orthogonal, it is not transnational, and editing the config files directly 
> would result in the same old human errors which bite as all from time to time.
> 
> 5. It is my opinion that Solaris addressed some of those issue. Solaris FMRI 
> and SMF are lightyears ahead of the very tired models we keep using on BSDs. 
> Why not build on the insight offered by those (or even on the insight offered 
> by Windows :P) , then inventing more adhoc solutions and ad-hoc databases, 
> which do not address the real issues we have , like binary code reuse, 
> service management issues,  lack of a system wide published -subscriber bus ( 
> not kdbus :P ) fault detection and reaction, fault reporting, all much needed 
> parts of a modern OS. 
> 
> And now thee questions
> 
> 1. Why lib XO ? Why burden the OS for some corner cases where it may be 
> useful ?
> 
> 2. Was there any real talk on how to bring FreeBSD up to speed regarding 
> those issues ?  A period of research on what exists, on what can be done , 
> and ensure important things are not showed in background and replaced with 
> yet another ad-hoc config database which lacks modern features ?
> From where I am standing, this could be a project spawning multiple years , 
> but it would be well worth it, and in my opinion it would be also worthy of 
> the freeSBD foundation sponsorship for several years in a row. The features I 
> touched upon became very important parts of oder OSes, and rightly so. 
> 
> Note:
> 
> this message is serious and it is not intended to start flame wars, religious 
> crusades, or offend anyone. 
>  
> _______________________________________________
> freebsd-current@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
> 


-- 
Allan Jude

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to