Přicházíte však o možnosti a abstrakce, které vám nabýzí C++ díky třídám a šablonám
Naštěstí tím nepřichází o možnosti a abstrakce, které C++ nikdy nenabízelo, například dynamické objektové systémy, kvalitní koncept funkce (plný lexikální scoping) a podobně.
(nebo je musíte složitě nahrazovat - je-li to vůbec možné).
Leckdy se dá nahrazovat jednoduše, není třeba nahrazovat složitě. Kromě toho se mi zdá, jako byste měl dojem, že C++ templates jsou snad jakýmsi nedostižným vrcholkem všech makrosystémů, který je zapotřebí kopírovat, když je složitý makrosystém zapotřebí.
Můj názor je prostý: šroubovat šroubovákem a zatloukat kladívkem. C++ jsou bohužel kombinačky. Ano, dají se s nimi žvýkat matky a pižlat dráty, ale chce to medaili za hrdinství. :]
taktez lze pouzit http://www.keplerproject.org/remdebug/, ktery je mimochodem i soucasti LuaEclipse (ale pro mnoho programatoru to muze byt kanon na vrabce :-)Remdebug je moc pěkná věc, ale LuaEclipse...skoro mi přijde, že používat Eclipse na programování v Lua je takový docela slušný váhový nepoměr. :-]
Zaregistrované funkce se nedají volat z coroutin.
function main()
print(getsomething())
coroutine.resume(coreroutine)
end
coreroutine = coroutine.create(
function()
repeat
print(getsomething())
coroutine.yield(mask)
until 1 == 2
end
)
Pokud getsomething() je zaregistrovaná funkce vracející třeba 15, pak výše uvedený kód vydá něco jako
15
function: 0x7f31c0
Nevíte někdo, jak získat z coroutiny hodnotu vrácenou zaregistrovanou C funkcí?