move posts

This commit is contained in:
Torsten Ruger 2018-04-10 19:11:06 +03:00
parent 5ee1c6d461
commit 5950fac3ce
30 changed files with 43 additions and 194 deletions

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Well, it has been a good holiday, two months in Indonesia, Bali and diving Komodo. It brought
clarity, and so i have to start a daunting task.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
The c machine
-------------

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Part of the reason why i even thought this was possible was because i had bumped into Metasm.
Metasm creates native code in 100% ruby. Either from Assembler or even C (partially). And for many cpu's too.

View File

@ -1,10 +1,6 @@
---
layout: news
author: Torsten
---
Both "ends", parsing and machine code, were relatively clear cut. Now it is into unknown territory.
I had ported the Kaleidescope llvm tutorial language to ruby-llvm last year, so thee were some ideas floating.
I had ported the Kaleidoscope llvm tutorial language to ruby-llvm last year, so thee were some ideas floating.
The idea of basic blocks, as the smallest unit of code without branches was pretty clear. Using those as jump
targets was also straight forward. But how to get from the AST to arm Intructions was not, and took some trying out.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Parsing is a difficult, the theory incomprehensible and older tools cryptic. At least for me.
And then i heard recursive is easy and used by even llvm. Formalised as peg parsing libraries exists, and in ruby

View File

@ -1,9 +1,3 @@
---
layout: news
author: Torsten
title: More clarity
---
It's such a nice name, crystal. My first association is clarity, and that is exactly what i am trying to achieve.
But i've been struggling a bit to achieve any clarity on the topic of system boundary: where does OO stop. I mean i can't very well define method lookup in ruby syntax, as that involves method lookups. But tail recursion is so booring, it just never stops!

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
I was just reading my ruby book, wondering about functions and blocks and the like, as one does when implementing
a vm. Actually the topic i was struggling with was receivers, the pesty self, when i got the exception.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
I am not stuck. I know i'm not. Just because there is little visible progress doesn't mean i'm stuck. It may just feel like it though.
But like little cogwheels in the clock, i can hear the background process ticking away and sometimes there is a gong.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
In a picture, or when taking a picture, the frame is very important. It sets whatever is in the picture into context.
So it is a bit strange that having a **frame** had the same sort of effect for me in programming.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
It has been a bit of a journey, but now we have arrived: Salama is officially named.
### Salama

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
While trying to figure out what i am coding i had to attack this storage format before i wanted to. The
immediate need is for code dumps, that are concise but readable. I started with yaml but that just takes
too many lines, so it's too difficult to see what is going on.
@ -91,4 +86,3 @@ sof's directly.
How, when and how automatically changes are merged (via git) is up to developer policy . But it is
easily imaginable that data in program designated areas get merged back into the "mainstream" automatically.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
The time of introspection is coming to an end and i am finally producing executables again. (hurrah)
### Block and exception

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
The register machine abstraction has been somewhat thin, and it is time to change that
### Current affairs

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
As before the original start of the project, i was 6 weeks on holiday. The distance and lack of computer really helps.
### Review
@ -44,4 +39,3 @@ And i noticed that what i have called Builtin up to now is actually part of the
I have now given lightning talk on Frozen Rails 2014 and Ruby Bath 2015.
As 5 Minutes is clearly now enough i will work on a longer presentation.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Since i got the ideas of Slots and the associated instruction Set, i have been wondering how that
fits in with the code generation.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Quite long ago i [had already determined](/2014/06/27/an-exceptional-thought.html) that return
addresses and exceptional return addresses should be explicitly stored in the message.

View File

@ -1,8 +1,4 @@
---
layout: news
author: Torsten
---
After almost a year of rewrite: **Hello World** is back.
**Working executables again**

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
It really is like [Bret Victor](http://worrydream.com/#!/InventingOnPrinciple) says in his video:
good programmers are the ones who play computer in their head well.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
It is the **one** thing i said i wasn't going to do: Write a language.
There are too many languages out there already, and just because i want to write a vm,
doesn't mean i want to add to the language jungle.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Ok, that was surprising: I just wrote a language in two months. Parser, compiler, working binaries
and all.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Writing Soml helped a lot to separate the levels, or phases of the ruby compilation process. Helped
me that is, to plan the ruby compiler.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
So, the plan, in short:
1. I need to work a little more on docs. Reading them i notice they are still not up to date

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
## RubyX compiles ruby to binary
The previous name was from a time in ancient history, three years ago, in internet time over

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
I just read mri 2.4 "unifies" Fixnum and Integer. This, it turns out, is something quite
different from what i though, mostly about which class names are returned.
And that it is ok to have two implementations for the same class, Integer.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
As i said in the last post, a step back and forward, possibly two, was taken and understanding
grows again. Especially when i think that some way is the way, it always changes and i turn out
to be at least partially wrong. The way of life, of imperfect intelligence, to strive for that

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Going on holiday without a computer was great. Forcing me to recap and write things down on paper.
## Layers

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Method caching can be done at language level. Wow. But first some boring news:
## Vool is ready, Mom is coming

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
While work on Mom (Minimal object machine) continues, i can see the futures a little clearer.
Alas, for now the shortest route is best, so the future will have to wait. But here is what i'm
thinking.

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Since i currently have no time to do actual work, i've been doing some research.
Reading about other implementations, especially transpiling ones. Opal, ruby to

View File

@ -1,8 +1,3 @@
---
layout: news
author: Torsten
---
Now that i *have* had time to write some more code (250 commits last month), here is
the good news: