Arc Forumnew | comments | leaders | submit | jsgrahamus's commentslogin

Tell us more

reply

1 point by akkartik 19 days ago | link

I've been hanging out on the Handmade Network Discord channel recently. Mostly because I've developed RSI so can't work as much on Mu, and because I'm bored staying home for months on end.

https://handmade.network/manifesto

The site seems to be some sort of offshoot from a channel where a game developer used to screencast himself developing a game: https://handmadehero.org/watch

From what I can piece together, Handmade Network periodically has some sort of Jam for a few days where a few people hack on projects following some theme.

The most recent theme was Lisp: https://handmade.network/blogs/p/7390

Flip was built for the Lisp Jam. You can see a demo about it here: https://discord.com/channels/239737791225790464/485261036308... (though you'll need to sign up to that Discord group)

There was a discussion about it, a sort of debrief after the Jam, that you can read at https://discord.com/channels/239737791225790464/707742863076....

It's already sparked a bunch of ideas for me: https://mastodon.social/@akkartik/104780599045128839. So decent payoff on being bored and finding this community :)

reply

2 points by jsgrahamus 18 days ago | link

Sounds interesting. Sorry about the RSI. Went to using an ergonomic keyboard, which seems to have squelched it for me.

reply


Also, where do we find 3.in?

-----

1 point by akkartik 272 days ago | link

The input is on the problem page. Scroll to the bottom of https://adventofcode.com/2019/day/3 to 'get your puzzle input'. You should be able to get the output by running the commands I gave. It's just a numeric answer so not super interesting.

-----

2 points by zck 271 days ago | link

Also notably, the input is different for each user, as is each answer.

So the code should be the same, but you can't use my input to get an answer you can check on their website.

-----


Would love to see some output. Thanks, Akkartik!

-----

2 points by jsgrahamus 376 days ago | link | parent | on: Fleetdb

Project seems to have been inactive for 5 years.

Best link I found is https://github.com/mmcgrana/fleetdb

-----


What is this exactly?

-----

1 point by akkartik 391 days ago | link

I built an Arc-inspired toy Lisp interpreter like, oh, 5 years ago: http://akkartik.name/post/wart. (Source code: https://github.com/akkartik/wart)

But the experience frustrated me. It was hard for me to understand all the software under me as I provided abstractions above me.

So I spent the last 5 years gradually eliminating all the layers of abstraction that add complexity to my Lisp interpreter. The path passed through one other language for teaching programming: http://akkartik.name/post/mu. The sources for it are archived at https://github.com/akkartik/mu1 (there was an earlier prototype in Arc at https://github.com/akkartik/mu0)

At this point I have a very simple syntax for programming pretty much directly in machine code: https://github.com/akkartik/mu#readme. It can be translated to an ELF binary for Linux using about 250KB of static x86 instructions (80% of which are unit tests, and much else of which is duplicated because I built the translator in multiple passes that run in a shell pipeline:

    $ cat examples/ex1.subx |./tests |./dquotes |./assort |./pack |./survey |./hex > a.elf
    $
)

The nice thing about the resulting ELF binaries is that they can be run directly on a Linux kernel with no other dependencies. Not even libc.

There's a script in the repo called `gen_iso` that can take a list of .subx files, translate them into an ELF binary and package up the ELF binary with just a Linux kernel into a bootable disk image. You can then boot this image either in Qemu or on a cloud service like Linode (http://akkartik.name/post/iso-on-linode)

This is what I have so far.

By contrast, the screenshot is quite fake. It's just a program that reads a line of text from the keyboard and prints it out to the screen. You can see it running on an emulated computer in Qemu that has nothing but a Linux kernel.

But I'm going to build up from that core into a high-level language. Maybe an Arc-inspired Lisp. Not a toy this time around.

Just give me 5 more years :D

To reiterate the main project link: https://github.com/akkartik/mu#readme. Should hopefully be pretty easy to get running on Mac or Linux. (Though you're mostly on Windows, right jsgrahamus? I'm really sorry I still don't know Windows well enough to support it :( )

-----

2 points by jsgrahamus 390 days ago | link

Thanks for this. I maintain Linux Virtual Boxes.

-----

1 point by akkartik 390 days ago | link

Great! Yeah, I'd love to hear how you fare following the examples in the Readme.

The examples involving gen_iso take a while to run, which may be even greater atop VirtualBox. I'd recommend skipping those for now, particularly the very first one at the top of the Readme.

-----

2 points by jsgrahamus 452 days ago | link | parent | on: Arc and Scheme in Emacs Lisp

Very nice. Thanks, Shawn!

-----


I’ve spent uncounted hours enjoying and pulling out my few remaining hairs with Holm’s Klong. Look forward to reading this.

Thanks for the heads up, akkartik!

-----

1 point by akkartik 475 days ago | link

Very cool! The codebase (http://t3x.org/klong/index.html#download) or the book (http://t3x.org/klong/book.html)?

-----

2 points by jsgrahamus 473 days ago | link

Hair loss would be due to trying to think in a Klongish manner. Have only gotten a ways into the Klong book.

Nils is a prolific author and has even written non-CS titles to include Yoga and Zen (in German).

-----

2 points by jsgrahamus 498 days ago | link | parent | on: Lisp in Forth: a small lisp in Forth

Thanks for this. 2 of my favorite languages.

-----

3 points by kinnard 498 days ago | link

What do you build in forth?

-----


Saw this on HN and was going to print it off to read later. But its 38 pages discouraged such and I bookmarked it.

Looks interesting though.

-----

3 points by jsgrahamus 578 days ago | link | parent | on: Using Arc in Production

Thanks for this, "Thaddeus".

Regarding db integration, I recently read a bit on Jarc (arc on Java - http://jarc.sourceforge.net/), and the author specifically added in that ability.

-----

More