Stream: ideas

Topic: A small simplification of Platform header


view this post on Zulip Anthony Bullard (Apr 06 2025 at 13:38):

Have we ever talked about simplifying the Platform header? Specifically removing the "imports" section and replacing it with plain imports? I.e., instead of:

platform "foo/barbaz"
    requires { Model } { main : {} }
    exposes []
    packages { foo: "./foo" }
    imports [
        Hello exposing [hello],
        pf.Stdout exposing [line],
        "path/to/my/file.txt" as myFile : Str,
    ]
    provides [main_for_host]

This:

platform "foo/barbaz"
    requires { Model } { main : {} }
    exposes []
    packages { foo: "./foo" }
    provides [main_for_host]

import Hello exposing [hello]
import pf.Stdout exposing [line]
import "path/to/my/file.txt" as myFile : Str

view this post on Zulip Anthony Bullard (Apr 06 2025 at 13:40):

I'm considering this solely for v0.1 to be clear

view this post on Zulip Richard Feldman (Apr 06 2025 at 13:44):

oh yeah we should definitely do that! :smiley:

view this post on Zulip Anthony Bullard (Apr 06 2025 at 13:44):

Thank god!

view this post on Zulip Anthony Bullard (Apr 06 2025 at 13:44):

:-)

view this post on Zulip Anthony Bullard (Apr 06 2025 at 13:45):

I'm writing the parser/formatter for this (my last) header, and this seems a little out of bounds

view this post on Zulip Anthony Bullard (Apr 06 2025 at 13:58):

Also, small question here: What in the world is a Rigid (for requires)? Just a type?

view this post on Zulip Brendan Hansknecht (Apr 06 2025 at 15:37):

Yeah

view this post on Zulip Brendan Hansknecht (Apr 06 2025 at 15:37):

Links types from the app back to the platform

view this post on Zulip Anthony Bullard (Apr 06 2025 at 15:50):

Sweet

view this post on Zulip Anthony Bullard (Apr 06 2025 at 15:50):

Hopefully have this out today and then I think the parser and formatter will be functionally complete (which I will of course verify)

view this post on Zulip Anthony Bullard (Apr 06 2025 at 15:51):

At least my checklist will be complete


Last updated: Jun 16 2026 at 16:19 UTC