Tcl имел управляемый событиями ввод / вывод с 1990-х (если я не ошибаюсь). Конечно, до 2000 года, потому что когда-то в 2000 году tclhttpd побил Apache в тестах производительности, люди действительно стали обращать внимание на неблокирующий ввод-вывод. Когда люди увидели это, они начали переписывать веб-серверы. Одним из первых результатов этого был Lighttpd: один из первых неблокирующих веб-серверов, написанных на C. В то время использование управляемых событиями ввода-вывода в tcl с помощью команды fileevent уже считалось стандартным. практика в мире tcl.
AOLserver имел (и все еще имеет) ядро tcl, и на нем размещен один из самых загруженных сайтов в Интернете (по крайней мере, в первые дни): http://www.aol.com/. Хотя сам сервер написан на C, он использует API-интерфейс tcl для реализации обработки событий и ввода-вывода. Причина, по которой AOLserver использовал подсистему ввода / вывода tcl, заключается в том, что он использует tcl в качестве языка сценариев, и разработчики подумали, что, поскольку кто-то еще написал его, он может также использовать его.
Я полагаю, что AOLserver был впервые выпущен в 1995 году. Это должно подтвердить, что управляемый событиями ввод-вывод уже был доступен в tcl еще в середине 1990-х годов.
Tcl - один из самых ранних, если не , самый ранний язык , в котором его построил механизм, управляемый событиями. Подсистема событий изначально была реализована для библиотеки Tk, а затем была объединена в сам tcl.