Форум программистов, компьютерный форум, киберфорум
TeBrado
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  

Опять пишу недо-ЯП

Запись от TeBrado размещена 22.12.2022 в 22:36
Показов 1677 Комментарии 4

Хммм... Чё-то давно(примерно 10 дней) я не выпускал свои недо-ЯП(слово НЕДО говорит что это не совсем ЯП).
Ладно. Так вот, я тут опять думал по ночам(опять) и придумал как сделать ЯП по типу как в Clickermann. На бумаге норм, а вот когда приступил к делу то... Усё, сложна! Забрасываю...
Но вот его "синтаксис" мне понравился: он такой приятный... Похожий на AuScript... А потом ещё текстовый редактор с подсветкой синтаксиса для него сделаю...
Кхм... Мне сейчас опять будут писать мол: "Да б...ьблин, сночала разберись а потом уже делай и вообще твой яп не яп вот почитай". Но у меня есть "хороший" ответ:
Я не хочу сейчас развиваться в данной сфере. Мне это попросту не надо. Я не ставлю и никогда не ставил перед собой цели сделать ЯП лучше C#( если только во снах ). Я ещё мал и просто пытаюсь сделать что-то похожее на ЯП. Может быть через пару лет я всё-таки начну разбираться в данной сфере.
+Ещё ответ на вопрос: "У тебя что? - других идей нету?":
Да. У меня сейчас своеобразный "творческий кризис":
Кликните здесь для просмотра всего текста
Началось это всё с Ютуба. Из-за отсутствия идей на нём не выходят видео уже как больше месяца(не считая "фаст видео" - видео снятые для простого показа что я живой).
И вот с программированием такая же проба - ну просто нету идей!

Не советую читать - ну просто нудятина. Вам хватит того что я сказал что у меня творческий кризис.
И так, для чего мой недо-ЯП вообще предназначен будет?
Да... Впрочем не для чего. Чисто для фана.
Буду добавлять шуточные команды, чтобы все точно понимали что я создаю этот недо-ЯП точно "Чисто для фана".
Язык называется InOut.
Код который я еле-как написал:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
/*
By InnieSharp(ix4/i#)
*/
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using Microsoft.Win32;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.Threading;
 
namespace in_out
{
    class Program
    {
        public static void Main(string[] args)
        {
            Console.OutputEncoding = System.Text.Encoding.UTF8;
            string path;
            foreach(string s in args)
                path = s;
            if(File.Exists(path))
            {
                string[] l = File.ReadAllLines(path);
                Dictionary<string, int> functions;
                Dictionary<string, string> vars = new Dictionary<string, string>
                {
                    { "username", Environment.UserName },
                    { "machinename", Environment.UserName },
                    { "currentdirectory", Environment.CurrentDirectory },
                    { "systemdirectory", Environment.SystemDirectory },
                    { "osplatform", Environment.OSVersion.Platform.ToString() },
                    { "osservicepack", Environment.OSVersion.ServicePack },
                    { "osversion", Environment.OSVersion.VersionString },
                    { "showerrors", "true" },
                    { "writeerrors", "false" },
                };
                for(int i = 0; i < l.Length; i++)
                {
                    if(l[i].StartsWith("func:", StringComparison.CurrentCulture))
                    {
                        functions.Add(l[i].Remove(0, 5), i);
                    }
                }
                for(int i = 0; i < l.Length; i++)
                {
                    try
                    {
                        string[] commandnargument = l[i].Split(new string[] { ":" }, StringSplitOptions.None);
                        string command = commandnargument[0];
                        string argument = l[i].Remove(0, command.Length + 1);
                        if(command == "Add")
                        {
                            string[] keynvalue = argument.Split(new string[] { "::" }, StringSplitOptions.None);
                            string key = keynvalue[0];
                            string value = argument.Remove(0, key.Length + 2);
                            if(value.StartsWith("+", StringComparison.CurrentCulture))
                            {
                                if(value == "+time")
                                {
                                    value = DateTime.Now.ToString("HH:mm:ss");
                                }
                                else if(value == "+date")
                                {
                                    value = DateTime.Now.ToString("dd.MM.yyyy");
                                }
                                else if(value.StartsWith("+file"))
                                {
                                    string[] filenline = value.Split(new string[] { "::" }, StringSplitOptions.None);
                                    string file = filenline[0];
                                    int line = int.Parse(filenline[1]);
                                }
                            }
                        }
                        else if(command == "Goto")
                        {
                            if(functions.ContainsKey(argument))
                            {
                                i = functions[argument];
                            }
                        }
                        else if(command == "Send")
                        {
                            Console.Write(argument);
                        }
                        else if(command == "Wait")
                        {
                            Thread sliip = new Thread(new ThreadStart(Thread.Sleep(int.Parse(argument))));
                            sliip.Start();
                        }
                        else if(command == "Stop")
                        {
                            Environment.Exit(0);
                        }
                    }
                    catch(Exception e)
                    {
                        if(vars["showerrors"] == "true")
                            Console.WriteLine("Line::" + i + "\nMessage::" + e.Message + "\nSource::" + e.Source + "\nHelpLink::" + e.HelpLink + "\nOur Email::mineloced@gmail.com");
                        if(vars["writeerrors"] == "true")
                            File.WriteAllText("log::" + DateTime.Now.ToString("HH:mm:ss"), "Line::" + i + "\nMessage::" + e.Message + "\nSource::" + e.Source + "\nHelpLink::" + e.HelpLink + "\nOur Email::mineloced@gmail.com");
                    }
                }
            }
        }
    }
}

И не смейте его критиковать! Мне лень отвечать на критику
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 4
Комментарии
  1. Старый комментарий
    Аватар для Welemir1
    а где приятный синтаксис то? пиши ты свои поделки, только хоть самому себе не ври
    Запись от Welemir1 размещена 23.12.2022 в 08:37 Welemir1 вне форума
  2. Старый комментарий
    Аватар для Алексей1153
    >>Язык называется InOut.
    в простонародье - суньвынь
    Запись от Алексей1153 размещена 23.12.2022 в 16:53 Алексей1153 вне форума
  3. Старый комментарий
    А как же GTA? Уже забросил, как и все остальное?
    Я не понимаю, если ты сам прекрасно знаешь, что ты ничего не доведешь до конца, на фига постоянно писать о своих планах везде, которые ты все равно не исполнишь? Какой смысл?
    Запись от psergee размещена 24.12.2022 в 13:36 psergee вне форума
  4. Старый комментарий
    Аватар для TeBrado
    А как же GTA?
    Я писал в другом посте что пишу не GTA, а другое.
    Разработка идет. Медленно. По большей части приостановлена. Недавно делал LitePhotoshop, ну и его наработки как-то должны помочь в разработке GMM.
    ничего не доведешь до конца
    AuScript, XanaLang
    которые ты все равно не исполнишь?
    Ты не можешь точно знать что я не сделаю того, что написал.
    Сейчас может я и не сделаю, но завтра или через неделю может быть смогу.
    Запись от TeBrado размещена 25.12.2022 в 11:05 TeBrado вне форума
 
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru