Другие языки программирования и технологии
Раскажыте чонить интересное связаноэ с программированием.. (мне скучна)
Набери в консоли виндовса format c: - точно развеселит...
Программистаа спрашивают на трамвайной остановке: - "Доеду ли я на этом трамвае до вокзала? " - "Да. Восемнадцатая остановка. " - "А мне говорили, три... " - "Тогда вам в другую сторону".
public PreParse(token : Token) : PreParseItem
{
def body = match (token)
{
| LooseGroup(content) =>
content;
| _ => token;
}
def parser = TokenParser(body);
def move(acc : list[PreParseItem]) : PreParseItem
{
def token = parser.GetToken();
def traverse(token) : PreParseItem
{
try
{
parser.Push(token);
move([]);
}
finally
{
parser.Pop();
}
}
if (token == null)
{
match (acc)
{
| single_item :: [] =>
single_item;
| _ =>
PreParseItem.Sequence(acc.Reverse());
}
}
else
{
def item = match (token)
{
| Identifier(name) => PreParseItem.Identifier(name);
| Keyword(name) => PreParseItem.Identifier(name);
| Comma => PreParseItem.Operator(",");
| Operator(name) => PreParseItem.Operator(name);
| IntegerLiteral(Literal.Integer(value, is_negative, _), _) =>
PreParseItem.IntegerLiteral(value);
| BracesGroup(child, _) =>
def childeren = traverse(child);
PreParseItem.Group(GroupKind.Braces, childeren);
| RoundGroup(child) =>
PreParseItem.Group(GroupKind.Parens, traverse(child));
| SquareGroup(child) =>
PreParseItem.Group(GroupKind.Brackets, traverse(child));
| LooseGroup(child) =>
def childeren = traverse(child);
def is_single_group = (token.Next == null);
if (is_single_group)
childeren;
else
{
def get_statements(acc)
{
def token = parser.GetToken();
match (token)
{
| LooseGroup(child) =>
get_statements(traverse(child) :: acc);
| null =>
PreParseItem.StatementsList(acc.Reverse());
| _ =>
Message.Error(token.Location, "Expected loose group");
throw PreParseException();
}
}
get_statements([childeren]);
}
| _ =>
Message.Error(token.Location, $"Unsupporded token : $token ($(token.GetType()))");
throw PreParseException();
}
move(item :: acc);
}
}
move([]);
}
}
public macro TryIt(token : Token)
syntax ("preparse_token", token)
{
try
{
def item = PreParser.PreParse(token);
item.ToPExpr();
}
catch
{
| _ is PreParseException =>
<[ ERROR ]>
| e is Exception =>
def message = $"Exception of type $(e.GetType()) with message $(e.Message) was occured at $(e.StackTrace)";
Message.Error(message);
<[ ERROR ]>
}
{
def body = match (token)
{
| LooseGroup(content) =>
content;
| _ => token;
}
def parser = TokenParser(body);
def move(acc : list[PreParseItem]) : PreParseItem
{
def token = parser.GetToken();
def traverse(token) : PreParseItem
{
try
{
parser.Push(token);
move([]);
}
finally
{
parser.Pop();
}
}
if (token == null)
{
match (acc)
{
| single_item :: [] =>
single_item;
| _ =>
PreParseItem.Sequence(acc.Reverse());
}
}
else
{
def item = match (token)
{
| Identifier(name) => PreParseItem.Identifier(name);
| Keyword(name) => PreParseItem.Identifier(name);
| Comma => PreParseItem.Operator(",");
| Operator(name) => PreParseItem.Operator(name);
| IntegerLiteral(Literal.Integer(value, is_negative, _), _) =>
PreParseItem.IntegerLiteral(value);
| BracesGroup(child, _) =>
def childeren = traverse(child);
PreParseItem.Group(GroupKind.Braces, childeren);
| RoundGroup(child) =>
PreParseItem.Group(GroupKind.Parens, traverse(child));
| SquareGroup(child) =>
PreParseItem.Group(GroupKind.Brackets, traverse(child));
| LooseGroup(child) =>
def childeren = traverse(child);
def is_single_group = (token.Next == null);
if (is_single_group)
childeren;
else
{
def get_statements(acc)
{
def token = parser.GetToken();
match (token)
{
| LooseGroup(child) =>
get_statements(traverse(child) :: acc);
| null =>
PreParseItem.StatementsList(acc.Reverse());
| _ =>
Message.Error(token.Location, "Expected loose group");
throw PreParseException();
}
}
get_statements([childeren]);
}
| _ =>
Message.Error(token.Location, $"Unsupporded token : $token ($(token.GetType()))");
throw PreParseException();
}
move(item :: acc);
}
}
move([]);
}
}
public macro TryIt(token : Token)
syntax ("preparse_token", token)
{
try
{
def item = PreParser.PreParse(token);
item.ToPExpr();
}
catch
{
| _ is PreParseException =>
<[ ERROR ]>
| e is Exception =>
def message = $"Exception of type $(e.GetType()) with message $(e.Message) was occured at $(e.StackTrace)";
Message.Error(message);
<[ ERROR ]>
}
один/ноль
настоящий програмер настолько суров что кушает раз в недель!
настоящий програмер во времена запарки может месяц жить на одном пиве и сигаретах!
настоящему програмеру никогда не скучно!
настоящий програмер во времена запарки может месяц жить на одном пиве и сигаретах!
настоящему програмеру никогда не скучно!
Сперва тебе не мешало бы что-нибудь рассказать, связанное с русским языком
если тебе щас скучно, то при рассказе ты вообще уснешь.
Настоящий программер настолько суров, что бредя во сне, говрит двоичным кодом
Настоящий программер мечтает получить исходники мира, написанного богом
Настоящий программер когда зол - матерится на ассемблере
Настоящий программер общается специфично. Например "ЕСЛИ я куплю пиво ТО мы будем пить, ИНАЧЕ - НЕТ" (классическое if, then, else, true,false)
Настоящий программер мечтает получить исходники мира, написанного богом
Настоящий программер когда зол - матерится на ассемблере
Настоящий программер общается специфично. Например "ЕСЛИ я куплю пиво ТО мы будем пить, ИНАЧЕ - НЕТ" (классическое if, then, else, true,false)
sadykart.wallst.ru
дай свой IP и будь онлайн - я найду способ тебя развесилить
ты ето запомниш...
ты ето запомниш...
Гомозов Сергей
пака на даный момент я в онлай IP 82.207.62.212
что вы гоните на меня я програмист знаю assembler и что я пью пиво и живу в сигаретах это вы ничто жные юзеры так думаите что мы сидим перед компом и в кс рубимся ( но такое тоже бывает ) а так почти всегда что то у друг друга тырими идеи допустим
Похожие вопросы
- Почему программирование - такая скучная хрень?
- Как заниматься программированием, что бы это не было скучным?
- Конец объектно-ориентированному программированию? Переходим от “черных” ящиков к ”белым” и ”прозрачным” ящикам?
- А какие языки программирования изучали в 80х и на чём вы их изучали?
- Вопрос для тех, кто уже опытный и профессиональный специалист в сфере программирования, web-программирования, дизайн!..
- ОК. Куда, мать его, поступать-то? Или как я стал ненавидеть программирование
- Основы для программирования
- Web программирование
- Какой язык программирования выбрать для изучения для начинающего ? (внутри)
- Помогите пожалуйста разобраться с вопросами по информатике и программированию