LINUX.ORG.RU

История изменений

Исправление WitcherGeralt, (текущая версия) :

А в нем есть типонезависимые списки и словари с лаконичным синтаксисом для задания хотя бы простых правил?

Типонезависимые списки и словари есть, про правила не понял, а лаконичность оценивай сам:

type any interface{}

var l []any

m := map[any]any{
	"foo": 0,
	1: "bar",
}

l = append(l, nil, 1, "2")

m[3.14] = "pi"

Типонезависимость реализуется использованием пустого интерфейса (в Go своё понимание интерфейсов. не требуется декларировать их реализацию, нужно только фактически им соответствовать), тип определять не обязательно, это я для наглядности. Список (слайс — динамический список в терминах го) можно предзаполнить так же как и словарь. Можешь потыкать этот код на плейграунде.

Исходная версия WitcherGeralt, :

А в нем есть типонезависимые списки и словари с лаконичным синтаксисом для задания хотя бы простых правил?

Типонезависимые списки и словари есть, про правила не понял, а лаконичность оценивай сам:

type any interface{}

var l []any

m := map[any]any{
	"foo": 0,
	1: "bar",
}

l = append(l, nil, 1, "2")

m[3.14] = "pi"

Типонезависимость реализуется использованием пустого интерфейса (в Go своё понимание интерфейсов. не требуется декларировать их реализацию, нужно только фактически им соответствовать), тип определять не обязательно, это я для наглядности. Список (слайс — динамический словарь в терминах го) можно предзаполнить так же как и словарь. Можешь потыкать этот код на плейграунде.