def invert c
return ')' if c == '('
(c[0] + 2).chr
end
def check str
stack = []
str.split(//).each do |c|
if c =~ /[\{\[\(]/
stack.push c
elsif c =~ /[\}\]\)]/
return false if c != invert(stack.pop)
else
return false
end
end
true
end
puts check('[[[]]][][[]][()]{}[]') #=> true
puts check('[[[)]]][][[]][()]{}[]') #=> false
По-моему неновостной сайт делать СМИ — это бред. Ведь изначально блог — это дневник, пусть общедоступный, но все равно дневник. А если сайт специализируется на новостях, как lenta.ru — тогда другое дело. Хотя тут тоже много нюансов, если например блог коллективный и основное направление статей — новости, считать его новостным или нет?
Ага, статья 12 не о том немного.
А вот вторая:
… под средством массовой информации понимается периодическое печатное издание, радио-, теле-, видеопрограмма, кинохроникальная программа, иная форма периодического распространения массовой информации;…
Под «иной формой» все что угодно понимать можно.
А можно ссылку на дополнение к закону?
На consultant.ru есть Закон РФ «О средствах массовой информации» (о СМИ) от 27.12.1991 N 2124-1
И написанно что он действующий.
В статье 12 этого закона:
Статья 12. Освобождение от регистрации
… периодических печатных изданий тиражом менее одной тысячи экземпляров;…
Про сайты ничего не сказанно. Хотя может консультант еще не обновился:)
Помню как-то от скуки сделал интерпретатор МНР машины:)
Только вот в ваших условиях не понял про отрицательные числа.
Вы расширяете возможности машины и вводите отрицательные числа? Или предлагаете кодирование, например если число в третьем регистре, то оно отрицательное?
Поломал себе на макбуке топкейс, пришлось заказывать в штатах. Уже неделю с английской клавиатурой, никаких неудобств не испытываю. Просто английская клавиатура даже как то приятнее смотрится:)
Дайте ссылку на правило, исправлю. При переводе ППИ(Прикладной програмный интерфейс) — согласен. А вот при латинском написании мужской и средний род используется примерно одинаково.
Я под словом «узкоспециализированный» не подразумевал «академический». Erlang хоть и является языком общего назначения и на нем пишут вещи типо ErlyWeb и есть gs для создания GUI, всеже инструмент для создания высонагруженных, отказоустойчивых систем(читать серверов:)).
И основные проекты на нем это доказывают: ejabberd, YAWS, CouchDB.
Так что из функциональных языков, я бы сказал, он ну очень специализированный:)
Немного не понял какие именно накладные расходы, на инициализацию интерпретатора или на вызов rb_string_eval?
Для второго прогнал такой тестик(первый пример миллион раз и без ввода/вывода): pastie.org/368765
Результаты:
$ sysctl -a | grep brand_string
machdep.cpu.brand_string: Intel® Core(TM)2 Duo CPU T7500 @ 2.20GHz
$ time ./calc
real 0m4.193s
user 0m4.096s
sys 0m0.022s
Насчет чем проще тем лучше — полностью согласен. Но посмотрите всеже Shceme, там еще проще:) И особенно курс на который я ссылку дал чуть выше, лучше по функциональному программированию не найти.
Erlang все таки очень ускоспециализированный язык, хоть и функциональный.
По-моему, если уж изучать Erlang, то изучать надо именно его конкурентность.
И в связке с его платформой OTP. Тогда можно посмотреть мощные фичи для отказаустойчивых систем типо смены кода на ходу или мониторинг и перезапуск процесса при ошибке, и всякое прочее конкурентное:) Что к функциональному программированию по большому счету отношения не имеет.
Кстати, я сейчас тоже готовлю серию статей по Erlang'у, впринципе можно будет скооперироваться:)
Ммм, синатра, любимый фреймворк для небольших задачек:)
Намого приятнее Кампинга, там все в одной куче.
Еще Haml намного удобнее чем erb, лучше сразу его использовать.
Лучший ЯП для обучения это например Scheme. Erlang со своим COP(Concurrent Oriented Programming) немного отвлекает от изучения функциональной парадигмы:)
Или имбецилы из нормальных людей мозг. Тоже сапогами.
Так что тут тоже может и не СМИ.
А вот вторая:
… под средством массовой информации понимается периодическое печатное издание, радио-, теле-, видеопрограмма, кинохроникальная программа, иная форма периодического распространения массовой информации;…
Под «иной формой» все что угодно понимать можно.
На consultant.ru есть Закон РФ «О средствах массовой информации» (о СМИ) от 27.12.1991 N 2124-1
И написанно что он действующий.
В статье 12 этого закона:
Статья 12. Освобождение от регистрации
… периодических печатных изданий тиражом менее одной тысячи экземпляров;…
Про сайты ничего не сказанно. Хотя может консультант еще не обновился:)
Только вот в ваших условиях не понял про отрицательные числа.
Вы расширяете возможности машины и вводите отрицательные числа? Или предлагаете кодирование, например если число в третьем регистре, то оно отрицательное?
«Аббревиатуры, оканчивающиеся на гласный звук, не склоняются и преимущественно относятся к среднему роду»
И основные проекты на нем это доказывают: ejabberd, YAWS, CouchDB.
Так что из функциональных языков, я бы сказал, он ну очень специализированный:)
Для второго прогнал такой тестик(первый пример миллион раз и без ввода/вывода):
pastie.org/368765
Результаты:
Erlang все таки очень ускоспециализированный язык, хоть и функциональный.
По-моему, если уж изучать Erlang, то изучать надо именно его конкурентность.
И в связке с его платформой OTP. Тогда можно посмотреть мощные фичи для отказаустойчивых систем типо смены кода на ходу или мониторинг и перезапуск процесса при ошибке, и всякое прочее конкурентное:) Что к функциональному программированию по большому счету отношения не имеет.
Кстати, я сейчас тоже готовлю серию статей по Erlang'у, впринципе можно будет скооперироваться:)
Если кому будет интересно: mitpress.mit.edu/sicp/
Намого приятнее Кампинга, там все в одной куче.
Еще Haml намного удобнее чем erb, лучше сразу его использовать.