Live data from Hacker News

ExDOS is developed by Omar, “almost 14 years old”

exdos.eu.pn

11–20 of 108 posts

Re: ExDOS is developed by Omar, “almost 14 years old”

#11
post #8
post #6

Muzzam's site: http://alotware.hol.es "Q: Why did you choose Assembly? A: It is easy, simple, and the language of real programmers." Will he still believe this when he's older? I hope so. Because it is the truth.

But don't real programmers use a magnetized needle and a steady hand?

No joke: I strongly believe that "real programmers" do indeed write in assembler. Not x86 assembler, mind you. Rather, "real programmers" first compose an abstract machine semantics for the solution domain, create an instantiation of those semantics in the form of a virtual machine on some host architecture, and then express the solution in an assembler language targeting the abstract machine semantics. (See, for example, the Prolog abstract machine semantics to represent the solution domain of expert systems.)

They might, if their problem is really hairy and requires large amounts of exploratory programming, create a high-level programming language (usually a macro-language) that allows easy access to the same abstract machine semantics, and then code in that. For well-defined "closed" problems (e.g. in-kernel packet filtering), this added baggage is usually unnecessary, but for more "engineering-oriented" problems, you might end up with something more like an Erlang than a Prolog.

Note that C itself follows this rule; the "C abstract machine" is a pretty good fit (though perhaps not perfect) to the solution domain of low-level systems programming.

Re: ExDOS is developed by Omar, “almost 14 years old”

#12
post #11
post #8

Earlier quoted context omitted.

But don't real programmers use a magnetized needle and a steady hand?

No joke: I strongly believe that "real programmers" do indeed write in assembler. Not x86 assembler, mind you. Rather, "real programmers" first compose an abstract machine semantics for the solution domain, create an instantiation of those semantics in the form of a virtual machine on some host architecture, and then express the solution in an assembler language targeting the abstract machine semantics. (See, for exa…

Can you explain why this is a smarter way to build software?

Re: ExDOS is developed by Omar, “almost 14 years old”

#13
post #10
post #7

Congrats to Omar. I remember I was in awe about Marcelo Tosatti when he became the 2.4 kernel maintainer at 14. Here's an interview http://www.informatica.co.cr/linux/research/2002/03.htm

That interview says he started working for Connectiva at 14 and started maintaining the 2.4 kernel at 18. (still impressive)

That's right, my bad. Thanks for the correction. I remember thinking at that time that he's younger than me and knows so much more.

Re: ExDOS is developed by Omar, “almost 14 years old”

#14
post #11
post #8

Earlier quoted context omitted.

But don't real programmers use a magnetized needle and a steady hand?

No joke: I strongly believe that "real programmers" do indeed write in assembler. Not x86 assembler, mind you. Rather, "real programmers" first compose an abstract machine semantics for the solution domain, create an instantiation of those semantics in the form of a virtual machine on some host architecture, and then express the solution in an assembler language targeting the abstract machine semantics. (See, for exa…

while you masturbate, I'm going to write some code

Re: ExDOS is developed by Omar, “almost 14 years old”

#15
post #11
post #8

Earlier quoted context omitted.

But don't real programmers use a magnetized needle and a steady hand?

No joke: I strongly believe that "real programmers" do indeed write in assembler. Not x86 assembler, mind you. Rather, "real programmers" first compose an abstract machine semantics for the solution domain, create an instantiation of those semantics in the form of a virtual machine on some host architecture, and then express the solution in an assembler language targeting the abstract machine semantics. (See, for exa…

I like to use python

Re: ExDOS is developed by Omar, “almost 14 years old”

#16
post #12
post #11

Earlier quoted context omitted.

No joke: I strongly believe that "real programmers" do indeed write in assembler. Not x86 assembler, mind you. Rather, "real programmers" first compose an abstract machine semantics for the solution domain, create an instantiation of those semantics in the form of a virtual machine on some host architecture, and then express the solution in an assembler language targeting the abstract machine semantics. (See, for exa…

Can you explain why this is a smarter way to build software?

Mostly that it's the simplest and oldest (and, in my opinion, the least "sandwiched in between five layers of indirection") version of a very common idea, that I'm not quite sure the name of. It's the idea behind DSLs, and Lisp-like languages. Most of Chuck Moore's writings on the potential behind Forth-like languages are also about this idea. The most modern instantiation of the idea, I believe, is "Behavior-Driven Development" with Cucumber et al. But it's all the same thing, in the end.

Generally, the idea is: first, you should define a language to directly express statements about your problem domain. Then, in one place, you can define the solution in terms of the problem domain. Completely separately to that, you can implement the mechanism by which a machine interprets and acts upon statements about the problem domain. Putting the two together results in a program that solves your problem. But either may be maintained separately.

The term "separation of concerns" has effectively always been about making sure that demands for change that come from separate "departments" don't end up touching the same line of code. This model excels in that: maintaining the specification of the solution is solely the province of the business, while maintaining the interpreter of that specification is solely the province of some engineers somewhere. As long as the interface between the two is stable—a stable ABI—improvements can be made to one or the other without the other group ever having to be aware.

A great example of this is the Inform 7 language. One group of people writes text adventures in this language, or enhancements and plugins for text-adventure development. A separate group of people maintains interactive-fiction interpreters that parse a given ISA. Neither group has to think about the other. The ecosystems of the IDE and the runtime are, in fact, completely divorced.

Re: ExDOS is developed by Omar, “almost 14 years old”

#17
From "About me"

  My name is Muazzam Ali Kazmi, a hobbyist programmer from Shahpur,
  Layyah, Punjab, Pakistan. I am a student of grade-11 and I started
  programming about 4 years ago. I am developing the OS since 7
  September 2014. My interests include religion(s), philosophy,
  operating systems, virtual machines, simulating a universe in the
  computers, compilers, theoretical computer science, artificial
  intelligence, mathematics, and science.

Re: ExDOS is developed by Omar, “almost 14 years old”

#18

I've lurked on the OSDev forums he credits on his website for a long time, and both Omar and Muazzam (mentioned as well on the website) are goddamn impressive for barely-teenagers. Someone hire those kids!

Eh, let them enjoy their early formative teenage years without the stress of a job. There's a time and place for working but barely 14 isn't it.

[deleted]

Re: ExDOS is developed by Omar, “almost 14 years old”

#19

Someone should set up an AMA for him, I'd be really curious to hear his opinions on the state of OS research and similar topics.

He's a kid. Just let him be. You can pick his brain when he is a little older. People forget that even prodigies need time to grow up.
Post reply on HN