<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <!--Converted with LaTeX2HTML 2008 (1.71) original version by: Nikos Drakos, CBLU, University of Leeds * revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan * with significant contributions from: Jens Lippmann, Marek Rouchal, Martin Wilck and others --> <HTML> <HEAD> <TITLE>7.10 Use of SDCC in Education</TITLE> <META NAME="description" CONTENT="7.10 Use of SDCC in Education"> <META NAME="keywords" CONTENT="sdccman"> <META NAME="resource-type" CONTENT="document"> <META NAME="distribution" CONTENT="global"> <META NAME="Generator" CONTENT="LaTeX2HTML v2008"> <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> <LINK REL="STYLESHEET" HREF="sdccman.css"> <LINK REL="previous" HREF="node166.html"> <LINK REL="up" HREF="node157.html"> <LINK REL="next" HREF="node168.html"> </HEAD> <BODY > <!--Navigation Panel--> <A NAME="tex2html3299" HREF="node168.html"> <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> <A NAME="tex2html3293" HREF="node157.html"> <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> <A NAME="tex2html3289" HREF="node166.html"> <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> <A NAME="tex2html3295" HREF="node1.html"> <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> <A NAME="tex2html3297" HREF="node191.html"> <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> <BR> <B> Next:</B> <A NAME="tex2html3300" HREF="node168.html">8. SDCC Technical Data</A> <B> Up:</B> <A NAME="tex2html3294" HREF="node157.html">7. Support</A> <B> Previous:</B> <A NAME="tex2html3290" HREF="node166.html">7.9 Examples</A> <B> <A NAME="tex2html3296" HREF="node1.html">Contents</A></B> <B> <A NAME="tex2html3298" HREF="node191.html">Index</A></B> <BR> <BR> <!--End of Navigation Panel--> <H1><A NAME="SECTION008100000000000000000"> 7.10 Use of SDCC in Education</A> </H1> <P> In short: <I>highly</I> encouraged<A NAME="tex2html120" HREF="footnode.html#foot6089"><SUP>7.3</SUP></A>. If your rationales are to: <OL> <LI>give students a chance to understand the <I>complete</I> steps of code generation </LI> <LI>have a curriculum that can be extended for years. Then you could use an fpga board as target and your curriculum will seamlessly extend from logic synthesis (http://www.opencores.org <TT><A NAME="tex2html121" HREF="opencores.org">opencores.org</A></TT>, Oregano <TT><A NAME="tex2html122" HREF="http://www.oregano.at/ip/ip01.htm">http://www.oregano.at/ip/ip01.htm</A></TT>), over assembly programming, to C to FPGA compilers (FPGAC <TT><A NAME="tex2html123" HREF="http://sf.net/projects/fpgac">http://sf.net/projects/fpgac</A></TT>) and to C. </LI> <LI>be able to insert excursions about skills like using a revision control system, submitting/applying patches, using a type-setting (as opposed to word-processing) engine LYX/L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X, using SourceForge <TT><A NAME="tex2html124" HREF="http://www.sf.net">http://www.sf.net</A></TT>, following some netiquette <TT><A NAME="tex2html125" HREF="http://en.wikipedia.org/wiki/Netiquette">http://en.wikipedia.org/wiki/Netiquette</A></TT>, understanding BSD/LGPL/GPL/Proprietary licensing, growth models of Open Source Software, CPU simulation, compiler regression tests<A NAME="3961"></A>. <BR> And if there should be a shortage of ideas then you can always point students to the ever-growing feature request list <TT><A NAME="tex2html126" HREF="http://sourceforge.net/tracker/?group_id=599&atid=350599">http://sourceforge.net/tracker/?group_id=599&atid=350599</A></TT>. </LI> <LI>not tie students to a specific host platform and instead allow them to use a host platform of <I>their</I> choice (among them Alpha, i386, i386_64, Mac OS X, Mips, Sparc, Windows and eventually OLPC <TT><A NAME="tex2html127" HREF="http://www.laptop.org">http://www.laptop.org</A></TT>) </LI> <LI>not encourage students to use illegal copies of educational software </LI> <LI>be immune to licensing/availability/price changes of the chosen tool chain </LI> <LI>be able to change to a new target platform without having to adopt a new tool chain </LI> <LI>have complete control over and insight into the tool chain </LI> <LI>make your students aware about the pros and cons of open source software development </LI> <LI>give back to the public as you are probably at least partially publicly funded </LI> <LI>give students a chance to publicly prove their skills and to possibly see a world wide impact </LI> </OL> then SDCC is probably among the first choices. Well, probably SDCC might be the only choice. <P> <HR> <!--Navigation Panel--> <A NAME="tex2html3299" HREF="node168.html"> <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> <A NAME="tex2html3293" HREF="node157.html"> <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> <A NAME="tex2html3289" HREF="node166.html"> <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> <A NAME="tex2html3295" HREF="node1.html"> <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> <A NAME="tex2html3297" HREF="node191.html"> <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> <BR> <B> Next:</B> <A NAME="tex2html3300" HREF="node168.html">8. SDCC Technical Data</A> <B> Up:</B> <A NAME="tex2html3294" HREF="node157.html">7. Support</A> <B> Previous:</B> <A NAME="tex2html3290" HREF="node166.html">7.9 Examples</A> <B> <A NAME="tex2html3296" HREF="node1.html">Contents</A></B> <B> <A NAME="tex2html3298" HREF="node191.html">Index</A></B> <!--End of Navigation Panel--> <ADDRESS> 2011-03-20 </ADDRESS> </BODY> </HTML>