Pull to refresh

Comments 45

Перевёрнутый восклицательный знак - это вообще ВЕЩЬ.

print("Австралийцы

Только он должен быть в начале строки )

огонь! спасибо за перевод. без него не узнал бы этого шедевра

И, судя по гиту, теперь этот язык переименован в С.

А вот это очень плохо :( Уже куча народу знает его как DreamBerd (завирусился пару месяцев назад). Теперь будет путаница, да и смысл переименования не понятен.

Еще раз переименован в нечто необычное :-)

Грёбаный стыд. Ну, штош. Шутка была неплохая. Жалко, что закончилась.

Неплохо. Но языку явно пошло бы испытать влияние BABBAGE.

Вы можете перегружать переменные

Для переменных с одинаковым количеством восклицательных знаков пригодилось бы ключевое слово "other":

const const name = "Luke"!

const const name = "Lu"!

print(name)! // "Lu"

print(other name)! // "Luke"

вместо


const const const pi = 3.14!

Лучше конечно


const const const pi = 22/7!

Или


const const const pi = 180°

отдельной недоработкой выглядит неразличение в исходном коде
дефиса (-),
n-тире (–),
m-тире (—)
и минуса (−)

И что то надо делать с нулём!

Очевидно же, что -0 явно меньше 0, и вдвое меньше +0 !

И сумма нулей всё таки незначительно отличается от нуля.

Значение -0 имеется в реальной жизни. В Непале. Насколько я помню, даже юникодный знак есть.

А зачем?

В Непале огромное значение имеют гороскопы, которые там достигли небывалых высот и учитывают большое количество факторов. -0 обозначает время зачатия.

В Высшей математике используют, чтобы показать с какой стороны придел

В православии придел обычно с востока, емнип. Не знал, что -0 используется в Высшей математике для этого! :D

Минус ноль есть в языках программирования. Почти во всех современных.

Точнее, в формате вещественных чисел формата IEEE754, которые собственно известны как single, float, double etc в зависимости от языка.

Очевидно же, что -0 явно меньше 0, и вдвое меньше +0 !

А я как раз об этом писал, когда говорил о необходимости заимствования идей BABBAGE:

"Например, разработчики языка BABBAGE в настоящее время заняты работой над оператором ALMOST EQUAL SIGN ("почти с одинаковым знаком"), используемым для сравнения двух чисел с плавающей запятой. "

А это не может быть знак "почти равно"?

Ещё, по аналогии с числом i, квадрат которого равен -1, можно ввести число ы, квадрат которого равен 0.

Это сразу откроет массу новых возможностей для математических вычислений! Теперь, вместо комплексных чисел, можно будет проводить математические операции над числами вида a+b*ы.

Во-первых, так как ы² = ы*ы = 0, то и ы³ = 0, и ы⁴ = 0, и ыⁿ = 0 при любом n ≥ 2.

Отсюда легко получить выражение для (a + b*ы)^n = a^n + n*a^(n-1)*b*ы ... и на этом всё, так как последующие члены равны 0.

Во-вторых, многие математические функции раскладываются в ряд Тейлора, что позволяет легко вычислить их значение для аргумента, содержащего ы:

exp(ы) = 1 + ы¹/1! + ы²/2! + ... = 1 + ы

exp(a + b*ы) = exp(a) * exp(b*ы) = exp(a) * (1 + b*ы)

sin(ы) = ы¹/1! - ы³/3! + ... = ы

и так далее.

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

Логические значения могут быть true, false или maybe.

Это ведь троичная логика. Такая есть в SQL.

А это недоработка. Даже в JS 4 варианта - true, false, null, undefined.

Предлагаю такое решение:

Каждый раз при определении правдивости каждое из следующих значений правдиво со следующей вероятностью.

false - 0%
never - 10%
rarely - 20%
sometimes - 30%
occasionally - 40%
maybe - 50%
frequently - 60%
often - 70%
practically - 80%
almost - 90%
true - 100%

ihtamnet пропущено, как alias false

А можно для строковых переменных сделать выделение подстроки, ориентируясь на имя переменной?

var name = "Luke"!
// na = "Lu"
// me = "ke"

Еще более точное сравнение, чем просто точное ожидать стоит?

Просто не сравнивай double. Или при сравнении double не используй оптимизации компилятора.

const const name<Infinity> = "Luke"! //сохранится навсегда

Гениально! Думаю я смогу сделать переменную, которая хранится всегда:

public BundleSave name=BandleSave.new("name", "Привет, это первый запуск программы");
name.update("Привет, не первый запуск программы");
System.out.println(update);

Осталось понять, где хранить в SQLite или ином месте?

Важное обновление

Hi, this is an update from Lu Wilson, CEO of the DreamBerd Foundation.

Last month, we re-named DreamBerd to C along with a whole host of empowering new features. After consulting with the community, we quickly realised that the new name didn't align with the values of our organisation.

We got this one wrong, and we humbly accept that.

    "We got this one wrong, and we humbly accept that"
    Lu Wilson, DreamBerd Foundation CEO

To rectify this mistake, we have now re-re-named DreamBerd to a name that aligns more closely with the full breadth of our values.

We're really excited to announce that DreamBerd's new name is:
WhenWillProgrammersStopMakingDecisionsForOurSocietyAndJustLeaveUsAloneAlsoHackerNewsIsAVileWebsite

Please tune in next week for more WhenWillProgrammersStopMakingDecisionsForOurSocietyAndJustLeaveUsAloneAlsoHackerNewsIsAVileWebsite release notes.

Or check out the WhenWillProgrammersStopMakingDecisionsForOurSocietyAndJustLeaveUsAloneAlsoHackerNewsIsAVileWebsite examples on the WhenWillProgrammersStopMakingDecisionsForOurSocietyAndJustLeaveUsAloneAlsoHackerNewsIsAVileWebsite examples page.

    WhenWillProgrammersStopMakingDecisionsForOurSocietyAndJustLeaveUsAloneAlsoHackerNewsIsAVileWebsite was made with ❤️ by Lu Wilson, creator of screens in screens in screens in screens in screens.

вещь, особенно про константы. сразу вспомнил с++ с его константными указателями на неконстантные данные и наоборот =)

Ну конструкция when(health == 0) это огонь. В концепции zero-cost features это можно даже сделать не на подписке, а вставляя компилятором вызов if (health == 0) при каждом декременте health. Очень красивая конструкция

Техническая информация: аннотации типов ничего не делают, но они помогают некоторым людям чувствовать себя более комфортно.

Сразу вспомнился Python...

Уверен, именно на него и намекали.

Шутка хорошая, но перевод на пол пути сбивается. Где-то оставлен гугл перевод, где-то вообще фраза на английском:)

DreamBerd

Dreambird

Dream Beard

Dreamboard

Dreamer

Я так понял, автор языка сам не определился, как его язык называется? :)

const const const True<Infinity> = False!!!

Теперь живите с этим.

https://govnokod.ru/1829

а также родное:

https://habr.com/ru/articles/269373/#comment_8625161

Ахахах, как же годно простебали Rust и JS. В основном к ним отсылки.

Пацталом. Креатиф не Г, Аффтар не М, пиши ещё!

Можно отсылки к Rust для тех, кто с ним не знаком?

Восклицательные знаки, вопросительные знаки, определения, время жизни. А, и владение, которое про фонд.

Идеальный язык программирования С, так как всё остальное идеальные пишутся на нём

Sign up to leave a comment.

Articles