All streams
Search
Write a publication
Pull to refresh
90
0
Бушуев Стас @Xitsa

User

Send message
btw, В Visual Studio есть точно такая же команда:
Edit.SwapAnchor, у меня она назначена на (Ctrl+E, A).
А мне из предыдущих нравится вот это:
main() { printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}


unix определена как 1
Так то Оракл напирает на прецедент: закопирайченные эльфийские языки Толкиена.
Одно из преимуществ, которое для меня было принципиальным: Visual Basic намного терпимей к косячным COM–объектам.
Там, где остальные умирали, он продолжал работать.
Virtual Machine Showdown: Stack Versus Registers (PDF, 200кб) — здесь можно почитать более-менее обоснованное сравнение регистровой и стековой архитектур.
Для новичков порекомендую книгу Ганса Бергера «Автоматизация посредством STEP 7 с использованием STL
и SCL и программируемых контроллеров SIMATIC S7-300/400».

Она есть в стандартной поставке документации, очень подробно всё расписано, позволяет безболезненно начать разработку.

Мне она очень помогла в своё время.
теперь нужен открытый и переносимый аналог OPC.

Есть ещё аналог OPC на CORBA: DAIS.
Было бы интересно услышать про подключение Tesseract: насколько легко далась интеграция, были ли какие-нибудь особенности.
Кое-какие разъяснения от Эрика Липперта.
А меня давно не покидает ощущение, что конкатенативные и функциональные языки, это одного поля ягода.
Например, пусть есть две функции A: int int -> int и B: int ->string, то простая конкатенация A и B даст их композицию: AB: int int -> string.
Древовидные обсуждения появились ещё во время Usenet, стоит глянуть на то, как с удобным показом дерева комментариев справлялись тогда: The lost art of threaded discussions.
Для обрезания колонтитулов идеально подходит Briss.
Мне кажется, что автор просто привлекает внимание к подходу/парадигме программирования, которую я называю автоматное программирование или программирование с явно выделенным состоянием. Плюсы мышления в подобном стиле велики, но не все знают о таких способах борьбы со сложностью, потому такие статьи надо приветствовать.

Этот подход может реализоваться разными способами: от банального switch до полноценного фреймворка — что лучше зависит от контекста.

Я не совсем понял вопрос, потому отвечу в рамках своего разумения:
у функции одно возвращаемое значение, оно именованное.
Когда пишем return 1; компилятор догадывается, что мы возвращаем именованный возврат в i;
И при выходе из функции значение с именем i равно 1;
Роб Пайк недолюбливает эту идиому как раз из-за того, что наличие управляющей структуры try/catch/finally приводит к злоупотреблению исключениями и смешению с ошибками.
Поэтому чтобы уменьшить это злоупотребление повышена гранулярность: с блока до функции.
Оставлю сразу ссылку на FAQ Why does Go not have exceptions?.
На мой взгляд у re2c ниша немного другая — написание ad hoc лексеров, когда не требуется полная мощь лексеров и парсеров типа flex, bison, peg.
Сейчас, правда, эта ниша занята регулярными выражениями.
Надеюсь, что дело в том, что LuaJIT сейчас в фазе стабилизации, а после фазы оптимизации ситуация улучшится.
Центрировать можно и автоматически, если выводить текст с помощью команд рисования (-draw):
convert -size 1024x768 xc:black -pointsize 900 -gravity center -fill white -draw "text 0,0 '42'" image.png

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity