Для разработчика компилятора намного легче генерировать байт-коды CLR или JVM. Они - намного более чистая и высокоуровневая абстракция, чем какой-либо машинный язык. Из-за этого намного более выполнимо экспериментировать с созданием новых языков чем когда-либо прежде, потому что все, что необходимо сделать, предназначаться для одной из этой архитектуры VM, и у Вас уже будет ряд инструментов и библиотек доступным для Вашего языка. Они позволяют разработчикам языка сфокусироваться больше на языке, чем вся необходимая инфраструктура поддержки.
Можно использовать JSONField
для такой функциональности:
from django.db import models
from django.contrib.postgres.fields import JSONField
class TestModel(models.Model):
title = models.CharField(max_length=100)
strings = JSONField(default=list, blank=True, null=True)
def __str__(self):
return self.title
, например:
In [1]: fruits = ['banana', 'apple', 'orange']
In [2]: TestModel.objects.create(title='my set', strings=fruits)
Out[2]: <TestModel: my set>
In [3]: o = TestModel.objects.first()
In [4]: o.strings
Out[4]: ['banana', 'apple', 'orange']