Apr. 8th, 2012

juan_gandhi: (Default)
В субботу выползал как-то с трудом... ну в смысле в 9. Мне никто не звонил, я никак не мог дозвониться; надо было ехать на велике, но сначала с МакБрайдом да Патерсоном поразбираться... ну и немножко на заднем дворе в порядок поприводить, у меня там патио было подразобрано.

Короче, к двум патио было собрано обратно, и наполовину подметено. Пошел сделал себе обед, треску с овощами (ну чо там, фольга, рыба отдельно, овощи отдельно, сверху соевым соусом, и в микроволновку на 24 минуты на 435 фаренгейта.

Поел и заснул.

Проснулся в 6, а обещал Лие, что на велопарти прикачу, а она в 5. Тьфу. Сел снова с МакБрайдом и Патерсоном возиться, перепирать на язык родных скал. Всё больше вижу разницу между хаскелем и скалой, ё.

В час завалился спать (ну там 10 минут монтипайтона перед сном. We are not amused.)

Это была суббота, как не было. А, у меня, кстати, на выходные теперь будильник на 8 поставлен.

Но встал раньше; ну там зарядочка да завтрак какой ни попадя (кусок хлеба да творог); и опять МБП - идейки, идейки, и всё ни хрена не компилируется. Но в 11 вскочил как этот, сел на велик и поехал. А теплынь сегодня. Решил добавить нагрузки, не одна гора, а две; вторая - у айбиэм. Ну что, ну проехал. Пара идее появилось насчёт апликативов. Гор больше, да дорога короче, всего 15 миль; 1:20 и я дома; душ, обед (креветки с китайским острым соусом); и в 2 свободен, фига се. Поехал было в Костко затовариться, да по дороге проверил, открыто ли. Оказывается, Христос воскрес и всё закрыто.

Ну пошел тогда в Лаки, набрал всякой еды (мороженой рыбы, в основном, как будто мы полярники). Взял ещё кеша в банкомате; кеш со скоттрейда - как лотерейный выигрыш. Не с получки. Коробку клубники кассир прокомментировал, что там buy one get two free - пошел ещё взял; мне столько не надо, но отдать некому было, пришлось тащить домой. Завтра на работу свезу.

Пошел на заднем дворе всё подмёл, потом стал спринклеры проверять. Пару подрегулировал, и решил ещё один поставить. Выкопал канавку. Каждый раз, когда я копаю канаву, я вспоминаю пророчество, данное мне отцом Серёги Закусова на родительском собрании в 8-м классе (где разбирали моё поведение): "Ты Будешь Копать Канавы!"

Между прочим, земля под газоном офигенно сухая. Ну то и добавляю спринклер.

Лопатой случайно пробил трубу, но это неважно, т.к. я туда и врезаюсь. Хуже другое - т-образный коннектор был последний, а уголка с резьбой вообще больше не было. А блин, дожди обещают. Ну что, присоединил что мог, прикопал, чтобы земля на патио не валялась, всё в пруд утечёт если дождь. Убрал инструменты под навес, и опять за МакБрайда с Патерсоном. Нет, ну ещё салата хориатики сделал себе на ужин.

Короче, в скале хаскельный апликативный [[...]] фиг сделаешь; во-первых, система типов слабовата, во-вторых, параметры-то можно списком передавать, да промежуточные замыкания будут разных типов. Так что хрен фолд напишешь. Думаю.
juan_gandhi: (Default)
А всем пофиг. Его китч везде... и никому не нужен.

Такие дела.
juan_gandhi: (Default)
trait Applicative[T[_]] extends Functor[T] {
  def pure[A](a:A):T[A]
  def ap[A,B](tf:T[A=>B]): T[A] => T[B]
  def map[A,B](f:A=>B) = ap(pure(f))
}

abstract class Applicable[A, B, T[_]](fs: T[A=>B]) {
  def <*>(at: T[A]):T[B]
}
abstract class Lifted[A, B, T[_]](f: A=>B) {
  def <@>(ta:T[A]): T[B] // in Haskell it is <$>; can't use $ in Scala, and can't have lt;&s> either.
}

trait RichApplicative[T[_]] extends Applicative[T] {
  implicit def applicable[A,B](tf:T[A=>B]): Applicable[A, B, T]
  implicit def lift[A,B](f: A=>B) = new Lifted[A, B, T](f) { def <@>(at: T[A]) = ap(pure(f))(at)}
}

trait Traversable[T[_]] extends RichApplicative[T] {
  def traverse[A, B](f: A => T[B])(as: List[A]): T[List[B]] = as match {
    case Nil => pure(Nil)
    case head::tail => lift(cons[B] _) <@> f(head) <*> traverse(f)(tail)
  }

  def dist[A] = traverse(identity[T[A]] _) _
}


Work in progress. I'm on page 5. (dumb, eh)

Comments? Ideas?

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

August 2025

S M T W T F S
      12
3456789
10 11 12 13141516
17181920212223
24252627282930
31      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 15th, 2025 12:00 am
Powered by Dreamwidth Studios