LINUX.ORG.RU

История изменений

Исправление a--, (текущая версия) :

вообще, идея Practical Extraction and Report Language сама по себе здравая

но реализована она почти самым плохим из возможных способов

типы данных нужны даже для скрипта из 10 строк: у нас есть бинарные строки, уникодные строки, регекспы, потоки (файлы), айпишки, числа, дата, время, датавремя, пути к файлу, домены, xn--домены, e-mail, url, query_string, ...

у каждого из них свои понятия равенства, порядка (для сортировки), регекспы для чтения, форматы для записи

а еще в приличных языках можно легко и быстро разработать свой tainting и свои способы как его можно снимать, а как нельзя

tainting не решает вопроса «какие строки нужно html-эскейпить, а какие — нет»; а в приличном языке

print( $"<html><body>{foo}</body></html>" )
компилятор может посмотреть на тип foo и если надо, то эскейпить, а если не надо — то нет; таким образом работа программиста по указанию типа окупается отсутствием работы по указанию «надо-не-надо-эскейпить»

и обрати внимание, что все это — практические потребности, а не академический выпендреж на тему теории типов

Исправление a--, :

вообще, идея Practical Extraction and Report Language сама по себе здравая

но реализована она почти самым плохим из возможных способов

типы данных нужны даже для скрипта из 10 строк: у нас есть бинарные строки, уникодные строки, регекспы, потоки (файлы), айпишки, числа, дата, время, датавремя, пути к файлу, домены, xn--домены, e-mail, url, query_string, ...

у каждого из них свои понятия равенства, порядка (для сортировки), регекспы для чтения, форматы для записи

а еще в приличных языках можно легко и быстро разработать свой tainting и свои способы как его можно снимать, а как нельзя

tainting не решает вопроса «какие строки нужно html-эскейпить, а какие — нет»; а в приличном языке

print( $"<html><body>{foo}</body></html>" )
компилятор может посмотреть на тип foo и если надо, то эскейпить, а если не надо — то нет

и обрати внимание, что все это — практические потребности, а не академический выпендреж на тему теории типов

Исправление a--, :

вообще, идея Practical Extraction and Report Language сама по себе здравая

но реализована она почти самым плохим из возможных способов

типы данных нужны даже для скрипта из 10 строк: у нас есть бинарные строки, уникодные строки, регекспы, потоки (файлы), айпишки, числа, дата, время, датавремя, пути к файлу, домены, xn--домены, e-mail, url, query_string, ...

у каждого из них свои понятия равенства, порядка (для сортировки), регекспы для чтения, форматы для записи

а еще в приличных языках можно легко и быстро разработать свой tainting и свои способы как его можно снимать, а как нельзя

tainting не решает вопроса «какие строки нужно html-эскейпить, а какие — нет»; а в приличном языке

print( $"<html><body>{foo}</body></html>")
компилятор может посмотреть на тип foo и если надо, то эскейпить, а если не надо — то нет

и обрати внимание, что все это — практические потребности, а не академический выпендреж на тему теории типов

Исправление a--, :

вообще, идея Practical Extraction and Report Language сама по себе здравая

но реализована она почти самым плохим из возможных способов

типы данных нужны даже для скрипта из 10 строк: у нас есть бинарные строки, уникодные строки, регекспы, потоки (файлы), айпишки, числа, дата, время, датавремя, пути к файлу, домены, xn--домены, e-mail, url, query_string, ...

у каждого из них свои понятия равенства, порядка (для сортировки), регекспы для чтения, форматы для записи

а еще в приличных языках можно легко и быстро разработать свой tainting и свои способы как его можно снимать, а как нельзя

tainting не решает вопроса «какие строки нужно html-эскейпить, а какие — нет»; а в приличном языке

print( $"<html><body>{foo}</body></html>")
может посмотреть на тип foo и если надо, то эскейпить, а если не надо — то нет

и обрати внимание, что все это — практические потребности, а не академический выпендреж на тему теории типов

Исправление a--, :

вообще, идея Practical Extraction and Report Language сама по себе здравая

но реализована она почти самым плохим из возможных способов

типы данных нужны даже для скрипта из 10 строк: у нас есть бинарные строки, уникодные строки, регекспы, потоки (файлы), айпишки, числа, дата, время, датавремя, пути к файлу, домены, xn--домены, e-mail, url, query_string, ...

у каждого из них свои понятия равенства, порядка (для сортировки), регекспы для чтения, форматы для записи

а еще в приличных языках можно легко и быстро разработать свой tainting и свои способы как его можно снимать, а как нельзя

tainting не решает вопроса — какие строки нужно html-эскейпить, а какие — нет; а в приличном языке

print( $"<html><body>{foo}</body></html>")
может посмотреть на тип foo и если надо, то эскейпить, а если не надо — то нет

и обрати внимание, что все это — практические потребности, а не академический выпендреж на тему теории типов

Исправление a--, :

вообще, идея Practical Extraction and Report Language сама по себе здравая

но реализована она почти самым плохим из возможных способов

типы данных нужны даже для скрипта из 10 строк: у нас есть бинарные строки, уникодные строки, регекспы, потоки (файлы), айпишки, числа, дата, время, датавремя, пути к файлу, домены, xn--домены, e-mail, url, query_string, ...

у каждого из них свои понятия равенства, порядка (для сортировки), регекспы для чтения, форматы для записи

а еще в приличных языках можно легко и быстро разработать свой tainting и свои способы как его можно снимать, а как нельзя

Исходная версия a--, :

вообще, идея Practical Extraction and Report Language сама по себе здравая

но реализована она почти самым плохим из возможных способов

типы данных нужны даже для скрипта из 10 строк: у нас есть бинарные строки, уникодные строки, регекспы, потоки (файлы), айпишки, числа, дата, время, датавремя, пути к файлу, домены, xn--домены, e-mail, url, query_string, ...

у каждого из них свои понятия равенства и порядка (для сортировки)

а еще в приличных языках можно легко и быстро разработать свой tainting и свои способы как его можно снимать, а как нельзя