Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
var a = 1
while(a < 10)
if(a % 2 == 0)
print "{0} is even" a
else
print "oops, {0} is odd" a
a = a + 1
Основная задача — переписать парсер с F# на C#
(
let(endTime, NOW()),
let(begTime, endTime-366*3),
let(strFmt, '{0}' & CHAR(9) & '{1}' & CHAR(9) & '{2}' & CHAR(13) & CHAR(10)),
let(semaObj2Txt, Semaphore(256)),
let(wells,
ReadRaw(treeAction,'spr@all@full_well')
.RawToFullWellTable()
.SelectRows('fieldId=110001')
.RowAsDict()
),
let(fLPV, func(well,paramInfo, LoadParamValues(treeAction, well.FullWellItemToWellPath(), paramInfo, begTime, endTime) )),
_ForEach(
paramInfo, ParamStorage(),
(
let(outFile, NewFileStreamWriter('Out\' & paramInfo & '.tsv')),
outFile.StreamWriterAppendText('WellId' & CHAR(9) & 'Time' & CHAR(9) & 'Value'),
_ForEach(
well, wells,
_EvalWithSemaphore
( semaObj2Txt,
let( wellId, well['wellId'] ),
fLPV(well, paramInfo) .. let(vector),
IF( AND( NotNull(vector), COLUMNS(vector)>0 ),
(
outFile.StreamWriterAppendText( _JoinStr(CHAR(13) & CHAR(10) & wellId & CHAR(9), vector) ),
COLUMNS(vector)
),
0
)
)
)
.SUM()..let(sum),
outFile.StreamWriterClose(),
sum
)
)..let(result),
{
start(),
COLUMNS(result), SUM(ISNUMBER(result)), SUM(result), MAX(result), MIN(result),
_TimeOf(result).MAX()._TimeToStr(), _TimeOf(result).MIN()._TimeToStr(),
result.stop()
}
)
let description = if(age < 21)
«child»
else
«grown-up»
Встраиваемый язык для .NET, или как я переспорил Эрика Липперта