Бабушка, смотри, я сделал двач! Войти !bnw Сегодня Клубы
УНЯНЯ. У нас есть немножечко инфы об этом пользователе. Мы знаем, что он понаписал, порекомендовал и даже и то и другое сразу. А ещё у нас есть RSS.
Теги: Клубы:

Интересно ведёт себя Google. Время от времени гуглю «SOMobjects», и вот недавно всплыл отнюдь не новый пост: http://www.unix.com/302104216-post.html Чувака удалось найти на другом форуме, обещал дать многострадальные бинарники, а ещё он делал открытый клон под названием somFree: http://forums.nekochan.net/viewtopic.php?t=16726016
#V8WI01 (0) / @octagram / 4166 дней назад
http://habrahabr.ru/post/159139/ _IBM SOM: внешняя объектная система с поддержкой наследования_ Статья стала пропуском на хабрахабр, от кого, не понятно, но и так сойдёт.
#JOVL2S (0+1) / @octagram / 4189 дней назад
Навеяно http://hostingkartinok.com/image/0120111.....e8d648.png by @iLeamare А почему бы недостающие переводы не пытаться перевести автоматически? И есть даже какие–то FLOSS переводчики: http://computing.dcu.ie/~mforcada/fosmt.html Можно оформить в виде drop-in replacement для gettext (libintl)
#Y6J2R7 (8) / @octagram / 4190 дней назад
http://octagram.name/OM В качестве летней практики накатал сравнение объектных систем (см. теги)
#B693TU (0+1) / @octagram / 4201 день назад
http://www.iis.sinica.edu.tw/~trc/languages.html Несколько кратких документов о SOM, которые, как мне показалось, неплохо обрисовывают, чем является SOM, что такое метаклассы, несовместимость метаклассов, бинарная совместимость. Спойлер: 1) Чувак в курсе про CLOS, ObjVLisp, SmallTalk и т. д. 2) В третьем документе презанятная табличка, сравнивающая SOM с другими средствами обеспечения бинарной совместимости между разными релизами. Оказывается, под SGI IRIX есть некий SGI Delta C++, который тоже много, чего умеет Конечная цель этих инструментов — сделать так, чтобы любые изменения не требующие изменения исходных кодов, не требовали перекомпиляции. То есть, если использовали библиотеку одной версии, и был в ней класс, от которого мы отнаследовались, а в следующей версии этот класс изменился сам и поменял цепочку наследования, SOM или Delta C++ должны избавлять от необходимости перекомпиляции зависимого кода
#3VT69Q (0) / @octagram / 4227 дней назад
Есть ли какое–нибудь обобщение условных переменных для случая, когда кроме синхронных потоков есть главный асинхронный (GUI), занятый обработкой событий, и который не может ждать обычные условные переменные?
#S534I3 (0) / @octagram / 4261 день назад
Tiered vector оказался крепким орешком. Ситуацию усугубляет то, что я реализую не в точности то, что в PDF'ке: описаны только вставка и удаление одного элемента, а для практических нужд, конечно, желательно и вставка нескольких подряд из вектора в вектор, и Tiered Vector по своему устройству позволяет это, но запрограммировать это нетривиально. Например, если размер блока 1024 элементов, и нужно вставить 1023 элемента, то выгоднее на уровне 2 раздвинуть вперёд, а потом на уровне 1 сдвинуть назад. При этом может потребоваться временно выделить память на несколько звеньев, которые на время могут выйти за границы выделенного пространства, но это всё равно будет выгоднее, чем делать сдвиг на 1023 на первом уровне. Tiered Vector похож на калейдоскоп из калейдоскопов, и пока я об этом думаю, у меня у самого мозг превращается в калейдоскоп. Предположительно, сделать хорошую реализацию TV так же трудно, как написать хороший решатель японских кроссвордов, не имея опыта их решения. Вчера, чтобы набраться опыта, порисовал на миллиметровке, но вариантов разобрал мало. Пожалуй, забью, но не забуду.
#OPCMAM (0) / @octagram / 4289 дней назад
Реализую Tiered Vector на Delphi. Давненько не занимался алгоритмами, чувствуется.
#3PNJWB (0) / @octagram / 4295 дней назад
https://www.sqlite.org/lockingv3.html > Locking and concurrency control are handled by the pager module. The pager module is responsible for making SQLite "ACID" (Atomic, Consistent, Isolated, and Durable). The pager module makes sure changes happen all at once, that either all changes occur or none of them do, that two or more processes do not try to access the database in incompatible ways at the same time, and that once changes have been written they persist until explicitly deleted. The pager also provides a memory cache of some of the contents of the disk file. > The pager is unconcerned with the details of B-Trees, text encodings, indices, and so forth. From the point of view of the pager the database consists of a single file of uniform-sized blocks. Each block is called a "page" and is usually 1024 bytes in size. The pages are numbered beginning with 1. So the first 1024 bytes of the database are called "page 1" and the second 1024 bytes are call "page 2" and so forth. All other encoding details are handled by higher layers of the library. The pager communicates with the operating system using one of several modules (Examples: os_unix.c, os_win.c) that provides a uniform abstraction for operating system services. > The pager module effectively controls access for separate threads, or separate processes, or both. Throughout this document whenever the word "process" is written you may substitute the word "thread" without changing the truth of the statement. Интересный модуль. Особенно, если хранить данные в своих форматах (/me косо поглядывает на bitcoind)
#HWHXMC (0+1) / @octagram / 4302 дня назад
http://www.cs.wustl.edu/~schmidt/win32-cv-1.html > Both Win32 events and POSIX condition variables provide similar waiting, signaling, and broadcasting features. For instance, WaitForMultipleObjects can acquire a mutex and wait on an event simultaneously via the waitAll flag and SignalObjectAndWait can release a mutex and wait on an event atomically. These functions provide semantics akin to the pthread_cond_wait and pthread_cond_signal. Thus, there are instances where either events and condition variables can be used interchangably. > However, extreme care must be taken with Win32 events to ensure that there are no race conditions introduced when switching from one mechanism to another. Unfortunately, there's no way to release just one waiting thread with a manual-reset event. Likewise, there's no way to release all waiting threads with an auto-reset event. This limitation is a major source of difficulty when implementing condition variables, as shown in Section 3. > After years of repeatedly seeing Win32 implementations of condition variables posted in newsgroups like comp.programming.threads it became apparent that many Win32 implementations are either incorrect or contain subtle problems that can lead to starvation, unfairness, or race conditions. To help developers avoid these problems, this article evaluates common strategies for implementing POSIX condition variables on Win32, illustrating common traps and pitfalls and ways to avoid them.
#DSX439 (0+1) / @octagram / 4319 дней назад
http://electronicdesign.com/article/embe.....ages-74107 _C++11 and Ada 2012 - renaissance of native languages?_ > In the late 90s and beginning of the 2000s, the language trend had migrated to the world of Java, or Java-like languages (such as C#). > One cycle seems to be closing, and industry is realizing that rapid development doesn't really matter when the end code doesn't fit the purpose it was developed for.
#UTJ0S8 (0) / @octagram / 4322 дня назад
Пытался попробовать Git. Думал, просто поставлю TortoiseGit вдобавок к TortoiseHg, а TortoiseGit возьми да и окажись чем–то, совершенно не похожим на TortoiseHg. Git GUI с виду тоже отличается существенно, просто так не перейдёшь. Я даже удивляюсь, как так получилось, что интерфейсы почтовых программ настолько похожи. Ветки сверху, письма снизу, папки слева — в Apple Mail, Thunderbird, Outlook, The Bat! — везде так. Удивительно. А ведь можно было столько извращений с интерфейсом придумать. Например, сделать последнее письмо на весь экран, а ветви обсуждений запихать куда–нибудь в ж^H^H^Hподальше. http://octagram.name/img/2012/07/GitGuiWrong.png
#TUA149 (0+1) / @octagram / 4333 дня назад
Сразу две новости про язык Адa 2012: выходит GNAT GPL 2012 с полной поддержкой нового стандарта ( https://libre.adacore.com/ ) И Modified GPL версия GNAT Russian Edition за 3000 рублей для всех, кому мешала GPL'ность runtime library: http://comments.gmane.org/gmane.comp.lan.....ssian/4720
#VZVQ8H (0+2) / @octagram / 4338 дней назад
http://stackoverflow.com/questions/47224.....-tools-api _Как добавить поддержку нового языка программирования в RAD Studio IDE?_ > Чтобы добавить language personality в IDE, вам нужно связаться с RAD Studio R&D team и получить специальное разрешение от компании на доступ к непубличным пакетам, интерфейсам и API. > > Из коробки нет способа добавить language personality в RAD Studio
#XGMOQW (0+1) / @octagram / 4343 дня назад
https://en.wikipedia.org/wiki/Windows_Runtime > It's essentially an unmanaged, native API. The API definitions are, however, stored in ".winmd" files Наконец–то и у Microsoft будет описание API, не завязанное только на один, бедный метаинформацией, язык программирования.
#RZDO7I (0) / @octagram / 4351 день назад
Тщетно пытаюсь найти в Интернете SOMobjects 3.0 Developer's Toolkit for NT. Чем это интересно, можно почитать по ссылкам http://www.pcweek.ru/themes/detail.php?ID=108316 https://www.linux.org.ru/news/opensource/2332319 Это далеко не первая пропаганда SOM в Интернете, и, насколько я знаком с устройством GObject, Objective-C и COM, вполне может быть не беспочвенной. При всём при этом, скачать что–то и оценить, невозможно. Забавно, что IBM просят предоставить исходные коды того, от чего и бинарников–то нет в наличии. Не, ну можно, конечно, озаботиться установкой eComStation или AIX на виртуалку, но там же ни одна современная библиотека работать не будет, да и мало, кто согласится. У меня вот нет места и оперативки для третьей виртуалки. А вот виндовая версия, пусть и в wine — это вещь.
#7DPNJ9 (0) / @octagram / 4370 дней назад
Generics хреново сочетаюся с отсутствием нормального RAII, но, наверное, в Embarcadero думают иначе. Предположим, нас интересует арифметика только с операторами +, -, *. Представим себе, что у нас, помимо Integer, есть модуль длинной целочисленной арифметики. Далее, есть generic, который на вход берёт целочисленный тип, а на выходе даёт рациональные числа из них. Либо для вещественных чисел можно взять Double. Далее, есть generic, который на вход берёт тип вещественных чисел, а на выходе даёт комплексные числа из них. Далее, есть generic, который на вход берёт некий числовой тип и делает из него матрицы. Проверить, нормальные ли generics в языке программирования, довольно просто: все возможные осмысленные комбинации этих generic'ов должны быть рабочими, и написание каждого из этих модулей не должно быть утомительным обходом языковых ограничений. Впрочем, в Delphi их хотя бы возможно обойти. Во Free Pascal generics последний раз, когда я смотрел спецификацию, никуда не годятся, потому что нет RAII. Никогда не понимал ФриПаскалистов. Скопировали Delphi 7, а дальше не стали. Испортили язык фичами из C++, но так же хорошо, как в C++, они не могут работать. Про Аду и знать не хотят.
#UI6HFN (0) / @octagram / 4372 дня назад
http://sheddingbikes.com/posts/1306816425.html Кто работает в GitHub и почему им не надо пользоваться
#OHA6QR (7+2) / @octagram / 4412 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.