[ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 08.06.10 08:32
Оценка: 29 (5)
http://racket-lang.org/

Кстати, на нем написана вся логика лучшей игры прошлого года: UNCHARTED 2: Among Thieves
Re: [ANN] Racket language (не первоапрельская шутка)
От: Константин Б. Россия  
Дата: 08.06.10 09:06
Оценка:
Здравствуйте, z00n, Вы писали:

Z>http://racket-lang.org/


Z>Кстати, на нем написана вся логика лучшей игры прошлого года: UNCHARTED 2: Among Thieves


Это бывший PLT Scheme что ли?
Re: [ANN] Racket language (не первоапрельская шутка)
От: neFormal Россия  
Дата: 08.06.10 09:20
Оценка: 2 (1)
Здравствуйте, z00n, Вы писали:

Z>http://racket-lang.org/

Z>Кстати, на нем написана вся логика лучшей игры прошлого года: UNCHARTED 2: Among Thieves

понравилось "Введение в Рэкет с картинками"..
...coding for chaos...
Re[2]: [ANN] Racket language (не первоапрельская шутка)
От: Mr.Cat  
Дата: 08.06.10 09:34
Оценка:
Здравствуйте, Константин Б., Вы писали:
КБ>Это бывший PLT Scheme что ли?
Ага, вот объяснение: http://www.racket-lang.org/new-name.html
Re[2]: [ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 08.06.10 09:35
Оценка:
Здравствуйте, Константин Б., Вы писали:

КБ>Здравствуйте, z00n, Вы писали:


Z>>http://racket-lang.org/


Z>>Кстати, на нем написана вся логика лучшей игры прошлого года: UNCHARTED 2: Among Thieves


КБ>Это бывший PLT Scheme что ли?

Да
Re: [ANN] Racket language (не первоапрельская шутка)
От: Mr.Cat  
Дата: 08.06.10 09:38
Оценка:
Здравствуйте, z00n, Вы писали:
Z>http://racket-lang.org/
Хехе, они таки окончательно решили, что у них будет свой язык, с... с чем он там у них? Неужели с r7rs все так плохо? В нем ведь как раз хотели поставить вопрос о практической применимости схемы. Мне кажется, все это немного грустно.
Re[2]: [ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 08.06.10 09:47
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

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

Z>>http://racket-lang.org/
MC>Хехе, они таки окончательно решили, что у них будет свой язык, с... с чем он там у них? Неужели с r7rs все так плохо? В нем ведь как раз хотели поставить вопрос о практической применимости схемы. Мне кажется, все это немного грустно.

Они обратно совместимы. PLT всегда был слишком большим проектом, чтобы впихнуть его в (маленькую) формальную спецификацию схемы. Потом у них есть статическая типизация и.т.д
Re: [ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 08.06.10 09:50
Оценка: 11 (2)
Здравствуйте, z00n, Вы писали:

Z>http://racket-lang.org/


Z>Кстати, на нем написана вся логика лучшей игры прошлого года: UNCHARTED 2: Among Thieves

Кстати, вот презентация по поводу скриптинга в Uncharted (они там на полную катушку используют продолжения):
State-Based Scripting in Uncharted 2: Among Thieves [40MB PDF]
Re[3]: [ANN] Racket language (не первоапрельская шутка)
От: Mr.Cat  
Дата: 08.06.10 09:58
Оценка:
Здравствуйте, z00n, Вы писали:
Z>Они обратно совместимы. PLT всегда был слишком большим проектом, чтобы впихнуть его в (маленькую) формальную спецификацию схемы.
Интересно, будут ли они обратно совместимы в будущем. Да, это вопрос подразумевает наличие у схемы будущего.

Z>Потом у них есть статическая типизация и.т.д

Ну так она тоже называлась схемой. Типизированной. Правда, я так и не успел ее посмотреть до превращения в слоупока. Так что тебе виднее.
Re[2]: [ANN] Racket language (не первоапрельская шутка)
От: WolfHound  
Дата: 08.06.10 15:52
Оценка:
Здравствуйте, z00n, Вы писали:

Z>Кстати, вот презентация по поводу скриптинга в Uncharted (они там на полную катушку используют продолжения):

Z>State-Based Scripting in Uncharted 2: Among Thieves [40MB PDF]
Корутины они используют.
Ибо все что они там делают это wait-*.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[3]: [ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 09.06.10 06:39
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


Z>>Кстати, вот презентация по поводу скриптинга в Uncharted (они там на полную катушку используют продолжения):

Z>>State-Based Scripting in Uncharted 2: Among Thieves [40MB PDF]
WH>Корутины они используют.
WH>Ибо все что они там делают это wait-*.

Я не вижу тут никакого противоречия.
Re[4]: [ANN] Racket language (не первоапрельская шутка)
От: WolfHound  
Дата: 09.06.10 08:53
Оценка:
Здравствуйте, z00n, Вы писали:

WH>>Корутины они используют.

WH>>Ибо все что они там делают это wait-*.
Z>Я не вижу тут никакого противоречия.
Корутины это сильно порезанное подмножество продолжений.
А если следовать твоей логике так и в C# продолжения на право и на лево используются ибо исключения это тоже подмножество продолжений.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[5]: [ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 09.06.10 11:19
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


WH>>>Корутины они используют.

WH>>>Ибо все что они там делают это wait-*.
Z>>Я не вижу тут никакого противоречия.
WH>Корутины это сильно порезанное подмножество продолжений.
WH>А если следовать твоей логике так и в C# продолжения на право и на лево используются ибо исключения это тоже подмножество продолжений.

Использование продолжений в схеме это вызов call/cc — можете опровергать.
По поводу C# — нет, это не моя логика.
Re[6]: [ANN] Racket language (не первоапрельская шутка)
От: WolfHound  
Дата: 09.06.10 11:47
Оценка:
Здравствуйте, z00n, Вы писали:

Z>Использование продолжений в схеме это вызов call/cc — можете опровергать.

Покажи в их презентации хоть один call/cc.

Z>По поводу C# — нет, это не моя логика.

Твоя. Ибо ты видя частный случай заявляешь об использовании общего.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[7]: [ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 09.06.10 13:20
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


Z>>Использование продолжений в схеме это вызов call/cc — можете опровергать.

WH>Покажи в их презентации хоть один call/cc.
Там прямо написано "Implemented via something known as a continuation" — слайд 47.


Z>>По поводу C# — нет, это не моя логика.

WH>Твоя. Ибо ты видя частный случай заявляешь об использовании общего.
Нет. Об использовании continuations заявляет презентация — а я не вижу в этом никаких противоречий со здравым смыслом, учитывая то, что они используют схему для скриптинга.
Re[8]: [ANN] Racket language (не первоапрельская шутка)
От: WolfHound  
Дата: 09.06.10 16:32
Оценка:
Здравствуйте, z00n, Вы писали:

Z>Там прямо написано "Implemented via something known as a continuation" — слайд 47.

Это всеравно что написать "Implemented via something known as a machine codes"
Нигде в презентации они call/cc не используют.
То что они там фактически используют это корутины.

Z>Нет. Об использовании continuations заявляет презентация — а я не вижу в этом никаких противоречий со здравым смыслом, учитывая то, что они используют схему для скриптинга.

Ну так они могли еще и исключения продолжениями реализовать. И даже if.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[9]: [ANN] Racket language (не первоапрельская шутка)
От: z00n  
Дата: 10.06.10 07:48
Оценка: 1 (1)
Здравствуйте, WolfHound, Вы писали:

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


Z>>Там прямо написано "Implemented via something known as a continuation" — слайд 47.

WH>Это всеравно что написать "Implemented via something known as a machine codes"
WH>Нигде в презентации они call/cc не используют.
WH>То что они там фактически используют это корутины.

В схеме нет корутин, но есть call/cc.

Z>>Нет. Об использовании continuations заявляет презентация — а я не вижу в этом никаких противоречий со здравым смыслом, учитывая то, что они используют схему для скриптинга.

WH>Ну так они могли еще и исключения продолжениями реализовать. И даже if.

Я не очень понял вашу иронию — в схеме исключения, отродясь, продолжениями и реализовывались.

Exceptions are essentially a derived concept in Racket; they are defined in terms of continuations, prompts, and continuation marks. However, exceptions are also built in, in the sense that primitive forms and procedures may raise exceptions.

Типа:

(define raise
  (lambda (exn)
    ((current-exception-handler) exn)))

(define-syntax with-handlers
  (syntax-rules ()
    ((_ ((predicate handler-procedure) ...) b1 b2 ...)
     ((call-with-current-continuation
        (lambda (k)
          (parameterize ((current-exception-handler
                          (let ((rh (current-exception-handler))
                                (preds (list predicate ...))
                                (handlers (list handler-procedure ...)))
                            (lambda (exn)
                              (parameterize ((current-exception-handler rh))
                                (let f ((preds preds) (handlers handlers))
                                  (if (not (null? preds))
                                      (if ((car preds) exn)
                                          (k (lambda () ((car handlers) exn)))
                                          (f (cdr preds) (cdr handlers))))))
                              (rh exn)))))
            (call-with-values
              (lambda () b1 b2 ...)
              (lambda args (k (lambda () (apply values args))))))))))))

(define-syntax parameterize
  ; simplified version limited to one parameter / value "binding"
  (syntax-rules ()
    ((_ ((x v)) e1 e2 ...)
     (let ((p x) (y v))
       (let ((swap (lambda () (let ((t (p))) (p y) (set! y t)))))
         (dynamic-wind swap (lambda () e1 e2 ...) swap))))))
Re[10]: [ANN] Racket language (не первоапрельская шутка)
От: WolfHound  
Дата: 10.06.10 11:56
Оценка:
Здравствуйте, z00n, Вы писали:

Z>Я не очень понял вашу иронию — в схеме исключения, отродясь, продолжениями и реализовывались.

Я о том что кто-то не понимает разници между частным случаем и общем.
И корутины и исключения могут быть реализованы через продолжения.
Но использование корутин или исключений не означает использование продолжений.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.