Исходный код Altair BASIC 1975 года: рождение Microsoft
Altair Basic Interpreter Source Code (1975) [pdf]
Опубликован оригинальный исходный код интерпретатора Altair BASIC, написанный Полом Алленом и Биллом Гейтсом в 1975 году. Этот код стал первым продуктом Microsoft и положил начало эпохе персональных компьютеров. Документ содержит 157 страниц рукописного и распечатанного кода на ассемблере для Intel 8080, а также комментарии авторов. Уникальная возможность увидеть, как зарождалась софтверная индустрия.
Этот код — не просто программа, это момент, когда два молодых человека решили, что программное обеспечение может изменить мир.
- tailrecursion
Одна из вещей, которые меня часто интересуют, это то, как различные интерпретаторы BASIC организуют память для хранения строк. Можно подумать, что должен быть какой-то способ освободить память после завершения выражения, включающего промежуточные строки. Но вы не увидите описаний того, как BASIC работает в этом отношении.
- petilon
Заслуга должна быть отдана Digital Equipment Corporation. В то время программное обеспечение не было тем, на чём компании зарабатывали деньги, это было аппаратное обеспечение. Исходный код не охранялся как секрет, как сегодня, и можно было найти распечатки в мусорном баке [1]. Билл Гейтс и Пол Аллен нашли исходный код DEC Basic [2] и портировали его. (Википедия говорит, что Microsoft Basic был "вдохновлён" DEC PDP-10 BASIC-PLUS.)
[1] https://www.businessinsider.com/10-things-you-didnt-know-abo...
[2] https://www.theregister.com/software/2000/06/29/bill-gates-r...
- davidfekke
Вот исходный код Microsoft Basic на ассемблере 6502:
- piker
Эти два парня* были безумно продуктивны за те 2 месяца, что они работали. Уже сам уровень комментирования показывает, сколько мыслей они смогли вложить в это за тот период.
* плюс парень, который делал математический пакет
- thrownawaysz
"ФАЙЛ БУДЕТ УДАЛЁН ПОСЛЕ ПЕЧАТИ"
хах, я никогда такого не видел, но это напоминает мне roguelike-игры.
"Программирование с перманентной смертью" было бы на самом деле забавным. ЕСЛИ ошибка компилятора ТОГДА стереть репозиторий кода или что-то в этом роде