[M3devel] How small can Modula-3 runtime be?

Dragiša Durić dragisha at m3w.org
Mon Sep 3 18:27:12 CEST 2012


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.

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 :).

Obliq is Modula-3 runtime + other code. Nothing small there, at least not smaller than Modula-3 :).

--
Divided by a common language

Dragiša Durić
dragisha at m3w.org




On Sep 3, 2012, at 5:49 PM, Daniel Alejandro Benavides D. wrote:

> Hi all:
> 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)
> 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.
> 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.
> Thanks in advance 
> 
> --- El lun, 3/9/12, Dragiša Durić <dragisha at m3w.org> escribió:
> 
> De: Dragiša Durić <dragisha at m3w.org>
> Asunto: Re: [M3devel] How small can Modula-3 runtime be?
> Para: "Daniel Alejandro Benavides D." <dabenavidesd at yahoo.es>
> CC: m3devel at elegosoft.com
> Fecha: lunes, 3 de septiembre, 2012 10:32
> 
> Theoretically, many things are possible.
> 
> 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 :).
> 
> 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.
> 
> Ever implemented TCP/IP bare bones? My team did, and while interesting project, it's nothing to write home about :). 
> 
> --
> Divided by a common language
> 
> Dragiša Durić
> dragisha at m3w.org
> 
> 
> 
> 
> On Sep 3, 2012, at 3:34 PM, Daniel Alejandro Benavides D. wrote:
> 
>> Hi:
>> it can run on smart cards, they ran OS and all there so, using a CLASP machine, you can run in silicon card:
>> http://www.dsse.ecs.soton.ac.uk/techreports/95-03/1997/dsse-tr-97-8.ps.gz
>> 
>> Thanks in advance
>> 
>> --- El lun, 3/9/12, Dragiša Durić <dragisha at m3w.org> escribió:
>> 
>> De: Dragiša Durić <dragisha at m3w.org>
>> Asunto: Re: [M3devel] How small can Modula-3 runtime be?
>> Para: "Mika Nystrom" <mika at async.caltech.edu>
>> CC: m3devel at elegosoft.com
>> Fecha: lunes, 3 de septiembre, 2012 02:45
>> 
>> Bare hardware would be too much a task for me now, but those numbers are great. I can spare few tens of KILObytes anytime :).
>> 
>> Right now I am looking around for cross-compiling setup. Anyone did it in work environment? (not only for bootstrap)
>> 
>> --
>> Divided by a common language
>> 
>> Dragiša Durić
>> dragisha at m3w.org
>> 
>> 
>> 
>> 
>> On Sep 3, 2012, at 12:34 AM, Mika Nystrom wrote:
>> 
>>> =?utf-8?Q?Dragi=C5=A1a_Duri=C4=87?= writes:
>>> ...
>>>> 
>>>> Question is - if we go embedded, how small can we go?
>>>> 
>>>> Obviously, we need full Linux kernel, pthreads and all. But what about =
>>>> total RAM? Flash (persistent storage)?=20
>>>> 
>>>> dd
>>> 
>>> Modula-3 has been run without a kernel.
>>> 
>>> http://resolver.caltech.edu/CaltechCSTR:1993.cs-tr-93-15
>>> 
>>> Table 3.0, page 49, for byte counts of the runtime.
>>> 
>>> I have the source code somewhere.  It's a modified version of the old SRC M3
>>> compiler, which compiles M3 to C.
>>> 
>>>    Mika
>>> 
>>> 
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20120903/338ae46f/attachment-0002.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20120903/338ae46f/attachment-0002.sig>


More information about the M3devel mailing list