Advertisement
Guest User

Untitled

a guest
Aug 20th, 2019
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.60 KB | None | 0 0
  1. Язык программирование GitRel
  2.  
  3. ### Мотивация
  4.  
  5. Я читал треды @metaprog по языку программирования метапрог он писал
  6. там что начинал разрабатывать язык свой и вдохновил меня я не видел у
  7. него никакой логики он просто транслировал обычный текстовой язык в
  8. графический вид ничем не интересный я долго думал чел я хуже него?
  9.  
  10. Так я начал разрабатывать язык GitRel мне понравилась идея @metaprog
  11. об интеграции в cистемах управления версиями и поэтому начал
  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. сейчас я читаю про BNF и грамматики для генерации языка в ACT, но я
  75. хочу придумать свой формат представления языка, ведь аст не ACT не
  76. предусматривает смысловое расположение в разных мирах.
  77. Пока идея ситаксиса разрабатывается.
  78.  
  79. ### Формальная математическая модель
  80.  
  81. ```
  82.  
  83. U V W - разные миры (ветки гита)
  84.  
  85. V - связан с W он бранч просто
  86.  
  87. eval - считает один шаг выполнения в мире
  88.  
  89. eval(V) ⊂ eval(W) ;; Ведь мир зависимы друг для руга
  90.  
  91. connect(V | W) ;; соеденяет наши миры коннект, они смотрят на
  92. результат, получает значение что не противоречит
  93.  
  94.  
  95. ```
  96.  
  97. ### Контакты
  98.  
  99. Я всегда готов в конструктивной критике, буду рад её выслушать.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement