GRU Devlog 38 - olibc

July 31, 2022 — G1n

This time I was also working on olibc. I have added some datastructures, so we won’t depend on builtin system headers.

Added open/read/write/close functions to unistd.h and fcntl.h, so we won’t need to rewrite other headers that were depending on liblinux’s ones for porting. Also added abs function to stdlib.h.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, olibc

GRU Devlog 37 - olibc

July 17, 2022 — G1n

This time I was working on olibc. I rewritten Makefile and restrustured the project a bit. I have added some macros to sys headers, so olibc is on path of beign able to compile itself.

Currently I am working on adding other useful headers. I think we can add POSIX headers to it, so it will have implemented not only C11 specifications, but also some more UNIX-related things.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, olibc

GRU Devlog 36 - coreutils

July 03, 2022 — G1n

Last week I wasn’t online for weekends, so decided to write devlog this week. Also, last 2 weeks I was mostly working on one of my admin projects (hextilde.xyz), so haven’t done anything in that period of time.

This week I was working on coreutils. It wasn’t maintained for a long time, so I decided to add some utilities to it.

I have restructured it, rewrote cat and added some utilities - head and wc.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, coreutils

GRU Devlog 35 - deertree

June 12, 2022 — G1n

This 2 weeks I was working on deertree specifications. They are avalible on https://gruos.org/deertree/, but weren’t published on git because I think that they are not done yet.

Also I was working on compiler. First several days I was trying lex/yacc and even implemented basic syntax tree. But then I changed to python (I named this compiler pydtc), because I don’t fully understand syntax trees yet, so I hope in python it will be a bit easier.

So far with python I made some progress and it can already output syntax tree for very basic code and convert it to C or Assembler (yes, I added support for both).

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, deertree

GRU Devlog 34 - txtutils, deertree

May 29, 2022 — G1n

This 2 weeks I spent developing new programming language, called DeerTree. It is going to be combination of C, Rust and Go to make low-level development a bit simpler.

I have written some parts of specifications for language and standart library, but I think it is not ready for publishing yet.

But I have already started implementing compiler using lex and yacc. It already has lexer and basic parser implemented, right now I am working on syntax tree.

Also I have published txtutils. It has just grep for now.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, txtutils, deertree

GRU Devlog 33 - yemu, txtutils

May 15, 2022 — G1n

This 2 weeks I spend implementing new yemu features. I implememented CMP ocpu instruction and added very basic stack implementation and some instructions for it. I will need to add more description about stack and stack manipulation instructions to ocpu specifications.

Also I started coding txtutils. I am planning it for text manipulation programs (grep, sed, awk). Started to develop grep utility, it already can find text in input, but not supports some “regex commands” that I would like it to support. Also I want to add support for multiple files there.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, yemu, txtutils

GRU Devlog 32 - yemu

May 01, 2022 — G1n

This 2 weeks I was coding yemu. I added handling for flags, so now after any operation ZF and NF flags changed to correct values. Also I added opcodes for CF manipulations, so carry flag can be set and unset. Also I was fixing and detalizing specs, because I needed it to implement other commands. I added logical instructions - AND, OR, NOT, XOR.

This week I was mostly researching about something that can be interesting, but don’t have enough information for a project yet. It is pretty complicated sphere, so I don’t know when I will do something interesting there.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, yemu, ocpu

GRU Devlog 31 - yemu

April 17, 2022 — G1n

This week I restructured yemu and it’s Makefile. I think that our projects will need some structure “standard” to not complicate them.

I was working on adding new instructions to ocpu. I added ADC, SUB, MUL, DIV. Also some duplicated code was removed.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, yemu, ocpu

GRU Devlog 30 - libweb, orth, fosshost

April 03, 2022 — G1n

Last week I found why title tag wasn’t working - I haven’t implemented one of cases, so it is failing on them. I am still trying to make it working.

This week I started to make own forth implementation called orth. Currently it can do very little amount of things: tokenize input, get numbers. Trying to implement token stack right now.

Also, I have received email from fosshost. So they accepted our application and requested details about what VM we need. We decided to go with x86_64 CPU, 5G RAM and 50G disk. I think everything should be fine.

I am a bit lazy last few weeks, but I guess it is fine and I will get back on track soon.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, libweb, orth, fosshost

GRU Devlog 29 - libweb

March 20, 2022 — G1n

This 2 weeks were not very productive I think. I published libweb. I think it already can support the most basic web 1.0 pages, because it has support of headers (h1, h2, …) and paragraphs tags (p). This week I tryed to implement title tag but had troubles with it, will publish it when it will be done…

Also I had requested fosshost vps. They haven’t answered to request yet, but seems they are busy, so waiting.

Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)

tags: gru, libweb, fosshost