I like the idea of changing the concatenation operator as well. DB400 (DB2 on as/400) uses the || as well.
For triggers, lets keep them set based. If you do need to cycle thru the individual records, and there are a times, write the trigger to handle them. Loops thru the records, use case statements, etc. And I am pretty sure cursors work in a trigger as well.
It's my understanding that cursors were never a part of true relational database design. It was later added to accompdate the ISAM world (indexed sequential access method)
The stats pack is a real nice idea. SQL Server's self tuning is such a plus, but it seems to be so little known, or even understood, that Oracle makes such a big deal that you need a full time DBA to manage Oracle. If designed well, a statspack could also be a driver that tells DBA's when it's time to add hardware, or even reconfigure hardware ( RAID 10 instead of RAID 5 - yes, I have clients that still use RAID 5 for databases).
What's the business problem you're trying to solve?