-Поиск по дневнику

Поиск сообщений в lazydev

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 09.12.2010
Записей:
Комментариев:
Написано: 14

LazyDev






BY-RU / RU-BY, 7Z, B64, S128

Четверг, 28 Августа 2014 г. 04:37 + в цитатник

Groovy 4 FAR Manager

Понедельник, 18 Августа 2014 г. 02:57 + в цитатник
Wolverrum (lazydev) все записи автора Rus: Подсветка к плагину FarColorer для Groovy
Eng: Groovy syntas highlighting schemes for FarColorer

Читать далее...

PTIME - Free Pascal

Среда, 16 Июля 2014 г. 04:58 + в цитатник
Wolverrum (lazydev) все записи автора Rus: Реализация программы ptime средствами FPC
Eng: PTime tool equivalent in Free Pascal

Читать далее...

Метки:  

Command line parser - free pascal

Вторник, 08 Июля 2014 г. 11:05 + в цитатник
Wolverrum (lazydev) все записи автора Rus: Простой но довольно мощный парсер строки, который позволяет разбирать как POSIX так и Windows стили аргументов
Eng: Simple but powerful command line parser which recognizes any kind of POSIX and Windows arguments

Читать далее...

Метки:  

Что такое ATS?

Воскресенье, 16 Июня 2013 г. 03:14 + в цитатник
Wolverrum (lazydev) все записи автора Жто такой генератор Си-кода, который из строчки
code:

val _ = print( "Hi\n" )
implement main() = ()


генерирует
Читать далее...

Метки:  

О полиморфизме

Среда, 27 Июня 2012 г. 03:18 + в цитатник
Wolverrum (lazydev) все записи автора

Закатать в C# что-то вроде

code:

T<B> F(Func<A,B> f, T<A> s) where T: new(), ICollection<A>, ICollection<B> { ...


не представилось возможным - язык убог-с.

Приходится изголяться примерно так:
code:

R Map(Fun<A,B> f, S s) where S:ICollection<A> where R:ICollection<B>, new() {
Guard.Require( Utils.AreTypeFamiliesEqual(typeof(S), typeof(R)) ); ...


Метки:  

Открыл америку

Воскресенье, 05 Июня 2011 г. 15:35 + в цитатник

Метки:  

О "программировании" в электронных таблицах

Пятница, 22 Апреля 2011 г. 02:01 + в цитатник
Wolverrum (lazydev) все записи автора Понадобилось намедни перекинуть список пользователей вида "Ф И О" из OpenOffice Calc список пользователей в БД (вида login, pass, Ф, И, О)...
Пока сделал так:

=IF(LEN(TRIM(A2))>0;CONCATENATE("EXEC psNewUser "; "'"; D2; "'"; ","; "'"; D2; "'"; ","; "'"; SUBSTITUTE(MID(A2; SEARCH(" "; A2; 1)+1; SEARCH(" "; A2; SEARCH(" "; A2; 1)+1) - SEARCH(" "; A2; 1)-1); "'"; "''"); "'";",";"'"; SUBSTITUTE(MID(A2; 1; SEARCH(" "; A2; 1)-1); "'"; "''"); "'"; ",";"'"; SUBSTITUTE(MID(A2; SEARCH(" ";A2;SEARCH(" ";A2;1)+1)+1; LEN(A2)-SEARCH(" ";A2;SEARCH(" ";A2;1)+1)); "'"; "''"); "'"; CHAR(13); CHAR(10); "GO");"")

Читабельно, аж пиздец, но работает :)
Особенно угребищно сделано выделение подстроки - функций работы с регулярными выражениями, вроде бы, нет, посему пришлось поизголяться с индексами.

Метки:  

Java не тормозит (tm)

Понедельник, 13 Декабря 2010 г. 13:20 + в цитатник
Wolverrum (lazydev) все записи автора Попробовал binary-trees на 1-процессорной виртуальной XP-машине.

Java (JVM) - 6 sec
Scala (JVM) - 6 sec
FPK Pascal - 9 sec (!!!)
Mono - 19 sec
ABCL (IKVM) - 111 sec

Метки:  

Баловство

Пятница, 10 Декабря 2010 г. 14:36 + в цитатник
Wolverrum (lazydev) все записи автора Две микроскопические программки - перевод файла в изображение и обратно.
Flickr теперь можно использовать как файлохранилище в пику всем копирастам :)

Исходники:
Раз:  (23x47, 1Kb) и два:  (10x71, 1Kb)

Вложение: 3838102_filexpng.zip


Метки:  

Паттерны, шматтерны...

Четверг, 09 Декабря 2010 г. 17:32 + в цитатник
Wolverrum (lazydev) все записи автора Венец?

Template Method

C#:
code:

using System;

class MainApp
{
static void Main()
{
AbstractClass c;

c = new ConcreteClassA();
c.TemplateMethod();

c = new ConcreteClassB();
c.TemplateMethod();
}
}

abstract class AbstractClass
{
public abstract void PrimitiveOperation1();
public abstract void PrimitiveOperation2();
public void TemplateMethod()
{
PrimitiveOperation1();
PrimitiveOperation2();
Console.WriteLine("");
}
}

class ConcreteClassA : AbstractClass
{
public override void PrimitiveOperation1()
{
Console.WriteLine("ConcreteClassA.PrimitiveOperation1()");
}
public override void PrimitiveOperation2()
{
Console.WriteLine("ConcreteClassA.PrimitiveOperation2()");
}
}

class ConcreteClassB : AbstractClass
{
public override void PrimitiveOperation1()
{
Console.WriteLine("ConcreteClassB.PrimitiveOperation1()");
}
public override void PrimitiveOperation2()
{
Console.WriteLine("ConcreteClassB.PrimitiveOperation2()");
}
}



Erlang:
code:

-module(mainApp).
-export([main/0, templateMethod/1, classA/1, classB/1]).

primitiveOperation1A() -> io:format("ConcreteClassA.PrimitiveOperation1()~n", []).
primitiveOperation2A() -> io:format("ConcreteClassA.PrimitiveOperation2()~n", []).
classA(m1) -> fun primitiveOperation1A/0;
classA(m2) -> fun primitiveOperation2A/0.

primitiveOperation1B() -> io:format("ConcreteClassB.PrimitiveOperation1()~n", []).
primitiveOperation2B() -> io:format("ConcreteClassB.PrimitiveOperation2()~n", []).
classB(m1) -> fun primitiveOperation1B/0;
classB(m2) -> fun primitiveOperation2B/0.

templateMethod(S) ->
P = S(m1), P(),
Q = S(m2), Q(),
io:format("~n", []).

main() ->
templateMethod(fun classA/1),
templateMethod(fun classB/1).



Ой?

Метки:  

Краткость - с.т.

Четверг, 09 Декабря 2010 г. 17:01 + в цитатник
Wolverrum (lazydev) все записи автора Ни убавить, ни прибавить

Метки:  

Поиск сообщений в lazydev
Страницы: [1] Календарь