LINUX.ORG.RU — Русская информация об ОС Linux

Сообщения l5k

[SmallTalk, real world] Реквестирую кучку годных приложений на ST

Форум - Development

После того как погрузился в C++ проект с зашкаливающим количеством ООП, захотелось посмотреть на ST и его средства разработки.
Мельком покопался в Squeak и задался сабжем.
Также интересует, возможно ли ST-приложению с GUI придать нативный look'n'feel?
Здешние смолтокеры, просветите, а то инфы как-то маловато. :3

l5k (28.07.2010 14:15:43)

[c++] forward declaration для подструктуры.

Форум - Development

Можно конечно поменять местами декларации B и A, но хотелось бы сохранить такой порядок. Вопрос - как?

struct B;
struct B::C;

struct A {
  typedef B::C DataPtr;
  DataPtr c;
};

struct B {
  struct C {
    int ololo;
  };
  ...
};
Такое мой фю^W^W компилятор отказывается проглатывать. Причина по которой не нравится менять местами декларации: структуре B может понадобиться подструктура A - получаем пиздец.

P.S. никому не кажется лишним правило о строгом порядке объявления?

l5k (23.11.2009 17:38:19)

[haskell,ruby,call/cc] Хочется сделать эквивалент примера с ruby на haskell и ещё много чего

Форум - Development

Есть такой примерчик, тупо выводит последовательность по три числа: http://brainslugs.blogspot.com/2006/10/callcc.html. Писано на ruby. Можно это реализовать на haskell-е?

После чтения http://en.wikibooks.org/wiki/Haskell/Continuation_passing_style сложилось впечатление что callCC - это какая-то кривая замена простой лямбде и никакими контекстами там и не пахнет. Плохо читал?

В конечно счёте хочется получить последовательность берущуюся из БД по курсору. В принципе, наверное можно не замарачиваться на call/cc, ибо haskell ленивый, в endless loop не уйдёт, но интересно всё таки, да и прозрачно с сохранием контекста в котором бесконечная красота получается, ящитаю.

Пока что не получается сделать даже такое:

nums :: Cont r [Int]
nums = do
  ns <- callCC $ \k -> do
         k [1..]
  return $ take 5 ns

> runCont nums print
[1,2,3,4,5]
А вот как продолжить вычисления до 10, т.е. выполнить этот continuation второй раз? Просветите люди умные и добрые. (:

l5k (09.09.2009 11:05:20)

[lisp, sbcl, streams, галлюцинации] Тормоз в write-sequence

Форум - Development

Есть большой-большой, размером 512 млн, vector c элементами типа '(unsigned-byte 8). Нужно его отправить в сокет, делаю так:

(write-sequence bullet (usocket:socket-stream sock))
Но! тут начинаются галлюцинации: процесс sbcl съедает всё процесорное время, принимающий процесс блокируется на select()-е (неважно какой таймаут), через минут 10 программа отвисает, цпу расслабляется, вектор отправлен.

При повторной отправки этого же вектора галлюцинации снова не появляются.

Кто-нибудь с таким сталкивался? Как решил? ЧЯДНТ?

l5k (25.08.2009 19:25:20)

[gnuplot] По данным отметить точки и построить плоскость

Форум - Development

Строю так:

        (format-gnuplot #q|~
set pm3d
set dgrid3d
set palette rgbformulae 33,13,10
set view 30,15
splot "~a~:*" u 5:2:($3-$1) with dots
|
         filename)

Появляется плоскость по которой нельзя сказать по каким действительным точкам она построена. Пытаюсь так:

splot "~a~:*" u 5:2:($3-$1) with dots, \
      "~a~:*" u 5:2:($3-$1) with points hidden3d
То же самое.

Доктора, какое предложите лечение?

l5k (19.08.2009 12:34:03)

[libstdc++] Хочется поменять default-аллокатор.

Форум - Development

Есть ли другие способы кроме как:

- включить libstdc++ в исходники проекта и пересобрать его с --enable-libstdcxx-allocator=mt (много телодвижений, да и поддерживать такой libstdc++ нет желания)

- везде явно указывать аллокатор (явный изврат)

Будет ли достаточно перед всеми инклюдами написать такой хак?

#define _GLIBCXX_CXX_ALLOCATOR_H 1
#define __glibcxx_base_allocator __gnu_cxx::mt_allocator
Проблем с бинарником libstdc++.so не будет?

l5k (12.08.2009 13:46:38)

О Сервере - Правила форума
http://www.linux.org.ru/

Rambler's Top100 Рейтинг@Mail.ru