продолжить выполнение программы с места сброса корки
Из чистого любопытства: можно ли продолжить выполнение программы имея на руках сам экзешник и его корку?
Из чистого любопытства: можно ли продолжить выполнение программы имея на руках сам экзешник и его корку?
Привет, котаны!
Я решился на отчаянный шаг — поэкспериментировать с компиляторами. После долгого сидения я понял что питон это не то — надо шагнуть дальше. Ну, хотя бы в с т.з. функционального программирования. Сразу скажу что концепции я пока не вижу и ответов на фундаментальные вопросы типа степень ленивости языка, всякие там монады, в каком виде делать ООП (и делать ли?) у меня нет. Но всё же забавно поиграться просто с синтаксисом.
Основные приоритеты: компактность, наглядность, удобное представление рутинных действий. Цели: высокоуровневое системное программирование. Т.е. целей писать на нём ядро нет, вопросы скорости пока не интересует. Скажем, хотелось бы ЯП чтобы можно было легко писать как скрипты аля-шелл, так и полноценные программы. Но внутренние детали я бы хотел обсудить позже, и так вопросов куча. Вот что родилось в моём больном воображении:
/* DATA TYPES */
//ints and floats, types are infered from the value
i = 1; f = 1.0
// list
l = [1,2,3]
//tuple (arguments of functions are passed in tuples)
t = 1, 2, 3
//tuple with named fields
tuple X: a, b, c
x = X a=1, b=2, c=3
// the same but with optional parens
x = X(a=1, b=2, c=3)
// access tuple attrs
print x.a, x.b, x.c
//hashes
{} // empty hash
h = {b=>2,a=>1}
print h.keys // -> "pb, a]" because hashes preserve insert order
//regular expressions
pattern = /[A-z][a-z]{1-2}/
/* BASICS */
// define variable
x = 1
// define function "z" of two args
z x:int, y:int = 2*x + y
// function invocation
z 1, 2
// or
z x=1, y=2
// composition, equivalent of print(z(1,2))
print z 1, 2
// conditions:
if a > 2:
pass
//if-else in one line
if x == 2: {x = 3} else: {x = 4}
//regexp
if x ~= //
switch x:
x == 1: pass
x < 10: print("x is really less than 10")
continue # go down
x < 5 : print("x ")
_ : print("what a strange X")
/* SUGAR */
# shell invocation
x = `ps ax | wc -l`
# equivalent of vm = VM(); ...; vm.stop()
vm1 = VM(), vm2 = VM():
on cleanup:
vm1.stop and vm2.stop():
...
/* HIGHER ORDER FUNCTIONS */
# a(b(c))
c | b | a
a . b . c
/* GROUPING */
// block may appear at any place where expression is acceptable.
// the return value is the last statement
// statements are separated by semicolon.
x = true
if x: {print "it turned out that x is true"; x=false}
else: {print "x is false, sad but true"; }
/* HELLO, WORLD */
main argv =
print "hello, hell"
print "my args:", argv
/* STRING SUBSTITUTION */
x = 666
print "x is equal to ${x+1}" // equivalent of { tmp = x+1; printf("x is equal to %d\n", tmp) }
/* EXCEPTIONS */
// catch exception and get its value in _err
fd = open "filename" || die "exception ${_err}"
try:
fd = open "filename"
except NotFound:
fd = try {open "filename"} except NotFound: -1
/* LANGUAGE MODES */
//shell invocation in backticks
files = `ls -la /tmp`
`for f in ${files}; do scp $f remote:/tmp; done` \
|| die "scp failed with ${_err}"
/* COMMENTS */
// this is a comment
# and this is a comment
/* and this as well */
; have fun with many comment styles
/* SMALL THINGS */
for elem in some_list:
...
print elem //will raise error because loop variables are not seen outside the loop by default
// for this reason file will be automaticaly closed once the control reach the end of the loop
for l in os.open("some_file"):
...
PS кодовое название — velosipedix.
PPS case
ymn,
archimag, 
baverman,
tailgunner,
qnikst, 
mv и всех других кого забыл :)
PPPS похоже что инета у меня не будет до воскресенья...
Всем привет.
Временно работаю с ноута, шрифты и элементы мелковаты для меня. Можно ли всё увеличить? Пробовал xrandr --dpi 160 и выше, результат страшный: в openoffice кнопки остались прежними, остальное разбухло. В claws mail надписи лезут друг на друга, часть прочитать уже невозможно.
Может есть способ вылечить хотя бы gtk-приложения?
Сабж. Лечится, например, через flush=True у print (доступно только арчеводам), но разве так должно быть?.
#!/usr/bin/env python3
import sys
import time
[print(".", end='', file=sys.stderr) or time.sleep(0.1) for _ in range(10)]
UP: оно в dmesg написало о проблемах в конфиге, как мило
Похоже, отсутствует вообще какая-либо валидация конфигов: ограничить размеры journal (комментарий)
Я ненавижу такие программы потому что легко можно всандалить трудноуловимую опечатку. Из примеров из жизни:
1) клиент поправил config.php и вставил в начале пустую строку. Обычно результат Headers already sent, но в его случае была пустая страница и ошибка соединения с базой (c). После этого пых я возненавидел навсегда. Вообще, про пых я могу долго рассказывать.
2) админил немецкий сервер, там не была настроена локаль, но были немецкие юникодные символы в конфигах и и они не отображалась на экране. В результате некорректные конфиги выглядили вполне безобидно. Из-за отсутствия валидации секса на вечер хватило.
3) Некоторые софтины могут собираться с разными модулями которые настраиваются в общем конфиге. И если софт молча игнорирует нераспознанные директивы то это тоже приводит к проблемам.
В общем, не думал что валидация конфигов в 2013 году это проблема.
В /etc/systemd/journald.conf засунул SystemMaxUse=50m, RuntimeMaxUse=50m, а оно мне всё равно про какие-то 976 метров журнала пишет:
May 31 11:12:31 localhost systemd-journal[87]: Allowing runtime journal files to grow to 49.9M.
May 31 11:12:31 localhost systemd-journal[87]: Journal started
May 31 11:12:31 localhost systemd-journal[87]: Allowing system journal files to grow to 976.2M.
Как вылечить?
Не так давно я спросил как мне защить свои данные от посягательств приложений которым сплошь и рядом нужны доступ в интернет, логу звонков, к sd-карточке, номеру телефона, IMEI итп. Даже если речь идёт о расписании автобусов.
Первым делом я поставил lbe guard на cm10.1. Не завелось. Далвик кэш чистил, ребутался, пофиг. Снёс.
Потом воткнул туда miui. Это адский ад. Год назад оно выглядело хорошо, но были проблемы со стабильностью (впрочем, сидел на бете). Сейчас же накатил релиз на sgs2. Итоги: тормоза, жор ресурсов, покорёженный интерфейс (кнопки и надписи зачастую не влазят), постоянное навязывание какого-то китайского «облачного» сервиса и абсолютно неработающий маркет. Снёс.
Пересобрал android c последними патчами pdroid. На первый взгляд всё супер, но, похоже, некоторые приложения вызывают проблемы в системе. В итоге начинается феерический разряд батареи, да так что в районе камеры уже болезненно дотрагиваться. Второе горячее место это низ телефона, хз что там находится. Проц жрут на пару два приложения: сам pdroid и Settings. Судя по логам никакого зацикливания с запросом пермишенов нет.
Я в отчаянии. Евросоюз установил штраф в over 500тыщ евро за использование куков без разрешения. При этом прямо под носом полный ад и содомия, а никто не чешется :(.
UP: почистил данные у приложения Settings и его отпустило.. Не знаю надолго ли...
Что есть task-clock и cpu-clock в выводе perf stat sleep 1? Чем они отличаются? Я думал это какие-нить милисекунды, однако:
ux32vd@~$ perf stat -e task-clock,cpu-clock -x, sleep 1
1.133506,task-clock
1.133115,cpu-clock
[panda kvmtests]$ perf stat -e task-clock,cpu-clock -x, sleep 1
3.173827,task-clock
3.143309,cpu-clock
p1@~$ perf stat -e task-clock,cpu-clock -x, sleep 1
0.371334,task-clock
0.371711,cpu-clock
[fx ~]$ perf stat -e task-clock,cpu-clock -x, sleep 1
0.451383,task-clock
0.451353,cpu-clock
Сабж.
По мне так это идиотизм и навязывание «смс-оповещений». Но может я чего не понимаю в специфике работы с пластиковыми картами?
Всем привет!
Нужна такая хреновина: samsung NP-R522 power port. Оно выглядит вот так: http://www.dcpowerjacks.net/catalog/index.php?main_page=product_info&prod...
Не могу нигде купить: бОльшинство магазинов не доставляют в Люксембург (государство), остальные же дерут конский прайс за доставку: при цене в три евро легко могут слупить 30евро за деталь которая умещается в конверт.
Посоветуйте адекватный европейский магазин запчастей к ноутам который не заламывает цены.
Cast 
AiFiLTr0.
PS это я студенточкам чиню ноут за еду :)
Интересно как бы выглядел периодический планировщик аля примитивный cron на ML-подобных ЯП?
Задача: с заданной перидичностью запускать какие-то действия. Причём у каждого действия своя переодичность выполнения.
На питоне я сделал так (можете сделать по-своему): Задачи складываются в очередь «ожидания» с приоритетом, где приоритет есть unix timestamp когда оно должно запуститься. Более срочные задачи в очереди стоят первыми.
Из этой очереди мы потихоньку достаём задачи по одной и ждём нужное время, потом перекладываем в очередь на выполнение где задачи выполняются воркерами. Отработавший воркер опять кладёт задачу в очередь ожидания. Т.е. задачи циркулируют как бы по кругу, перекладываясь между очередями.
На случай если новая задача должна быть выполнена быстрее всех мы обрываем текущий таймер ожидания и расчитываем новое время которое нужно спать . Т.е. рестарт таймера (самый дурацкий момент в алгоритме).
Тут есть нюанс: задача планируется только по завершению обработки. Т.е. не получится так что новый процесс проверки запуститься до того как завершаться старые.
Здравствуйте, я в конец обленился и мне лень гуглить. Насоветуйте симуляторов боёв роботов/ботов под обе платформы (онтопик и офтопик если идёт в wine). Желательно чтобы можно было устроить коммандное рубилово. Можно даже с какими-нить продвинутыми режимами типа capture the flag. Вообще бывает такое?
Ну и желательно чтобы был API выставленный наружу чтобы я мог на пистоне лабать, а не на ещё-одном-лютом-ассемблере.
PS а бывают ли бои роботов в реале с реальным оружием? Желательно с тяжёлым вооружением. Типа такого, но шоб ракетами шмаляли: http://www.youtube.com/watch?v=73YM4V5R5-k . А если бы там и летающие роботы были....
Сабж. От тех кто вживую их видел, обзоров я начитался :). Нужно: 27 дюймов, матовое, по возможности с USB-хабом.
У меня дома стоит BenQ GW2750HM, чего от него все писаются я не понимаю: углы обзора на уровне хорошей TN, цвета ужасны, меню убогое, сам моник тупит при включении и смене режимов, иногда подвисает. Нет USB-хаба. Матрица медленная (реально я вижу проблемы при скролле текста, я в игры не играю, овердрайв включён) и картинка слегонца запаздывает от картинки на ноуте. Но для работы ОК. Главное достоинство - он дешёвый.
Сейчас я в длительной коммандировке, от ноута уже глаза болят. Рассматриваю след. кандидатов:
* ASUS MX279H: нет USB, неравномерность подсветки адская
* Philips 278C4QHSN: есть ambilight (для кодинга подойдёт? :)) и USB3.0 хаб(!), контраст ужасный. На оверклокерсах пишут что БП/подсветка пищит. Это хреново, я очень не люблю такого. Нормальных обзоров именно этой модели не нашёл, верю на слово что это близнец Philips 278G4DHSD, но без 3D и с матовым покрытием. Продаётся в ашане рядом с работой.
* Опять купить Benq
* Ваши варианты
Судя по отзыву в инетах любой бюджетный моник такой диагонали на *-IPS матрице будет говном. Я так понимаю что равномерной подсветки ни у кого в принципе не будет и рандом с качеством сборки.
PS руководствуюсь этой табличкой: http://www.overclockers.ru/images/lab/2013/03/19/1/104_sravtable_big.png
Нужно распаковать boot.img т.к. там есть один нужный файлик. Как это сделать? Гугл выдал кучу разных скриптов и обёрток на тему вокруг zcat boot.img | cpio -i, но это не работает: gzip: ./boot.img: not in gzip format
С подобной ошибкой падают скрипты типа split_bootimg.pl . Что делать?
Распаковываю boot.img из cm-10.1-20130522-NIGHTLY-i9100.zip .
Сабж. На сайте пишут что нужен 6-й jdk, а в арче его давно нету :(.
Сабж. Как?
Нужно для работы с виртуалками. Про заход по ssh с ключом я в курсе.
UP: считайте это задачкой на понимание PAM. Я играюсь с системой, мне не надо советовать sudo итп.
Долго выбирал себе мини-роутер для путешествий. Спустя целый день гугления я понял что все эти TP-Link TL-MR3020, asus WL-330N3G и прочий фуфел с жалкими 8-32Mb ram/2-4Mb flash с кривыми прошивками и проприетарщиной не стоит своих денег.
Поэтому я решил взять raspbery pi (и докупить usb wifi). А потом задумался - а может есть другие аналогичные девайсы из того же ценового диапазона 40-60евро? Всякие pandaboard не предлагать, они сильно дороже.
Перемещено beastie из talks
Ситуация такая: инет есть только проводной и только на ноуте. Хочу чтобы мобила через BT забирала инет. Такое можно устроить? Я копался в настройках, нашёл только bluetooth tethering, но, судя по всему, андроид при этом считает себя шлюзом. А надо наоборот. Наверно, можно прокинуть vpn-тунель, но есть ли более прямые способы?
В принципе, я зашёл на мобилу по ssh, прописал гейт и всё заработало, но может есть другие способы?
Пытаюсь сделать такое:
pkgver() {
cd "$srcdir/$_gitname"
git describe --always | sed 's|-|.|g'
}
(стыбрино отсюда: https://wiki.archlinux.org/index.php/VCS_PKGBUILD_Guidelines).
Не хочет работать:
p1@qemu-git-lite$ makepkg
==> Making package: qemu-git-lite -1 (Fri May 17 10:21:17 CEST 2013)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
==> Extracting sources...
==> Starting pkgver()...
==> Updated version: qemu-git-lite -1
==> ERROR: pkgver is not allowed to be empty.
**Что делать?**
EBUILDPKGBUILD: http://dpaste.com/hold/1172195/
Помогите вспомнить название проца который вроде как был с сотней ядер и при этом дешёво стоил. С месяц назад мелькало в новостях.
| ← назад | следующие → |