Zaloguj się
Projekty Kategorie Archiwum
21 kwietnia
Poniżej znajduje się kod "interpretera" napisany w 5 minut, więc BARDZO BUGGY, BEZ SPRAWDZANIA BŁĘDÓW, ETC :( Zrobiłem to, żeby sprawdzić, czy w ogóle coś takiego jest możliwe. No i jest :)
// "interpreter"
uses dos;
var doWrite: boolean = false; s: string = '';
begin
	assign(input, paramstr(1)); reset(input);
	assign(output, '/tmp/pascal.tmp'); rewrite(output);
	while not eof(input) do
	begin
		readln(input, s);
		if doWrite then writeln(output, s); // skip 1st line
		doWrite:= true;
	end;
	close(input); close(output);
	writeln(stderr, '====  INIT ===='); exec('/usr/local/bin/fpc', '-FE/tmp -o/tmp/pascal /tmp/pascal.tmp');
	writeln(stderr, '==== EXEC ===='); exec('/tmp/pascal', '');
end.

Mając już gotowy "interpreter", wystarczy napisać dowolny program w Pascalu, a następnie nadać plikowi .pas atrybut "+x".
#!/bin/pascal

// przykład
uses glib, gdk, gtk;
var window, button: pGtkWidget;
begin
	gtk_init(@argc, @argv);
	window:= gtk_window_new(GTK_WINDOW_TOPLEVEL);
	button:= gtk_button_new_with_label('Hello, World');
	gtk_container_add(GTK_CONTAINER(window), button);
	gtk_widget_show_all(window);
	gtk_main();
end.

Proszę o komentarz

Czwartek 21 kwietnia, 2005 20:56

Nigdy nie lubiłem tego języka. Nawet w liceum na informatyce uprosiłem zgodę Pani Nauczycielki, żebym mógł pisać programy w C. :))

Czwartek 21 kwietnia, 2005 21:22

ee, fajny język. Do nauki w sam raz. A Delphi do wszystkiego poważniejszego :)

Czwartek 21 kwietnia, 2005 21:26

marcoos:

fooBar(); // czy to C czy FreePascal? ;)
x += 10;
i++;

Napisz komentarz

Dodaj komentarz

Formatowanie komentarza

Kategorie

Ewolucja Internetu 8 | Fail 40 | Gry 46 | Humor 129 | Idiotyzm 50 | Java 110 | KDE 85 | KShutDown 22 | Linux 84 | Makagiga 58 Muzeum 3 | Ogólne 819 | Polityka 76 | Programowanie 51 | Reklamy 4 | Techblog 19 | Teorie Spiskowe 12 | TV 59 | UI 9 | Użyteczność 30 | WWW 90 | Wyrwane z Kontekstu 34 | X Files 14

Archiwum

Maj 2012 | Kwiecień 2012 | Marzec 2012 | Luty 2012 | Styczeń 2012 | Grudzień 2011 | Listopad 2011 | Październik 2011 | Wrzesień 2011 | Sierpień 2011 | Lipiec 2011 | Czerwiec 2011 | Maj 2011 | Kwiecień 2011 | Styczeń 2011 | Listopad 2010 | Październik 2010 | Wrzesień 2010 | Sierpień 2010 | Lipiec 2010 | Czerwiec 2010 | Kwiecień 2010 | Marzec 2010 | Luty 2010 | Styczeń 2010 | Grudzień 2009 | Listopad 2009 | Październik 2009 | Wrzesień 2009 | Sierpień 2009 | Lipiec 2009 | Czerwiec 2009 | Maj 2009 | Kwiecień 2009 | Marzec 2009 | Styczeń 2009 | Grudzień 2008 | Listopad 2008 | Październik 2008 | Wrzesień 2008 | Sierpień 2008 | Lipiec 2008 | Czerwiec 2008 | Maj 2008 | Kwiecień 2008 | Marzec 2008 | Luty 2008 | Styczeń 2008 | Grudzień 2007 | Listopad 2007 | Październik 2007 | Wrzesień 2007 | Sierpień 2007 | Lipiec 2007 | Czerwiec 2007 | Maj 2007 | Kwiecień 2007 | Marzec 2007 | Luty 2007 | Styczeń 2007 | Grudzień 2006 | Listopad 2006 | Październik 2006 | Wrzesień 2006 | Sierpień 2006 | Lipiec 2006 | Czerwiec 2006 | Maj 2006 | Kwiecień 2006 | Marzec 2006 | Luty 2006 | Styczeń 2006 | Grudzień 2005 | Listopad 2005 | Październik 2005 | Wrzesień 2005 | Sierpień 2005 | Lipiec 2005 | Czerwiec 2005 | Maj 2005 | Kwiecień 2005 | Marzec 2005 | Luty 2005 | Styczeń 2005