<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Trust is great. Safe "JTAG like" mechanism is even greater:). So you can always un-brick your device, whatever reason for bricking was in first place. Be it malicious firmware, or just buggy one.<div><br></div><div>No need to advocate Modula-3 to me :). I am just being real. Modula-3 is not for smart cards I am dealing with. Period :).<br><div><div><br></div><div>Obliq is Modula-3 runtime + other code. Nothing small there, at least not smaller than Modula-3 :).</div><div><br></div><div><div><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>--</div><div>Divided by a common language</div><div><br></div><div>Dragiša Durić</div><div><a href="mailto:dragisha@m3w.org">dragisha@m3w.org</a></div><div><br></div></div></span><br class="Apple-interchange-newline"></span><br class="Apple-interchange-newline">
</div>
<br><div><div>On Sep 3, 2012, at 5:49 PM, Daniel Alejandro Benavides D. wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><table cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top" style="font: inherit;">Hi all:<br>the main issue for not running common firm-ware is is trust, and so you need cultivate trust (using certification or verified compiler) you need either a safe language or a safe subset of it. (e.g look how many times you need to reload the firmware in an MP4 player, etc, it tell you why you need trust)<br>For sure there are many people who used Modula-2 in the distant past, but today HW poses other challenges, for instance a GC heap is much bigger than UNSAFE one, but Modula-3 has both you can select which parts of your system uses which RT, and you can still depend on your language to detect static type errors like ESC/Modula-3.<br>If I would recode a RT in a safe language I would use Modula-3 for this reason, so, either for network packet transceiver or video on demand one, you need a trusted framework for objects  on transfer, Obliq is for
 that, even if it's interpreted, it gives  you more expressive power so you will probably have a smaller code on a tiny interpreter.<br>Thanks in advance <br><br>--- El <b>lun, 3/9/12, Dragiša Durić <i><<a href="mailto:dragisha@m3w.org">dragisha@m3w.org</a>></i></b> escribió:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>De: Dragiša Durić <<a href="mailto:dragisha@m3w.org">dragisha@m3w.org</a>><br>Asunto: Re: [M3devel] How small can Modula-3 runtime be?<br>Para: "Daniel Alejandro Benavides D." <<a href="mailto:dabenavidesd@yahoo.es">dabenavidesd@yahoo.es</a>><br>CC: <a href="mailto:m3devel@elegosoft.com">m3devel@elegosoft.com</a><br>Fecha: lunes, 3 de septiembre, 2012 10:32<br><br><div id="yiv965107533"><div>Theoretically, many things are possible.<div><br></div><div>But, with great smart cards having 4KB of RAM, and 100+KM of ROM (program memory) I am a bit sceptic here. It's good somebody played with that, but Pascal and Modula-2 are many times more logical choice for really low end hardware. More than enough to talk APDU
 :).</div><div><br></div><div>My interest is DVB receiver. There is usually RAM in tens/hundreds of megabytes and Flash in tens at least. And CPU with MMU, to run decent kernel. Lots of interesting devices, also.</div><div><br></div><div>Ever implemented TCP/IP bare bones? My team did, and while interesting project, it's nothing to write home about :). </div><div><br><div>
<span class="yiv965107533Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><span class="yiv965107533Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><div style=""><div>--</div><div>Divided by a common language</div><div><br></div><div>Dragiša Durić</div><div><a rel="nofollow" ymailto="mailto:dragisha@m3w.org" target="_blank" href="x-msg://721/mc/compose?to=dragisha@m3w.org">dragisha@m3w.org</a></div><div><br></div></div></span><br class="yiv965107533Apple-interchange-newline"></span><br class="yiv965107533Apple-interchange-newline">
</div>
<br><div><div>On Sep 3, 2012, at 3:34 PM, Daniel Alejandro Benavides D. wrote:</div><br class="yiv965107533Apple-interchange-newline"><blockquote type="cite"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td style="font-family: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; font-size: inherit; line-height: inherit; font-size-adjust: inherit; font-stretch: inherit;" valign="top">Hi:<br>it can run on smart cards, they ran OS and all there so, using a CLASP machine, you can run in silicon card:<br><a rel="nofollow" target="_blank" href="http://www.dsse.ecs.soton.ac.uk/techreports/95-03/1997/dsse-tr-97-8.ps.gz">http://www.dsse.ecs.soton.ac.uk/techreports/95-03/1997/dsse-tr-97-8.ps.gz</a><br><br>Thanks in advance<br><br>--- El <b>lun, 3/9/12, Dragiša Durić <i><<a href="mailto:dragisha@m3w.org">dragisha@m3w.org</a>></i></b> escribió:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>De:
 Dragiša Durić <<a href="mailto:dragisha@m3w.org">dragisha@m3w.org</a>><br>Asunto: Re: [M3devel] How small can Modula-3 runtime be?<br>Para: "Mika Nystrom" <<a href="mailto:mika@async.caltech.edu">mika@async.caltech.edu</a>><br>CC: <a href="mailto:m3devel@elegosoft.com">m3devel@elegosoft.com</a><br>Fecha: lunes, 3 de septiembre, 2012 02:45<br><br><div id="yiv965107533"><div>Bare hardware would be too much a task for me now, but those numbers are great. I can spare few tens of KILObytes anytime :).<div><br></div><div>Right now I am looking around for
 cross-compiling setup. Anyone did it in work environment? (not only for bootstrap)</div><div><br><div>
<span class="yiv965107533Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><span class="yiv965107533Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><div style=""><div>--</div><div>Divided by a common language</div><div><br></div><div>Dragiša Durić</div><div><a rel="nofollow">dragisha@m3w.org</a></div><div><br></div></div></span><br class="yiv965107533Apple-interchange-newline"></span><br class="yiv965107533Apple-interchange-newline">
</div>
<br><div><div>On Sep 3, 2012, at 12:34 AM, Mika Nystrom wrote:</div><br class="yiv965107533Apple-interchange-newline"><blockquote type="cite"><div>=?utf-8?Q?Dragi=C5=A1a_Duri=C4=87?= writes:<br>...<br><blockquote type="cite"><br></blockquote><blockquote type="cite">Question is - if we go embedded, how small can we go?<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Obviously, we need full Linux kernel, pthreads and all. But what about =<br></blockquote><blockquote type="cite">total RAM? Flash (persistent storage)?=20<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">dd<br></blockquote><br>Modula-3 has been run without a kernel.<br><br><a rel="nofollow" target="_blank" href="http://resolver.caltech.edu/CaltechCSTR:1993.cs-tr-93-15">http://resolver.caltech.edu/CaltechCSTR:1993.cs-tr-93-15</a><br><br>Table 3.0, page 49, for byte counts of the runtime.<br><br>I have the source code somewhere.
  It's a modified version of the old SRC M3<br>compiler, which compiles M3 to C.<br><br>    Mika<br><br><br></div></blockquote></div><br></div></div></div></blockquote></td></tr></tbody></table></blockquote></div><br></div></div></div></blockquote></td></tr></tbody></table></blockquote></div><br></div></div></div></div></body></html>