Текущий архив: 2005.01.02;
Скачать: CL | DM;
Вниз
Библиотеки интерпретатора Найти похожие ветки
← →
Hyboid (2004-12-18 11:53) [0]Пишу свой интерпретатор. Уже есть лексический анализ и построение синтаксического дерева. Загвоздка сейчас состоит в представлении дополнительных библиотек для интерпретатора. Т.е. основные функции (например, математические exp, sin, cos) будут частью самого языка, а дополнительные (например GDI, Sockets, Files) должны храниться в подгружаемых библиотеках. Способов это реализовать кроме dll я больше не знаю, а dll мне не нравиться - Windows ONLY. Откуда вопрос, как библиотеки реализовать иначе и как это реализовано, например, в перле или питоне?
← →
KSergey © (2004-12-18 12:01) [1]> в перле или питоне?
Признаюсь, не видел ни того, ни другого - но подзреваю, что просто написана поддержка для каждой платформы
PS
Могу судить по QuakExpress. Есть реализация для Win и Mac.
Доп. модули пишутся на Cи, но с использованием интерфейса, предоставляемого библиотеками Quark. А в них, как понимаю, сделана прослойка до конкретной платформы. Т.е. сама среда и библиотеки-прослойки - платформенно зависимы, все что их использует - нет (на уровне исходников, конечно).
← →
TUser © (2004-12-18 12:17) [2]А что в перле уже есть GDI?
← →
Poirot © (2004-12-18 12:22) [3]>> TUser © (18.12.04 12:17) [2]
Есть конечно:)
← →
Hyboid (2004-12-18 12:26) [4]Нашел в Perl\lib\... dll-ки с двумя функциями:
boot_LibName и _boot_LibName
Т.е. в перле под винду все реализовано через dll? - херово дело.
А как, например, в джаве?
← →
TUser © (2004-12-18 12:36) [5]
> Poirot © (18.12.04 12:22) [3]
Странно, я перл всегда воспринимал исключительно как что-то консольное. Никогда не видел/не писал на нем ничего оконно-интерфейсного. Буду рад ссылкам на примеры.
← →
KSergey © (2004-12-18 13:03) [6]> [4] Hyboid (18.12.04 12:26)
> Т.е. в перле под винду все реализовано через dll? - херово дело.
Это почему??
> А как, например, в джаве?
Да так же!
А как вы представляете себе это реализовать иначе, интересно? На Win есть спец. формат библиотек - dll. На другой платформе -это другой формат. Нельзя по определению на какой-то платформе использовать то, что для нее не предназначено без прослойки ;)
← →
Hyboid (2004-12-18 13:39) [7]>KSergey
На другой платформе -это другой формат
DOS, Unix - там как?
← →
TUser © (2004-12-18 13:48) [8]DOS - никак. Unix - в линуксе .so
PS. Под DOS"ом QuickBasic что-то подожное делал, но я так понимаю, специального общепринятого формата там не было.
← →
KSergey © (2004-12-18 14:33) [9]> [7] Hyboid (18.12.04 13:39)
> Unix - там как?
Да я сам недавно такой же вопрос задал ;)
← →
alekc © (2004-12-18 22:58) [10]DOS в Protected Mode, кажется, тоже dll держит... во всяком случае, даже в turbo pascal я про что-то такое давненько читал.
← →
ECM © (2004-12-18 23:40) [11]В DOS были оверлеи.. кусок кода можно было замещать другим..
← →
Amoeba © (2004-12-20 10:23) [12]
> DOS в Protected Mode, кажется, тоже dll держит
Совершенно верно!
Страницы: 1 вся ветка
Текущий архив: 2005.01.02;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.047 c