PsichiX
Jakby kto pytał co się dzieje z platformą Intuicio, to daję znać, że na dniach pojawi się publicznie pierwsza część toolsetu v4, w postaci kompilatora i interpretera (shellowego), na początek na windowsa (bo Ubuntu muszę na nowo postawić ;<).

PS. Wersja 4 jest pisana od zera, już nie jako część silnika Xenon Core, a osobny projekt, a także nie będzie w zupełności kompatybilny z VMką w wersji 3 - chcę by Kaiju
5
  • Najlepsze
  • Wszystkie komentarze
DK13
@PsichiX: Szanuję.
1
sylwke3100
@PsichiX Kiedy do tego czegoś podpinasz biblioteki Qt :D?
0
PsichiX
W ramach portowania #xenoncore3 na unixy, powstało środowisko uruchumieniowe dla skryptów assemblera IntuicioVM (potem będzie też i dla Intuicio++ jak już skończę kompilację jego kodu do asma).


( ͡° ͜ʖ ͡°)

#nieprogramowanie #intuicio #ipp
5
  • Najlepsze
  • Wszystkie komentarze
t12t12
@PsichiX: Czegoś nie rozumiem. Twoj język Intuicio++ czy assember IntuicioVM będzie kompilowany do czego? Do js? Do kodu maszynowego o.O? ;)
0
t12t12
@PsichiX: I jeszcze jedno, ile ty masz lat?
0
PsichiX
Ah, nie chwaliłem się jeszcze! przepisuję xenona (silnik, którego code base używają inne moje projekty, w tym cały Ptakopysk) na linuxy - tym samym IntuicioVM zostało rozwinięte o nowe ficzury w ramach kompatybilności z unixami, więc powolutku zbliżam się mały mi krokami do momentu, w którym za kilka miesięcy będzie można mówić o początkach konkurencji dla Node.js z językiem wspierającym współbieżność i dualizm zarządzania pamięcią ( ͡° ͜ʖ ͡°
2
  • Najlepsze
  • Wszystkie komentarze
t12t12
@PsichiX: ile ty chłopie godzin dziennie pracujesz?
0
PsichiX
@t12t12: kilkanaście :3
0
PsichiX
O-------------e, udało się! Po długich godzinach designowania i implementowania w parserze drzewa AST, mega-w-pytke-finalna-i-nie-ruszam-jej-już składnia nowego języka programowania Intuicio++ jest w końcu gotowa! ^^ Teraz muszę wracać do implementacji w kompilatorze translatora kodu do assemblera VMki.
(Gist: https://gist.github.com/PsichiX/15b708b6f3675b86fbe4)

Teraz możecie hejcić, albo chwalić składnię, czy też rzucać propozycje (które by weszły do implementacji po opublikowaniu toolsetu) (。◕‿‿◕。)


#intuicio #ipp #
18
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Nie mogłem zasnąć, więc dla zmęczenia zakodowałem finalną składnię języka Intuicio++. Aktualnie trwają prace nad kompilacją wyrażeń (staram się nie zrobić z tego kobyły, ale kompilacja wyrażeń to chyba najcięższy kawałek kompilatora (╥﹏╥)).
Link do tekstowej wersji: https://gist.github.com/PsichiX/15b708b6f3675b86fbe4 :3

#intuicio #ipp #ptakopysk #xenoncore3 #gamedev #programowanie #gamedev #nocnazmiana
14
  • Najlepsze
  • Wszystkie komentarze
PsichiX
A więc to już chyba oficjalne! Nowy Ptakopysk v2 będzie zintegrowany z Qt (aplikacje osadzone w QtApplication; przeportowany renderer Xenon Core 3 opierający się o Qt3D; Językiem programowania będzie Intuicio++, a kod będzie uruchamiany w VMce Intuicio lub kompilowalny do C++, miast QML + JavaScript, jak robią to inne edytory gier)! A po tym etapie zostanie dopisany export do HTML5 (kompilacja Intuicio++ do asm.js) :3
Toolset będzie miotał
11
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Yep, dziś podczas kodowania na #nocnazmiana, powstała finalna wersja bazowa składni I++! ^^ Jutro zaczynam implementować kompilację tego wszytkiego do assemblera Intuicio - do końca tygodnia pewnie będzie można już wrzucić toolset (kompilator, runner i jakąś podstawową dokumentację języka) do testów publicznych :333

https://gist.github.com/PsichiX/15b708b6f3675b86fbe4

#ipp - otwieram tag związany wyłącznie z nowinkami z samego Intuicio++!
#intuicio #xenoncore3 #ptakopysk #
9
  • Najlepsze
  • Wszystkie komentarze
PsichiX
TL; DR:
https://gist.github.com/PsichiX/15b708b6f3675b86fbe4

Po dłuższej zabawie w robienie parsera drzewa AST doszedłem do wniosku, że zdobyłem wystarczającą wiedzę do tego, by móc zacząć kodować właściwy kompilator Intuicio++ (a.k.a. I++) - zmodyfikowałem nieco pierwotną składnię, najwcześniej po weekendzie dojdą funkcje oraz wstawki ASMowe i od tego momentu zajmę się procesem konwertowania drzewa AST do assemblera Intuicio, tym samym testując jego bazową funkcjonalność. Gdy osiągnę ten etap, zbuduję paczkę do testów publicznych, co każdy by
10
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Nie rób parsera używając RegExa - mówili. Namęczysz się więcej, niżeli to osiągniesz, o ile osiągniesz - mówili. A takiego lolka! Powiedziałem, że zrobię, to zrobiłem i udało się zrobić nawet sprawnie działające rekurencje regexowe (yup, ominąłem dosyć prostym trickiem problemy wynikające z tego, że silnik RegExowy w .NET to maszyna stanu skończonego!) ^^
Tworzenie reguł składni I++ ciąg dalszy :3

Oto pliki (bo obrazek tylko 'na zachętę'): https://gist.github.com/PsichiX/b1c121444e67f685ed3b

#intuicio #xenoncore3
13
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Powolutku (bo czasu bardzo mało i co kilka dni mogę siadać do kodu) powstaje regexowy generator drzewa AST. W obecnej postaci kod zdaje się jest już skończony, teraz pozostaje uzupełnić plik gramatyki i voila (potem na podstawie tejże gramatyki i++ powstanie już docelowy kompilator napisany w c/c++ - ten parser służyć ma głównie do testowania poprawności kompilowania nowych języków do asma Intuicio) :3
W skrócie: coraz bliżej ukończenia i wydania toolsetu mej
15
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Ten uczuć, gdy piszesz parser drzewa AST w #cpp i zajmuje to 3 dni (z czego masę czasu zajmuje szukanie i kompilowanie odpowiednich bibliotek), a potem robisz to samo w #csharp i zajmuje to 3 godziny <3
Bogowie, czemu ja się jeszcze nie nauczyłem, że #csharp == szybciej i prościej? (╥﹏╥)


#gorzkiezale #nieprogramowanie #gamedev #
4
  • Najlepsze
  • Wszystkie komentarze
PsichiX
W przerwie od spamowania nowymi ficzurami #intuicio, pokażę Wam jeden z fajniejszych już wbudowanych w VMkę: obiekty zarządzane
{ to takie 'małe' przygotowanie do kompilacji ILasm (.NET) -> Intuicio :3 }
A tutaj łapcie Gista kodu bez kolorowania składni: https://gist.github.com/PsichiX/8cbc054472c803e17ea3

#xenoncore3 #ptakopysk #gamedev #programowanie
5
  • Najlepsze
  • Wszystkie komentarze
PsichiX
A dziś zrobiłem działającą multipikację bloku współbieżnego, przydatnego np. do zrobienia bloku tych samych operacji wykonywanych na różnych zakresach tej samej kolekcji danych (możnaby na tej zasadzie zrobić np. software'owy symulator pipeline'u shaderów ;3). Przykład na obrazku to uproszczenie, pokazujące iż działa, ot. Następnym razem zarzucę bardziej fancy przykładem! ^^


#gamedev #programowanie #xenoncore3 #intuicio
7
  • Najlepsze
  • Wszystkie komentarze
PsichiX
YAAAAY! Udało się! ^^ co prawda napieprzyłem się z implementacją, bo musiałem przerobić sygnalizowanie zakończenia wątków współbieżnych, ale działa! :3 jeszcze tylko dodać wymuszone punkty synchronizacji, co by logi mogły się poprawnie wyświetlać i będzie perfekcyjnie <3

#gamedev (bo kiedyś trafi do #ptakopysk-a); #programowanie #xenoncore3 #intuicio
15
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Do końca tygodnia planuję zaimplementować główny ficzur mej maszyny wirtualnej - bloki współbieżnie wykonywane, czyli możemy 'zmusić' dwa lub więcej fragmenty kodu do wykonania się współbieżnie, bez tworzenia osobnych wątków do tego. To taki draft początkowy. Ma to być dostępne już w kolejnej większej wersji #ptakopysk-a ^^
Co o tym myślicie? :3


#programowanie #gamedev #intuicio #xenoncore3
11
  • Najlepsze
  • Wszystkie komentarze