Доброго времени суток!
Есть небольшая работка. Имеется
лексический анализатор языка 1С 7.7, к-рый
косвенно
базируется на http://www.cliki.net/meta, а
также принтер, способный собрать текст обратно из лексем.
Нужно на этой основе реализовать средство
средство инструментирования, которое
вставляет
в код вызовы, содержащие указаниеномера строки и данные о входе/выходе из ф-й. Также
средство должно уметь удалять все такие вызовы.
Процедура Проц
(парам1 // это парам1
,парам2 // тра-ля-ля
)
//ого, какая крутая процедура!
если парам1=0 тогда //ща сделаем что-то
возврат;
иначе
парам2=парам2/парам1;
конецПроцедуры
на выходе должно быть:
Процедура Проц
(парам1 // это парам1
,парам2 // тра-ля-ля
)
сВход
(385,"Проц","имяТекущегоФайлаИсходногоТекста"); //ого, какая крутая процедура!
с
(386); если парам1=0 тогда //ща сделаем что-то
сВыход
(387,"Проц"); возврат;
иначе
с
(389); парам2=парам2/парам1;
сВыход
(390,"Проц"); конецПроцедуры
Видимо, для этого понадобится реализовать парсер. Дальнейшие подробности - почтой.
Цена вопроса - 6 тыр, срок - 4 дня. Поскольку используется множество замороченных библиотек,
могу выслать vmware, где всё уже настроено.
контакт: (concatenate 'string (reverse "s30revres") '(#\@) (reverse "liam") '(#\. #\r) "u")
И ещё одна работка есть - имеется сборщик хранимых процедур firebird, порядок процедур устанавливается вручную. Зависимости данной процедуры известны (есть функция, к-рая их возвращает). Некоторые процедуры прописаны в неправильном порядке. Нужно создать версию сборщика, к-рая пройдёт по исходникам, соберёт все зависимости и сообщит обо всех аномалиях.
Фактически работа состоит в том, чтобы разобраться в том, как это устроено, внести небольшие изменения и немного поработать с деревьями. 2 тыр, срок исполнения - неделя. Детали - по почте.
И ещё одна работка с тем же сборщиком - анализ правильности запросов в момент компиляции с помощью prepare. Задача сложная, т.к. при данном состоянии кода текст запроса зачастую становится известен только в момент исполнения. Нужно переработать генератор кода и сделать вариант генератора, при котором код генерируется так, чтобы можно было сдлать ему prepare и проверить. 6 тыр.
И ещё работка - задокументировать и "делокализовать"
http://code.google.com/p/def-symbol-readmacro/ - 10 тыр
Короче, есть некоторый пакет взаимосвязанных работ, думаю, интересно для начинающего изучать лисп
в качестве стажировки.
Ещё работка - у нас формируется файл html. Надо добавить генерацию заголовка. 100 рублей.
И ещё. Есть куча кода, к-рый грузится под Lispworks 4.4. Перевести на Lispworks 6.0. 3 тыр.
Ещё одна работка. В readtable заменена читалка открывающей скобки, поэтому рекурсивном read
мы знаем координаты всех открывающих скобок. Также известно текущее положение потока.
Нужно: 1. задекорировать достаточное количество функций, чтобы вся информация о положениях в потоке,
могущих иметь отношение к ошибке чтения, была собрана в одном месте (вероятно, придётся задекорировать read,
незнаю, насколько это реально).
2. написать на CAPI наноприложение, которое позволяет выделить любое из этих мест в буфере исходного файла.
1 тыр в случае успеха, 500р утешительного приза в случае неудачи.
И ещё одна: по нажатию F1, чтобы открывалась справка в мануалах, если она есть. При отсутствии мануалов, но наличии
исходника - чтобы происходил перескок на исходник. По отдельности эти возможности уже реализованы (но придётся
вооружиться disassemble), а вот вместе они не реализованы - 500р.
Или, как вариант, сделать, чтобы в странице выбора информации из мануала добавлялись следующие гиперссылки:
1. "открыть" исходник (в лиспе должен быть запущен веб-сервер, щёлкаем - идёт запрос на 127.0.0.1, в результате
чего исходник открывается в редакторе)
2. cltl2
3. просто текст - docstring.
3 тыр + предоставляю заготовки и список полезных функций.
так, наверное, если исполнитель найдётся, то я уже банкрот.
К предыдущему заданию добавка, ещё одна гиперссылка - на определение пакета этой ф-ии. А если соответствует несколько определений (например,
родовая ф-я и методы к ней), то пачка гиперссылок. И плюс ещё 1 тыр.
Советую еще сюда закинуть
lisp.ruспасибо,сделано. Кстати, не упомянул, что работа дистанционная.
В общем, работку сам уже делаю...
Работку сделал, но ещё не всю (всю никогда не сделаю).
Поскольку все аутсорсеры нас покинули, поиск сотрудников продолжается.
Актуальные задачи на сегодня:
- улучшить сборщик серверной части на Firebird, он стал слишком сложным в обращении. Задача описана выше, о деньгах можно говорить.
- попробовать подключить библиотеку работы с Firebird, о которой тут писали. Деньги обсуждаемы.
Снова в поиске, и зарплата всё выше и выше...
http://www.sql.ru/forum/actualthread.aspx?tid=990694
Что у нас есть из интересных лисповых технологий?
- интеграция с SQL:
--макроподстановки в SQL-запросах, которые позволяют сокращать объём SQL кода
на десятки процентов, а в отдельных случаях и в разы, с одновременным облегчением процесса поддержки
--хранение всех исходников серверной части в системе контроля версий;
--навигация по исходникам SQL (можно за одно нажатие найти исходник объекта, хранимого в лиспе)
--удобный (почти уникальный) синтаксис для вызова SQL из лиспа без всяких трансляций:
(fse * from mytable;
)
- "крышечный" синтаксис для разных типов данных, в т.ч. структур и property-list-ов
(let ((s "string")) s^UPCASE)(let ((list '(a b c d)))
(with-proplist-carat list
list^a
))
- в данный момент всё более интенсивно используется сервер приложений на лиспе, который
позволяет использовать в бизнес-логике все вкусности лиспа. Этот сервер может вызываться
из Delphi и из 1С, может делать обратные вызовы интерпретатора Pascal, встроенного в клиент, например
(PCallbackBE
msgbox2('hello,world');
^)
Приложение примерно на 25% внедрено, на 70% протестировано и на 90% написано.
Нужно:
- доделать приложение
- поддерживать всё это
- документировать
- поскольку технологий слишком много, нужно упрощать и выбрасывать худшие технологии, оставляя лучшие
Общий объем кода на лиспе на данный момент - около 2мб.
Но в целом мы пишем программу автоматизации торговли и складского учёта, и в ней
есть и другие компоненты - Delphi и Firebird и ими тоже надо заниматься.
Нужно немного лиспового фанатизма. На нашей программе будет работать (и уже отчасти работает)
довольно крупное предприятие, один человек не может это поддерживать, т.к. он может
заболеть или уйти в отпуск. Не считая этого, моих сил вполне хватает, поэтому нельзя сказать,
что работа вообще будет тяжёлой. Но на первом этапе - будет.
Если есть кто-то, кто хочет добавить такой success story в копилку лиспа, то
ещё не поздно это сделать.
Если ещё полгода я никого не найду себе в напарники, я не знаю ,что делать. Видимо, придётся
закрывать этот проект, т.к. по лиспу трудно найти не только работу, но и специалистов.
И тогда добавится ещё один fail story про лисп.
К сожалению, только для граждан России
Если бы не требование "полная занятость", я бы пошёл, но с основной работы уйти не могу (но обеспечить в рабочее время себе компьютер+интернет+телефон могу без проблем).
Зарплата не большая, что бы на полный день работать...
> Зарплата не большая, что бы на полный день работать...
Для удаленной работы нормальная. Не все в Москве живут.
Не важно удаленная работа или нет. Важно затрачиваемое время на нее...
Люди, которые смогут с этим работать, уже работают и получают на порядок больше. И кто хотел и мог, тот переехал либо в москву либо еще куда. И за такие копейки врядли кто даже из фанатизма найдется.
З.Ы. Сугубо мое личное мнение... Но все равно успехов в этом проекте))
> Люди, которые смогут с этим работать, уже работают и получают на порядок больше.
Более чем странное заявление.
У нас в регионе средняя ЗП официально ~24800 руб/мес.
Тут предлагается ЗП 50-60к, на порядок больше будет уже 500-600к/мес или ~6-7млн в год.
Такую (белую) ЗП у нас на 500к населения получает (декларирует) порядка 500 чел.
И это не программисты ;)
Мне этот проект интересен.
Я вот не из Москвы (Нижний Новгород). Для нашей "сельской местности" деньги адекватные деньги.А вот профиль работ радует гораздо меньше - документирование, поддержка, доделки... Этим лисперов врятли купишь:).
на мой взгляд, зарплата для начинающего/студента неплохая.
- офис в г.Королёв
- испытательный срок 2 месяца, зарплата на исп.срок 70 тыр, по результатам исп.срока 80-100тыр
-
задачи - разработка и поддержка приложений на Delphi/Firebird/Common
Lisp (Common Lisp знать не обязательно, поможем в обучении)
- полная занятость 5x8 + во время отпуска напарника присутствие на связи с 8 до 22
- гибкий график, по договорённости возможность часть времени работать на дому
- мы - торговый дом при крупном издательстве, занимаемся торговлей книгами
- опыт работы с SQL (предпочтительно, Firebird) - от 2 лет
- опыт работы в Borland Delphi или C++ Builder - от 2 лет
- желателен опыт работы с Common Lisp, Python, Ruby и т.п.
- желателен опыт разработки в торговле, складском или бухгалтерском учёте
- гражданство России
- хорошая обучаемость
- готовность разбираться в большом объёме кода и писать документацию
пункт 3 - не подходит.
Если будет предложение удаленной работы - готов обсудить.
Хотя мой опыт дельфями - уже наверное неактуален - давно было это. Сейчас только 1С и визуальный басик.
Удалённой больше, скорее всего, не будет. Если хорошо знаете SQL - это может компенсировать незнание Delphi.
Готов обсудить. linkfly1(соб)newmail.ru
адрес скопипастил из форума. Может, дадите другой адрес, или пишите сами на
(map 'string 'code-char '(98 117 100 121 97 107 68 86 64 114 105 112 111 108 46 114 117))
Имеет смысл поспешить, т.к. уже нашли хорошего человека и он прошёл первый круг собеседования.
(соб) надо заменить на @
Очевидно же...
> Очевидно же...
Хорошее начало диалога... А думаете, я не заменил?
Не знаю, в чём дело с этим письмом, письмо на правильный адрес у меня в исходящих как раз с того адреса, на к-рый Вы сейчас написали.
Может быть, по какой-то причине не доходит.
На всякий случай отправил ещё с (115 101 114 118 101 114 48 51 115 64 109 97 105 108 46 114 117)
Да чёрт его знает, в жизни ещё и не такое встречается:)))
Сорри, конечно, если задел)
Ну ладно, списались и хорошо.
Продолжая сотрудничество с LinkFly в режиме полуставки, всё же ищем человека на полную занятость.
Подробности - здесь:
http://www.sql.ru/forum/1005012/razrabotchik-delphi-firebird-80-90-tyr-chistymi
А также выше в теме.
завёл новую вакансию, т.к. заголовок старый плохо отражал суть:
http://www.sql.ru/forum/1056907/razrabotchik-podderzhka-delphi-firebird-lisp-korolyov-mytishhi-80-100-tyr-chistymi
Не читая, сразу спрошу: кто работал по этим предложениям? Какие условия? Сколько заплатили?
Не читай, не читай. Вот закрою лисповую тему, как ловесан - будете знать. Вы пожалеете, но будет поздно :)
Вакансия актуальна, вот тут: существует аж в двух редакциях:
http://www.sql.ru/forum/1063283/trebuetsya-programmist-podderzhka-mytishhi-korolyov-60-110tyr-chistymi-20-premii
и
http://www.sql.ru/forum/1060345-2/razrabotchik-podderzhka-delphi-firebird-lisp-korolyov-mytishhi-90-110-tyr-chistymi-premii
Прошло несколько собеседований - ни одного лиспера.
Вынашиваю следующий коварный план: реализация языка а-ля object pascal или бейсик на лиспворксе. На данный
момент имеется работающий транслятор из бейсик-подобного языка, не
доделана библиотека времени выполнения, нужно допиливать объектную систему и писать много тестов.
Работа довольно грязная и занудная, но может быть интересна начинающему.
Результат нужен в течение где-то месяца.
Другой проект - биндинги компонент Дельфи к лиспворксу. Имеется код-образец для одной конкретной библиотеки,
имеется брошенный много лет назад пафосный проект биндингов между лиспом и С++ билдером, сделанный с помощью
SWIG. Сейчас нужно сделать аналогичное, но с помощью более простого генератора биндингов прямо из Дельфи с помощью
PascalScript. Это более сложно и интересно, результат нужен в течение где-нибудь месяцев четырёх.
Есть вариант поработать за экспириенс или за деньги. Сроки завершения - два месяца.
Обсудить можно здесь, или пишите по адресу, указанному в начале.
Ещё работка за экспириенс (точнее, за подарок)
Хых. Сам сделал.
Теперь у меня в лиспворксе нельзя стереть подсказку листенера. Такая возможность вообще-то приводит к довольно уродливым
последствиям и пугает новичков.
Хотя не знаю, может ещё какие баги всплывут...
Хотя блин рабочего времени жаль - три часа потратил или около того.
> не доделана библиотека времени выполнения, нужно допиливать объектную систему и писать много тестов.
Как бы транслятор синтаксиса бейсика в лисп ясная и небольшая задача. Это сильно более расплывчато. И гораздо сложнее.
> Это более сложно и интересно
SWIG использовал для UFFI C биндингов (для ECL), но с делфи ес-но не знаком. Что нужно именно нужно? Низкоуровневое средство
PascalScript - lispworks, просто конвертировать сгенерированные биндинги из одного форма в другой или написать красивую прослойку
к сырым биндингам на лиспе?
> Есть вариант поработать за экспириенс
Это не вариант. Есть вариант с оплатой порциями, типа ТЗ на примерно неделю, приём кода, оплата? Делфи как бы очень легаси технология, а
походу нужно знать/вникать в её особенности реализации (объекты, биндинги), да и lw тоже экзотика. К сожалению, это может сдвигать сроки в разы.
> да и lw тоже экзотика
На чем основано это утверждение?
>На чем основано это утверждение?
Даже у автора темы проблема просто найти человека, который хоть чуть-чуть знаком с самим лиспом.
В любом случае, если есть люди у которых куплен lw для себя ( чтобы на сторону работать), я буду удивлён.
P.S. Хотя может он аутсорс из других мест просто не рассматривает в принципе.
Нужно чтобы den73 сам прокомментировал текущую ситуацию.
temptst1, если вы с лиспом незнакомы, давайте не будем зря терять время. Знакомство с лиспом для этой работы необходимо.
Мне проще самому сделать, чем возиться с вашим обучением. Хотя если не будете задавать вопросы, связанные с обучением языку,
то можно попробовать, конечно... Но и то не факт...
Лицензии LispWorks покупают пачками, если что (знаю от LW sales). У меня у самого он в продакшене. Плюс, LW постoянно развивают и поддерживают на всех современных платформах, включая GUI. Самая лучшая поддержка (функциональность) SMP, опять же, у LispWorks.
>temptst1, если вы с лиспом незнакомы, давайте не будем зря терять время.
Вполне знаком. Даже использую ( хотя и без экзотики вроде MOP, системы рестартов и комбинаций методов).
> на всех современных платформах
не хочу флеймить и офтопить, но ios или android (даже без биндингов к гуи и интеграции с джавой) там увы нет.
> экзотики вроде MOP, системы рестартов и комбинаций методов
Это не экзотика, а самые что ни на есть, главные фичи Common Lisp. Если эту "экзотику" не использовать, тогда зачем вообще выбирать лисп?
> не хочу флеймить и офтопить, но ios или android (даже без биндингов к гуи и интеграции с джавой) там увы нет.
Смотри mocl: https://wukix.com/mocl
> Если эту "экзотику" не использовать, тогда зачем вообще выбирать лисп?
Там и стандартная система типов, как и стандартная around, before, after комбинация очень хороши.
Ну и макросы ес-но. В качестве скриптового языка этого хватает ( ну или пока мне хватает :)
Ладно, если знаешь лисп, то пиши письмо на адрес, указанный в начале темы. Не обещаю прямо сейчас,
но где-нибудь в течение недели постараюсь подогнать задание.
В PascalScript есть аналог SWIG, притом он гораздо проще и "поворотливее". По сравнению с С++ Дельфи
очень проста и приятна.