Инженеры-биологи из MIT создали язык программирования, который позволяет быстро разрабатывать сложные закодированные по принципу ДНК схемы, наделяющие живые клетки новыми функциями, пишет «Типичный программист» со ссылкой на News.mit.edu.
«Даже школьник сможет»
Используя этот язык, любой желающий может написать программу для любой функции живой клетки — например, функции обнаружения и реагирования на определённые условия окружающей среды. Затем язык может сгенерировать последовательность ДНК, которая будет служить заданной цели.
«Это буквально язык программирования для бактерий, — рассказывает Кристофер Фойгт, профессор Массачусетского технологического института биологической инженерии. — Вы можете использовать этот текстовый язык так же, как при программировании компьютера. Затем вы берёте этот текст, компилируете его и превращаете в ДНК-последовательность. Последовательность вживляется внутрь клетки, и схема начинает работать».
Будущие приложения для такого рода программ включают в себя проектирование бактериальных клеток, которые могут производить лекарство от рака, обнаружив опухоль, или создание дрожжевых клеток, которые могут остановить свой собственный процесс брожения, если токсичных побочных продуктов станет слишком много.
За последние 15 лет биологи и инженеры разработали множество генетических частей, таких как датчики, переключатели памяти и биологические часы, которые могут быть объединены, чтобы изменить существующие клеточные функции и добавлять новые.Тем не менее, проектирование каждой цепи представляет собой трудоёмкий процесс, который требует большого опыта и основан на методе проб и ошибок. «Чтобы понять, как все эти части будут работать вместе, вам нужно иметь очень глубокие познания», — говорит Фойгт.
Однако пользователям нового языка не понадобится глубоких знаний в генной инженерии.
«Любой, даже школьник, может зайти на веб-сервер и напечатать программу, которая вернёт последовательность ДНК».
Раньше «потребовались бы годы»
Язык основан на Verilog, который обычно используется для программирования компьютерных микросхем. Чтобы создать версию языка, которая будет работать для клеток, исследователи разработали вычислительные элементы, такие как логические элементы и датчики, которые могут быть закодированы в ДНК бактериальной клетки. Датчики могут обнаруживать различные соединения, такие как кислород или глюкоза, а также детектировать свет, температуру, кислотность и другие условия окружающей среды. Пользователи также могут добавлять свои собственные датчики. «Язык тонко настраивается», — замечает Фойгт.
Самой большой проблемой, по словам ученого, было проектирование 14 логических элементов, используемых в схемах, таким образом, чтобы они не мешали друг другу, оказавшись в сложной среде живой клетки.
В текущей версии языка программирования эти генетические части оптимизированы для кишечной палочки, но исследователи работают над расширением языка для других штаммов бактерий, включая Bacteroides, обычно встречаются в кишечнике человека, а также Pseudomonas, которые часто живет в корнях растений, а также дрожжей Saccharomyces cerevisiae. Это позволит пользователям записывать одну программу, а затем компилировать её для различных организмов, чтобы получить правильную последовательность ДНК для каждого из них.
Используя этот язык, исследователи запрограммировали 60 схем с различными функциями. Из них 45 заработали правильно на первом же испытании. Одна из новых схем — крупнейшая биологическая цепь, когда-либо создававшаяся: она содержит 6 логических вентилей и около 12000 пар ДНК.
Ещё одним преимуществом этого метода является его скорость. Раньше «вам потребовались бы годы, чтобы построить эти схемы. Теперь вы можете просто нажать кнопку и сразу же получить последовательность ДНК», — говорит Фойгт.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.