Какой язык программирования похож на больше всего естественного языка? [закрытый]

Проблема в том, что .titlebox имеет свойство left: 20px, что приводит к появлению пробелов справа, когда его ширина составляет 50% от ширины страницы. Уменьшите его ширину или, если вам лень, добавьте следующий CSS, чтобы обойти эту проблему:

body {
    overflow-x: hidden;
}
56
задан 3 revs, 3 users 100% 24 August 2014 в 01:53
поделиться

31 ответ

Существует язык программирования под названием, Сообщают, что, в его новом воплощении, Сообщают 7, взгляды партия как естественный язык..., в частности, письменный язык.

Сообщают, очень специально для создания текстовых игр приключения, но нет никакой свойственной причины, что понятия не могли быть расширены в другие области.

Вот маленький отрывок, Сообщают 7 кодам, взятым от игрового Стекла, Emily Short.

Stage is a room. 

The old lady is a woman in the Stage. Understand "mother" or 
"stepmother" as the old lady. The old lady is active. The description 
of the lady is "She looks plucked: thin neck with folds of skin
exposed, nose beaky, lips white. Perhaps when her fortunes are mended
her cosmetics too will improve." 

The Prince is a man in the Stage. The description of the prince is
"He's tolerably attractive, in his flightless way. It's hard not to
pity him a little." The prince carries a glass slipper. The glass
slipper is wearable. Understand "shoe" or "heel" or "toe" or "foot"
as the slipper. The description of the slipper is "It is very small
for an adult woman's foot." 

Полный код может быть найден здесь .

Это - небольшой простой пример... он может на самом деле обработать удивительно устойчивый набор идей.

нужно указать, что код не является действительно странным шифром, где конструкции имеют скрытые смыслы... этот код делает более или менее, что Вы ожидали бы. Например:

The old lady is a woman in the Stage. Understand "mother" or 
"stepmother" as the old lady. 

создает объект, который, оказывается, человек женского пола, имена, которые возражают "старой леди" и местам, которые возражают в объекте помещения, названном "Этапом". Затем два псевдонима ("родительский элемент" и "мачеха" создаются, что также оба ссылаются на "старую леди" объект.

, Конечно, поскольку примеры становятся все больше сложными, необходимые обручи для перехода через также становятся более сложными. Английский язык, по его самому характеру, неоднозначному, в то время как машинный код наиболее окончательно нет. Таким образом, мы никогда не будем получать "идеальное соединение".

117
ответ дан 3 revs, 2 users 98% 26 November 2019 в 16:58
поделиться

Что мы обычно называем, "псевдокод" очень, очень близко к Паскаль . Это, вероятно, не делает его особенно близко к естественному английскому языку, но если бы это не было более просто, чем большинство языков, то мы не записали бы псевдокод вообще (мы просто написали бы код).

0
ответ дан rmeador 26 November 2019 в 16:58
поделиться

Мне жаль, что не было COmmon Business Oriented Language, которые читают как английский язык так все, даже непрограммисты могли unterstand он... Возможно, мы должны создать тот! ( украденный отсюда )

0
ответ дан Tamas Czinege 26 November 2019 в 16:58
поделиться

Кобол близко к английскому языку, поскольку это добирается

, я полагаю, что Логотип также не слишком далек от английского языка

0
ответ дан SQLMenace 26 November 2019 в 16:58
поделиться

Санскрит близко подходит к тому, что Вы описываете. Это не имеет никаких дублирований, это был первый язык, который будет следовать за BNF, который является основанием всей современной прогр языковой грамматики, и это совместно использует общий индоевропейский спуск с английским языком

1
ответ дан 3 revs 26 November 2019 в 16:58
поделиться

С Ruby и Осло (и возможно F#), Вы могли создать очень благоприятный для языка DSL. Это - по крайней мере, обещание Осло. Можно найти пример грамматики Осло для BDD здесь .

1
ответ дан user29439 26 November 2019 в 16:58
поделиться

Я полагаю, что William Shakespeare был лучшим в мире программистом...

Язык программирования Shakespeare

2
ответ дан Mike Robinson 26 November 2019 в 16:58
поделиться

Applescript похож на естественный язык.

2
ответ дан mouviciel 26 November 2019 в 16:58
поделиться

Хорошо естественный язык двусмысленен, и берет немного больше, чем литеральное линейное чтение для понимания. Но это предоставляемое, VB.NET рядом в некоторых конструкциях. Самый близкий я видел.

Для Цикла в VB.NET

For i = 0 To 2
  'loop time!
Next i

Это почти столь же "естественно", как я видел, не будучи слишком подробным.

3
ответ дан 2 revs 26 November 2019 в 16:58
поделиться

КОБОЛ был создан с определенным намерением того, чтобы быть похожего на естественный язык (английский язык в этом случае)

1
ответ дан Jason Punyon 26 November 2019 в 16:58
поделиться

Я не знаю, что пошел бы, до, чтобы сказать, что VB.NET близко к английскому языку, но я думаю, что это почти настолько же близко, как Вы действительно добираетесь. Несомненно, после того как Вы запрограммировали его некоторое время, это походит на английский язык - что это делает чтение как книга закаленному программисту VB, но если Вы останавливаетесь и думаете об английском языке реального мира:

For i As Integer = 1 To 10
  Console.WriteLine("Hello World")
Next

длинный путь от:

Запись "Привет Мир" и перемещение к следующей строке консольных 10 времен.

, Конечно, английский неоднозначен - он хочет, чтобы Вы сделали все это 10 раз, или просто записали "Привет Мир" однажды и затем переместились в следующую строку 10 раз?

я предполагаю, что мы должны учиться говорить менее неоднозначным способом:

Делают это 10 раз: В консоли запишите "Привет Мир" и переместитесь в следующую строку.

, Но я сомневаюсь относительно очень многого существует язык программирования что действительно чтения как английский язык. Даже те фанатики Кобола, которые говорят, что это похоже на естественный язык - это действительно, не то, если Вы останавливаетесь и думаете о том, как Вы думаете о вещах в реальный путь вместо таким образом определенного языком программирования.

Даже в VB Вы ограничены способом, которым платформа диктует способ, которым Вы делаете вещи...

8
ответ дан BenAlabaster 26 November 2019 в 16:58
поделиться

Forth обратно-польский базирующийся и работал бы естественно на некоторых людей.

"Изучают Forth быстро, я буду" - Yoda.

4
ответ дан David Thornley 26 November 2019 в 16:58
поделиться

синтаксис VB.NET очень близко к английскому языку

4
ответ дан user434917 26 November 2019 в 16:58
поделиться

Я сказал бы SQL или КОБОЛ.

5
ответ дан Graeme Perrow 26 November 2019 в 16:58
поделиться

Ну, Ruby и Python, как предполагается, довольно близки. Ruby даже переходит к продолжительности добавления специальных ключевых слов, которые моделируют реальную жизнь. Такой как, если ключевое слово, и т.д.

, Конечно, один Вы не вводите реальный код ни на одном из тех 2 языков, это действительно не похоже на естественный язык, но с другой стороны что?

5
ответ дан Sasha 26 November 2019 в 16:58
поделиться

Perl имеет некоторые принципы разработки, которые являются на основе того, как люди обрабатывают естественные языки (см. http://www.wall.org/~larry/natural.html ).

Это - другая вещь от синтаксических взломов для создания чтения кода как предложения на английском или некотором другом языке. Я не полностью убежден, что это полезно. Как аналогия, я могу также сделать ASCII-творчество со своим кодом, но это не означает, что мой язык основан на принципах визуального состава.

Для предоставления примера того, где это не может быть полезно предположите, что это делает то, что похоже, что это делает на некотором rubyish/smalltalky языке:

3.times say "hello!" 

Это хорошо, это делает мой код более читаемым, и существует подобный вид забавы в нем к наличию попугая, который может говорить, но только полезно, если я знаю базовые правила языка программирования. То, что это, оказывается, похоже на английский язык, не дает мне дополнительных рычагов или понимания. Я не могу использовать английский механизм обработки грамматики в мозгу для генерации предложений как следующее:

// The dot looks like misplaced punctuation 
// in the "English" above, but it's essential in 
// the computer language
3 times say "hello!" // syntax error

// In a natural language, a reordering might make
// sense, but it's impossible here because the word
// order was essential to carrying the parameters
// to the method invocation in the right order.
say "hello" 3 times // syntax error
6
ответ дан user8599 26 November 2019 в 16:58
поделиться

Ну, Простой английский язык , конечно!

To sing the beer song:
  Put 99 into a number.
  Loop.
  If the number is 0, break.
  Format a string given the number and "bottle" and "bottles".
  Write the string then " of beer on the wall, " then the string then " of beer.".
  Format another string given the number minus 1 and "bottle" and "bottles".
  Write "Take one down and pass it around, " then the other string then " of beer on the wall.".
  Skip a line.
  Subtract 1 from the number.
  Repeat.
  Write "No more bottles of beer on the wall, no more bottles of beer.".
  Write "Go to the store and buy some more, 99 bottles of beer on the wall.".

To format a string given a number and a singular string and a plural string:
  If the number is 0, put "no more " then the plural into the string; exit.
  If the number is 1, put "1 " then the singular into the string; exit.
  Put the number then " " then the plural into the string.

я на самом деле не использовал это - я нашел его здесь .

8
ответ дан 2 revs, 2 users 67% 26 November 2019 в 16:58
поделиться

Это называют "псевдокодом". Вы используете любые средства, необходимые для передачи намерения кода (Вы записали или позже запишете).

Любой язык программирования имеет некоторые функции, которые неоднозначны посторонним.

3
ответ дан Leonidas 26 November 2019 в 16:58
поделиться

HyperTalk - язык позади HyperCard Apple.

 on mouseUp
   put "100,100" into pos
   repeat with x = 1 to the number of card buttons
     set the location of card button x to pos
     add 15 to item 1 of pos
   end repeat
 end mouseUp

HyperTalk на Википедию

14
ответ дан AnthonyLambert 26 November 2019 в 16:58
поделиться

Хороший 'ol AppleScript рекламирует свое сходство с английским языком как одни из его преимуществ. Однако это не очень забавно работать с.

17
ответ дан 2 revs, 2 users 67% 26 November 2019 в 16:58
поделиться

Если Вы - знаток, , Язык программирования Shakespeare является довольно естественным ;)

существует предел тому, как 'естественный' можно войти в программирование все же. Естественные языки слишком открыты для интерпретации - язык программирования должен быть конкретным и точным, я не думаю что сетки хорошо с наличием 'естественного' языка программирования.

17
ответ дан user7094 26 November 2019 в 16:58
поделиться

Lisp (конечно (если Вы знаете то, что я имею в виду (LOL)))

18
ответ дан Carl Seleborg 26 November 2019 в 16:58
поделиться

КОБОЛ читает много как английский язык

000100 IDENTIFICATION DIVISION.
000200 PROGRAM-ID.     HELLOWORLD.
000300
000400*
000500 ENVIRONMENT DIVISION.
000600 CONFIGURATION SECTION.
000700 SOURCE-COMPUTER. RM-COBOL.
000800 OBJECT-COMPUTER. RM-COBOL.
000900
001000 DATA DIVISION.
001100 FILE SECTION.
001200
100000 PROCEDURE DIVISION.
100100
100200 MAIN-LOGIC SECTION.
100300 BEGIN.
100400     DISPLAY " " LINE 1 POSITION 1 ERASE EOS.
100500     DISPLAY "Hello world!" LINE 15 POSITION 10.
100600     STOP RUN.
100700 MAIN-LOGIC-EXIT.
100800     EXIT.

источник

20
ответ дан 2 revs 26 November 2019 в 16:58
поделиться

Язык, с которым Richard Pryor раньше передавал миллионы долларов в Супермене III, был очень близок:

> TRANSFER $1,000,000 DOLLARS TO WEBSTER'S ACCOUNT.... NOW

;-)

РЕДАКТИРОВАНИЕ: исправленные символы ;-)

32
ответ дан 3 revs, 2 users 92% 26 November 2019 в 16:58
поделиться

Зависит, на каких кругах Вы сыплетесь, но LOLCODE можно было рассмотреть как естественный язык ;)

цикл В качестве примера:

HAI
    CAN HAS STDIO?
    I HAS A VAR
    IM IN YR LOOP
        UP VAR!!1
        VISIBLE VAR
        IZ VAR BIGGER THAN 10? KTHXBYE
    IM OUTTA YR LOOP
KTHXBYE

На серьезной ноте, VB является довольно естественным языком. Для типов непрограммиста легко учиться, таким образом, синтаксис должно быть довольно легко понять.

43
ответ дан 3 revs, 2 users 94% 26 November 2019 в 16:58
поделиться

Я предлагаю Lua . Пример кода:

function modulus(num, mod)
    return num % mod
end
for i = 1, 1000 do
    local done = false
    if modulus(i, 3) == 0 then
        print("Fizz")
    else if modulus(i, 5) == 0 then
        done = true
        print("Buzz")
    end
    if modulus(i, 5) == 0 and not done then
        print("Buzz")
    end
    print(" ")
end

не самый английский, но чертовски читаемый, даже если я сам так говорю!

-1
ответ дан 26 November 2019 в 16:58
поделиться

Я считаю, что ваш вопрос основан на заблуждении. Программирование не в основном о переводе от человека на компьютерный язык. Он понимает технические проблемы и проектирование программ, которые трудно, набрав в коде, является незначительной частью. Изучение языка программирования не сделает кому-то программистом, больше, чем изучение музыкальной обозначения, сделает их композитором.

Это сказано, если вы пишете на достаточно высоком уровне практически на любом языке и проводите несколько минут, объясняющие синтаксис, вы можете сообщить об этом суть куска кода для специального не программирования. И наоборот, точный достаточно характеристики естественного языка, может иногда переводиться в функции высокого уровня (хотя люди редко хотят приложить усилия для написания такого спецификации.)

2
ответ дан 26 November 2019 в 16:58
поделиться

Хотя не именно то, что вы просили, есть языки, которые выполняют то, что вы хотите, , но из другого направления. Lojban , например, является языком, сделанным для использования в качестве естественного языка, но без двусмысленности.

Lojban (произносится [Loʒban]) построен, синтаксически однозначный человеческий язык на основе предиката логика.

3
ответ дан 26 November 2019 в 16:58
поделиться

Я думал об Эйфеле. Цитата из здесь :

Рафаэль Саймон, ведущий программный инженер Для Эйфелева программного обеспечения, сказал язык был разработан так, что можно использовать Природный язык для написания программы.

См. Например, программа 99 бутылок программы пива .

Я бы не сказал бы, что это «самый« естественный », но я нахожу его довольно естественным.

0
ответ дан 26 November 2019 в 16:58
поделиться

Естественные языки известны своей непоследовательной грамматикой. Наибольшая консистенция грамматики любого естественного языка - санскрит. Фактически, структура этого языка настолько прочна, что можно было иметь выдающуюся поисковую систему, основанную на произношении. Увы, этот язык более или менее мертв.

-3
ответ дан 26 November 2019 в 16:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: