Profile

Cover photo
Francisco J. Ballesteros
Works at Universidad Rey Juan Carlos
Attended Technical University of Madrid
Lives in Madrid
199 followers|52,299 views
AboutPostsPhotosYouTube

Stream

 
textbook. spanish. 
 ·  Translate
En esta página tienes material para el curso de introducción a Sistemas Operativos que se imparte en la URJC, en la Escuela de Ingeniería de Telecomunicación, como parte de diversos grados de ingeniería de telecomunicación. El curso utiliza UNIX para enseñar qué abstracciones tiene un Sistema ...
1
Add a comment...
 
@fjballest: Made the ink editor/shell prettier. The logo and the rainbow feel like the zx spectrum :).

1
Giacomo Tesio's profile photoFrancisco J. Ballesteros's profile photo
2 comments
 
no. I prefer ix. 
Add a comment...
 
Now using Clive's IX to continue development of Clive software. It was nice using Acme so far, let's see how IX feels...

1
Add a comment...
 
Preventing dynamic memory problems in C
When writing C programs that use structures kept in dynamic memory, there are a few techniques that are useful to prevent problems. The ones I mention here are not new, and well written software (e.g, much of Plan 9 from Bell Labs) use them a lot. This post...
1
Add a comment...
 
Lsub go changes
For the Clive OS being developed at Lsub, we have modified the Go
compiler in several important aspects. This post is a copy of a TR
documenting the changes we made. INTRODUCTION Clive is written using the Go programming language
[ 1 ]. Clive system service...
2
3
Ralph Corderoy's profile photo
 
Given you're altering the language, have you given any thought to shortening the noisy

    foo, err := bar()
    if err != nil {
        return 0, err
    }

Given error is a built-in type, I've been wondering if

    on err: return 0, err

would be better. No explicit check against nil, because bool or error are accepted, and no need for the careful reader to check != has been used and not ==.
Add a comment...
 
When "cd" has no arguments
In a previous post  I wrote about commands and channels in Clive. Since then, things have evolved a bit I think it's worth a post. The cd command, to change the current directory, no longer has a file name argument. Instead, it receives the directory entry ...
1
Add a comment...
 
 
Every 20 years or so, like clockwork, the educational establishment decides computer programming is going to give everyone a job. The first time I saw this in action (not the first time it happened) was very long ago. How long? Quote from that time: "The languages of the future are Fortran and Cobol, which are the languages of the computer."

It was wrong then and it is wrong now. Thankfully, people are starting to figure it out.

http://www.fastcompany.com/3058251/the-future-of-work/why-learning-to-code-wont-save-your-job
Brushing up on your tech skills might only make for temporary job security at best.
2 comments on original post
1
Add a comment...
 
Clive channels and plumbing
In Clive, we can run eco http://lsub.org >[out:ink] to display a web page. Here, eco is Clive's echo , and the redirection at the end is the standard ql (1) syntax to make the standard output channel be the channel named ink. Ql is the Clive's shell. In the...
In Clive, we can run eco http://lsub.org >[out:ink] to display a web page. Here, eco is Clive's echo, and the redirection at the end is the standard ql(1) syntax to make the standard output channel be the channel named ink. ...
1
Add a comment...
 
Never thought I'd get a system more powerful than Plan 9. I was wrong. 
Using Clive (see http://lsub.org for pointers), I run:

rom ,~*.js > js.go

and I get a single js.go file with a giant map for all .js files under ".".
The ,~*.js means: under "", i.e., under ".", find all files that make true the predicate "~*.js", which
means, "name~*.js", which evaluates Dir["name"] for directory entries and matches against "*.js".

It's one "RPC" sent to the file server, the reply a stream of Dir and []bytes.
No need to issue 10k RPCs to the server.
1
Add a comment...
 
Clive's Ink screenshot
We'll write about Ink in the future. It's the Clive UIMS, written in Go (as all other Clive apps) and using a viewer in HTML5/javascript so the browser is the terminal device. IX is the Clive shell (a descendant of Acme, Omero, and O/live) and, using Ink, i...
We'll write about Ink in the future. It's the Clive UIMS, written in Go (as all other Clive apps) and using a viewer in HTML5/javascript so the browser is the terminal device. IX is the Clive shell (a descendant of Acme, Omer...
3
2
Add a comment...
 
Using build constraints to skip entire hierarchies in go
This is a nice change to let go apply build constraints to prune a hierarchy of packages. After the change, if there is a file skip.go in a package, then the build constraint for the file refers to the entire package and not just to the file. Also, if the p...
1
Add a comment...
 
Random notes on the Go 1.4 runtime.
These are some notes on the Go 1.4 Run-Time written while working on the new Clive kernel.
I just copied the text from the TR, which will be linked at the Lsub page and updated in the future.

They should be easy to follow using a Go 1.4 tree because the pa...
1
Adrian Tritschler's profile photoFrancisco J. Ballesteros's profile photo
2 comments
 
😂
Add a comment...
Story
Tagline
ha!
Education
  • Technical University of Madrid
    PhD
Basic Information
Gender
Male
Work
Employment
  • Universidad Rey Juan Carlos
    Prof, present
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Madrid
Links
Contributor to