LINUX.ORG.RU

Избранные сообщения AlexVR

подружить mpicxx и clang++

Форум — Development

как заставить mpicxx собирать проект с другим компилятором, например, clang++?

$ mpicxx -cxx=clang++ -std=c++11 -c test.cpp
g++: error: unrecognized command line option ‘-cxx=clang++’

$ mpic++ -cxx=g++ -std=c++11 -c main.cpp
g++: error: unrecognized command line option ‘-cxx=g++’

 ,

programme
()

Proxy-пойнтер на объект С++ в питоне, или как обмануть типизацию SWIG

Форум — Development

Решил поделиться историей успеха;-)

Про биндинг С++ в Python при помощи SWIG написано довольно много, например тут http://a-iv.ru/pyart/cpp2py.pdf В частности, у SWIG есть неплохая система типизации, поддерживающая в т.ч. перегрузку функций, учитывающая наследование и т.д. - ну почти как в плюсах.

Итак, у нас есть в плюсах что то вроде

class A {...};
void  f(A&);

Мы биндим это в Python через SWIG, и можем в питоне писать

a = A()
f(a)

Теперь мы решили завернуть объект a в питоний класс для каких то надобностей:

class W:
  def __init__(self, ptr): 
    self.__dict__['_ptr'] = ptr
  def __getattr__(self, attr): return getattr(self._ptr, attr)
  def __setattr__(self, attr, value):
    ... # здесь всякое непотребство  
    setattr(self._ptr, attr, value)
...
a = W(A()) 
но теперь мы ес-но уже не можем писать
f(a)
(SWIG ругается что на вход пришел объект не того типа), и мы вынуждены писать
f(a._ptr)
что бывает ну очень неудобно (ломается вся идеология proxy).

Это была длинная преамбула, а теперь амбула - ситуация лечится одной строчкой:

class W:
  def __init__(self, ptr): 
    self.__dict__['_ptr'] = ptr
    self.__dict__['this'] = ptr.this # <== вот эта магия
...
a = W(A()) 
f(a) # все работает

Поле this есть у всех забинденных SWIG-ом классов, и содержит с-но this (плюсовый). Что интересно (почему я это пишу) - оказывается, для навороченной системы типизации SWIG-а ничего кроме этого поля и не нужно, важно что бы экземпляр класса имел правильный this (на объект С++ правильного типа), а его питонье устройство и тип никакого значения не имеют.

 , ,

AIv
()

Где и как проще рисовать графику?

Форум — Development

Навеяно Какую книгу по программированию посоветуете для подростков (13-14 лет)

Вот раньше (цать лет тому назад) достаточно просто было нарисовать какой-нибудь график функции или кружочек:

SCREEN 7
COLOR 14, 8
PRINT "Пример графики на QBasic:"
LINE (100, 50)-(220, 150), 13, B
CIRCLE (160, 100), 20, 11
CIRCLE (160, 100), 30, 12
CIRCLE (160, 100), 40, 14
PSET (160, 100), 15
END
program s1;
uses crt,graph;
Var gd,gm: smallint;
    
begin
  Gd:=d4bit;
  Gm:=m800x600;
  initgraph(gd,gm,'');
  setcolor(2);
  setfillstyle(1,2);
  fillellipse(300,300,300,300);

  readkey;
  closegraph;
end.

И для ребёнка было все понятно, ну или почти всё.

А как теперь создать такую программу и какой язык выбрать?

AlexVR
()

Python в научных вычислениях

Новости — Документация
Группа Документация

Доктор физико-математических наук Андрей Грозин прочитал цикл лекций об использовании Python в целях ликвидации безграмотности среди студентов, аспирантов и прочих. Презентации были приготовлены для представления в среде Jupyter. Видеоматериалы лекций с разрешения лектора доступны под свободной лицензией CC-BY-SA. Исходные видеофайлы будут выложены в торрентах позже.

( читать дальше... )

>>> YouTube

 ,

Evgueni
()

> Вопрос по XSLT (на входе 2 xml на выходе один), 2 xml, 1 xsl (из одного берем данные из второго аттрибуты для элементов)

Форум — Development

Привет.Подскажите пожалуйста в решении одной задачи. Есть два файла xml и один xsl. Хочу сделать так, чтобы xsl брал данные и обрабатывал из одного файла, а атрибуты для элементов из другого.

1) файл с данными content.xml

<?xml version="1.0" encoding="UTF-8"?>
<info>
<name>Firma</name>
<adresse>Uliza Lenina</adresse> 
</info>

2) файл с атрибутами atrib.xml

<?xml version="1.0" encoding="UTF-8"?>
<styles>
<font>Calibri</font>
<size>12</size>
</styles>

2) файл xslt styles.xsl неудачная попытка

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	
<xsl:template match="info">
<text font="document('atrib.xml')/styles/font"><xsl:value-of select="name"/></text>
<format size="document('atrib.xml')/styles/size"><xsl:value-of select="adresse"/></format>

</xsl:template>
</xsl:stylesheet>

3) на выходе получается:

<?xml version="1.0" encoding="UTF-16"?>
<text font="document('a.xml')/styles/font">Firma</text>
<format size="document('a.xml')/styles/size">Uliza Lenina</format>

3.1) А хотелось бы:

<?xml version="1.0" encoding="UTF-16"?>
<text font="Calibri">Firma</text>
<format size="32">Uliza Lenina</format>

Буду признателен за любую помощь! Зараннее спасибо

wladst
()

Кто хорошо знает С? :)

Форум — Development

Читаю тут последний стандарт C11, встретил вот такое:

struct tag (*[5])(float)

а ну-ка, кто с ходу ответит, что объявляет сия конструкция? :)

 

Harald
()

C++ шаблон булевой функции

Форум — Development

Немогу определить bool функцию
если ставлю её перед main, ругается что argv неопределен,
а если в теле main, то ругается что там нельзя определять ф-ю
ЧЯДНТ?

(если перед)
: In function ‘bool bbbb(int)’:
: error: ‘argv’ was not declared in this scope

(если в теле)
: In function ‘int main(int, char**)’:
:14: error: a function-definition is not allowed here before ‘{’ token
:20: error: ‘bbbb’ was not declared in this scope

/* Это тестовый файл*/
#include <iostream>
using namespace std;

int i = 0;

bool aaaa;
bool bbbb (int i)
{
aaaa = ( argv[1] * argv[2] > 0 );
return aaaa;
}

int main(int argc, char *argv[])
{

bbbb (i);
cout << aaaa << endl;

return 0;
}
qwertyqw
()

Накидайте ссылок на мануалы по созданию «кеширующего» репозитория для rpm-based

Форум — Admin

Для ускорения обновлений/установки. Чтобы при наличии парка машин пакеты тянулись из кеша на сервере.

 ,

Siado
()

Разыскивается книга про то, как научиться программировать

Форум — Development

Чтобы был акцент именно на матчасти, на реально нужных алгоритмах и т.д., очень желательно - с упражнениями. Просто книга по языку программирования, с описанием синтаксиса и упражнениями лишь на какие-то языковые конструкции - не нужна.
За что не берусь - получается жутчайший быдлокод, и вообще теряюсь, ничего хоть чуть-чуть крупное не писал. Хочется матчасть подтянуть.

P.S. Стоит ли читать «SICP, HtDP, PCL», которые мне посоветовал анонимус?

 , , ,

evilmanul
()

Weewx 2.0 — ПО для погодных станций

Новости — Open Source
Группа Open Source

Вышла новая версия программы Weewx, написанной на Python, для работы с погодными станциями.

Список изменений:

  • Добавлена поддержка Oregon Scientific WMR100 (одной из самых дешевых метеостанций).
  • Добавлена поддержка баз данных MySQL.
  • Из неприятностей: нарушена обратная совместимость конфигурационных файлов.
  • Добавлен симулятор погодных станций.
  • Добавлена возможность использования метрических единиц в БД.
  • Наконец-то доступно отображение давления в «мм рт.ст.»
  • В астрономических данных добавлена информация о фазах Луны и времени сумерек.
  • Добавлена ​​утилита config_vp для конфигурирования Davis VantagePro II с ПК.
  • Добавлена ​​утилита config_database.py для конфигурирования и конвертации баз данных.
  • Уменьшен расход памяти.
  • Множество мелких изменений и исправлений ошибок.

Cкачать.

>>> Подробности

 ,

kombrig
()

Релиз FFmpeg 1.0

Новости — Мультимедиа
Группа Мультимедиа

Состоялся мажорный релиз мультимедиа-комплекта FFmpeg. Кроме изменений, созданных внутри проекта, в новую версию также включены все последние наработки, добавленные в ветки ffmpeg-mt (поддержка многопоточного декодирования) и libav (форк FFmpeg).

Новшества версии 1.0:

  • INI и flat вывод в ffprobe.
  • Детектор сцен в libavfilter.
  • Аудиофильтры: channelsplit, setnsamples, join, audio channel mapping.
  • Фильтры: atempo, asettb, alphaextract, alphamerge, concat, flite, asetpts, hue, edge detection, framestep, volume measurement, smartblur и decimate (портированы с MPlayer), sendcmd, decimate, asendcmd, showwaves, showspectrum.
  • Опция ffprobe -show_data.
  • Протоколы: RTMPT, RTMPS, RTMPTS, RTMPE, RTMPTE.
  • Кодирование/декодирование iLBC через libilbc.
  • Декодеры: Microsoft Screen 1, Microsoft ATC Screen, Indeo Audio, TechSmith Screen Codec 2, Microsoft Expression Encoder Screen, GeoTIFF, Opus (исп. libopus), Canopus Lossless Codec, Microsoft Screen 2, CPiA.
  • Кодирование AAC через libfdk-aac.
  • Проигрывание LucasArts SMUSH, Heart Of Darkness PAF.
  • Демуксеры и декодеры SAMI, RealText и SubViewer.
  • Устройства iec61883.
  • Опции: -progress, ffmpeg -(no)stdin, faststart для муксера MOV/MP4.
  • Кодер/декодер 3GPP Timed Text.
  • Устройство вывода caca через libcaca.
  • Кодирование MP2 через TwoLAME.
  • Парсер bmp.
  • Муксер ICO.
  • Кодер/декодер SubRip (без встроенных таймингов).
  • Кодер Ut Video.
  • Теперь демуксер Matroska опознает SRT-субтитры как AV_CODEC_ID_SUBRIP вместо AV_CODEC_ID_TEXT.
  • Муксер F4V.
  • Демуксер и декодер WebVTT.
  • Исправления безопасности.

Получить новую версию можно тут.

>>> Подробности

 , ,

Kindly_Cat
()

NVIDIA представила Nsight Eclipse Edition

Новости — Проприетарное ПО
Группа Проприетарное ПО

NVIDIA выпускает интегрированную среду разработки Nsight для Linux и MacOS на базе Eclipse. В неё входят:

  • Nsight Source Code Editor — шаблоны проектов, подсветка синтаксиса, автодополнение для CUDA;
  • Nsight Debugger — отладка и симуляция выполнения кода на CPU и GPU;
  • Nsight Profiler — анализ производительности выполнения кода на CPU и GPU.

На данный момент Nsight Eclipse Edition доступна как часть CUDA 5 Preview Toolkit для зарегистрированных GPU-разработчиков.

Страница Nsight Eclipse Edition на NVIDIA

Видеообзор

>>> Подробности

 ,

AlexVR
()