<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://forum.eggheads.org/app.php/feed/topic/13647" />

	<title>egghelp/eggheads community</title>
	<subtitle>Discussion of eggdrop bots, shell accounts and tcl scripts.</subtitle>
	<link href="https://forum.eggheads.org/index.php" />
	<updated>2008-01-18T18:50:36-04:00</updated>

	<author><name><![CDATA[egghelp/eggheads community]]></name></author>
	<id>https://forum.eggheads.org/app.php/feed/topic/13647</id>

		<entry>
		<author><name><![CDATA[Kappa007]]></name></author>
		<updated>2008-01-18T18:50:36-04:00</updated>

		<published>2008-01-18T18:50:36-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=80196#p80196</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=80196#p80196"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=80196#p80196"><![CDATA[
@sKy: i did a sample module in C++ a while back just search the forum...<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=6524">Kappa007</a> — Fri Jan 18, 2008 6:50 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[nml375]]></name></author>
		<updated>2007-09-19T17:02:07-04:00</updated>

		<published>2007-09-19T17:02:07-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=76044#p76044</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=76044#p76044"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=76044#p76044"><![CDATA[
Actually, loadable tcl modules has been around since 7.5 and possibly earlier (too long ago to remember). And yes, just like eggdrop modules, these has to be compiled into a loadable binary library prior being loaded.<br>In fact, this is used by many scripts using mysql-databases along with tclmysql.<br><br>Also worth noting, with eggdrop modules, as long as you do not touch any of "eggdrop's" files, but simply work with the files of your module, there would be no need to compile anything else than your module. In fact, make would'nt even try to rebuild your eggdrop as it would see all files and dependancies as unchanged, and thus not needed to rebuild.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=8052">nml375</a> — Wed Sep 19, 2007 5:02 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sKy]]></name></author>
		<updated>2007-09-19T16:48:06-04:00</updated>

		<published>2007-09-19T16:48:06-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=76042#p76042</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=76042#p76042"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=76042#p76042"><![CDATA[
I found now Tcl 8.4 has a load command (loads machine code) and Tcl 8.5 has also an unload command but didn`t try this with eggdrop yet. Sure you would still need to compile the source on a platform you want to run it.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=6101">sKy</a> — Wed Sep 19, 2007 4:48 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[De Kus]]></name></author>
		<updated>2007-06-22T12:49:05-04:00</updated>

		<published>2007-06-22T12:49:05-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=73791#p73791</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=73791#p73791"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=73791#p73791"><![CDATA[
GCC also supports assembler inclusion. Also running C++ code via TCL sounds a little strange, C++ isn't really made designed as interpreted language. Expect for the OOP there are only very few reasons to use C++ instead of C, not sure, but I believe I read somewhere that C even runs faster than C++, but might have been out of the context.<br>Then only thing that would make sense to "interpret C++" would be to compile to temp file and execute it ^-^, you could of course embedded code into a mainframe of source, to run headerless code, but I doubt that would make much sense, you would probably rather stick to development environment with interactive debugging etc..<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2382">De Kus</a> — Fri Jun 22, 2007 12:49 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[nml375]]></name></author>
		<updated>2007-06-21T21:40:49-04:00</updated>

		<published>2007-06-21T21:40:49-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=73759#p73759</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=73759#p73759"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=73759#p73759"><![CDATA[
Tcl is a pure scripting-language, while C and C++ are programming languages...<br>Simply put, tcl is parsed at runtime, using "alot" of resources at runtime to interpret instructions. C (and C++) however, is compiled into machinecode, which is then used for execution.<br><br>Using assembler instructions in a scripting-language (asm) really is'nt practicle, as asm knows nothing of variables, fancy function names, etc. It basically is a mnemonic with a few parameters, usually being register address, memory address, or direct values. Languages such as tcl does'nt even allow you to find out the address where a variable is stored...<br><br>Most c/c++-compilers can handle assembly-instructions, and in many cases these can be intermixed with C and/or C++.<br><br>Now, for writing your own modules, checking the source of the various ones that comes with eggdrop is a good start, especially the woobie-module, as it's mainly there for demonstration purposes.<br>Roughly put however, you'll be expected to create a given set of functions that will be called upon certain events, such as when the module is loaded and unloaded. These should setup whatever needs to be done for your module to operate properly, such as registering functions and variables with tcl, creating/dropping bind-tables, etc...  The ctcp-module makes quite a decent example on that.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=8052">nml375</a> — Thu Jun 21, 2007 9:40 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sKy]]></name></author>
		<updated>2007-06-21T21:26:17-04:00</updated>

		<published>2007-06-21T21:26:17-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=73753#p73753</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=73753#p73753"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=73753#p73753"><![CDATA[
<blockquote class="uncited"><div>How would you run C++-code if you don't either compile it into the binary itself, or a loadable module?</div></blockquote>I have no idea. That`s why I ask here. <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_smile.gif" width="15" height="15" alt=":)" title="Smile"><br><br>I saw a very inspiring function in Delphi. If I got it right you can just write anywhere in your source<br>ASM<br>- ASM code here &lt;<br>END ASM. Kinda cool if you really need asm.<br><br>Thought it`s possible third party tcl script to have a similar function in tcl too.<br><br>That`s why I am asking.<br><br><br>Modules seam kinda complicated. For debugging you always need to recompile the hole bot and if you think about sharing your work for endusers it`s kinda uncomfortable for them tool compared to tcl scripts.<br><br>What do you mean with 'compile it into the binary itself'? I can compile it.. Sure. But how to plug it into eggdrop? Recompile? :/<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=6101">sKy</a> — Thu Jun 21, 2007 9:26 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[nml375]]></name></author>
		<updated>2007-06-21T20:16:37-04:00</updated>

		<published>2007-06-21T20:16:37-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=73750#p73750</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=73750#p73750"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=73750#p73750"><![CDATA[
How would you run C++-code if you don't either compile it into the binary itself, or a loadable module?<br><br>That said, the last C++-project was many years ago, when 1.3.24 was state of the art in eggdrop..  This was eggdrop2 (not eggdrop v2.xx), which did not make much progress and siezed development shortly after it was made official. Since then, development on the plain C eggdrop had continued for several years.<br><br>It has been ages since I messed with C++, so I cannot say how much work it would be to write an eggdrop-module in C++.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=8052">nml375</a> — Thu Jun 21, 2007 8:16 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sKy]]></name></author>
		<updated>2007-06-21T11:15:21-04:00</updated>

		<published>2007-06-21T11:15:21-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=73736#p73736</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=73736#p73736"/>
		<title type="html"><![CDATA[Expand eggdrop using C++?]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=73736#p73736"><![CDATA[
Is there a way to plug in C++ code into eggdrop (like plug in tcl scripts into eggdrop)? I don`t mean modules in C.<br><br>Is there some eggdrop -&gt; tcl -&gt; C++ bridge? I found cpptcl on sourceforge, but I have no idea if it could work with eggdrop.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=6101">sKy</a> — Thu Jun 21, 2007 11:15 am</p><hr />
]]></content>
	</entry>
	</feed>
