- 1
- 2
- 3
- 4
def main():
    pipe(int(input('Введите неотрицательное целое число: ')),   
         lambda n: (n, reduce(lambda x, y: x * y, range(1, n + 1))),   
         lambda tup: print(f'Факториал числа {tup[0]} равняется {tup[1]}'))Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
def main():
    pipe(int(input('Введите неотрицательное целое число: ')),   
         lambda n: (n, reduce(lambda x, y: x * y, range(1, n + 1))),   
         lambda tup: print(f'Факториал числа {tup[0]} равняется {tup[1]}'))Из https://habr.com/ru/post/555370/ (Функциональное ядро на Python).
+1
function main() {    
	(function () {
		print("Hello World!");
	})();
}а ваш С компилятор может так говнокодить? а мой компилятор может :)
+1
var proto = $new(null);
proto.foo = function() { 
  $print(this.msg) 
}
var o = $new(null);
o.msg = "hello";
$objsetproto(o,proto);
o.foo(); // print "hello"
$objsetproto(o,null); // remove proto
o.foo(); // exception
            Давайте писать ня Neko!
https://nekovm.org
        
0
Питушня #16
            #1: https://govnokod.ru/26692 https://govnokod.xyz/_26692
#2: https://govnokod.ru/26891 https://govnokod.xyz/_26891
#3: https://govnokod.ru/26893 https://govnokod.xyz/_26893
#4: https://govnokod.ru/26935 https://govnokod.xyz/_26935
#5: (vanished) https://govnokod.xyz/_26954
#6: (vanished) https://govnokod.xyz/_26956
#7: https://govnokod.ru/26964 https://govnokod.xyz/_26964
#8: https://govnokod.ru/26966 https://govnokod.xyz/_26966
#9: https://govnokod.ru/27017 https://govnokod.xyz/_27017
#10: https://govnokod.ru/27045 https://govnokod.xyz/_27045
#11: https://govnokod.ru/27058 https://govnokod.xyz/_27058
#12: https://govnokod.ru/27182 https://govnokod.xyz/_27182
#13: https://govnokod.ru/27260 https://govnokod.xyz/_27260
#14: https://govnokod.ru/27343 https://govnokod.xyz/_27343
#15: https://govnokod.ru/27353 https://govnokod.xyz/_27353
        
+1
// Заполняет документ заказ данными с сайта.
// 
// Параметры:
//  ДокументОбъект - ДокументОбъект - объект документа Заказ покупателя.
//  РеквизитыЗаказа - Структура - содержит значения реквизитов заказа, загруженных с сайта:
//     * Ид - Идентификатор заказа, очень часто тоже что и номер.
//     * Дата				- дата создания заказа на сайте.
//     * Номер				- номер заказа на сайте.
//     * ДатаОтгрузки		- дата отгрузки товара по заказу.
//     * ВалютаДокументаКод	- трехзначный идентификатор валюты.
//     * ВидЦенНаименование	- наименование вида цены.
//     * СуммаВключаетНДС	- признак включения НДС.
//     * НаименованиеСкидки	- наименование скидки.
//     * ПроцентСкидки		- процент скидки.
//     * СуммаСкидки		- сумма скидки по заказу.
//     * СкладНаименование 	- наименование склада, точки самовывоза.
//     * ПодразделениеНаименование - наименование подразделения.
//     * Контрагент			- ссылка на контрагента, который уже был идентифицирован в базе.
//     * АдресДоставки      - строка адреса доставки.
//     * ТочкаСамовывоза	- ссылка на элемент справочника, который в прикладном решении является справочником точек самовывоза или Неопределено.
//     * Товары				- табличная часть документа.
//     * Комментарий		- текстовый комментарий.
//  СвойстваЗаказа - Соответствие - содержит строковое представления свойств (ключ) и значений (значение) заказа.
//  ПрикладныеПараметры - Структура - содержит параметры прикладного решения, добавленные на форму узла плана обмена.
//  ОписаниеОшибки - Строка - текстовое представление ошибки.
//  Успешно - Булево - признак заполнения документа.
//
Процедура ЗаполнитьЗаказ(ДокументОбъект, РеквизитыЗаказа, СвойстваЗаказа,
                         ПрикладныеПараметры, ОписаниеОшибки, Успешно) Экспорт
	//++ НЕ ГОСИС
	Валюта = Неопределено;
	ОбменССайтамиУТ.ОбработатьВалютуXML(Валюта, РеквизитыЗаказа.ВалютаДокументаКод);
	
	ДокументОбъект.Дата          = РеквизитыЗаказа.Дата;
	ДокументОбъект.Валюта        = Валюта;
	ДокументОбъект.Соглашение    = ПрикладныеПараметры.Соглашение;
	ДокументОбъект.Организация   = ПрикладныеПараметры.Организация;
	ДокументОбъект.Менеджер      = ПрикладныеПараметры.Менеджер;
	ДокументОбъект.Контрагент    = РеквизитыЗаказа.Контрагент;
	ДокументОбъект.Партнер       = РеквизитыЗаказа.Партнер;
	ДокументОбъект.ЦенаВключаетНДС = РеквизитыЗаказа.СуммаВключаетНДС;
	ДокументОбъект.Склад           = ?(ЗначениеЗаполнено(РеквизитыЗаказа.ТочкаСамовывоза),
	                                   РеквизитыЗаказа.ТочкаСамовывоза, 
	                                   ПрикладныеПараметры.Склад);
	
	УсловияПродаж = ПродажиСервер.ПолучитьУсловияПродаж(ПрикладныеПараметры.Соглашение);
	
	Если НЕ ЗначениеЗаполнено(УсловияПродаж.ИспользуютсяДоговорыКонтрагентов) 
		ИЛИ НЕ УсловияПродаж.ИспользуютсяДоговорыКонтрагентов Тогда
		ДокументОбъект.ПорядокОплаты = УсловияПродаж.ПорядокОплаты;
	Иначе
		ДокументОбъект.ПорядокОплаты = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОбъект.Договор, "ПорядокОплаты");
	КонецЕсли;
	
	ДокументОбъект.ВернутьМногооборотнуюТару = УсловияПродаж.ВозвращатьМногооборотнуюТару;
	ЗаполнитьЗначенияСвойств(ДокументОбъект,
	                         УсловияПродаж,
	                        "ХозяйственнаяОперация, ГруппаФинансовогоУчета,
	                        |ТребуетсяЗалогЗаТару, ФормаОплаты, ГрафикОплаты");
	Если ЗначениеЗаполнено(ДокументОбъект.ГрафикОплаты) Тогда
		ДокументОбъект.ФормаОплаты = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОбъект.ГрафикОплаты, "ФормаОплаты");
	КонецЕсли;
	
	ДокументОбъект.ВернутьМногооборотнуюТару = УсловияПродаж.ВозвращатьМногооборотнуюТару;
	ДокументОбъект.Приоритет = Справочники.Приоритеты.ПолучитьПриоритетПоУмолчанию(ДокументОбъект.Приоритет);
	Если УсловияПродаж.ИспользуютсяДоговорыКонтрагентов Тогда
		
		ДокументОбъект.Договор = ПродажиСервер.ПолучитьДоговорПоУмолчанию(ДокументОбъект,
		                                                                  УсловияПродаж.ХозяйственнаяОперация,
		                                                                  Валюта);
		
		Если ЗначениеЗаполнено(ДокументОбъект.Договор) Тогда
			ДокументОбъект.НалогообложениеНДС = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОбъект.Договор,
				"НалогообложениеНДС");
		КонецЕсли;
		
	КонецЕсли;
	
	Если НЕ ЗначениеЗаполнено(ДокументОбъект.НалогообложениеНДС) Тогда
		ДокументОбъект.НалогообложениеНДС = Справочники.Организации.НалогообложениеНДС(
			ДокументОбъект.Организация,
			ДокументОбъект.Склад,
			ДокументОбъект.Дата);
	КонецЕсли;
	
	Комментарий = "";
	Если Не ПустаяСтрока(РеквизитыЗаказа.Комментарий) Тогда
		Комментарий = Комментарий + НСтр("ru = 'Комментарий менеджера на сайте'") + ": " +РеквизитыЗаказа.Комментарий;
	КонецЕсли;
	
	КомментарийПокупателя = СвойстваЗаказа.Получить("Комментарии покупателя");
	Если Не КомментарийПокупателя = Неопределено И Не ПустаяСтрока(КомментарийПокупателя) Тогда
		Комментарий = Комментарий + ?(ПустаяСтрока(Комментарий),"",Символы.ПС) + НСтр("ru = 'Комментарий покупателя на сайте'") + ": " + КомментарийПокупателя;
	КонецЕсли;
	
	ДокументОбъект.Комментарий   = Комментарий;
	
	СтатусЗаказа = СвойстваЗаказа.Получить("Статус заказа");
0
function f1() 
{               
  print("Hello World!");    
}
function run(f: () => void)
{
  f();
}
function main() {    
 const x = f1;
 x();                                
 run(x);
}
// LLVM IL 
; ModuleID = 'LLVMDialectModule'
source_filename = "LLVMDialectModule"
target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-windows-msvc"
@frmt_11120820245497078329 = internal constant [4 x i8] c"%s\0A\00"
@s_11208736881023205110 = internal constant [14 x i8] c"Hello World!\00\00"
declare i8* @malloc(i64)
declare void @free(i8*)
declare i32 @printf(i8*, ...)
define void @f1() !dbg !3 {
  %1 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @frmt_11120820245497078329, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @s_11208736881023205110, i64 0, i64 0)), !dbg !7
  br label %2, !dbg !9
2:                                                ; preds = %0
  ret void, !dbg !9
}
define void @run(void ()* %0) !dbg !10 {
  %2 = alloca void ()*, align 8, !dbg !11
  store void ()* %0, void ()** %2, align 8, !dbg !11
  %3 = load void ()*, void ()** %2, align 8, !dbg !11
  call void %3(), !dbg !13
  br label %4, !dbg !14
4:                                                ; preds = %1
  ret void, !dbg !14
}
define void @main() !dbg !15 {
  %1 = alloca void ()*, align 8, !dbg !16
  %2 = alloca void ()*, align 8, !dbg !19
  store void ()* @f1, void ()** %2, align 8, !dbg !19
  %3 = load void ()*, void ()** %2, align 8, !dbg !19
  call void %3(), !dbg !20
  %4 = load void ()*, void ()** %2, align 8, !dbg !19
  %5 = bitcast void ()** %1 to i8*, !dbg !16
  call void @llvm.lifetime.start.p0i8(i64 8, i8* %5), !dbg !16
  store void ()* %4, void ()** %1, align 8, !dbg !16
  %6 = load void ()*, void ()** %1, align 8, !dbg !16
  call void %6(), !dbg !21
  %7 = bitcast void ()** %1 to i8*, !dbg !22
  call void @llvm.lifetime.end.p0i8(i64 8, i8* %7), !dbg !22
  br label %8, !dbg !23
8:                                                ; preds = %0
  ret void, !dbg !23
}
; Function Attrs: argmemonly nofree nosync nounwind willreturn
declare void @llvm.lifetime.start.p0i8(i64 immarg, i8* nocapture) #0
; Function Attrs: argmemonly nofree nosync nounwind willreturn
declare void @llvm.lifetime.end.p0i8(i64 immarg, i8* nocapture) #0
attributes #0 = { argmemonly nofree nosync nounwind willreturn }
            продолжаем говнокодить компилятор аля TypeScript в нативный код. ну это как С компилятор только без тупо-уродо-* у имен переменных
1) компилим точно также как и до этого в постах
2) получаем результат
>>  Hello World!
Hello World!
        
+1
IT Оффтоп #85
            #55: https://govnokod.ru/26844 https://govnokod.xyz/_26844
#56: https://govnokod.ru/26862 https://govnokod.xyz/_26862
#57: https://govnokod.ru/26890 https://govnokod.xyz/_26890
#58: https://govnokod.ru/26916 https://govnokod.xyz/_26916
#59: https://govnokod.ru/26934 https://govnokod.xyz/_26934
#60: https://govnokod.ru/26949 https://govnokod.xyz/_26949
#61: https://govnokod.ru/26980 https://govnokod.xyz/_26980
#62: https://govnokod.ru/26999 https://govnokod.xyz/_26999
#63: https://govnokod.ru/27004 https://govnokod.xyz/_27004
#64: https://govnokod.ru/27020 https://govnokod.xyz/_27020
#65: https://govnokod.ru/27027 https://govnokod.xyz/_27027
#66: https://govnokod.ru/27040 https://govnokod.xyz/_27040
#67: https://govnokod.ru/27049 https://govnokod.xyz/_27049
#68: https://govnokod.ru/27061 https://govnokod.xyz/_27061
#69: https://govnokod.ru/27071 https://govnokod.xyz/_27071
#70: https://govnokod.ru/27097 https://govnokod.xyz/_27097
#71: https://govnokod.ru/27115 https://govnokod.xyz/_27115
#72: https://govnokod.ru/27120 https://govnokod.xyz/_27120
#73: https://govnokod.ru/27136 https://govnokod.xyz/_27136
#74: https://govnokod.ru/27160 https://govnokod.xyz/_27160
#75: https://govnokod.ru/27166 https://govnokod.xyz/_27166
#76: https://govnokod.ru/27168 https://govnokod.xyz/_27168
#77: https://govnokod.ru/27186 https://govnokod.xyz/_27186
#78: https://govnokod.ru/27219 https://govnokod.xyz/_27219
#79: https://govnokod.ru/27254 https://govnokod.xyz/_27254
#80: https://govnokod.ru/27270 https://govnokod.xyz/_27270
#81: https://govnokod.ru/27280 https://govnokod.xyz/_27280
#82: https://govnokod.ru/27284 https://govnokod.xyz/_27284
#83: https://govnokod.ru/27296 https://govnokod.xyz/_27296
#84: https://govnokod.ru/27336 https://govnokod.xyz/_27336
        
+1
Просто оффтоп #18
            #1: https://govnokod.ru/20162 https://govnokod.xyz/_20162
#2: https://govnokod.ru/25329 https://govnokod.xyz/_25329
#3: https://govnokod.ru/25415 https://govnokod.xyz/_25415
#4: (vanished) https://govnokod.xyz/_25472
#5: https://govnokod.ru/25693 https://govnokod.xyz/_25693
#6: (vanished) https://govnokod.xyz/_26649
#7: https://govnokod.ru/26672 https://govnokod.xyz/_26672
#8: https://govnokod.ru/26924 https://govnokod.xyz/_26924
#9: https://govnokod.ru/27072 https://govnokod.xyz/_27072
#10: https://govnokod.ru/27086 https://govnokod.xyz/_27086
#11: https://govnokod.ru/27122 https://govnokod.xyz/_27122
#12: https://govnokod.ru/27153 https://govnokod.xyz/_27153
#13: https://govnokod.ru/27159 https://govnokod.xyz/_27159
#14: https://govnokod.ru/27200 https://govnokod.xyz/_27200
#15: https://govnokod.ru/27237 https://govnokod.xyz/_27237
#16: https://govnokod.ru/27282 https://govnokod.xyz/_27282
#17: https://govnokod.ru/27319 https://govnokod.xyz/_27319
        
+1
(set-logic UF)
; https://smtlib.cs.uiowa.edu/logics.shtml
; UF for the extension allowing free sort and function symbols 
(set-option :produce-proofs true)
(declare-sort M_wff)
; AND2
(declare-fun M_a2 (M_wff M_wff) M_wff)
; AND3
(declare-fun M_a3 (M_wff M_wff M_wff) M_wff)
; (AND2 a b) <=> (AND2 b a)
(assert 
  (forall ( (a M_wff) (b M_wff) )
    (=
      (M_a2 a b)
      (M_a2 b a)
    )
  )
)
; (AND2 a a) <=> a
(assert 
  (forall ( (a M_wff) )
    (=
      (M_a2 a a)
      a
    )
  )
)
; (AND2 a (AND2 b c)) <=> (AND3 a b c)
(assert 
  (forall ( (a M_wff) (b M_wff) (c M_wff) )
    (=
      (M_a2 a (M_a2 b c))
      (M_a3 a b c)
    )
  )
)
; (AND3 a b c) <=> (AND3 b a c)
(assert
  (forall ( (a M_wff) (b M_wff) (c M_wff) )
    (=
      (M_a3 a b c)
      (M_a3 b a c)
    )
  )
)
; IMPL - implication
(declare-fun M_impl (M_wff M_wff) M_wff)
; http://us.metamath.org/ileuni/ax-1.html
; Axiom Simp
; (IMPL a (IMPL b a)) <=> (AND2 a b)
(assert
  (forall ( (a M_wff) (b M_wff) )
    (=
      (M_impl a (M_impl b a))
      (M_a2 a b)
    )
  )
)
...
            Весь код не влазит.
https://rise4fun.com/Z3/GnfIH
https://paste.debian.net/hidden/38ef8493/ (запасная ссылка)
Переписывал Metamath на язык из SMT солверов https://smtlib.cs.uiowa.edu/language.shtml
Z3 даже умеет доказывать какую-то питушню там.
        
0
А куда пропал инканус?