- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
function t($text, $parameters = null) {
$lang = empty($_COOKIE['lang']) ? 'ru' : $_COOKIE['lang'];
$result = !array_key_exists($text, Application_Model_Translate::$lang_package) || ($lang == 'ru') ? $text :
Application_Model_Translate::$lang_package[$text][(int) ($lang == 'en')];
if (isset($parameters)) {
if (!is_array($parameters))
$parameters = array($parameters);
foreach ($parameters as &$param)
$param = addslashes($param);
eval('$result = sprintf($result, "'. implode('","', $parameters) . '");');
}
return $result;
}
guest 10.01.2014 22:48 # +1
bormand 10.01.2014 22:59 # +1
Автор явно не знал про call_user_func_array :)
guest 11.01.2014 12:21 # +1
bormand 11.01.2014 12:37 # +1
guest 11.01.2014 22:38 # 0
inkanus-gray 11.01.2014 22:56 # 0
Lure Of Chaos 12.01.2014 18:07 # 0
LispGovno 12.01.2014 19:26 # +1
defecate-plusplus 12.01.2014 19:27 # +1
LispGovno 12.01.2014 19:34 # +2
Но это каким уровнем упоротости нужно быть, чтобы искать интерпретатор крестов для своего движка.
Никак от лени учить новый язык.
1024-- 12.01.2014 19:58 # +1
bormand 12.01.2014 20:02 # +4
Очень важно, чтобы интерпретатор крестов был написан на крестах. Тогда можно запустить кресты в крестах в крестах в крестах...
kegdan 12.01.2014 20:24 # +1
http://ru.wikipedia.org/wiki/%D0%9A%D1%80%D0%B5%D1%81%D1%82%D1%8B
LispGovno 12.01.2014 21:24 # +1
http://www.gamedev.ru/flame/forum/?id=184799
Читал по диагонали, кода не нашел. Тема скушная, так что заходить не стоит. Как я понял автору лень изучать новый язык и он хочет запилить скрипты на крестах, но они долго компилируются и не имеют рефлексии, поэтому хочет взять интерпретатор.
bormand 12.01.2014 21:37 # +3
Дальше не читал.
Abbath 12.01.2014 23:53 # +3
kegdan 13.01.2014 06:51 # +1
kegdan 13.01.2014 06:43 # +2
govnomonad 13.01.2014 07:10 # +4
cling уже сделали. Автор - слоупок
govnomonad 13.01.2014 07:11 # +1
https://www.youtube.com/watch?v=BrjV1ZgYbbA
roman-kashitsyn 12.01.2014 20:11 # 0
TarasB 12.01.2014 20:54 # 0
LispGovno 12.01.2014 21:19 # +2
Тебе суда:
http://fskn.gov.ru/pages/main/prevent/13250/index.shtml
Не говоря уже о том, что это лишь препроцессор сишки.
TarasB 13.01.2014 13:36 # +1
bormand 13.01.2014 14:00 # +4
Конечно можно:
#include "кококомпилируемый_во_время_кокомпиляции _кококод.cpp"
TarasB 13.01.2014 14:07 # 0
Чтобы
template <const char* Code> ...
bormand 13.01.2014 14:49 # +2
Так то в mpl есть и рекурсия,и условия, и строки, и списки... И теоретически можно было бы запилить компилятор крестов... Но это все дико жрет память, из-за того что это по сути чисто функциональный язык, а сборщика мусора само-собой нету.
Короче в теории можно. А на практике у тебя не хватит памяти, терпения, и места на винте под вывод ошибок ко-ко-компиляции.
TarasB 13.01.2014 14:56 # +2
bormand 13.01.2014 15:12 # +5
Садись, двойка. Правильный вывод: текущие архитектуры - говно, т.к. не позволяют юзать бесконечный объем памяти, а поэтому не эквивалентны машине тьюринга. При бесконечной памяти все отлично работает ;)
TarasB 13.01.2014 15:15 # 0
3.14159265 13.01.2014 15:15 # +3
Ааа!
Надеюсь в /dev/null хватит?
roman-kashitsyn 13.01.2014 15:19 # +6
Если не хватит, можно заюзать облако
roman-kashitsyn 13.01.2014 14:53 # +2
LispGovno 13.01.2014 14:58 # +1
Хватит что бы записать иммутабильную машину тьюринга.
defecate-plusplus 13.01.2014 16:24 # +1
bormand 13.01.2014 16:48 # +2
Но можно еще вкладывать шаблон в параметр шаблона :) Или там и глубину тоже зарезали где-нибудь в районе 64?
defecate-plusplus 13.01.2014 16:54 # +1
kegdan 13.01.2014 21:00 # 0
wvxvw 10.01.2014 23:20 # +4
По-моему тоже замечательно. Ведь, строковой ключ в массиве - потеря производительности! Автор его умело сконвертировал в интеджер, обломав тем самым прожорливый ПХП-рантайм!
bormand 10.01.2014 23:27 # +5
Stertor 10.01.2014 23:29 # +3
Stertor 13.01.2014 13:28 # 0
Vasiliy 13.01.2014 13:25 # +1