# Carl's New Projects (?) AltScript, AltOS

**URL:** <https://revolt.metaeducation.com/forum/t/carls-new-projects-altscript-altos/1571>\
**Category:** Foreign Inspiration\
**Created:** [March 22, 2021, 5:02pm UTC](https://revolt.metaeducation.com/forum/t/carls-new-projects-altscript-altos/1571 "2021-03-22T17:02:18Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![hostilefork](https://revolt.metaeducation.com/forum/user_avatar/revolt.metaeducation.com/hostilefork/32/421_2.png) [@hostilefork](https://revolt.metaeducation.com/forum/u/hostilefork)\
**Post date:** [August 29, 2024, 9:27pm UTC](https://revolt.metaeducation.com/forum/t/carls-new-projects-altscript-altos/1571/5 "2024-08-29T21:27:24Z")

</div>

> [@hostilefork](#):
>
> > [@Carl Sassenrath](#):
> >
> > **For JSON compatiblity** :
> > 
> > - Keys (word definitions) can be written with quotes (`“field”:`)
> 
> I am a skeptic of accepting something that looks like a SET-TEXT! (set-string!) as a synonym for SET-WORD! for the purposes of this "JSON compatibility".

Skeptical or not, the notation itself is coming... [a CHAIN! with a TEXT! in the first slot, and a BLANK! in the second](https://revolt.metaeducation.com/forum/t/introducingnew-chain-datatype/2226).

If JSON loading makes maps instead of bindable objects, we could pick the fields.

```
deserialized: load-json %whatever.json
value: deserialized."some spaced field"
save-json %output.json compose/deep ["another spaced field": {x: (value), y: 10}]

```

I'm reticent (e.g. completely unwilling) to allow spaced terms to be bindable in the language. But in a dialect --like a JSON serialization dialect--do what you need to. This can make bridging the gap easier.

If you want to suggest lookup and execution in your dialect...you'd just have to put a terminal dot on it to fetch it, a leading slash on it to run it:

```
"just a string"

/"some function"

"some value".

```

But this means you'd be creating mutable series instances, copying that string everywhere, unless strings were immutable and interned. The evaluator isn't going to go that direction.

---

_[View the full topic](https://revolt.metaeducation.com/forum/t/carls-new-projects-altscript-altos/1571)._
