Moe Opublikowano 28 Kwietnia 2012 Udostępnij Opublikowano 28 Kwietnia 2012 Język WTF? Czym jest język WTF? i do czego służy? Język WTF? jest językiem ezoterycznym, czyli nie nadającym się do zastosowań podczas pisania aplikacji użytkowych. Jest językiem stworzonym przez jedną osobę pragnącą zdobyć i poszerzyć swoją wiedzę na temat programowania komputerów. Skoro jest ezoteryczny, to czy znaczy, że jest trudny? Język ten jest może się kojarzyć z językami BrainF*ck, czy BrainFork. Jednak język ten ma swoją, nietypową dla normalnych języków programowania składnie. Składnia ta mimo , że wygląda ?groźnie?, to zawiera jedynie kilkanaście poleceń, których działanie łatwo jest poznać i nauczyć się ich. Aha? zapomniałem odpowiedzieć na pytanie zadane wyżej? czy jest trudny ? powiem tyle ? zdecyduj sam ;) Jak działa język WTF? Język WTF? wczytuje na samym początku plik skryptu (script.txt) i go wykonuje. Dokładniejsze działanie jest zaprezentowane w dziale ?Komendy języka WTF?? Komendy języka WTF? Podstawy języka WTF? Język WTF? opiera swoje działanie wyłącznie na tablicy, której graficzny przykład można zaobserwować poniżej: Cała praca z językiem WTF? zawęża się do zapisywania danych w tablicy i wykonywaniu operacji za pomocą odczytywania tychże danych z tablicy. Komendy języka WTF? C - Czyści konsolę > - Przesuwa wskaźnik na podane miejsce w tablicy. Przykład: Przykładowy program ========== > 7 Wskaźnik zostanie przesunięty na 7 miejsce na tablicy. $ - Zapisuje dane w aktualną pozycję wskaźnika na tablicy. Przyjmuje wartości tekstowe jak i liczbowe. Przykład: Przykładowy program ========== > 7 $ Test ! - Sprawdza wartość miejsca na tablicy. Przykład: Przykładowy program ========== > 7 $ Test ! 7 < - Drukuje dane z tablicy ( podobnie jak "!" ) # - Wykonuje działanie matematyczne na dwóch liczbach z tablicy. Przykład: Przykładowy program ========== > 1 $ 5 > 2 $ 10 > 3 $ + # 1 2 3 BC - Zmienia kolor tła. Dostępne kolory - 1 - WHITE, 2 - BLACK, 3 - RED, 4 - BLUE, 5 - GREEN, 6 - YELLOW GET - Pobiera dane od użytkownika i zapisuje je do miejsca na tablicy. Przykład: Przykładowy program ========== GET 1 ( 1 miejsce na tablicy ) < 1 X - Powoduje natychmiastowe przerwanie pracy programu oraz X/t - przerywa pracę programu po czasie zapisanym w wybranym miejscu na tablicy. Komendy będą dodawane na bieżąco. Zrobione i do zrobienia - ZROBIONE - Konsola i rozpoznawanie komend - Komendy dotyczące matematyki - Komendy WEJŚCIA / WYJŚCIA tekstu - DO ZROBIENIA - Pętle - Obsługa multimediów Dziennik aktualizacji 28-04-2012 - Rozpoczęto dystrybucję języka WTF? 28-04-2012 - Wydano pierwszą testową wersję języka WTF oraz WTF IDE. 29-04-2012 - Aktualizacja 0.256 PRE-ALPHA Znane błędy Brak Download WTF - Wersja 0.125 + WTF IDE - Wersja 0.125 PRE - ALPHA ( 28-04-2012 ) WTF - Wersja 0.256 PRE - ALPHA ( 29-04-2012 ) Komentarz: Uwaga: Plik "script.txt" zawsze musi znajdować się w folderze z kompilatorem. Po każdej operacji wykonuj spację odstępu ( miejsce na komentarz ). Przykład: Script name ========== KOMENTARZ > 1 KOMENTARZ C KOMENTARZ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Chell Opublikowano 28 Kwietnia 2012 Filar Społeczności Udostępnij Opublikowano 28 Kwietnia 2012 Przecież to co pokazałeś to 3 sekundy roboty w c++ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 28 Kwietnia 2012 Udostępnij Opublikowano 28 Kwietnia 2012 W woli ścisłości to nie jest język programowania, ani nawet skryptowy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moe Opublikowano 28 Kwietnia 2012 Autor Udostępnij Opublikowano 28 Kwietnia 2012 @Chell Projekt jest wykonywany w GML, i proszę, nie mieszajmy do tego innych języków, ok? @ediepl Nigdy nie pisałem, jaki to jest ( i czy to jest ) język programowania. Po prostu piszę, że jest to "Język". Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 28 Kwietnia 2012 Udostępnij Opublikowano 28 Kwietnia 2012 Ale pojęcie język ezoteryczny odnosi się do języków programowania, a to nawet nie jest jaki kolwiek język. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moe Opublikowano 28 Kwietnia 2012 Autor Udostępnij Opublikowano 28 Kwietnia 2012 Ale pojęcie język ezoteryczny odnosi się do języków programowania, a to nawet nie jest jaki kolwiek język. Dobra tam ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Caporegime Opublikowano 28 Kwietnia 2012 Udostępnij Opublikowano 28 Kwietnia 2012 Projekt jest wykonywany w GML, i proszę, nie mieszajmy do tego innych języków, ok?no tak, to zawsze jakieś usprawiedliwienie - nie robiłem tego w C++, wolałem tyrać godzinami (choć też pewnie nie) w GML zamiast poszukać lepszego rozwiązania. Dobra tamjak zwykle przy twoich projektach Rozpoczęto dystrybucję języka WTF?przepraszam? czyli nie nadającym się do zastosowań podczas pisania aplikacji użytkowych.to znaczy że robisz coś za co po pierwsze jesteś hejtowany, po drugie nie ma z tego żadnego użytku? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moe Opublikowano 28 Kwietnia 2012 Autor Udostępnij Opublikowano 28 Kwietnia 2012 Aktualizacja 28-04-2012r: Po pierwszym dniu pisania, pierwsza wersja ujrzała światło dzienne - 0.125 PRE-ALPHA. Proszę o zgłaszanie ewentualnych błędów w celu ich poprawienia w następnej aktualizacji. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 28 Kwietnia 2012 Udostępnij Opublikowano 28 Kwietnia 2012 projekt umrze za dwa dni Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Caporegime Opublikowano 29 Kwietnia 2012 Udostępnij Opublikowano 29 Kwietnia 2012 em... co to robi? czy to jest edytor tekstowy? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piotrek1910 Opublikowano 29 Kwietnia 2012 Udostępnij Opublikowano 29 Kwietnia 2012 A tak szczerze to do czego do jest potrzebne? Chyba tylko dla zabawy. (bez obrazy) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moe Opublikowano 29 Kwietnia 2012 Autor Udostępnij Opublikowano 29 Kwietnia 2012 A tak szczerze to do czego do jest potrzebne? Chyba tylko dla zabawy. (bez obrazy) Tak, to ma służyć do zabawy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Utermiko Opublikowano 29 Kwietnia 2012 Udostępnij Opublikowano 29 Kwietnia 2012 Dodane dwa przykłady zastosowań. Uwaga: Plik "script.txt" zawsze musi znajdować się w folderze z kompilatorem. Taka uwaga, to jest raczej interpreter, a nie kompilator. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 29 Kwietnia 2012 Udostępnij Opublikowano 29 Kwietnia 2012 Interpretator w interpretatorze. Gratuluję. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Utermiko Opublikowano 29 Kwietnia 2012 Udostępnij Opublikowano 29 Kwietnia 2012 Jeśli zamierzasz przy tym zostać, to radzę przerobić to na coś w stylu Logomocji. Wprawdzie i tak to będzie, jak to Tymon powiedział, "interpretator w interpretatorze", ale wg. mnie już lepsze takie coś. Co do IDE to Notatnik windowsowy oferuje większe możliwości. Twój nawet nie dodaje rozszerzenia .txt przy zapisywaniu (trzeba dopisać w nazwie jak się zapisuje). BTW. Bardzo trafna nazwa dla tego "języka". Powiedziałem to samo jak to zobaczyłem :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moe Opublikowano 29 Kwietnia 2012 Autor Udostępnij Opublikowano 29 Kwietnia 2012 Jeśli zamierzasz przy tym zostać, to radzę przerobić to na coś w stylu Logomocji. Wprawdzie i tak to będzie, jak to Tymon powiedział, "interpretator w interpretatorze", ale wg. mnie już lepsze takie coś. Co do IDE to Notatnik windowsowy oferuje większe możliwości. Twój nawet nie dodaje rozszerzenia .txt przy zapisywaniu (trzeba dopisać w nazwie jak się zapisuje). BTW. Bardzo trafna nazwa dla tego "języka". Powiedziałem to samo jak to zobaczyłem :P Oczywiście, jeżeli ktoś nie chce, to nie musi używać WTF IDE. Wystarczy notatnik. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
adam014 Opublikowano 29 Kwietnia 2012 Udostępnij Opublikowano 29 Kwietnia 2012 Oczywiście, jeżeli ktoś nie chce, to nie musi używać WTF IDE. Wystarczy notatnik. Problem w tym że nikt nie chce ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moe Opublikowano 29 Kwietnia 2012 Autor Udostępnij Opublikowano 29 Kwietnia 2012 Aktualizacja 29-04-2012 UWAGA Zmieniono działanie komendy "#" odpowiedzialnej za matematykę. Teraz ostatni argument ( operacji ) musi również być zapisany do tablicy. Dodano trzy komendy: BC - Zmienia kolor tła. Dostępne kolory - 1 - WHITE, 2 - BLACK, 3 - RED, 4 - BLUE, 5 - GREEN, 6 - YELLOW GET - Pobiera dane od użytkownika i zapisuje je do miejsca na tablicy. Przykład: Przykładowy program ========== GET 1 ( 1 miejsce na tablicy ) < 1 Dodano również przykład prostego kalkulatora z użyciem komendy GET. X - Powoduje natychmiastowe przerwanie pracy programu oraz X/t - przerywa pracę programu po czasie zapisanym w wybranym miejscu na tablicy. Download: WTF - Wersja 0.256 PRE - ALPHA ( 29-04-2012 ) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Wojo Opublikowano 29 Kwietnia 2012 Udostępnij Opublikowano 29 Kwietnia 2012 Weź idź stym Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
RafiSI Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 Może wygląda jak wygląda, ale działa. Jeżeli działa to jest dobre, kiedy się go trochę rozwinie, a widzę, że się rozwija to może nawet coś konkretnego z tego wyjdzie. Ciekawe jakie było podejście ludzi jak assebler został "wyparty" pascal'em, w tedy też mówili: "Weź idź z tym"... Jest to bardzo ciekawy język ! Jego składnia jest dużo mniejsza choćby nawet od pascal'a czy C++. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 I oczywiście daje te same możliwości co języki do których się odwołałeś. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MXQ Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 uwielbiam trollowe zapowiedzi moe po co nam to? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
RafiSI Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 uwielbiam trollowe zapowiedzi moe po co nam to? A Tobie udało się stworzyć ?! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 @RafiSI: Jesteś inteligentny jak kanapka którą właśnie jem, sam interpreter to 20 min roboty jak nie mniej, i niema co się tym podniecać, a co dopiero porównywać do c++ czy pascala. Ciekawe jakie było podejście ludzi jak assebler został "wyparty" pascal'em Tyle że bez assemblera pascal by nie powstał, zresztą jak wszystkie języki wysokopoziomowe. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
RafiSI Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 @RafiSI: Jesteś inteligentny jak puszka kanapka którą właśnie jem, sam interpreter to 20 min roboty jak nie mniej, i niema co się tym podniecać, a co dopiero porównywać do c++ czy pascala. Tyle że bez assemblera pascal by nie powstał. Na temat poziomu Twojej inteligencji się nie wypowiadam, bo musiałbym zniżyć się do Twojego poziomu, po drugie tu nie chodzi o moją inteligencję tylko o język... więc nie wiem czy umiesz czytać ze zrozumieniem. Interpreter w 20 min - zrób z chęcią zobaczę, oczywiście BEZ BŁĘDÓW ! Pascal bez assemblera by nie powstał - to każdy wie, więc po co to piszesz ? Każdy język jest oparty na kodzie maszynowym geniuszu... nawet te o którym tu trwa dyskusja. Nie obraziłem Ciebie nigdy i nic do Ciebie nie miałem WIĘC NIE OBRAŻAJ LUDZI, którzy mają odmienne zdanie OK ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 Far out dude, sorki za tę kanapkę. Licz czas, zaraz wrzucę kod. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
RafiSI Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 Far out dude, sorki za tę kanapkę. Licz czas, zaraz wrzucę kod. Kanapkę wybaczam, 12:33 + 20 min = 12:53 a jest 13:05... Puki co lece do roboty, będę czekał na Twoj interpreter jak i WTF Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MXQ Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 rafi chodzi o to że to totalny chłam a nie język Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 Sorki za spóźnienie ale router mi wysiadł... GML (CREATE) dzialania = ds_list_create(); tablica[9999] = 0; wskaznik = 0; file = file_text_open_read("script.txt"); while(1) { if file_text_eof(file) break; switch(file_text_read_string(file)) { case "C": { ds_list_clear(dzialania); break; } case ">": { file_text_readln(file); wskaznik = real(file_text_read_string(file)); ds_list_add(dzialania, "> "+string( wskaznik )); break; } case "<": { file_text_readln(file); ds_list_add(dzialania, tablica[real(file_text_read_string(file))] ); break; } case "$": { file_text_readln(file); tablica[wskaznik] = file_text_read_string(file); ds_list_add(dzialania, "$ "+string(tablica[wskaznik])+" at "+string( wskaznik )); break; } case "#": { var l1, l2, dzialanie, wynik; file_text_readln(file); l1 = real(file_text_read_string(file)); file_text_readln(file); l2 = real(file_text_read_string(file)); file_text_readln(file); dzialanie = file_text_read_string(file); switch(dzialanie) { case "+": { wynik = l1 + l2; break; } case "-": { wynik = l1 - l2; break; } case "*": { wynik = l1 * l2; break; } case "/": { wynik = l1 / l2; break; } } ds_list_add(dzialania, string( l1 ) + " " + dzialanie + " " + string( l2 ) + " = " +string( wynik ) ); break; } case "": { break; } default: { break; } } file_text_readln(file); } file_text_close(file); GML (DRAW) for(i = 0; i<ds_list_size(dzialania); i+=1;) { draw_text(12, 12+(16*i), ds_list_find_value(dzialania, i)); } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Sernat Opublikowano 30 Kwietnia 2012 Udostępnij Opublikowano 30 Kwietnia 2012 Edie jak zawsze wszystkich rozpi***lił :thumbsup: . Temat do zamknięcia. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się