crypt of decay - Post a comment [entries|archive|friends|userinfo]
ketmar

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

иетакомпилятор Aug. 30th, 2020|12:13 pm

ketmar
подумал, что метакомпилятор для UrForth — это ведь на самом деле точно тот же самый код, который уже работает там компилятором. по сути, всё, что надо, чтобы сделать из него мета — по необходимости подменять ALLOT, CREATE, да пару слов, которые правят адреса переходов. для чего запилил слово OVERRIDE, которое позволяет system-wide подменить одно фортовое слово на другое, с возможностью позвать старое. все слова, которые генерят адреса переходов, в конце концов используют для этого три-четыре базовых слова, которые и надо подменить. ну, и немного мелочёвки типа LATEST. и тогда простым движением руки обычный компилятор превращается в метакомпилятор, и обратно. если менять формат словарной статьи — ещё одно слово поиска по словарю подменить. или вообще тупо читернуть и создать отдельный скрытый словарь, где будут создаваться просто форварды. видимо, таким путём и пойду.

кстати, теперь, с OVERRIDE, можно кучу слов обратно девиртуализировать. нет никакого смысла делать их как defer, когда их спокойно можно оверрайднуть (или вообще сделать REPLACE).
Link Read Comments

Reply:
From:
(will be screened)
Identity URL: 
имя пользователя:    
Вы должны предварительно войти в LiveJournal.com
 
E-mail для ответов: 
Вы сможете оставлять комментарии, даже если не введете e-mail.
Но вы не сможете получать уведомления об ответах на ваши комментарии!
Внимание: на указанный адрес будет выслано подтверждение.
Username:
Password:
Subject:
No HTML allowed in subject
Message: