avva: (Default)
[personal profile] avva
1. Исходники "Каиссы" (PDF), первого чемпиона мира по компьютерным шахматам. Также работают над эмулятором той машины, на которой она бежала. via (там обсуждение в комментариях).

Комментарии к коду попадаются замечательные, да.

2. Coders at Work, судя по тем отрывкам, что я видел, замечательная книга, и собираюсь ее вскорости прочитать. (В последние годы было несколько попыток написать подобные книги; одна из них, Beautiful Code, тоже казалась поначалу очень удачной, но когда мне в руки попала сама книга, как-то совершенно "не пошла").

3. The different attitudes of computer scientists and economists. Стоит прочитать как минимум ради интересного примера с American Express в конце записи.

4. Tiny Code.

5. Speaking of tiny code - я посидел немного над Фортом на выходных, вспоминал язык и писал несколько тривиальных штук. Написал, например, квиксорт (а заодно и Mersenne twister, чтобы его проверять). Квиксорт получился вот такой:

\ simple quicksort
: exchange ( i j -- ) 2dup = if 2drop exit then
  2dup @ swap @ ( i j val-j val-i ) rot ! swap ! ;

: simple-part ( start end pivot -- mid )  \ assumes pivot is stored at end
  >r swap r> 2 pick 2 pick ?do ( end stored pivot )
    dup i @ >= if \ exchange elements at stored and i, increment stored
         swap dup i exchange cell + swap ( end stored pivot )
    then cell +loop drop tuck exchange ;  \ exchanged stored and last

: simple-q2 recursive ( start end -- ) 2dup = if 2drop exit then
  2dup 2dup swap - cell / 2/ cells 2 pick + \ choose pivot from middle
  2dup exchange drop dup @ simple-part \ put pivot at right, partition
  2dup = if dup cell - rot rot swap ( s m-1 m e )
         else dup cell + rot        ( s m m+1 e )
  then simple-q2 simple-q2 ;

: simple-qsort ( addr u ) 1- cells over + simple-q2 ;

Правда, подозреваю, что мои слова слишком сложны, и у опытного программиста на Форте получилось бы на несколько слов больше, зато куда проще и понятнее. Попробую позже рефакторнуть это дело.

Apollo

Date: 2009-09-21 12:46 am (UTC)
From: [identity profile] cema.livejournal.com
Был ещё код (ассмеблер, не машкоды) программы лунного проекта. Сейчас пороюсь... А, вот:
http://news.ycombinator.com/item?id=715395
http://googlecode.blogspot.com/2009/07/apollo-11-missions-40th-anniversary-one.html

Not so many funny comments ("Таня, не журись" no idea how it is in English) but there is this one Numero Mysterioso.

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 29th, 2025 04:33 pm
Powered by Dreamwidth Studios