Wpis z mikrobloga

A więc już oficjalnie:
Kaiju (mój nowy język programowania, który ma zastąpić mi JSa) DZIAŁA!
( ͡ ͜ʖ ͡)


Będzie czym się na #globalgamejam bawić :D

Repo jak zwykle tu: https://github.com/PsichiX/Kaiju (folder test pokaże Wam jak wyglądają pliki typów atomowych, po czym zauważycie jak bardzo można go rozbudowywać wedle potrzeb :3)

no to #dobranoc! ()

#programowanie #gamedev #kaiju #intuicio #chwalesie
PsichiX - A więc już oficjalnie:
Kaiju (mój nowy język programowania, który ma zastą...

źródło: comment_nIbH7UO79BtHfZa4ruqcquChYba8dx8A.jpg

Pobierz
  • 55
  • Odpowiedz
@PsichiX: Wiesz, odpowiedz sobie na pytanie, czy jak odpaliś jakiś z tych skryptów 5 lat później (czy może bardziej 5 miesięcy później), to będziesz tę składnie kojarzył i czy będziesz wiedział o co chodzi. Skoro chcesz część swojej infrastruktury o tej język oprzeć, to takie pytanie musisz sobie zadać.

Osobiście wolałbym bardziej opisowe nazwy niż symbole.
  • Odpowiedz
@PsichiX: nadal nie widzę sensu ale jak się bawimy to się bawmy ( ͡° ͜ʖ ͡°)
Dlaczego nie "static method" tak jak w każdym innym języku? Dlaczego "newObject" zamiast zwykłego "new"? Co mają robić te wszystkie "inject"?
  • Odpowiedz
@IrvinTalvanen:

% dyrektywa(argumenty)
use - ładuje, kompiluje i linkuje kod pliku do programu wynikowego
entry - określa gdzie jest punkt startu programu
inject - wstrzykuje kod assemblera
  • Odpowiedz
@IrvinTalvanen: dla testów działania znacza część to wstawki assemblera VMki, bo biblioteka standardowa nie powstała jeszcze - jak ją skończę to i znikną injecty z kodu, który widzisz :D
  • Odpowiedz
@PsichiX: Jak zrobisz normalną składnię (przez co rozumiem słowa kluczowe, i coś C/Java like), i "beggining" STD to chętnie mogę Ci kontrybutować. ;]
W jakim IDE piszesz?
  • Odpowiedz
@Kofels: chętnie, ale bardziej przyda mi się pomoc z biblioteką standardową :) Code Blocks, ponieważ CLion zdaje się nie jest jeszcze stabilny, a ja potrzebuję cross platformowego IDE

Wołam tez reszte z pytaniem, czy teraz składnia jest czytelniejsza? Jest update na repo.

@FedoraTyrone: @IrvinTalvanen: @CebulowaKochanka: @Royalekk: @nvmm: @konradk: @kuhwa: @Mave: @psychob: @
PsichiX - @Kofels: chętnie, ale bardziej przyda mi się pomoc z biblioteką standardową...

źródło: comment_1kloD4pQxNi7m6C9e9J6rMD41ohiojbp.jpg

Pobierz
  • Odpowiedz
@PsichiX: "met", "let"? Dlaczego rezygnujesz z zapisu przyjętego przez zdecydowaną większość języków i robisz coś co tylko utrudni korzystanie? Szczególnie, że to "let" raz jest a raz go nie ma.
  • Odpowiedz
@IrvinTalvanen: w sensie:
var zamiast let i function zamiast met? na var moge zmienic, ale chciałem z tym być bardziej zgodny z keywordami ES6. met mnie też jakoś nie kręci, ale chciałem by było krótko i jasno iż to metoda. jak proponujesz zmienić?
  • Odpowiedz
well, przetestowalem go i nie wykrzacza sie xD


@PsichiX: No widzę że ten Twój folder z testami to trochę biedny jest :D

Ogólnie to czy z tym AST pisanie kompilatora serio jest takie proste? Dziwi mnie tak niewielka stosunkowo ilość kodu jak na język z klasami i bajerami. No i ta pewność, że wszystko działa :D ile roboty tak naprawdę wykonuje to całe AST?
  • Odpowiedz
@-PPP-: AST (Abstract Syntax Tree) to jedynie format danych wyjściowych powstałych z przemielenia pliku wejściowego, buduje strukturę składniową. tylko tyle taki parser AST robi. ja potem muszę to drzewo AST konwertować do PST (Program Structure Tree) i mając już PST mogę dokonywać dalszej kompilacjai, czy to do assemblera VMki, czy to natywnie do C/C++ - najwięcej roboty jest właśnie z konwersją AST do PST i PST do wyjściowego targetu :)
  • Odpowiedz
ale chciałem by było krótko i jasno


@PsichiX: krótko jest, jasno może i też ale pamiętaj, że będziesz zmieniał języki i nie będziesz pisał w tym jednym cały czas. Dlatego im więcej zgodności w składni między tym Twoim a pozostałymi tym mniej pomyłek co oznacza lepszą wydajność przy pisaniu.
Co do "let" to jest w specyfikacji ES6 i spokojnie możesz go użyć jeśli będzie działał tak jak tam opisali. Jeśli
  • Odpowiedz