数码幽灵的自学Blog

.Net 学习历程

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
    以前孤陋寡闻,以为在.Net平台上的语言都一样,现在算是开了眼了;
    原来真的是那么不同的啊,就比如C-Omega
    文档原话:
    “C-Omega是一种强类型的面向数据的语言(Data Oriented Language),桥接了半机构化层次数据如XML,SQL,CTS之间的裂缝,在C-Omega中表面上不同的世界,被用通用的方法连接了起来;
        除了数据集成之外,C-Omega还以基于连接微分(join calculus)的异步并发提取(asynchronous concurrency abstractions)扩展了C#,语言表现出一个简洁但是强大的并发模型,适用于单机的多线程,和通过广域网络的基于事件的应用程序通讯”

数据集成,将XQuery当作自然的语言特性来使用:
for $b in $bs/book
return
 
<result>
   
{$b/title}
   
{$b/author}
 
</result>

在C
-Omega中语法基本一致
 
foreach (b in bs.book)
{
  yield 
return <result>
                
{b.title}
                
{b.author}
               
</result>;
}


和弦(Chord)方法,在Get执行直线先执行异步方法Put()
 
public class Buffer {
   
public async Put(string s);
   
public string Get() & Put(string s) return s; }
}
 

察看所有C-Omega的细节及下载:
http://research.microsoft.com/research/downloads/default.aspx
posted on 2004-07-17 13:25  数码幽灵  阅读(1195)  评论(1编辑  收藏  举报