Re[14]: и самое главное...
От: aka50 Россия  
Дата: 11.04.07 14:20
Оценка:
Здравствуйте, Demandred, Вы писали:

D>Здравствуйте, neFFy, Вы писали:



FF>>знаешь, эта идея не нова ни разу.. та же Java уже была давно до .NET

FF>>мне сложно говорить про внутренности дотнета.. мелкософт написали не хуже.. возможно и много лучше.. но в общем то новинок от мелкомягких ждать не приходится.. жаль конечно.. (про косяк с разными версиями дотнета тут уже говорили..так что это еще не самое хорошее, что могло бы быть..)

D>Правда и LINQ был в Java?

А до linq были другие языки например lisp. И lisp-у уже 40 лет.


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; C# Linq Demo from <a href="http://weblog.infoworld.com/udell/2005/09/28.html">this .net blog</a>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
XDocument doc = XDocument.Load("blog.xml");
 
var d  = new Dictionary<string,string>();
d.Add("2005/09","September 2005");
d.Add("2005/08","August 2005");
 
var a = new string[] { "greasemonkey", "ajax" };
 
var query =
  from
    item in doc.Descendants("item"),
    key in d.Keys,
    tag in a
  where item.Element("date").Value.Contains(key) &amp;&amp;
        item.Element("tags").Value.Contains(tag)
  orderby
    (string) item.Element("date") descending
  select new XElement("item",
    new XElement("month",d[key]),
    item.Element("date"),
    item.Element("title"),
    item.Element("tags"));
 
foreach (var result in query)
  Console.WriteLine(result);

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Lisp with Loop which as far as I can tell is about as close as I can get LINQ
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(mapc
 (lambda (elem) (print elem))
 
  (loop for item in doc.Decendants("items")
    for key in d.Keys
    for tag in a
    when (and
          item
          (find key (value (item.Element "date")))
          (find tag (value (item.Element "tags"))))
    collect (make-instance 'XElement
                  :tag-name "month"
                  :children (list (make-instance 'XElement :tag-name "month")
                          (item.Element "date")
                          (item.Element "title")
                          (item.Element "tags")))
    into new-elems
    unless item do (return (sort new-rows #'xml-item-date-&lt; )))

Т.е. идея стара, но в более продвинутых языках это решается без встраивания в язык.

А вообще LinQ ругают/хвалят тут http://rsdn.ru/?/Frame/Main.aspx
D>А может еще и XAML был?
Непостредственно для java гуи на xml — http://java-source.net/open-source/xml-user-interface-toolkits
А это аналогичные
http://ru.wikipedia.org/wiki/MXML
http://ru.wikipedia.org/wiki/XUL

Т.е. улучшенное, но не новое...

D>Да и дженерики в Java вроде позже чем в .NET появились...

Дженерики появились задолго до Java и .Net вместе взятых
Просто Sun очень консервативен, т.к. производителей jvm — толпа, а .Net — только МS.

FF>>одна надежда пока на Сингулярити

FF>>да и еще надеюсь на то, что политика мелкософта заставит крупных производителей софта писать под линух
D>А вот это врядли
Политика борьбы с пиратством _уже_ заставляет...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.