Запитання з тегом «programming-languages»

Питання, пов'язані з розробкою, реалізацією та аналізом мов програмування. НЕ для питань, як програмувати, які є поза темою на цьому сайті.

8
Від чого залежить швидкість мови програмування?
Припустимо, що програма була написана двома різними мовами, нехай вони будуть мовою X та мовою Y, якщо їх компілятори генерують один і той же байт-код, чому я повинен використовувати мову X замість мови Y? Що визначає, що одна мова швидша за іншу? Я запитую це, тому що часто ви бачите, …

2
Що Ідріс не може зробити, відмовившись від повноти Тьюрінга?
Я знаю, що Ідріс має залежні типи, але не закінчується. Чого не можна зробити, відмовившись від повноти Тьюрінга, і це пов'язано з наявністю залежних типів? Я думаю, це досить специфічне питання, але я не знаю величезної кількості про залежні типи та пов'язані системи типів.

13
Критерії вибору мови для першого курсу програмування
Як викладач КС на університеті, питання про те, яку мову програмування викладати в першому курсі програмування, часто виходить на обговорення. Є тисячі мов на вибір, і багато релігійної лихоманки (або гарячки), яка підтримує один мовний табір над іншим. Весь цей суб'єктивний ухил, що оточує кожну мову програмування, учителеві дуже важко …

10
Мови візуального програмування
Більшість з нас вивчили програмування, використовуючи "текстові" мови програмування, такі як Basic, C / C ++ та Java. Я вважаю, що людині більш природно і ефективно візуально мислити. Візуальне програмування дозволяє розробникам писати програми, маніпулюючи графічними елементами. Я думаю, що використання візуального програмування повинно покращити якість коду та зменшити помилки …

2
на тему: "Про жорстокість дійсно викладання обчислювальної науки"
Дійкстра у своєму нарисі « Про жорстокість справді викладання обчислювальної науки» робить наступну пропозицію щодо вступного курсу програмування: З одного боку, ми навчаємо, як виглядає предикатне числення, але ми робимо це зовсім інакше, ніж філософи. Для того, щоб навчити програміста-початківця до маніпулювання неінтерпретованими формулами, ми навчаємо його більше як булева …

5
Чи можуть регулярні мови бути Тюрінгом завершеними?
Я читав про Йоту та Джота і вважав цей розділ заплутаним: На відміну від Iota, де синтаксичне дерево для рядка може розгалужуватися або зліва, або справа, синтаксис Jot рівномірно ліво-розгалужений. Як результат, Iota суворо без контексту, але Jot є звичайною мовою. Я розумію, що і Йота, і Джот Тюрінг завершені. …

2
Як пов’язані мови програмування та основи математики?
В основному я знаю три основи математики Теорія множин Теорія типів Теорія категорій Тож якими способами пов'язані мови програмування та основи математики? EDIT Первісне питання було "Мови програмування на основі математики" з доданим парагарфом І реалізація теорії 1. Теорія типів у Coq 2. Теорія множин у SETL 3. Теорія категорій …

6
Чи є програми, які можуть "перевести" вихідний код між будь-якими двома мовами?
Чи є програми, які можуть "перевести" вихідний код між будь-якими двома мовами (якщо припустимо, що перекладач має доступ до необхідних бібліотек)? Якщо вони є, як вони працюють (використовувані методи, необхідні знання тощо)? Як вони могли б бути побудовані? Якщо їх немає, які обмеження перешкоджають їх розвитку? Це повна проблема AI …

4
Чітке, інтуїтивне виведення комбінатора з фіксованою точкою (Y комбінатор)?
Комбінатор з фіксованою точкою FIX (він же Y-комбінатор) в (нетипізованому) лямбдальному обчисленні ( λλ\lambda ) визначається як: ≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))\triangleq \lambda f.(\lambda x. f~(\lambda y. x~x~y))~(\lambda x. f~(\lambda y. x~x~y)) Я розумію його призначення і можу простежити виконання …

9
Чи стали мови програмування більше схожими на природні мови?
Це питання було переміщено із програми обміну стеками програмного забезпечення, оскільки на нього можна відповісти на інформаційній стеці. Мігрували 6 років тому . Чи можемо ми вивчати мови програмування в контексті лінгвістики? Чи розвиваються мови програмування природним шляхом аналогічно природним мовам? Хоча повна раціональність і математична послідовність є важливими для …

7
Для чого нам потрібна мова складання?
Ми в основному пишемо програму мовою високого рівня. Тому під час навчання я натрапив на асемблерну мову. Таким чином, асемблер перетворює мову складання в машинну мову, і компілятор робить те саме з мовою високого рівня. Я знайшов, що в мові збірки є такі інструкції, як переміщення r1 r3, переміщення 5 …

7
Чому парадигма руйнування об’єктів у зібраних сміттях мовах всебічно відсутня?
Шукаєте розуміння рішень навколо зібраного мовним дизайном мови. Можливо, мовний експерт міг би мене просвітити? Я родом зі С ++, тому ця сфера для мене викликає здивування. Здається, майже всі сучасні мови, зібрані зі сміттям, підтримують об'єкти OOPy, такі як Ruby, Javascript / ES6 / ES7, Actioncript, Lua і т.д., …

7
Чи всі мови цілей взаємозамінні
Зауважте, хоча я знаю, як програмувати, я досить новачок в теорії CS. Відповідно до цієї відповіді Тюрінг повноти - це абстрактне поняття обчислюваності. Якщо мова Тюрінга є повною, вона може робити будь-які обчислення, які може зробити будь-яка інша мова Тюрінга. І будь-яку програму, написану на будь-якій мові Тьюрінга, можна переписати …

3
Інструменти візуального програмування, чому вони не працюють безпосередньо з AST безпосередньо?
Я знайшов кілька інструментів візуального програмування з відкритим кодом, таких як Blockly та друзі, та інші проекти, розміщені в Github, але не вдалося знайти жодного, який би працював безпосередньо з абстрактним синтаксичним деревом. Чому так? Я запитую, бо коли я виявив, що кожен компілятор там має фазу в процесі компіляції, …

6
Який взаємозв'язок між мовами програмування, регулярними виразами та формальними мовами
Я переглянув мережу, щоб відповісти на це питання, і здається, що всі неявно знають відповідь, крім мене. Імовірно, це тому, що люди, які піклуються, - це лише ті, хто отримав вищу освіту з цього питання. Мене, з іншого боку, кинули в глибокий кінець за завдання середньої школи. Моє запитання: як …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.