Найдено результатов: 8

Когда использовать lambda, когда использовать Proc.new?

В Ruby 1.8 есть тонкие различия между proc/lambda, с одной стороны, и Proc.new , с другой.

  • В чем же заключаются эти различия?
  • Можете ли вы дать рекомендации о том, как решить, какой из них выбрать?
  • В Ruby 1.9 proc и lambda отличаются друг от друга. В чем же дело?

ruby   lambda   proc    

509   11   16:03, 1st July, 2020


Когда использовать метод расширения с lambda над LINQtoObjects для фильтрации коллекции?

Я прототипирую некоторые фильтры коллекции C# 3 и наткнулся на это. У меня есть коллекция продуктов:

public class MyProduct
{
    public string Name { get; set; }
    public Double Price { get; set; }
    public string Description { get; set; }
}

var MyProducts = new  List<MyProduct>
{            
    new  MyProduct
    {
        Name = "Surfboard",
        Price = 144.99,
        Description = "Most important thing you will ever own."
    },
    new MyProduct
    {
        Name = "Leash",
        Price = 29.28,
        Description = "Keep important things close to you."
    }
    ,
    new MyProduct
    {
        Name = "Sun Screen",
        Price = 15.88,
        Description = "1000 SPF! Who Could ask for more?"
    }
};

Теперь, если я использую LINQ для фильтрации, он работает, как и ожидалось:

var d = (from mp in MyProducts
             where mp.Price < 50d
             select mp);

И если я использую метод расширения Where в сочетании с Lambda, фильтр также работает:

var f = MyProducts.Where(mp => mp.Price < 50d).ToList();

Вопрос: в чем разница, и зачем использовать одно над другим?

c#   linq   .net-3.5   lambda    

440   4   16:03, 1st July, 2020


Может ли использование лямбд в качестве обработчиков событий вызвать утечку памяти?

Скажем, у нас есть следующий метод:

private MyObject foo = new MyObject();

// and later in the class

public void PotentialMemoryLeaker(){
  int firedCount = 0;
  foo.AnEvent += (o,e) => { firedCount++;Console.Write(firedCount);};
  foo.MethodThatFiresAnEvent();
}

Если класс с этим методом создается экземпляр и метод PotentialMemoryLeaker вызывается несколько раз, происходит ли утечка памяти?

Есть ли какой-нибудь способ отцепить этот обработчик событий lambda после того, как мы закончим вызывать MethodThatFiresAnEvent ?

memory-leaks   lambda   event-handling    

453   5   01:32, 3rd August, 2020


Что такое lambda (функция)?

Что такое lambda в мире компьютерных наук для человека, не имеющего опыта работы в области компьютерных наук?

lambda   language-agnostic   computer-science   terminology   theory    

476   2   06:46, 29th August, 2020


Как мне маршалировать a lambda (Proc) в Ruby?

Джо Ван Дайк спросил список рассылки Ruby :

Привет,

В Ruby, я полагаю, вы не можете маршалировать объект lambda/proc, верно? Является это возможно в lisp или других языках?

То, что я пытался сделать:

l = lamda { ... }
Bj.submit "/path/to/ruby/program", :stdin => Marshal.dump(l)

Итак, я посылаю BackgroundJob a lambda объект, который содержит контекст/код для того, что нужно сделать. Но, наверное, это было невозможно. Я в итоге был выполнен маршалинг обычного объекта ruby, содержащего инструкции для того, что делать после запуска программы.

Джо

ruby   serialization   lambda   proc-object    

513   7   04:17, 12th August, 2020


Что такое appliance и как использовать выражения lambda?

Я читал, что выражения Lambda являются невероятно мощным дополнением к C#,, но я нахожу себя озадаченным ими. Как они могут улучшить мою жизнь или сделать мой код лучше? Может ли кто-нибудь указать на хороший ресурс для изучения таких выражений?

Они кажутся чертовски крутыми, но как они связаны с моей жизнью day-to-day в качестве разработчика asp.net?

Edit: Спасибо за примеры и спасибо за ссылку на статьи Эрика Уайта. Я все еще перевариваю их сейчас. Один быстрый вопрос: Являются ли выражения lambda полезными для чего-либо, кроме запроса? Каждый пример, который я видел, был конструкцией запроса.

c#   lambda    

414   3   01:53, 23rd August, 2020


Получение всех типов, реализующих интерфейс

Используя отражение, как я могу получить все типы, которые реализуют интерфейс с C# 3.0/.NET 3.5 с наименьшим количеством кода и минимизацией итераций?

Вот что я хочу переписать:

foreach (Type t in this.GetType().Assembly.GetTypes())
    if (t is IMyInterface)
        ; //do stuff

c#   optimization   reflection   lambda   c#-3.0    

459   13   14:02, 11th August, 2020


Самый крутой C# LINQ/лямбда-трюк, который вы когда-либо вытягивали?

Видел пост о скрытых функциях в C#, но не многие люди написали linq / lambdas пример так... Я удивляюсь...

Каково самое крутое (как и самое элегантное) использование C# LINQ и/или лямбды / анонимных делегатов, которые у вас когда-либо были saw/written?

Бонус, если он тоже пошел в производство!

c#   linq   functional-programming   lambda    

610   14   05:33, 11th August, 2020